/*
Theme Name: phatdecors
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 2.7.3
*/
.pd-consult-hero-row a.pd-consult-btn.pd-consult-btn-outline, .pd-service-hero-content a.pd-service-hero-btn.pd-btn-outline{
	background: #fff !important;
}
/* ==========================================================================
   OPTIMIZED STYLE SHEET - PHAT DECORS (WITH RESPONSIVE SORTING)
   Generated automatically by optimization script. Original file kept as backup.
   ========================================================================== */
.zalo-chat-widget {
    right: 17px !important;
}
/* --- KEYFRAMES --- */
@keyframes pdTimelineFade {
from {
    opacity: 0;
    transform: translateY(8px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* --- GLOBAL STYLES --- */
.pd-hero-section .pd-btn-calc {
  background: #fff !important;
  color: currentColor!important;
}

.pd-smartcat-row h5.header-title {
  text-transform: none;
  font-weight: 600;
}

.pd-final-cta-row .white.button.is-outline {
  color: #fff !important;
}

.pd-final-cta-row .white.button.is-outline:hover {
  color: #c60000 !important;
}

.pd-before-after {
  position: relative;
  width: 100%;
  height: var(--pd-ba-height, 285px);
  overflow: hidden;
  border-radius: 12px;
  background: #f5f5f5;
  box-shadow: 0 14px 34px rgba(20, 35, 55, 0.08);
}

.pd-ba-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  user-select: none;
  pointer-events: none;
}

.pd-ba-after {
  z-index: 1;
}

.pd-ba-before {
  z-index: 2;
  clip-path: inset(0 calc(100% - var(--pos)) 0 0);
}

.pd-ba-line {
  position: absolute;
  top: 0;
  bottom: 0;
  left: var(--pos);
  z-index: 4;
  width: 2px;
  background: rgba(255,255,255,0.95);
  transform: translateX(-50%);
}

.pd-ba-handle {
  position: absolute;
  left: var(--pos);
  top: 50%;
  z-index: 5;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: #fff;
  color: #e60000;
  box-shadow: 0 10px 24px rgba(20, 35, 55, 0.16);
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2px;
  font-weight: 900;
  pointer-events: none;
}

.pd-ba-handle span {
  font-size: 18px;
  line-height: 1;
}

.pd-ba-range {
  position: absolute;
  inset: 0;
  z-index: 8;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: ew-resize;
}

.pd-ba-label {
  position: absolute;
  top: 16px;
  z-index: 6;
  min-height: 32px;
  padding: 0 18px;
  border-radius: 5px;
  color: #fff;
  font-size: 12px;
  line-height: 32px;
  font-weight: 900;
  text-transform: uppercase;
  pointer-events: none;
}

.pd-ba-label-before {
  left: 18px;
  background: rgba(17,17,17,0.82);
}

.pd-hero-left {
  padding-top: 56px !important;
  padding-bottom: 44px !important;
  position: relative;
  z-index: 3;
}

.pd-hero-heading h1 {
  margin: 0 0 18px;
  font-size: 46px;
  line-height: 1.16;
  font-weight: 800;
  color: #101010;
  letter-spacing: -0.8px;
}

.pd-hero-desc p {
  max-width: 470px;
  margin: 0 0 28px;
  font-size: 16px;
  line-height: 1.7;
  color: #222;
}

.pd-hero-btn-row {
  max-width: 520px;
  margin-bottom: 28px !important;
}

.pd-btn-main {
  background-color: #e60000 !important;
  border-color: #e60000 !important;
  color: #fff !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  box-shadow: 0 8px 18px rgba(230, 0, 0, 0.22);
}

.pd-btn-calc {
  background-color: #fff !important;
  border-color: #e5e5e5 !important;
  color: #111 !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.06);
}

.pd-hero-stat {
  min-height: 78px;
  padding: 15px 10px;
  text-align: center;
  background: #fff;
  border-radius: 12px;
  border: 1px solid rgba(0, 0, 0, 0.06);
  box-shadow: 0 10px 24px rgba(20, 35, 55, 0.08);
}

.pd-hero-stat h3 {
  margin: 0 0 6px;
  font-size: 22px;
  line-height: 1.1;
  font-weight: 800;
  color: #e60000;
}

.pd-hero-stat p {
  margin: 0;
  font-size: 12px;
  line-height: 1.35;
  color: #444;
  font-weight: 500;
}

.pd-hero-right {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  position: relative;
}

.pd-hero-img img {
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
  object-position: center right;
  display: block;
}

.pd-hero-right:before {
  content: "";
  position: absolute;
  left: -1px;
  top: 0;
  width: 160px;
  height: 100%;
  background: linear-gradient(
  90deg,
  #f7fbff 0%,
  rgba(247, 251, 255, 0.9) 28%,
  rgba(247, 251, 255, 0) 100%
  );
  z-index: 2;
  pointer-events: none;
}

.pd-benefit-row {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.pd-benefit-item {
  height: 100%;
  display: flex;
  align-items: center;
  gap: 16px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 14px;
  padding: 18px 20px;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.05);
  transition: all .25s ease;
}

.pd-benefit-icon {
  width: 54px;
  height: 54px;
  min-width: 54px;
  border-radius: 50%;
  border: 1px solid rgba(230, 0, 0, 0.22);
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #e60000;
}

.pd-icon-electric:before {
  content: "⚡";
}

.pd-icon-support:before {
  content: "☏";
}

.pd-benefit-content h3 {
  margin: 0 0 5px;
  font-size: 17px;
  line-height: 1.25;
  font-weight: 700;
  color: #111;
}

.pd-benefit-content p {
  margin: 0;
  font-size: 13px;
  line-height: 1.45;
  color: #4d4d4d;
}

.pd-audience-card {
  position: relative;
  height: 100%;
  min-height: 275px;
  overflow: hidden;
  border-radius: 14px;
  border: 1px solid #eeeeee;
  box-shadow: 0 12px 28px rgba(20, 35, 55, 0.06);
}

.pd-card-family {
  background: #fff7f5;
}

.pd-card-business {
  background: #f1f8ff;
}

.pd-audience-inner {
  position: relative;
  height: 100%;
  min-height: 275px;
}

.pd-audience-row .pd-audience-content {
  position: relative;
  z-index: 5;
  width: 43% !important;
  max-width: 43% !important;
  flex-basis: 43% !important;
  padding: 28px 10px 26px 30px !important;
}

.pd-audience-image-col {
  position: absolute !important;
  top: 0;
  right: 0;
  width: 66% !important;
  max-width: 66% !important;
  height: 100%;
  padding: 0 !important;
  z-index: 1;
}

.pd-audience-image img {
  width: 100%;
  height: 100%;
  min-height: 275px;
  object-fit: cover;
  object-position: center right;
  display: block;
}

.pd-audience-image-col:before {
  content: "";
  position: absolute;
  left: -1px;
  top: 0;
  width: 54%;
  height: 100%;
  z-index: 2;
  pointer-events: none;
}

.pd-card-family .pd-audience-image-col:before {
  background: linear-gradient(
  90deg,
  #fff7f5 0%,
  rgba(255, 247, 245, 0.98) 28%,
  rgba(255, 247, 245, 0.72) 56%,
  rgba(255, 247, 245, 0.16) 82%,
  rgba(255, 247, 245, 0) 100%
  );
}

.pd-card-business .pd-audience-image-col:before {
  background: linear-gradient(
  90deg,
  #f1f8ff 0%,
  rgba(241, 248, 255, 0.98) 28%,
  rgba(241, 248, 255, 0.72) 56%,
  rgba(241, 248, 255, 0.16) 82%,
  rgba(241, 248, 255, 0) 100%
  );
}

.pd-audience-text .pd-sub-title {
  margin: 0 0 4px;
  font-size: 15px;
  line-height: 1.2;
  color: #111;
  font-weight: 700;
}

.pd-audience-text h2 {
  margin: 0 0 15px;
  font-size: 31px;
  line-height: 1.08;
  font-weight: 800;
  color: #111;
  letter-spacing: -0.5px;
}

.pd-card-business .pd-audience-text h2 {
  font-size: 29px;
  max-width: 360px;
}

.pd-audience-text ul {
  list-style: none;
  padding: 0;
  margin: 0 0 18px;
}

.pd-audience-text ul li {
  position: relative;
  padding-left: 22px;
  margin-bottom: 8px;
  font-size: 13.5px;
  line-height: 1.38;
  color: #222;
  margin-left: 0;
}

.pd-audience-btn {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: auto !important;
  min-width: unset !important;
  min-height: 40px;
  padding: 0 20px !important;
  margin: 0 !important;
  background-color: #e60000 !important;
  border-color: #e60000 !important;
  color: #fff !important;
  font-size: 13px !important;
  line-height: 40px !important;
  font-weight: 700 !important;
  border-radius: 7px !important;
  box-shadow: 0 10px 18px rgba(230, 0, 0, 0.18);
}

.pd-btn-main:hover, .pd-audience-btn:hover {
  background-color: #c90000 !important;
  border-color: #c90000 !important;
}

.pd-audience-btn-light {
  background-color: #fff !important;
  border-color: #e1e1e1 !important;
  color: #111 !important;
  box-shadow: 0 10px 18px rgba(20, 35, 55, 0.06);
}

.pd-section-title h2 {
  margin: 0 0 14px;
  font-size: 26px;
  line-height: 1.25;
  font-weight: 800;
  color: #111;
}

.pd-solar-service-col {
  flex-basis: 20% !important;
  max-width: 20% !important;
}

.pd-solar-card {
  height: 100%;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 13px;
  overflow: hidden;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.05);
  transition: all .25s ease;
}

.pd-solar-card-img img {
  width: 100%;
  height: 128px;
  object-fit: cover;
  object-position: center;
  display: block;
}

.pd-solar-card-content {
  padding: 14px 15px 16px;
}

.pd-solar-card-content p {
  margin: 0 0 10px;
  font-size: 13px;
  line-height: 1.45;
  color: #555;
}

.pd-solar-card-content a {
  display: inline-block;
  font-size: 13px;
  line-height: 1.3;
  font-weight: 700;
  color: #e60000;
}

.pd-smartcat-list .product-category .col-inner, .pd-smartcat-section .product-category .col-inner {
  height: 100%;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 13px;
  overflow: hidden;
  box-shadow: 0 8px 20px rgba(20, 35, 55, 0.045);
  transition: all .25s ease;
}

.pd-smartcat-list .box, .pd-smartcat-section .product-category .box {
  padding: 0 !important;
  background: transparent !important;
}

.pd-smartcat-list .box-image, .pd-smartcat-section .product-category .box-image {
  padding: 14px 16px 6px;
  background: #fff;
}

.pd-smartcat-list .box-image img, .pd-smartcat-section .product-category .box-image img {
  width: 100%;
  height: 78px;
  object-fit: contain;
  object-position: center;
}

.pd-smartcat-list .box-text, .pd-smartcat-section .product-category .box-text {
  padding: 6px 8px 14px !important;
  background: #fff !important;
}

.pd-smartcat-list .box-text h5, .pd-smartcat-section .product-category .box-text h5, .pd-smartcat-section .woocommerce-loop-category__title {
  margin: 0 !important;
  font-size: 13px !important;
  line-height: 1.3 !important;
  color: #111 !important;
  text-align: center;
}

.pd-smartcat-section .products {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.pd-smartcat-section .products .product-category {
  width: calc(14.285% - 11px) !important;
  margin: 0 !important;
  float: none !important;
}

.pd-combo-card {
  position: relative;
  height: 100%;
  min-height: 285px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 14px;
  padding: 22px 20px 20px;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.045);
  transition: all .25s ease;
}

.pd-combo-card:hover {
  transform: translateY(-3px);
  border-color: rgba(230, 0, 0, 0.22);
  box-shadow: 0 14px 30px rgba(20, 35, 55, 0.08);
}

.pd-combo-featured {
  border: 2px solid #e60000;
  box-shadow: 0 14px 34px rgba(230, 0, 0, 0.08);
}

.pd-combo-badge {
  position: absolute;
  top: -16px;
  left: 50%;
  transform: translateX(-50%);
  background: #e60000;
  color: #fff;
  font-size: 12px;
  line-height: 1;
  font-weight: 700;
  padding: 8px 16px;
  border-radius: 0 0 8px 8px;
  white-space: nowrap;
}

.pd-combo-content h3 {
  margin: 0 0 8px;
  font-size: 17px;
  line-height: 1.3;
  font-weight: 800;
  color: #111;
}

.pd-combo-price {
  margin: 0 0 16px !important;
  font-size: 15px;
  line-height: 1.35;
  font-weight: 800;
  color: #e60000;
}

.pd-combo-content ul {
  list-style: none;
  padding: 0;
  margin: 0 0 18px;
  text-align: left;
}

.pd-combo-content ul li {
  position: relative;
  padding-left: 22px;
  margin-bottom: 8px;
  font-size: 13px;
  line-height: 1.35;
  color: #333;
}

.pd-audience-text ul li:before, .pd-combo-content ul li:before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 1px;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background: rgba(230, 0, 0, 0.1);
  color: #e60000;
  font-size: 10px;
  line-height: 15px;
  text-align: center;
  font-weight: 800;
}

.pd-combo-btn {
  width: 100%;
  min-height: 38px;
  margin: 0 !important;
  font-size: 13px !important;
  line-height: 38px !important;
  font-weight: 700 !important;
  color: #e60000 !important;
  background: #fff !important;
  border-color: #e60000 !important;
}

.pd-combo-btn:hover {
  color: #fff !important;
  background: #e60000 !important;
  border-color: #e60000 !important;
}

.pd-combo-btn-main {
  color: #fff !important;
  background: #e60000 !important;
  border-color: #e60000 !important;
  box-shadow: 0 8px 18px rgba(230, 0, 0, 0.2);
}

.pd-roi-card {
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(180deg, #fff 0%, #fff8f3 100%);
  overflow: hidden;
}

.pd-roi-content {
  width: 100%;
  text-align: center;
}

.pd-roi-label {
  margin: 0 0 8px !important;
  font-size: 17px;
  line-height: 1.35;
  font-weight: 800;
  color: #111;
}

.pd-roi-content h3 {
  margin: 0 0 24px;
  font-size: 34px;
  line-height: 1.1;
  font-weight: 900;
  color: #e60000;
}

.pd-roi-visual {
  position: relative;
  height: 95px;
  margin-top: 6px;
}

.pd-roi-bars {
  position: absolute;
  left: 52px;
  bottom: 6px;
  display: flex;
  align-items: flex-end;
  gap: 8px;
}

.pd-roi-bars span {
  display: block;
  width: 36px;
  border-radius: 50% 50% 8px 8px;
  background: linear-gradient(180deg, #ffd36b 0%, #f1a51f 100%);
  box-shadow: inset 0 -5px 0 rgba(150, 90, 0, 0.12);
}

.pd-roi-bars span:nth-child(1) {
  height: 34px;
}

.pd-roi-bars span:nth-child(2) {
  height: 50px;
}

.pd-roi-bars span:nth-child(3) {
  height: 68px;
}

.pd-roi-arrow {
  position: absolute;
  right: 48px;
  bottom: 28px;
  font-size: 68px;
  line-height: 1;
  font-weight: 900;
  color: #e60000;
  transform: rotate(-4deg);
}

.pd-why-title h2 {
  margin: 0 0 12px;
  font-size: 24px;
  line-height: 1.25;
  font-weight: 800;
  color: #111;
}

.pd-why-item {
  height: 100%;
  min-height: 78px;
  display: flex;
  align-items: center;
  gap: 14px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 13px;
  padding: 16px 18px;
  box-shadow: 0 8px 20px rgba(20, 35, 55, 0.045);
  transition: all .25s ease;
}

.pd-why-icon {
  width: 44px;
  height: 44px;
  min-width: 44px;
  border-radius: 12px;
  background: rgba(230, 0, 0, 0.06);
  border: 1px solid rgba(230, 0, 0, 0.16);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #e60000;
}

.pd-why-icon:before {
  font-size: 23px;
  line-height: 1;
  color: #e60000;
  font-weight: 700;
}

.pd-why-icon-2:before {
  content: "◆";
}

.pd-why-icon-3:before {
  content: "✹";
}

.pd-why-icon-4:before {
  content: "✣";
}

.pd-why-content h3 {
  margin: 0 0 4px;
  font-size: 14px;
  line-height: 1.25;
  font-weight: 800;
  color: #111;
}

.pd-process-title h2 {
  margin: 0 0 18px;
  font-size: 24px;
  line-height: 1.25;
  font-weight: 800;
  color: #111;
}

.pd-process-col {
  position: relative;
  flex-basis: 20% !important;
  max-width: 20% !important;
}

.pd-process-item {
  position: relative;
  text-align: center;
  padding: 0 10px;
}

.pd-process-col:not(:last-child):after {
  content: "";
  position: absolute;
  top: 27px;
  right: -28px;
  width: 56px;
  height: 1px;
  background: #e60000;
  opacity: 0.7;
  z-index: 1;
}

.pd-process-col:not(:last-child):before {
  content: "";
  position: absolute;
  top: 23px;
  right: -31px;
  width: 8px;
  height: 8px;
  border-top: 1.5px solid #e60000;
  border-right: 1.5px solid #e60000;
  transform: rotate(45deg);
  z-index: 2;
}

.pd-process-icon {
  width: 54px;
  height: 54px;
  margin: 0 auto 12px;
  border-radius: 50%;
  background: rgba(230, 0, 0, 0.05);
  border: 1px solid rgba(230, 0, 0, 0.18);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #e60000;
}

.pd-benefit-icon:before, .pd-process-icon:before {
  font-size: 25px;
  line-height: 1;
  color: #e60000;
  font-weight: 700;
}

.pd-process-icon-1:before {
  content: "☷";
}

.pd-process-icon-2:before {
  content: "✎";
}

.pd-process-icon-5:before {
  content: "✓";
}

.pd-process-item h3 {
  margin: 0 0 5px;
  font-size: 14px;
  line-height: 1.3;
  font-weight: 800;
  color: #111;
}

.pd-process-item p {
  max-width: 150px;
  margin: 0 auto;
  font-size: 12.5px;
  line-height: 1.45;
  color: #666;
}

.pd-project-list .post-item .col-inner {
  height: 100%;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 13px;
  overflow: hidden;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.045);
  transition: all .25s ease;
}

.pd-project-list .box {
  background: transparent !important;
}

.pd-project-list .box-image {
  border-radius: 0;
  overflow: hidden;
}

.pd-project-list .box-image img {
  width: 100%;
  height: 118px;
  object-fit: cover;
  object-position: center;
}

.pd-project-list .box-text {
  padding: 12px 13px 14px !important;
  background: #fff !important;
}

.pd-project-list .post-title, .pd-project-list .post-title a {
  margin: 0 0 5px;
  font-size: 14px !important;
  line-height: 1.3 !important;
  font-weight: 800 !important;
  color: #111 !important;
}

.pd-project-list .from_the_blog_excerpt {
  margin: 0 !important;
  font-size: 12.5px !important;
  line-height: 1.45 !important;
  color: #555 !important;
}

.pd-project-more-card {
  height: 100%;
  min-height: 205px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 13px;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.045);
  transition: all .25s ease;
}

.pd-project-more-card a {
  height: 100%;
  padding: 24px 16px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  text-align: center;
}

.pd-project-more-icon {
  width: 54px;
  height: 54px;
  margin-bottom: 16px;
  border-radius: 50%;
  border: 1px solid rgba(230, 0, 0, 0.2);
  color: #e60000;
  background: rgba(230, 0, 0, 0.03);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 34px;
  line-height: 1;
  font-weight: 300;
}

.pd-solar-card-content h3, .pd-project-more-card h3 {
  margin: 0 0 8px;
  font-size: 15px;
  line-height: 1.3;
  font-weight: 800;
  color: #111;
}

.pd-project-more-card p {
  margin: 0;
  font-size: 12.5px;
  line-height: 1.45;
  color: #666;
}

.pd-news-viewall {
  color: #e60000 !important;
  border-color: #eeeeee !important;
  background: #fff !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

.pd-btn-calc:hover, .pd-audience-btn-light:hover, .pd-news-viewall:hover {
  border-color: #e60000 !important;
  color: #e60000 !important;
}

.pd-news-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}

.pd-news-card {
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.045);
  transition: all .25s ease;
}

.pd-benefit-item:hover, .pd-solar-card:hover, .pd-why-item:hover, .pd-project-list .post-item .col-inner:hover, .pd-project-more-card:hover, .pd-news-card:hover {
  transform: translateY(-3px);
  border-color: rgba(230, 0, 0, 0.18);
  box-shadow: 0 14px 30px rgba(20, 35, 55, 0.08);
}

.pd-news-image {
  position: relative;
  display: block;
  height: 160px;
  overflow: hidden;
  background: #f5f5f5;
}

.pd-news-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .35s ease;
}

.pd-news-badge {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 11px;
  background: #e60000;
  color: #fff;
  border-radius: 6px;
  font-size: 11px;
  line-height: 24px;
  font-weight: 800;
  text-transform: uppercase;
  box-shadow: 0 6px 14px rgba(230, 0, 0, 0.22);
}

.pd-news-content h3 {
  margin: 0 0 8px;
  font-size: 17px;
  line-height: 1.35;
  font-weight: 800;
  color: #111;
}

.pd-smartcat-title h2 span, .pd-news-content h3 a {
  color: #111;
}

.pd-news-content p {
  margin: 0 0 12px;
  font-size: 13.5px;
  line-height: 1.5;
  color: #555;
}

.pd-news-readmore {
  display: inline-block;
  font-size: 13px;
  line-height: 1.3;
  font-weight: 800;
  color: #e60000;
}

.pd-news-image-placeholder {
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #f5f5f5, #ffffff);
}

.pd-consult-left {
  height: 100%;
  min-height: 190px;
  padding: 26px 26px;
  border-radius: 14px 0 0 14px;
  background: linear-gradient(135deg, #b40000 0%, #e60000 55%, #a80000 100%);
  color: #fff;
  position: relative;
  overflow: hidden;
}

.pd-consult-left:after {
  content: "";
  position: absolute;
  right: -60px;
  bottom: -80px;
  width: 190px;
  height: 190px;
  background: rgba(255,255,255,0.12);
  border-radius: 50%;
}

.pd-consult-left h2 {
  margin: 0 0 8px;
  font-size: 22px;
  line-height: 1.2;
  font-weight: 800;
  color: #fff;
}

.pd-consult-left p {
  margin: 0 0 16px;
  font-size: 14px;
  line-height: 1.5;
  color: rgba(255,255,255,0.92);
}

.pd-consult-left ul li {
  position: relative;
  padding-left: 24px;
  margin-bottom: 9px;
  font-size: 13.5px;
  line-height: 1.35;
  color: #fff;
  margin-left: 0;
}

.pd-consult-left ul li:before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: rgba(255,255,255,0.16);
  color: #fff;
  font-size: 10px;
  line-height: 16px;
  text-align: center;
  font-weight: 800;
}

.pd-consult-form-box {
  height: 100%;
  min-height: 190px;
  padding: 26px 26px 22px;
  background: #fff;
  border-top: 1px solid #eeeeee;
  border-bottom: 1px solid #eeeeee;
  box-shadow: 0 10px 24px rgba(20, 35, 55, 0.045);
}

.pd-cf7-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px 18px;
}

.pd-cf7-field label {
  display: block;
  margin-bottom: 6px;
  font-size: 13px;
  line-height: 1.3;
  font-weight: 700;
  color: #222;
}

.pd-cf7-field input, .pd-cf7-field select {
  height: 38px;
  margin: 0 !important;
  border: 1px solid #e5e5e5 !important;
  border-radius: 6px !important;
  background: #fff !important;
  font-size: 13px !important;
  color: #222 !important;
  box-shadow: none !important;
}

.pd-cf7-submit {
  grid-column: 2 / 3;
}

.pd-cf7-submit input[type="submit"] {
  width: 100%;
  height: 40px;
  margin: 0 !important;
  background: #e60000 !important;
  border-color: #e60000 !important;
  border-radius: 6px !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  text-transform: none !important;
  box-shadow: 0 8px 18px rgba(230, 0, 0, 0.18);
}

.pd-consult-form-box .wpcf7-not-valid-tip {
  margin-top: 4px;
  font-size: 12px;
}

.pd-consult-form-box .wpcf7-response-output {
  margin: 12px 0 0 !important;
  padding: 8px 12px !important;
  border-radius: 6px;
  font-size: 13px;
}

.pd-consult-commit {
  height: 100%;
  min-height: 190px;
  padding: 26px 26px;
  border-radius: 0 14px 14px 0;
  background: linear-gradient(135deg, #fff6f2 0%, #fff 100%);
  border: 1px solid #f0e5df;
  border-left: 0;
  position: relative;
  overflow: hidden;
}

.pd-consult-commit h3 {
  margin: 0 0 18px;
  font-size: 17px;
  line-height: 1.3;
  font-weight: 800;
  color: #e60000;
}

.pd-consult-commit ul li {
  position: relative;
  padding-left: 24px;
  margin-bottom: 12px;
  font-size: 13.5px;
  line-height: 1.35;
  color: #333;
  margin-left: 0;
}

.pd-consult-commit ul li:before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: rgba(230, 0, 0, 0.08);
  color: #e60000;
  font-size: 10px;
  line-height: 16px;
  text-align: center;
  font-weight: 800;
}

.pd-commit-shield {
  position: absolute;
  right: 28px;
  bottom: 22px;
  width: 58px;
  height: 58px;
  border-radius: 18px;
  background: linear-gradient(135deg, #ffcf66 0%, #f5a623 100%);
  color: #b40000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 30px;
  font-weight: 900;
  box-shadow: 0 10px 20px rgba(245, 166, 35, 0.22);
}

.pd-smartcat-title h2, .pd-combo-title h2, .pd-project-title h2, .pd-news-title h2, .pd-faq-title h2 {
  margin: 0 0 14px;
  font-size: 24px;
  line-height: 1.25;
  font-weight: 800;
  color: #111;
}

.pd-faq-list {
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 13px;
  overflow: hidden;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.045);
}

.pd-faq-list .accordion-item {
  border: 0 !important;
  border-bottom: 1px solid #eeeeee !important;
  margin: 0 !important;
}

.pd-faq-list .accordion-title {
  position: relative;
  min-height: 42px;
  padding: 12px 42px 12px 38px !important;
  border: 0 !important;
  background: #fff !important;
  font-size: 13.5px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  color: #222 !important;
  transition: all .25s ease;
}

.pd-faq-list .accordion-title:before {
  content: "?";
  position: absolute;
  left: 14px;
  top: 50%;
  width: 16px;
  height: 16px;
  transform: translateY(-50%);
  border-radius: 50%;
  border: 1px solid rgba(230, 0, 0, 0.22);
  background: rgba(230, 0, 0, 0.04);
  color: #e60000;
  font-size: 10px;
  line-height: 15px;
  text-align: center;
  font-weight: 800;
}

.pd-faq-list .accordion-title .toggle {
  position: absolute !important;
  right: 12px !important;
  top: 50% !important;
  width: 22px !important;
  height: 22px !important;
  transform: translateY(-50%) !important;
  opacity: 1 !important;
  margin: 0 !important;
}

.pd-faq-list .accordion-title .toggle i {
  color: #111 !important;
  font-size: 13px !important;
}

.pd-faq-list .accordion-inner {
  padding: 0 38px 14px 38px !important;
  background: #fff8f8 !important;
  border: 0 !important;
}

.pd-faq-list .accordion-inner p {
  margin: 0;
  font-size: 13px;
  line-height: 1.55;
  color: #555;
}

.pd-final-cta-row {
  position: relative;
  min-height: 118px;
  overflow: hidden;
  border-radius: 16px;
  background: linear-gradient(90deg, #c60000 0%, #eb0000 52%, #cf0000 100%);
  box-shadow: 0 12px 28px rgba(230, 0, 0, 0.14);
  padding: 15px;
}

.pd-final-cta-row:before {
  content: "";
  position: absolute;
  right: 230px;
  top: -82px;
  width: 250px;
  height: 250px;
  border-radius: 50%;
  background: rgba(255,255,255,0.08);
  z-index: 1;
  pointer-events: none;
}

.pd-final-cta-left {
  padding: 18px 16px 16px 26px !important;
  position: relative;
  z-index: 5;
}

.pd-final-cta-text h2 {
  margin: 0 0 4px;
  max-width: 760px;
  font-size: 18px;
  line-height: 1.18;
  font-weight: 800;
  color: #fff;
}

.pd-final-cta-text p {
  margin: 0 0 12px;
  font-size: 12.5px;
  line-height: 1.35;
  color: rgba(255,255,255,0.92);
}

.pd-final-cta-buttons {
  max-width: 430px;
}

.pd-final-cta-buttons .col-inner {
  padding-right: 8px;
}

.pd-final-btn {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 36px;
  margin: 0 !important;
  font-size: 12.5px !important;
  line-height: 36px !important;
  font-weight: 800 !important;
  text-transform: none !important;
  border-radius: 6px !important;
}

.pd-final-btn-white {
  background: #fff !important;
  color: #e60000 !important;
  border-color: #fff !important;
  box-shadow: none !important;
}

.pd-final-btn-white:hover {
  background: #fff3f3 !important;
  color: #c90000 !important;
}

.pd-final-btn-outline {
  background: transparent !important;
  color: #fff !important;
  border-color: rgba(255,255,255,0.58) !important;
}

.pd-final-btn-outline:hover {
  background: rgba(255,255,255,0.1) !important;
  border-color: #fff !important;
  color: #fff !important;
}

.pd-final-cta-right {
  position: relative;
  padding: 0 !important;
  min-height: 118px;
  z-index: 4;
}

.pd-final-cta-right .col-inner {
  height: 118px;
  min-height: 118px;
  position: relative;
}

.pd-final-cta-image {
  position: absolute;
  right: 68px;
  bottom: -10px;
  width: 255px;
  max-width: 75%;
  z-index: 3;
  margin: 0 !important;
}

.pd-final-cta-icons {
  position: absolute;
  right: 14px;
  top: 16px;
  z-index: 6;
  width: 54px;
}

.pd-final-icon-item {
  width: 54px;
  min-height: 48px;
  margin-bottom: 8px;
  padding: 6px 4px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,0.34);
  background: rgba(255,255,255,0.12);
  color: #fff;
  text-align: center;
  backdrop-filter: blur(4px);
}

.pd-final-icon-item span {
  display: block;
  margin-bottom: 2px;
  font-size: 13px;
  line-height: 1;
  color: #fff;
}

.pd-final-icon-item p {
  margin: 0;
  font-size: 8px;
  line-height: 1.12;
  font-weight: 700;
  color: #fff;
}

.pd-footer-section {
  background: #fff;
  border-top: 1px solid #eeeeee;
}

.pd-footer-main-row {
  padding-top: 4px;
  padding-bottom: 18px;
}

.pd-footer-logo {
  max-width: 145px;
  margin-bottom: 12px;
}

.pd-footer-logo img {
  width: auto;
  max-height: 44px;
}

.pd-footer-brand p {
  max-width: 250px;
  margin: 0 0 12px;
  line-height: 1.55;
  color: #555;
}

.pd-footer-social {
  display: flex;
  align-items: center;
  gap: 8px;
}

.pd-footer-social a {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: #111;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  line-height: 1;
  font-weight: 800;
  text-decoration: none;
  transition: all .25s ease;
}

.pd-footer-social a:hover {
  background: #e60000;
  color: #fff;
  transform: translateY(-2px);
}

.pd-footer-menu h3, .pd-footer-contact h3, .pd-footer-newsletter h3 {
  margin: 0 0 10px;
  font-size: 14px;
  line-height: 1.3;
  font-weight: 800;
  color: #111;
}

.pd-footer-menu ul li {
  margin-bottom: 7px;
}

.pd-footer-menu ul li a {
  font-size: 13px;
  line-height: 1.4;
  color: #555;
  text-decoration: none;
}

.pd-footer-contact ul li {
  position: relative;
  padding-left: 22px;
  margin-bottom: 7px;
  line-height: 1.45;
  color: #555;
}

.pd-footer-contact ul li span {
  position: absolute;
  left: 0;
  top: 1px;
  width: 15px;
  text-align: center;
  color: #e60000;
  font-size: 12px;
}

.pd-footer-contact ul li a {
  color: #555;
  text-decoration: none;
}

.pd-footer-newsletter p {
  margin: 0 0 12px;
  line-height: 1.5;
  color: #555;
}

.pd-newsletter-form {
  display: flex;
  align-items: center;
  width: 100%;
  height: 38px;
  border: 1px solid #eeeeee;
  border-radius: 7px;
  overflow: hidden;
  background: #fff;
}

.pd-newsletter-form input {
  flex: 1;
  height: 38px;
  margin: 0 !important;
  padding: 0 11px !important;
  border: 0 !important;
  box-shadow: none !important;
  background: #fff !important;
  font-size: 12.5px !important;
  color: #333 !important;
}

.pd-newsletter-form input:focus {
  box-shadow: none !important;
}

.pd-newsletter-form button {
  width: 38px;
  height: 38px;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #e60000 !important;
  color: #fff !important;
  font-size: 15px;
  line-height: 38px;
  font-weight: 800;
  cursor: pointer;
}

.pd-newsletter-form button:hover {
  background: #c90000 !important;
}

.pd-footer-bottom-row {
  border-top: 1px solid #eeeeee;
  padding-top: 10px;
  padding-bottom: 10px;
}

.pd-footer-copyright p {
  margin: 0;
  text-align: center;
  font-size: 12.5px;
  line-height: 1.4;
  color: #777;
}

.pd-page-hero:before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
  90deg,
  rgba(0, 0, 0, 0.88) 0%,
  rgba(0, 0, 0, 0.78) 28%,
  rgba(0, 0, 0, 0.42) 55%,
  rgba(0, 0, 0, 0.08) 100%
  );
  pointer-events: none;
}

.pd-page-hero .section-bg {
  filter: saturate(0.95) contrast(1.03);
}

.pd-page-hero-content {
  padding-top: 56px !important;
  padding-bottom: 56px !important;
}

.pd-page-hero-text h1 {
  margin: 0;
  font-size: 52px;
  line-height: 1.12;
  font-weight: 900;
  color: #fff;
  letter-spacing: -0.8px;
}

.pd-page-hero-text p {
  margin: 0;
  max-width: 500px;
  font-size: 20px;
  line-height: 1.55;
  font-weight: 600;
  color: #fff;
}

.pd-about-intro-left {
  padding-right: 48px !important;
}

.pd-about-intro-text .pd-about-label {
  margin: 0 0 14px;
  font-size: 15px;
  line-height: 1.3;
  font-weight: 800;
  color: #e60000;
  text-transform: uppercase;
  letter-spacing: .3px;
}

.pd-about-intro-text h2 {
  margin: 0 0 24px;
  max-width: 560px;
  font-size: 38px;
  line-height: 1.22;
  font-weight: 850;
  color: #111;
  letter-spacing: -0.6px;
}

.pd-about-intro-text p {
  margin: 0 0 26px;
  max-width: 560px;
  font-size: 16px;
  line-height: 1.75;
  color: #333;
}

.pd-about-intro-btn {
  min-height: 42px;
  padding: 0 22px !important;
  margin: 0 !important;
  background-color: #e60000 !important;
  border-color: #e60000 !important;
  color: #fff !important;
  font-size: 14px !important;
  line-height: 42px !important;
  font-weight: 800 !important;
  text-transform: none !important;
  border-radius: 6px !important;
  box-shadow: 0 10px 22px rgba(230, 0, 0, 0.18);
}

.pd-about-intro-btn:hover {
  background-color: #c90000 !important;
  border-color: #c90000 !important;
  color: #fff !important;
}

.pd-about-intro-right {
  padding-left: 36px !important;
}

.pd-about-intro-image img {
  width: 100%;
  height: 330px;
  object-fit: cover;
  object-position: center;
  display: block;
  border-radius: 10px;
  box-shadow: 0 14px 34px rgba(20, 35, 55, 0.08);
}

.pd-vmg-wrap {
  background: linear-gradient(180deg, #f8f9fb 0%, #ffffff 100%);
  border-radius: 14px;
  padding: 28px 28px 30px !important;
  box-shadow: 0 10px 28px rgba(20, 35, 55, 0.04);
}

.pd-vmg-title h2 {
  margin: 0 0 22px;
  text-align: center;
  font-size: 20px;
  line-height: 1.35;
  font-weight: 800;
  color: #e60000;
  letter-spacing: .3px;
}

.pd-vmg-row {
  margin-left: -12px !important;
  margin-right: -12px !important;
}

.pd-vmg-col {
  padding-left: 12px !important;
  padding-right: 12px !important;
}

.pd-vmg-card {
  height: 100%;
  min-height: 210px;
  padding: 34px 28px 30px;
  background: #fff;
  border-radius: 12px;
  border: 1px solid #f0f0f0;
  text-align: center;
  box-shadow: 0 10px 24px rgba(20, 35, 55, 0.045);
  transition: all .25s ease;
}

.pd-vmg-card:hover {
  transform: translateY(-3px);
  border-color: rgba(230, 0, 0, 0.16);
  box-shadow: 0 16px 34px rgba(20, 35, 55, 0.08);
}

.pd-vmg-icon {
  width: 72px;
  height: 72px;
  margin: 0 auto 22px;
  border-radius: 50%;
  background: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  box-shadow: 0 12px 24px rgba(230, 0, 0, 0.18);
}

.pd-vmg-icon:before {
  font-size: 34px;
  line-height: 1;
  color: #fff;
  font-weight: 700;
}

.pd-vmg-eye:before {
  content: "◉";
}

.pd-vmg-target:before {
  content: "◎";
}

.pd-vmg-diamond:before {
  content: "◇";
}

.pd-vmg-card h3 {
  margin: 0 0 14px;
  font-size: 22px;
  line-height: 1.3;
  font-weight: 800;
  color: #111;
}

.pd-vmg-card p {
  margin: 0;
  font-size: 15px;
  line-height: 1.65;
  color: #333;
}

.pd-vmg-card ul {
  max-width: 330px;
  margin: 0 auto;
  padding: 0;
  list-style: none;
  text-align: left;
}

.pd-vmg-card ul li {
  position: relative;
  padding-left: 26px;
  margin-bottom: 10px;
  font-size: 15px;
  line-height: 1.45;
  color: #333;
}

.pd-about-why-title h2 {
  margin: 0 0 24px;
  text-align: center;
  font-size: 20px;
  line-height: 1.35;
  font-weight: 800;
  color: #e60000;
  letter-spacing: .2px;
}

.pd-about-why-card {
  height: 100%;
  min-height: 205px;
  padding: 34px 24px 30px;
  background: #fff;
  border: 1px solid #e9e9e9;
  border-radius: 10px;
  text-align: center;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.035);
  transition: all .25s ease;
}

.pd-about-why-icon {
  width: 58px;
  height: 58px;
  margin: 0 auto 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #e60000;
}

.pd-about-why-icon:before {
  font-size: 46px;
  line-height: 1;
  color: #e60000;
  font-weight: 400;
}

.pd-about-why-card h3 {
  margin: 0 0 12px;
  font-size: 19px;
  line-height: 1.35;
  font-weight: 800;
  color: #111;
}

.pd-about-why-card p {
  max-width: 250px;
  margin: 0 auto;
  font-size: 14.5px;
  line-height: 1.6;
  color: #333;
}

.pd-about-stats-wrap {
  overflow: hidden;
  border-radius: 10px;
  background: linear-gradient(135deg, #b40000 0%, #e60000 52%, #b90000 100%);
  box-shadow: 0 14px 32px rgba(230, 0, 0, 0.14);
  position: relative;
}

.pd-about-stats-wrap:before {
  content: "";
  position: absolute;
  left: -80px;
  top: -100px;
  width: 260px;
  height: 260px;
  border-radius: 50%;
  background: rgba(255,255,255,0.06);
  pointer-events: none;
}

.pd-about-stats-wrap:after {
  content: "";
  position: absolute;
  right: -90px;
  bottom: -120px;
  width: 280px;
  height: 280px;
  border-radius: 50%;
  background: rgba(255,255,255,0.06);
  pointer-events: none;
}

.pd-about-stats-title h2 {
  margin: 0;
  padding: 22px 20px 4px;
  text-align: center;
  font-size: 19px;
  line-height: 1.35;
  font-weight: 800;
  color: #fff;
  letter-spacing: .3px;
}

.pd-about-stats-list {
  position: relative;
  z-index: 2;
  padding: 14px 0 28px !important;
}

.pd-about-stat-col:not(:last-child):after {
  content: "";
  position: absolute;
  right: 0;
  top: 18px;
  bottom: 18px;
  width: 1px;
  background: rgba(255,255,255,0.26);
}

.pd-about-stat-card {
  text-align: center;
  color: #fff;
  padding: 0 18px;
}

.pd-about-stat-icon {
  width: 46px;
  height: 46px;
  margin: 0 auto 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}

.pd-about-stat-icon:before {
  font-size: 36px;
  line-height: 1;
  color: #fff;
  font-weight: 400;
}

.pd-stat-icon-project:before {
  content: "▦";
}

.pd-stat-icon-year:before {
  content: "♕";
}

.pd-stat-icon-location:before {
  content: "⌖";
}

.pd-about-stat-card h3 {
  margin: 0 0 5px;
  font-size: 36px;
  line-height: 1.05;
  font-weight: 900;
  color: #fff;
  letter-spacing: -0.5px;
}

.pd-about-stat-card p {
  margin: 0;
  font-size: 14px;
  line-height: 1.4;
  font-weight: 600;
  color: rgba(255,255,255,0.92);
}

.pd-timeline-wrap h2 {
  margin: 0 0 34px;
  text-align: center;
  font-size: 22px;
  line-height: 1.35;
  font-weight: 800;
  color: #e60000;
  letter-spacing: .2px;
}

.pd-timeline-nav {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 0;
  margin-bottom: 28px;
}

.pd-timeline-nav:before {
  content: "";
  position: absolute;
  left: 8%;
  right: 8%;
  top: 30px;
  height: 2px;
  background: #d6d6d6;
  z-index: 1;
}

.pd-timeline-nav label {
  position: relative;
  z-index: 2;
  display: block;
  text-align: center;
  cursor: pointer;
  padding: 0 16px;
}

.pd-timeline-nav label span {
  width: 62px;
  height: 62px;
  margin: 0 auto 18px;
  border-radius: 50%;
  background: #c90000;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  line-height: 1;
  font-weight: 800;
  box-shadow: 0 8px 20px rgba(230, 0, 0, 0.18);
  transition: all .25s ease;
}

.pd-timeline-nav label strong {
  display: block;
  margin: 0 0 8px;
  font-size: 15px;
  line-height: 1.35;
  font-weight: 800;
  color: #111;
  transition: all .25s ease;
}

.pd-timeline-nav label small {
  display: block;
  max-width: 190px;
  margin: 0 auto;
  font-size: 13px;
  line-height: 1.5;
  color: #555;
}

.pd-timeline-nav label:hover span {
  background: #e60000;
  transform: translateY(-3px);
}

#pd_tl_2019:checked ~ .pd-timeline-nav label[for="pd_tl_2019"] span, #pd_tl_2020:checked ~ .pd-timeline-nav label[for="pd_tl_2020"] span, #pd_tl_2022:checked ~ .pd-timeline-nav label[for="pd_tl_2022"] span, #pd_tl_2024:checked ~ .pd-timeline-nav label[for="pd_tl_2024"] span, #pd_tl_2025:checked ~ .pd-timeline-nav label[for="pd_tl_2025"] span {
  background: #e60000;
  transform: scale(1.08);
}

.pd-timeline-panel {
  display: none;
  grid-template-columns: 1.15fr .85fr;
  gap: 28px;
  align-items: center;
  padding: 28px 32px;
  background: linear-gradient(135deg, #fff 0%, #fff7f7 100%);
  border: 1px solid #eeeeee;
  border-radius: 14px;
  box-shadow: 0 12px 30px rgba(20, 35, 55, 0.06);
  animation: pdTimelineFade .25s ease;
}

#pd_tl_2019:checked ~ .pd-timeline-panels .pd-panel-2019, #pd_tl_2020:checked ~ .pd-timeline-panels .pd-panel-2020, #pd_tl_2022:checked ~ .pd-timeline-panels .pd-panel-2022, #pd_tl_2024:checked ~ .pd-timeline-panels .pd-panel-2024, #pd_tl_2025:checked ~ .pd-timeline-panels .pd-panel-2025 {
  display: grid;
}

.pd-panel-content h3 {
  margin: 0 0 12px;
  font-size: 25px;
  line-height: 1.3;
  font-weight: 800;
  color: #111;
}

.pd-panel-content p {
  margin: 0;
  font-size: 15px;
  line-height: 1.75;
  color: #333;
}

.pd-panel-list {
  background: #fff;
  border-radius: 12px;
  border: 1px solid #eeeeee;
  padding: 20px 22px;
}

.pd-panel-list ul li {
  position: relative;
  padding-left: 26px;
  margin-bottom: 11px;
  font-size: 14.5px;
  line-height: 1.5;
  color: #333;
}

.pd-vmg-card ul li:before, .pd-panel-list ul li:before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 1px;
  width: 17px;
  height: 17px;
  border-radius: 50%;
  background: #e60000;
  color: #fff;
  font-size: 11px;
  line-height: 17px;
  text-align: center;
  font-weight: 800;
}

.pd-page-hero, .pd-contact-hero {
  position: relative;
  overflow: hidden;
  min-height: 320px;
}

.pd-contact-hero:before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
  90deg,
  rgba(0, 0, 0, 0.9) 0%,
  rgba(0, 0, 0, 0.78) 30%,
  rgba(0, 0, 0, 0.42) 58%,
  rgba(0, 0, 0, 0.08) 100%
  );
  pointer-events: none;
}

.pd-contact-hero .section-bg {
  filter: saturate(0.95) contrast(1.04);
}

.pd-page-hero-row, .pd-contact-hero .pd-page-hero-row {
  position: relative;
  z-index: 2;
  min-height: 320px;
}

.pd-contact-hero .pd-page-hero-text {
  max-width: 720px;
}

.pd-breadcrumb, .pd-contact-hero .pd-breadcrumb {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 18px;
  font-size: 14px;
  line-height: 1.4;
  color: rgba(255, 255, 255, 0.86);
  font-weight: 600;
}

.pd-breadcrumb a, .pd-contact-hero .pd-breadcrumb a {
  color: rgba(255, 255, 255, 0.88);
  text-decoration: none;
}

.pd-breadcrumb span, .pd-contact-hero .pd-breadcrumb span {
  color: rgba(255, 255, 255, 0.78);
}

.pd-contact-hero .pd-page-hero-text h1 {
  margin: 0;
  font-size: 50px;
  line-height: 1.12;
  font-weight: 900;
  color: #fff;
  letter-spacing: -0.8px;
  text-transform: uppercase;
}

.pd-title-line, .pd-contact-hero .pd-title-line {
  width: 58px;
  height: 4px;
  margin: 22px 0 24px;
  border-radius: 99px;
  background: #e60000;
}

.pd-contact-hero .pd-page-hero-text p {
  margin: 0;
  max-width: 560px;
  font-size: 19px;
  line-height: 1.55;
  font-weight: 600;
  color: #fff;
}

.pd-contact-info-item {
  height: 100%;
  min-height: 170px;
  display: flex;
  align-items: center;
  gap: 22px;
  padding: 34px 30px;
  background: #fff;
  border: 1px solid #e8e8e8;
  border-radius: 10px;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.035);
  transition: all .25s ease;
}

.pd-about-why-card:hover, .pd-contact-info-item:hover {
  transform: translateY(-3px);
  border-color: rgba(230, 0, 0, 0.18);
  box-shadow: 0 14px 32px rgba(20, 35, 55, 0.08);
}

.pd-contact-info-icon {
  width: 58px;
  height: 58px;
  min-width: 58px;
  border-radius: 50%;
  background: #e60000;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  line-height: 1;
  box-shadow: 0 10px 22px rgba(230, 0, 0, 0.18);
}

.pd-contact-info-content h3 {
  margin: 0 0 8px;
  font-size: 16px;
  line-height: 1.3;
  font-weight: 800;
  color: #111;
}

.pd-contact-info-content p {
  margin: 0 0 10px;
  font-size: 14px;
  line-height: 1.35;
  font-weight: 800;
  color: #e60000;
}

.pd-contact-info-content p a {
  color: #e60000;
  text-decoration: none;
}

.pd-contact-info-content span {
  display: block;
  font-size: 14px;
  line-height: 1.45;
  color: #555;
}

.pd-contact-info-col:last-child .pd-contact-info-content p {
  font-size: 14px;
  line-height: 1.45;
}

.pd-contact-form-card {
  height: 100%;
  padding: 34px 36px 32px;
  background: #fff;
  border: 1px solid #e8e8e8;
  border-radius: 10px;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.035);
}

.pd-contact-title-line {
  width: 54px;
  height: 3px;
  margin: 14px 0 20px;
  border-radius: 99px;
  background: #e60000;
}

.pd-contact-form-title p {
  margin: 0 0 28px;
  font-size: 15px;
  line-height: 1.65;
  color: #444;
}

.pd-contact-cf7 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px 26px;
}

.pd-contact-field-full {
  grid-column: 1 / -1;
}

.pd-contact-field label {
  display: block;
  margin-bottom: 8px;
  font-size: 13.5px;
  line-height: 1.3;
  font-weight: 800;
  color: #222;
}

.pd-contact-field input, .pd-contact-field select, .pd-contact-field textarea {
  width: 100%;
  margin: 0 !important;
  border: 1px solid #e2e2e2 !important;
  border-radius: 6px !important;
  background: #fff !important;
  color: #222 !important;
  font-size: 14px !important;
  box-shadow: none !important;
}

.pd-contact-field input, .pd-contact-field select {
  height: 48px;
}

.pd-contact-field textarea {
  min-height: 128px;
  resize: vertical;
  padding-top: 14px !important;
}

.pd-cf7-field input:focus, .pd-cf7-field select:focus, .pd-contact-field input:focus, .pd-contact-field select:focus, .pd-contact-field textarea:focus {
  border-color: #e60000 !important;
  box-shadow: 0 0 0 3px rgba(230, 0, 0, 0.08) !important;
}

.pd-contact-policy {
  font-size: 13.5px;
  line-height: 1.5;
  color: #555;
}

.pd-contact-policy a {
  color: #e60000;
  font-weight: 800;
}

.pd-contact-submit input[type="submit"] {
  width: 100%;
  height: 48px;
  margin: 0 !important;
  background: #e60000 !important;
  border-color: #e60000 !important;
  border-radius: 6px !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  text-transform: none !important;
  box-shadow: 0 10px 22px rgba(230, 0, 0, 0.18);
}

.pd-combo-btn-main:hover, .pd-cf7-submit input[type="submit"]:hover, .pd-contact-submit input[type="submit"]:hover {
  background: #c90000 !important;
  border-color: #c90000 !important;
}

.pd-consult-form-box .wpcf7-spinner, .pd-timeline-tabs input, .pd-contact-form-card .wpcf7-spinner {
  display: none;
}

.pd-contact-form-card .wpcf7-not-valid-tip {
  margin-top: 5px;
  font-size: 12px;
}

.pd-contact-form-card .wpcf7-response-output {
  margin: 16px 0 0 !important;
  padding: 10px 14px !important;
  border-radius: 6px;
  font-size: 13px;
}

.pd-contact-map-card {
  overflow: hidden;
  height: 270px;
  margin-bottom: 22px;
  background: #f5f5f5;
  border: 1px solid #e8e8e8;
  border-radius: 10px;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.035);
}

.pd-contact-map-image img {
  width: 100%;
  height: 270px;
  object-fit: cover;
  object-position: center;
  display: block;
}

.pd-working-card {
  padding: 30px 32px 28px;
  background: #fff;
  border: 1px solid #e8e8e8;
  border-radius: 10px;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.035);
}

.pd-working-content h3 {
  margin: 0;
  font-size: 26px;
  line-height: 1.25;
  font-weight: 900;
  color: #111;
}

.pd-working-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 15px 0;
  border-bottom: 1px solid #eeeeee;
}

.pd-working-row span {
  font-size: 15px;
  line-height: 1.4;
  color: #333;
  font-weight: 600;
}

.pd-working-row strong {
  font-size: 15px;
  line-height: 1.4;
  color: #111;
  font-weight: 800;
  white-space: nowrap;
}

.pd-working-content p {
  margin: 16px 0 0;
  font-size: 14px;
  line-height: 1.5;
  color: #555;
}

.pd-contact-faq-wrap {
  padding: 28px 24px 26px !important;
  background: #fff;
  border: 1px solid #e8e8e8;
  border-radius: 10px;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.035);
}

.pd-contact-form-title h2, .pd-contact-faq-title h2 {
  margin: 0;
  font-size: 28px;
  line-height: 1.25;
  font-weight: 900;
  color: #111;
}

.pd-contact-faq-line {
  width: 54px;
  height: 3px;
  margin: 14px auto 24px;
  border-radius: 99px;
  background: #e60000;
}

.pd-contact-faq-row {
  margin-left: -14px !important;
  margin-right: -14px !important;
}

.pd-contact-faq-row .col {
  padding-left: 14px !important;
  padding-right: 14px !important;
}

.pd-contact-faq-list {
  overflow: hidden;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 8px;
}

.pd-faq-list .accordion, .pd-contact-faq-list .accordion {
  margin: 0;
}

.pd-contact-faq-list .accordion-title {
  position: relative;
  min-height: 52px;
  padding: 16px 48px 16px 20px !important;
  border: 0 !important;
  background: #fff !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  font-weight: 800 !important;
  color: #222 !important;
  transition: all .25s ease;
}

.pd-contact-faq-list .accordion-title .toggle {
  position: absolute !important;
  right: 16px !important;
  top: 50% !important;
  width: 22px !important;
  height: 22px !important;
  margin: 0 !important;
  transform: translateY(-50%) !important;
  opacity: 1 !important;
}

.pd-contact-faq-list .accordion-title .toggle i {
  color: #111 !important;
  font-size: 14px !important;
}

.pd-contact-faq-list .accordion-inner {
  padding: 0 20px 16px 20px !important;
  background: #fff8f8 !important;
  border: 0 !important;
}

.pd-contact-faq-list .accordion-inner p {
  margin: 0;
  font-size: 14px;
  line-height: 1.65;
  color: #555;
}

.pd-family-hero-v2 {
  position: relative;
  min-height: 430px;
  overflow: hidden;
  background-color: #f8fbfd;
}

.pd-family-hero-v2:before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
  90deg,
  rgba(255,255,255,1) 0%,
  rgba(255,255,255,0.98) 25%,
  rgba(255,255,255,0.82) 43%,
  rgba(255,255,255,0.35) 58%,
  rgba(255,255,255,0.02) 78%
  );
  pointer-events: none;
}

.pd-contact-hero .pd-page-hero-content, .pd-family-hero-v2-content {
  padding-top: 58px !important;
  padding-bottom: 58px !important;
}

.pd-family-hero-v2-text {
  max-width: 660px;
}

.pd-family-label {
  margin: 0 0 14px !important;
  font-size: 14px;
  line-height: 1.35;
  font-weight: 900;
  color: #e60000;
  text-transform: uppercase;
  letter-spacing: .4px;
}

.pd-family-hero-v2-text h1 {
  margin: 0 0 22px;
  font-size: 54px;
  line-height: 1.12;
  font-weight: 900;
  color: #111;
  letter-spacing: -1px;
}

.pd-family-desc {
  max-width: 590px;
  margin: 0 0 26px !important;
  font-size: 18px;
  line-height: 1.7;
  color: #3c3c3c;
  font-weight: 500;
}

.pd-family-hero-v2-buttons {
  max-width: 470px;
  margin-bottom: 20px;
}

.pd-family-btn {
  min-height: 44px;
  margin: 0 !important;
  padding: 0 22px !important;
  font-size: 14px !important;
  line-height: 44px !important;
  font-weight: 800 !important;
  text-transform: none !important;
  border-radius: 7px !important;
}

.pd-family-btn-light:hover {
  color: #e60000 !important;
  border-color: #e60000 !important;
}

.pd-family-checks ul li {
  position: relative;
  padding-left: 21px;
  font-size: 14px;
  line-height: 1.4;
  font-weight: 700;
  color: #333;
}

.pd-family-checks ul li:before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: #111;
  font-size: 13px;
  font-weight: 900;
}

.pd-family-floating-cards {
  position: absolute;
  z-index: 4;
  right: max(40px, calc((100vw - 1170px) / 2));
  bottom: 34px;
  display: flex;
  gap: 16px;
  max-width: 610px;
}

.pd-family-float-card {
  width: 190px;
  min-height: 82px;
  display: flex;
  align-items: center;
  gap: 13px;
  padding: 16px 18px;
  background: rgba(255,255,255,0.96);
  border: 1px solid rgba(0,0,0,0.06);
  border-radius: 14px;
  box-shadow: 0 16px 34px rgba(20, 35, 55, 0.14);
  backdrop-filter: blur(8px);
}

.pd-family-float-icon {
  width: 42px;
  height: 42px;
  min-width: 42px;
  border-radius: 50%;
  background: rgba(230, 0, 0, 0.08);
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
}

.pd-family-float-card strong {
  display: block;
  margin: 0 0 3px;
  font-size: 14px;
  line-height: 1.25;
  font-weight: 900;
  color: #111;
}

.pd-family-float-card span {
  display: block;
  font-size: 13px;
  line-height: 1.3;
  font-weight: 600;
  color: #555;
}

.pd-family-benefits-wrap {
  margin-top: 0;
}

.pd-family-benefits-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 14px;
}

.pd-family-benefit-card {
  min-height: 92px;
  display: flex;
  align-items: center;
  gap: 13px;
  padding: 18px 18px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 12px;
  box-shadow: 0 10px 24px rgba(20, 35, 55, 0.06);
  transition: all .25s ease;
}

.pd-family-benefit-icon {
  width: 44px;
  height: 44px;
  min-width: 44px;
  border-radius: 50%;
  background: rgba(230, 0, 0, 0.06);
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.pd-family-benefit-icon:before {
  font-size: 24px;
  line-height: 1;
  color: #e60000;
  font-weight: 700;
}

.pd-icon-value:before {
  content: "↗";
}

.pd-icon-green:before {
  content: "♧";
}

.pd-about-why-icon-4:before, .pd-icon-support:before {
  content: "☊";
}

.pd-family-benefit-content h3 {
  margin: 0 0 5px;
  font-size: 14px;
  line-height: 1.25;
  font-weight: 800;
  color: #111;
}

.pd-family-explain-left {
  padding-right: 44px !important;
}

.pd-family-explain-text h2 {
  margin: 0;
  font-size: 34px;
  line-height: 1.18;
  font-weight: 900;
  color: #111;
  letter-spacing: -0.5px;
}

.pd-family-title-line {
  width: 54px;
  height: 3px;
  margin: 18px 0 24px;
  border-radius: 99px;
  background: #e60000;
}

.pd-family-explain-text p {
  max-width: 560px;
  margin: 0 0 18px;
  font-size: 15.5px;
  line-height: 1.75;
  color: #333;
}

.pd-family-explain-stats {
  width: 225px;
  margin-top: 24px;
  padding: 18px 18px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 12px;
  box-shadow: 0 10px 26px rgba(20, 35, 55, 0.06);
}

.pd-family-stat-item {
  display: flex;
  align-items: center;
  gap: 13px;
  padding: 13px 0;
  border-bottom: 1px solid #eeeeee;
}

.pd-family-stat-icon {
  width: 39px;
  height: 39px;
  min-width: 39px;
  border-radius: 50%;
  background: rgba(230, 0, 0, 0.07);
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  line-height: 1;
  font-weight: 800;
}

.pd-family-stat-item span {
  display: block;
  margin-bottom: 3px;
  font-size: 13px;
  line-height: 1.35;
  color: #555;
}

.pd-family-stat-item strong {
  display: block;
  font-size: 18px;
  line-height: 1.25;
  font-weight: 900;
  color: #111;
}

.pd-about-intro-image .img, .pd-about-intro-image .img-inner, .pd-family-explain-image .img, .pd-family-explain-image .img-inner {
  border-radius: 10px;
  overflow: hidden;
}

.pd-family-explain-image img {
  width: 100%;
  height: 420px;
  object-fit: cover;
  object-position: center;
  display: block;
  border-radius: 10px;
  box-shadow: 0 14px 34px rgba(20, 35, 55, 0.08);
}

.pd-combo-content, .pd-contact-faq-title, .pd-family-usecase-title {
  text-align: center;
}

.pd-family-usecase-line {
  width: 48px;
  height: 3px;
  margin: 12px auto 22px;
  border-radius: 99px;
  background: #e60000;
}

.pd-family-usecase-card {
  position: relative;
  height: 100%;
  min-height: 280px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 13px;
  overflow: hidden;
  box-shadow: 0 10px 26px rgba(20, 35, 55, 0.06);
  transition: all .25s ease;
}

.pd-family-usecase-image .img, .pd-family-usecase-image .img-inner {
  margin: 0 !important;
  border-radius: 0;
  overflow: hidden;
}

.pd-family-usecase-image img {
  width: 100%;
  height: 142px;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .35s ease;
}

.pd-family-usecase-content {
  position: relative;
  padding: 34px 20px 20px;
  background: #fff;
}

.pd-family-usecase-icon {
  position: absolute;
  left: 20px;
  top: -28px;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid rgba(230, 0, 0, 0.14);
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  line-height: 1;
  font-weight: 800;
  box-shadow: 0 10px 24px rgba(20, 35, 55, 0.1);
}

.pd-family-usecase-content h3 {
  margin: 0 0 12px;
  min-height: 42px;
  font-size: 17px;
  line-height: 1.3;
  font-weight: 900;
  color: #111;
}

.pd-family-usecase-content p {
  margin: 0;
  font-size: 14px;
  line-height: 1.6;
  color: #444;
}

.pd-family-step-item {
  position: relative;
  height: 100%;
  min-height: 208px;
  padding: 28px 16px 22px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 13px;
  text-align: center;
  box-shadow: 0 10px 26px rgba(20, 35, 55, 0.055);
  transition: all .25s ease;
}

.pd-family-step-number {
  position: absolute;
  top: 13px;
  left: 13px;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #e60000;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 9px;
  line-height: 1;
  font-weight: 900;
}

.pd-family-step-icon {
  width: 58px;
  height: 58px;
  margin: 4px auto 14px;
  color: #111;
  display: flex;
  align-items: center;
  justify-content: center;
}

.pd-family-step-item h3 {
  margin: 0 0 12px;
  font-size: 16px;
  line-height: 1.28;
  font-weight: 900;
  color: #111;
}

.pd-family-step-item p {
  max-width: 150px;
  margin: 0 auto;
  font-size: 12.8px;
  line-height: 1.55;
  color: #555;
}

.pd-family-why-text h2 {
  margin: 0;
  font-size: 31px;
  line-height: 1.22;
  font-weight: 900;
  color: #111;
  letter-spacing: -0.4px;
}

.pd-family-why-line {
  width: 52px;
  height: 3px;
  margin: 16px 0 22px;
  border-radius: 99px;
  background: #e60000;
}

.pd-family-why-text ul li {
  position: relative;
  padding-left: 28px;
  margin-bottom: 12px;
  font-size: 15px;
  line-height: 1.5;
  color: #222;
  font-weight: 600;
}

.pd-family-why-text ul li:before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 1px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #e60000;
  color: #fff;
  font-size: 11px;
  line-height: 18px;
  text-align: center;
  font-weight: 900;
}

.pd-family-why-image-wrap {
  position: relative;
  overflow: hidden;
  min-height: 300px;
  border-radius: 12px;
}

.pd-family-why-image-wrap:before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  background: linear-gradient(
  90deg,
  rgba(255,255,255,0.98) 0%,
  rgba(255,255,255,0.78) 20%,
  rgba(255,255,255,0.18) 48%,
  rgba(255,255,255,0) 100%
  );
  pointer-events: none;
}

.pd-family-why-image img {
  width: 100%;
  height: 300px;
  object-fit: cover;
  object-position: center;
  display: block;
  border-radius: 12px;
}

.pd-family-why-stats {
  position: absolute;
  left: 70px;
  right: 24px;
  bottom: 22px;
  z-index: 4;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}

.pd-family-why-stat-card {
  min-height: 82px;
  display: flex;
  align-items: center;
  gap: 13px;
  padding: 16px 18px;
  background: rgba(255,255,255,0.96);
  border: 1px solid rgba(0,0,0,0.06);
  border-radius: 13px;
  box-shadow: 0 14px 30px rgba(20, 35, 55, 0.14);
  backdrop-filter: blur(8px);
}

.pd-family-why-stat-icon {
  width: 42px;
  height: 42px;
  min-width: 42px;
  border-radius: 50%;
  background: rgba(230, 0, 0, 0.08);
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 21px;
  line-height: 1;
  font-weight: 800;
}

.pd-family-why-stat-card strong {
  display: block;
  margin: 0 0 3px;
  font-size: 25px;
  line-height: 1.1;
  font-weight: 900;
  color: #e60000;
}

.pd-family-why-stat-card span {
  display: block;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 700;
  color: #444;
}

.pd-family-steps-title h2, .pd-family-package-title h2 {
  margin: 0 0 22px;
  text-align: center;
  font-size: 28px;
  line-height: 1.25;
  font-weight: 900;
  color: #111;
  letter-spacing: -0.3px;
}

.pd-family-package-card {
  position: relative;
  height: 100%;
  min-height: 315px;
  padding: 30px 34px 28px;
  background: #fff;
  border: 1px solid #e9e9e9;
  border-radius: 12px;
  text-align: center;
  box-shadow: 0 10px 26px rgba(20, 35, 55, 0.055);
  transition: all .25s ease;
}

.pd-package-badge {
  position: absolute;
  left: 50%;
  top: -18px;
  transform: translateX(-50%);
  min-width: 150px;
  height: 34px;
  padding: 0 24px;
  border-radius: 999px 999px 0 0;
  background: #e60000;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: .3px;
  box-shadow: 0 8px 18px rgba(230, 0, 0, 0.16);
}

.pd-family-package-content h3 {
  margin: 0 0 6px;
  font-size: 17px;
  line-height: 1.3;
  font-weight: 900;
  color: #e60000;
  text-transform: uppercase;
  letter-spacing: .2px;
}

.pd-package-price {
  margin: 0 0 24px;
  font-size: 30px;
  line-height: 1.15;
  font-weight: 900;
  color: #e60000;
  letter-spacing: -0.4px;
}

.pd-family-package-content ul {
  max-width: 260px;
  margin: 0 auto 24px;
  padding: 0;
  list-style: none;
  text-align: left;
}

.pd-family-package-note-row {
  margin-top: 8px !important;
}

.pd-family-package-note p {
  margin: 0;
  text-align: center;
  font-size: 12.5px;
  line-height: 1.5;
  color: #666;
}

.pd-family-projects-heading {
  text-align: center;
  margin-bottom: 22px;
}

.pd-family-usecase-title h2, .pd-family-projects-heading h2 {
  margin: 0;
  font-size: 28px;
  line-height: 1.25;
  font-weight: 900;
  color: #111;
  letter-spacing: -0.3px;
}

.pd-family-project-thumb {
  display: block;
  overflow: hidden;
  height: 155px;
  background: #f5f5f5;
}

.pd-family-project-thumb img {
  width: 100%;
  height: 155px;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .35s ease;
}

.pd-family-project-no-image {
  height: 155px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f4f4f4;
  color: #e60000;
  font-weight: 900;
  font-size: 14px;
}

.pd-news-content, .pd-family-project-content {
  padding: 15px 16px 16px;
}

.pd-family-project-content h3 {
  margin: 0 0 8px;
  font-size: 15.5px;
  line-height: 1.35;
  font-weight: 900;
  color: #111;
}

.pd-family-project-content h3 a {
  color: #111;
  text-decoration: none;
}

.pd-family-project-location {
  margin-bottom: 8px;
  font-size: 12.5px;
  line-height: 1.4;
  color: #666;
  font-weight: 600;
}

.pd-family-project-content ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.pd-family-project-content ul li {
  display: flex;
  align-items: flex-start;
  gap: 5px;
  margin-bottom: 4px;
  font-size: 12.8px;
  line-height: 1.45;
  color: #333;
}

.pd-family-project-content ul li span {
  min-width: 66px;
  color: #333;
  font-weight: 600;
}

.pd-family-project-content ul li strong {
  color: #111;
  font-weight: 800;
}

.pd-family-project-empty {
  grid-column: 1 / -1;
  padding: 24px;
  text-align: center;
  border: 1px dashed #ddd;
  border-radius: 12px;
  color: #666;
}

.pd-family-projects-more-btn {
  min-height: 40px;
  margin: 24px auto 0 !important;
  padding: 0 24px !important;
  border-color: #e60000 !important;
  color: #e60000 !important;
  background: #fff !important;
  font-size: 13px !important;
  line-height: 40px !important;
  font-weight: 800 !important;
  text-transform: none !important;
}

.pd-family-faq-v2-title {
  width: 100%;
  margin: 0 0 24px !important;
  text-align: center !important;
}

.pd-family-faq-v2-title h2 {
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
  font-size: 30px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
  color: #111 !important;
  letter-spacing: -0.3px;
}

.pd-family-faq-v2-line {
  width: 52px;
  height: 3px;
  margin: 12px auto 0;
  border-radius: 99px;
  background: #e60000;
}

.pd-family-faq-v2-row {
  align-items: flex-start !important;
}

.pd-family-faq-v2-box {
  overflow: hidden;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 9px;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.035);
}

.pd-family-faq-v2-box .accordion {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

.pd-family-faq-v2-box .accordion-title {
  position: relative !important;
  display: block !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 13px 48px 13px 18px !important;
  border: 0 !important;
  background: #fff !important;
  color: #111 !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  box-shadow: none !important;
  transition: all .25s ease;
}

.pd-family-faq-v2-box .accordion-title:after {
  content: "+";
  position: absolute;
  right: 14px;
  top: 50%;
  width: 22px;
  height: 22px;
  transform: translateY(-50%);
  border: 1px solid #dddddd;
  border-radius: 50%;
  background: #fff;
  color: #111;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  line-height: 1;
  font-weight: 500;
}

.pd-family-faq-v2-box .accordion-title:hover, .pd-family-faq-v2-box .accordion-title.active {
  background: #fff8f8 !important;
  color: #e60000 !important;
}

.pd-family-faq-v2-box .accordion-title.active:after {
  content: "−";
  border-color: rgba(230, 0, 0, 0.28);
  background: #fff1f1;
  color: #e60000;
}

.pd-family-faq-v2-box .accordion-inner {
  margin: 0 !important;
  padding: 0 18px 15px 18px !important;
  border: 0 !important;
  background: #fff8f8 !important;
  box-shadow: none !important;
}

.pd-business-hero-v1 {
  position: relative;
  min-height: 520px;
  overflow: visible;
  background-color: #f8fbfd;
}

.pd-business-hero-v1:before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
  90deg,
  rgba(255,255,255,1) 0%,
  rgba(255,255,255,0.98) 26%,
  rgba(255,255,255,0.82) 43%,
  rgba(255,255,255,0.34) 60%,
  rgba(255,255,255,0) 78%
  );
  pointer-events: none;
}

.pd-business-hero-row {
  position: relative;
  z-index: 3;
  min-height: 460px;
}

.pd-business-hero-content {
  padding-top: 62px !important;
  padding-bottom: 118px !important;
}

.pd-business-hero-text h1 {
  margin: 0 0 22px;
  font-size: 48px;
  line-height: 1.08;
  font-weight: 900;
  color: #111;
  letter-spacing: -0.8px;
}

.pd-business-hero-text p {
  max-width: 590px;
  margin: 0 0 26px;
  font-size: 16px;
  line-height: 1.7;
  color: #333;
  font-weight: 500;
}

.pd-business-hero-buttons {
  max-width: 450px;
  margin-bottom: 20px;
}

.pd-business-hero-btn {
  min-height: 42px;
  margin: 0 !important;
  padding: 0 20px !important;
  font-size: 13.5px !important;
  line-height: 42px !important;
  font-weight: 800 !important;
  text-transform: none !important;
  border-radius: 6px !important;
}

.pd-family-btn-main, .pd-business-hero-btn-main {
  background: #e60000 !important;
  border-color: #e60000 !important;
  color: #fff !important;
  box-shadow: 0 10px 22px rgba(230, 0, 0, 0.18);
}

.pd-family-btn-light, .pd-business-hero-btn-light {
  background: #fff !important;
  border-color: #dddddd !important;
  color: #222 !important;
  box-shadow: 0 8px 18px rgba(20, 35, 55, 0.06);
}

.pd-business-hero-btn-light:hover {
  color: #e60000 !important;
  border-color: #e60000 !important;
  background: #fff !important;
}

.pd-family-checks ul, .pd-business-hero-checks ul {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px 28px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.pd-business-hero-checks ul li {
  position: relative;
  padding-left: 20px;
  font-size: 13.5px;
  line-height: 1.4;
  font-weight: 700;
  color: #222;
}

.pd-business-hero-checks ul li:before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: #111;
  font-size: 12px;
  font-weight: 900;
}

.pd-business-hero-benefits {
  position: absolute;
  z-index: 5;
  left: max(15px, calc((100vw - 1170px) / 2));
  right: max(15px, calc((100vw - 1170px) / 2));
  bottom: -48px;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 12px;
  box-shadow: 0 16px 36px rgba(20, 35, 55, 0.12);
  overflow: hidden;
}

.pd-business-benefit-item {
  min-height: 108px;
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 22px 20px;
  border-right: 1px solid #eeeeee;
  background: #fff;
}

.pd-business-benefit-icon {
  width: 42px;
  height: 42px;
  min-width: 42px;
  border-radius: 50%;
  background: rgba(230, 0, 0, 0.07);
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  line-height: 1;
  font-weight: 800;
}

.pd-business-benefit-item h3 {
  margin: 0 0 6px;
  font-size: 14px;
  line-height: 1.3;
  font-weight: 900;
  color: #111;
}

.pd-why-content p, .pd-family-benefit-content p, .pd-business-benefit-item p {
  margin: 0;
  font-size: 12.5px;
  line-height: 1.4;
  color: #555;
}

.pd-business-explain-left {
  padding-right: 42px !important;
}

.pd-business-explain-text h2 {
  margin: 0 0 20px;
  font-size: 34px;
  line-height: 1.18;
  font-weight: 900;
  color: #111;
  letter-spacing: -0.5px;
}

.pd-business-explain-text p {
  max-width: 560px;
  margin: 0 0 15px;
  font-size: 15.5px;
  line-height: 1.72;
  color: #333;
  font-weight: 500;
}

.pd-business-explain-stats {
  margin-top: 24px;
  max-width: 520px;
}

.pd-business-explain-stat {
  min-height: 96px;
  padding: 18px 16px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 11px;
  box-shadow: 0 10px 24px rgba(20, 35, 55, 0.055);
  transition: all .25s ease;
}

.pd-family-benefit-card:hover, .pd-business-explain-stat:hover {
  transform: translateY(-3px);
  border-color: rgba(230, 0, 0, 0.2);
  box-shadow: 0 15px 32px rgba(20, 35, 55, 0.09);
}

.pd-business-explain-icon {
  width: 34px;
  height: 34px;
  margin-bottom: 9px;
  border-radius: 50%;
  background: rgba(230, 0, 0, 0.07);
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 19px;
  line-height: 1;
  font-weight: 800;
}

.pd-business-explain-stat strong {
  display: block;
  margin: 0 0 5px;
  font-size: 18px;
  line-height: 1.2;
  font-weight: 900;
  color: #111;
}

.pd-business-explain-stat span {
  display: block;
  font-size: 12.8px;
  line-height: 1.4;
  color: #555;
  font-weight: 600;
}

.pd-business-explain-image img {
  width: 100%;
  height: 360px;
  object-fit: cover;
  object-position: center;
  display: block;
  border-radius: 12px;
  box-shadow: 0 14px 34px rgba(20, 35, 55, 0.08);
}

.pd-business-type-card {
  height: 100%;
  min-height: 0 !important;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 12px;
  box-shadow: 0 10px 26px rgba(20, 35, 55, 0.055);
  transition: all .25s ease;
}

.pd-business-type-icon {
  position: absolute;
  left: 18px;
  top: -28px;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid rgba(230, 0, 0, 0.18);
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0;
  line-height: 1;
  box-shadow: 0 10px 24px rgba(20, 35, 55, 0.1);
}

.pd-business-type-icon:before {
  font-size: 25px;
  line-height: 1;
  font-weight: 700;
  color: #e60000;
}

.pd-icon-smart:before, .pd-icon-home:before, .pd-step-icon-1:before, .pd-business-type-col:nth-child(4) .pd-business-type-icon:before {
  content: "⌂";
}

.pd-business-type-content h3 {
  min-height: 0 !important;
  margin: 0 0 14px !important;
  font-size: 17px;
  line-height: 1.35;
  font-weight: 900;
  color: #111;
}

.pd-business-type-content p {
  min-height: 0 !important;
  margin: 0 0 18px !important;
  font-size: 14px;
  line-height: 1.6;
  color: #333;
}

.pd-business-journey-col {
  position: relative;
  padding-top: 18px !important;
}

.pd-business-journey-card {
  position: relative;
  height: 100%;
  min-height: 205px;
  padding: 34px 16px 22px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 11px;
  text-align: center;
  box-shadow: 0 10px 26px rgba(20, 35, 55, 0.055);
  transition: all .25s ease;
  z-index: 2;
}

.pd-business-step-number {
  position: absolute;
  top: -29px;
  left: 50%;
  transform: translateX(-50%);
  width: 27px;
  height: 27px;
  border-radius: 50%;
  background: #e60000;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 9px;
  line-height: 1;
  font-weight: 900;
  z-index: 4;
  box-shadow: 0 5px 12px rgba(230, 0, 0, 0.22);
}

.pd-business-step-icon {
  width: 58px;
  height: 58px;
  margin: 0 auto 13px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #111;
}

.pd-family-step-icon:before, .pd-business-step-icon:before {
  font-size: 42px;
  line-height: 1;
  color: #111;
  font-weight: 400;
}

.pd-about-why-icon-3:before, .pd-stat-icon-customer:before, .pd-business-step-icon-2:before {
  content: "♙";
}

.pd-step-icon-2:before, .pd-business-type-col:nth-child(1) .pd-business-type-icon:before, .pd-business-step-icon-3:before {
  content: "▥";
}

.pd-process-icon-3:before, .pd-step-icon-4:before, .pd-business-type-col:nth-child(2) .pd-business-type-icon:before, .pd-business-step-icon-4:before {
  content: "▣";
}

.pd-step-icon-6:before, .pd-business-step-icon-6:before {
  content: "⌁";
}

.pd-business-journey-card h3 {
  margin: 0 0 12px;
  font-size: 15.5px;
  line-height: 1.28;
  font-weight: 900;
  color: #111;
}

.pd-business-journey-card p {
  max-width: 155px;
  margin: 0 auto;
  font-size: 12.5px;
  line-height: 1.55;
  color: #555;
}

.pd-business-why-left {
  padding-right: 36px !important;
}

.pd-business-why-text h2 {
  margin: 0 0 20px !important;
  font-size: 32px;
  line-height: 1.18;
  font-weight: 900;
  color: #111;
  letter-spacing: -0.5px;
}

.pd-business-why-text ul {
  list-style: none;
  padding: 0;
  margin: 0 0 24px;
}

.pd-business-why-text ul li {
  position: relative;
  padding-left: 28px;
  margin-bottom: 11px;
  font-size: 15px;
  line-height: 1.5;
  color: #222;
  font-weight: 700;
}

.pd-business-why-text ul li:before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 2px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #e60000;
  color: #fff;
  font-size: 11px;
  line-height: 18px;
  text-align: center;
  font-weight: 900;
}

.pd-family-faq-v2-col, .pd-business-why-stats .col {
  padding-bottom: 0 !important;
}

.pd-business-why-stat {
  min-height: 82px;
  display: flex;
  align-items: center;
  gap: 13px;
  padding: 15px 16px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 10px;
  box-shadow: 0 10px 24px rgba(20, 35, 55, 0.055);
  transition: all .25s ease;
}

.pd-business-why-stat:hover {
  transform: translateY(-3px);
  border-color: rgba(230, 0, 0, 0.22);
  box-shadow: 0 15px 32px rgba(20, 35, 55, 0.09);
}

.pd-business-why-stat-icon {
  width: 42px;
  height: 42px;
  min-width: 42px;
  border-radius: 50%;
  background: rgba(230, 0, 0, 0.07);
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 21px;
  line-height: 1;
}

.pd-business-why-stat-info {
  min-width: 0;
}

.pd-business-why-stat-info strong {
  display: block;
  margin: 0 0 4px;
  font-size: 28px;
  line-height: 1;
  font-weight: 900;
  color: #e60000;
  letter-spacing: -0.4px;
}

.pd-business-why-stat-info span {
  display: block;
  font-size: 12px;
  line-height: 1.32;
  font-weight: 700;
  color: #444;
}

.pd-family-why-right, .pd-business-explain-right, .pd-business-why-right {
  padding-left: 20px !important;
}

.pd-business-explain-image .img, .pd-business-explain-image .img-inner, .pd-business-why-image .img, .pd-business-why-image .img-inner {
  border-radius: 12px;
  overflow: hidden;
}

.pd-business-why-image img {
  width: 100%;
  height: 335px;
  object-fit: cover;
  object-position: center;
  display: block;
  border-radius: 12px;
  box-shadow: 0 14px 34px rgba(20, 35, 55, 0.08);
}

.pd-business-package-title h2 {
  margin: 0 0 22px !important;
  text-align: center;
  font-size: 28px;
  line-height: 1.25;
  font-weight: 900;
  color: #111;
  letter-spacing: -0.3px;
}

.pd-business-package-card {
  position: relative;
  height: 100%;
  min-height: 330px;
  padding: 32px 34px 28px;
  background: #fff;
  border: 1px solid #e9e9e9;
  border-radius: 12px;
  text-align: center;
  box-shadow: 0 10px 26px rgba(20, 35, 55, 0.055);
  transition: all .25s ease;
}

.pd-business-package-content h3 {
  margin: 0 0 7px !important;
  font-size: 17px;
  line-height: 1.3;
  font-weight: 900;
  color: #e60000;
  text-transform: uppercase;
  letter-spacing: .2px;
}

.pd-package-desc, .pd-business-package-desc {
  min-height: 22px;
  margin: 0 0 22px !important;
  font-size: 13.5px;
  line-height: 1.45;
  color: #555;
}

.pd-business-package-content ul {
  max-width: 300px;
  margin: 0 auto 24px;
  padding: 0;
  list-style: none;
  text-align: left;
}

.pd-package-btn, .pd-business-package-btn {
  min-width: 130px;
  min-height: 40px;
  margin: 0 !important;
  padding: 0 22px !important;
  background: #e60000 !important;
  border-color: #e60000 !important;
  color: #fff !important;
  border-radius: 6px !important;
  font-size: 13px !important;
  line-height: 40px !important;
  font-weight: 800 !important;
  text-transform: none !important;
  box-shadow: 0 9px 20px rgba(230, 0, 0, 0.16);
}

.pd-smart-hero-v1 {
  position: relative;
  min-height: 560px;
  overflow: hidden;
  background-color: #f8f6f3;
}

.pd-smart-hero-v1:before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
  90deg,
  rgba(255,255,255,1) 0%,
  rgba(255,255,255,0.98) 24%,
  rgba(255,255,255,0.84) 40%,
  rgba(255,255,255,0.36) 58%,
  rgba(255,255,255,0) 78%
  );
  pointer-events: none;
}

.pd-smart-hero-row {
  position: relative;
  z-index: 3;
  min-height: 560px;
}

.pd-smart-hero-content {
  padding-top: 62px !important;
  padding-bottom: 58px !important;
}

.pd-smart-hero-text {
  max-width: 670px;
}

.pd-smart-label {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  margin: 0 0 18px !important;
  padding: 0 13px;
  border-radius: 4px;
  background: #e60000;
  color: #fff !important;
  font-size: 13px;
  line-height: 26px;
  font-weight: 900;
  letter-spacing: .3px;
}

.pd-smart-hero-text h1 {
  margin: 0 0 20px;
  font-size: 54px;
  line-height: 1.08;
  font-weight: 900;
  color: #111;
  letter-spacing: -1px;
}

.pd-smart-hero-text h1 span {
  color: #e60000;
  text-transform: uppercase;
}

.pd-smart-desc {
  max-width: 590px;
  margin: 0 0 22px !important;
  font-size: 18px;
  line-height: 1.65;
  color: #333;
  font-weight: 500;
}

.pd-smart-checks {
  list-style: none;
  padding: 0;
  margin: 0 0 28px;
}

.pd-smart-checks li {
  position: relative;
  padding-left: 30px;
  margin-bottom: 10px;
  font-size: 16px;
  line-height: 1.45;
  color: #222;
  font-weight: 600;
}

.pd-smart-checks li:before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 1px;
  width: 19px;
  height: 19px;
  border-radius: 50%;
  background: #e60000;
  color: #fff;
  font-size: 11px;
  line-height: 19px;
  text-align: center;
  font-weight: 900;
}

.pd-smart-stats-row {
  max-width: 690px;
}

.pd-smart-stat-card {
  min-height: 96px;
  padding: 16px 15px;
  background: rgba(255,255,255,0.96);
  border: 1px solid rgba(0,0,0,0.06);
  border-radius: 12px;
  box-shadow: 0 12px 26px rgba(20, 35, 55, 0.08);
  text-align: center;
  backdrop-filter: blur(8px);
  transition: all .25s ease;
}

.pd-smart-stat-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 34px rgba(20, 35, 55, 0.12);
}

.pd-smart-stat-icon {
  width: 40px;
  height: 40px;
  margin: 0 auto 8px;
  border-radius: 50%;
  background: rgba(230, 0, 0, 0.08);
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  line-height: 1;
}

.pd-smart-stat-card strong {
  display: block;
  margin: 0 0 3px;
  font-size: 27px;
  line-height: 1;
  font-weight: 900;
  color: #e60000;
}

.pd-smart-stat-card span {
  display: block;
  font-size: 12.5px;
  line-height: 1.35;
  font-weight: 700;
  color: #444;
}

.pd-smart-feature-dot {
  position: absolute;
  z-index: 5;
  min-width: 86px;
  text-align: center;
  color: #fff;
}

.pd-smart-feature-dot span {
  width: 62px;
  height: 62px;
  margin: 0 auto 7px;
  border-radius: 50%;
  background: rgba(255,255,255,0.32);
  border: 1px solid rgba(255,255,255,0.55);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  line-height: 1;
  backdrop-filter: blur(8px);
}

.pd-smart-feature-dot p {
  margin: 0;
  font-size: 14px;
  line-height: 1.25;
  font-weight: 700;
  color: #fff;
  text-shadow: 0 2px 8px rgba(0,0,0,0.28);
}

.pd-smart-dot-light {
  right: 13%;
  top: 70px;
}

.pd-smart-dot-curtain {
  right: 25%;
  top: 150px;
}

.pd-smart-dot-ac {
  right: 34%;
  top: 260px;
}

.pd-smart-dot-camera {
  right: 23%;
  top: 340px;
}

.pd-smart-dot-security {
  right: 16%;
  bottom: 82px;
}

.pd-smart-dot-audio {
  right: 6%;
  bottom: 110px;
}

.pd-smart-feature-dot:before {
  content: "";
  position: absolute;
  width: 110px;
  height: 1px;
  top: 31px;
  right: 50%;
  border-top: 1px dashed rgba(255,255,255,0.6);
  transform: rotate(-8deg);
  transform-origin: right center;
}

.pd-smart-type-card {
  height: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 13px;
  box-shadow: 0 10px 26px rgba(20, 35, 55, 0.06);
  transition: all .25s ease;
}

.pd-business-type-image img, .pd-smart-type-image img {
  width: 100%;
  height: 145px !important;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .35s ease;
}

.pd-business-type-content, .pd-smart-type-content {
  position: relative;
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 36px 18px 20px;
  background: #fff;
}

.pd-smart-type-icon {
  position: absolute;
  left: 18px;
  top: -28px;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid rgba(230, 0, 0, 0.18);
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 25px;
  line-height: 1;
  font-weight: 800;
  box-shadow: 0 10px 24px rgba(20, 35, 55, 0.1);
}

.pd-smart-type-content h3 {
  margin: 0 0 13px !important;
  font-size: 17px;
  line-height: 1.35;
  font-weight: 900;
  color: #111;
}

.pd-smart-type-content p {
  margin: 0 0 18px !important;
  font-size: 14px;
  line-height: 1.6;
  color: #333;
}

.pd-business-type-content a, .pd-smart-type-content a {
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  width: fit-content;
  color: #e60000;
  font-size: 13.5px;
  line-height: 1.3;
  font-weight: 800;
  text-decoration: none;
}

.pd-smart-why-title h2 {
  margin: 0 !important;
  font-size: 30px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
  color: #111 !important;
  letter-spacing: -0.3px;
}

.pd-smart-why-timeline {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 28px;
  padding-top: 28px;
}

.pd-smart-why-timeline:before {
  content: "";
  position: absolute;
  top: 13px;
  left: 7%;
  right: 7%;
  height: 1px;
  border-top: 1px dashed rgba(230, 0, 0, 0.45);
  z-index: 1;
}

.pd-smart-why-number {
  position: absolute;
  top: -28px;
  left: 50%;
  transform: translateX(-50%);
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #e60000;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  line-height: 1;
  font-weight: 900;
  box-shadow: 0 6px 14px rgba(230, 0, 0, 0.22);
}

.pd-smart-why-icon {
  width: 62px;
  height: 62px;
  margin: 14px auto 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #111;
}

.pd-smart-why-icon:before {
  font-size: 44px;
  line-height: 1;
  color: #111;
  font-weight: 400;
}

.pd-icon-bill:before, .pd-step-icon-3:before, .pd-business-type-col:nth-child(3) .pd-business-type-icon:before, .pd-business-step-icon-1:before, .pd-smart-why-icon-1:before {
  content: "▤";
}

.pd-why-icon-1:before, .pd-process-icon-4:before, .pd-about-why-icon-1:before, .pd-icon-stable:before, .pd-step-icon-5:before, .pd-smart-why-icon-2:before {
  content: "⚙";
}

.pd-business-step-icon-5:before, .pd-smart-why-icon-3:before {
  content: "⚒";
}

.pd-smart-why-icon-4:before {
  content: "▯";
}

.pd-about-why-icon-2:before, .pd-smart-why-icon-5:before {
  content: "♢";
}

.pd-smart-why-item p {
  max-width: 190px;
  margin: 0 auto;
  font-size: 13.5px;
  line-height: 1.6;
  color: #444;
}

.pd-business-type-title h2, .pd-business-journey-title h2, .pd-smart-type-title h2, .pd-smart-device-title h2 {
  margin: 0 !important;
  font-size: 28px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
  color: #111 !important;
  letter-spacing: -0.3px;
}

.pd-smart-brand-row {
  margin-bottom: 20px !important;
}

.pd-smart-brand-card {
  height: 66px;
  padding: 12px 18px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 10px;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.035);
  display: flex;
  align-items: center;
  justify-content: center;
}

.pd-smart-brand-logo {
  margin: 0 !important;
  width: 100%;
}

.pd-smart-brand-logo img {
  width: auto !important;
  height: auto !important;
  object-fit: contain;
  display: block;
  margin: 0 auto !important;
}

.pd-smart-product-col {
  padding-bottom: 14px !important;
}

.pd-smart-product-card {
  height: 100%;
  min-height: 150px;
  padding: 16px 10px 13px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 11px;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.04);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  text-align: center;
  overflow: hidden;
  transition: all .25s ease;
}

.pd-smart-product-card:hover {
  transform: translateY(-4px);
  border-color: rgba(230, 0, 0, 0.2);
  box-shadow: 0 16px 32px rgba(20, 35, 55, 0.09);
}

.pd-smart-product-image {
  margin: 0 0 12px !important;
  width: 100%;
}

.pd-smart-brand-logo .img, .pd-smart-brand-logo .img-inner, .pd-smart-product-image .img, .pd-smart-product-image .img-inner {
  margin: 0 !important;
  width: 100%;
  text-align: center;
}

.pd-smart-product-image img {
  object-fit: contain !important;
  display: block !important;
  margin: 0 auto !important;
  padding: 0 !important;
  transition: transform .3s ease;
}

.pd-smart-product-card:hover .pd-smart-product-image img {
  transform: scale(1.05);
}

.pd-smart-product-card h3 {
  margin: auto 0 0 !important;
  padding: 0 !important;
  min-height: 34px;
  font-size: 13px;
  line-height: 1.35;
  font-weight: 800;
  color: #111;
  text-align: center;
}

.pd-smart-package-title h2 {
  margin: 0 0 24px !important;
  text-align: center;
  font-size: 28px;
  line-height: 1.25;
  font-weight: 900;
  color: #111;
  letter-spacing: -0.3px;
}

.pd-smart-package-card {
  position: relative;
  height: 100%;
  min-height: 300px;
  padding: 32px 15px 28px;
  background: #fff;
  border: 1px solid #e9e9e9;
  border-radius: 12px;
  text-align: center;
  box-shadow: 0 10px 26px rgba(20, 35, 55, 0.055);
  transition: all .25s ease;
}

.pd-family-package-card:hover, .pd-business-package-card:hover, .pd-smart-package-card:hover {
  transform: translateY(-4px);
  border-color: rgba(230, 0, 0, 0.22);
  box-shadow: 0 16px 36px rgba(20, 35, 55, 0.1);
}

.pd-package-featured, .pd-business-package-featured, .pd-smart-package-featured {
  border: 1.5px solid #e60000;
  box-shadow: 0 16px 36px rgba(230, 0, 0, 0.1);
}

.pd-business-package-badge, .pd-smart-package-badge {
  position: absolute;
  left: 50%;
  top: -17px;
  transform: translateX(-50%);
  min-width: 160px;
  height: 32px;
  padding: 0 24px;
  border-radius: 999px 999px 0 0;
  background: #e60000;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: .25px;
  box-shadow: 0 8px 18px rgba(230, 0, 0, 0.16);
}

.pd-smart-package-content h3 {
  margin: 0 0 7px !important;
  font-size: 17px;
  line-height: 1.3;
  font-weight: 900;
  color: #111;
  text-transform: uppercase;
  letter-spacing: .2px;
}

.pd-smart-package-desc {
  min-height: 22px;
  margin: 0 0 20px !important;
  font-size: 13.5px;
  line-height: 1.45;
  color: #555;
}

.pd-business-package-price, .pd-smart-package-price {
  margin: 0 0 24px;
  font-size: 31px;
  line-height: 1.15;
  font-weight: 900;
  color: #e60000;
  letter-spacing: -0.5px;
}

.pd-smart-package-content ul {
  margin: 0 auto 24px;
  padding: 0;
  list-style: none;
  text-align: left;
}

.pd-family-package-content ul li, .pd-business-package-content ul li, .pd-smart-package-content ul li {
  position: relative;
  padding-left: 24px;
  margin-bottom: 11px;
  font-size: 14px;
  line-height: 1.45;
  color: #222;
  font-weight: 600;
}

.pd-family-package-content ul li:before, .pd-business-package-content ul li:before, .pd-smart-package-content ul li:before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 1px;
  color: #111;
  font-size: 12px;
  line-height: 1;
  font-weight: 900;
}

.pd-smart-package-btn {
  min-width: 150px;
  min-height: 40px;
  margin: 0 !important;
  padding: 0 24px !important;
  background: #e60000 !important;
  border-color: #e60000 !important;
  color: #fff !important;
  border-radius: 6px !important;
  font-size: 13px !important;
  line-height: 40px !important;
  font-weight: 800 !important;
  text-transform: none !important;
  box-shadow: 0 9px 20px rgba(230, 0, 0, 0.16);
}

.pd-solution-hero-v1 {
  position: relative;
  min-height: 390px;
  overflow: hidden;
  background-color: #06111b;
}

.pd-solution-hero-v1 .section-bg {
  background-size: cover !important;
  background-position: center center !important;
}

.pd-solution-hero-v1:before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
  90deg,
  rgba(3, 12, 20, 0.88) 0%,
  rgba(3, 12, 20, 0.78) 30%,
  rgba(3, 12, 20, 0.42) 58%,
  rgba(3, 12, 20, 0.18) 100%
  );
  pointer-events: none;
}

.pd-solution-hero-v1:after {
  content: "";
  position: absolute;
  inset: auto 0 0 0;
  height: 120px;
  z-index: 2;
  background: linear-gradient(
  0deg,
  rgba(3, 12, 20, 0.42) 0%,
  rgba(3, 12, 20, 0) 100%
  );
  pointer-events: none;
}

.pd-solution-hero-row {
  position: relative;
  z-index: 3;
  min-height: 390px;
}

.pd-solution-hero-content {
  padding-top: 46px !important;
  padding-bottom: 116px !important;
}

.pd-solution-hero-text {
  max-width: 610px;
}

.pd-solution-breadcrumb {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 22px;
  font-size: 12.5px;
  line-height: 1.4;
  font-weight: 700;
  color: rgba(255,255,255,0.76);
}

.pd-solution-breadcrumb a {
  color: rgba(255,255,255,0.88);
  text-decoration: none;
}

.pd-solution-hero-text h1 {
  max-width: 620px;
  margin: 0 0 20px !important;
  font-size: 40px;
  line-height: 1.18;
  font-weight: 900;
  color: #fff;
  letter-spacing: -0.4px;
}

.pd-solution-hero-text p {
  max-width: 570px;
  margin: 0 0 24px !important;
  font-size: 15.5px;
  line-height: 1.72;
  color: rgba(255,255,255,0.88);
  font-weight: 500;
}

.pd-solution-hero-buttons {
  max-width: 390px;
}

.pd-solution-btn {
  min-height: 40px;
  margin: 0 !important;
  padding: 0 22px !important;
  border-radius: 6px !important;
  font-size: 12.5px !important;
  line-height: 40px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .2px;
}

.pd-solution-btn-main {
  background: #e60000 !important;
  border-color: #e60000 !important;
  color: #fff !important;
  box-shadow: 0 10px 24px rgba(230, 0, 0, 0.25);
}

.pd-solution-btn-light:hover {
  background: #f4f4f4 !important;
  border-color: #f4f4f4 !important;
  color: #e60000 !important;
}

.pd-solution-benefit-strip {
  position: absolute;
  z-index: 5;
  left: 50%;
  bottom: 24px;
  transform: translateX(-50%);
  width: calc(100% - 60px);
  max-width: 1120px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  overflow: hidden;
  background: rgba(8, 35, 55, 0.96);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 9px;
  box-shadow: 0 16px 34px rgba(0,0,0,0.18);
  backdrop-filter: blur(8px);
}

.pd-solution-benefit-item {
  display: flex;
  align-items: center;
  gap: 13px;
  min-height: 68px;
  padding: 14px 20px;
  border-right: 1px solid rgba(255,255,255,0.08);
}

.pd-solution-benefit-icon {
  width: 40px;
  height: 40px;
  min-width: 40px;
  border-radius: 50%;
  background: rgba(255,255,255,0.08);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 19px;
}

.pd-solution-benefit-item h3 {
  margin: 0 0 3px !important;
  font-size: 13.5px;
  line-height: 1.25;
  font-weight: 900;
  color: #fff;
}

.pd-solution-benefit-item p {
  margin: 0 !important;
  font-size: 12px;
  line-height: 1.35;
  color: rgba(255,255,255,0.72);
}

.pd-solution-object-subtitle {
  margin: 0 0 8px !important;
  font-size: 12px;
  line-height: 1.4;
  font-weight: 800;
  letter-spacing: 1px;
  color: #e60000;
  text-transform: uppercase;
}

.pd-solution-object-line {
  width: 46px;
  height: 3px;
  margin: 12px auto 0;
  border-radius: 99px;
  background: #e60000;
}

.pd-solution-object-card {
  height: 100%;
  background: #fff;
  border: 1px solid #ececec;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 8px 24px rgba(20, 35, 55, 0.055);
  transition: all .25s ease;
}

.pd-solution-object-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 32px rgba(20, 35, 55, 0.1);
  border-color: rgba(230, 0, 0, 0.16);
}

.pd-solution-object-image img {
  width: 100%;
  height: 185px;
  object-fit: cover;
  display: block;
}

.pd-solution-object-content {
  position: relative;
  padding: 24px 18px 20px;
}

.pd-solution-object-icon {
  position: absolute;
  top: -28px;
  left: 18px;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: #fff;
  border: 2px solid #f4d6d6;
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  line-height: 1;
  box-shadow: 0 10px 20px rgba(20, 35, 55, 0.08);
}

.pd-solution-object-text h3 {
  margin: 10px 0 14px !important;
  font-size: 18px;
  line-height: 1.3;
  font-weight: 800;
  color: #111;
}

.pd-solution-object-text p {
  margin: 0 0 16px !important;
  font-size: 15px;
  line-height: 1.7;
  color: #4d4d4d;
}

.pd-solution-object-link {
  display: inline-block;
  font-size: 14px;
  line-height: 1.4;
  font-weight: 800;
  color: #e60000;
  text-decoration: none;
}

.pd-solar-card-content a:hover, .pd-news-readmore:hover, .pd-contact-info-content p a:hover, .pd-business-type-content a:hover, .pd-smart-type-content a:hover, .pd-solution-object-link:hover {
  color: #c90000;
}

.pd-solution-filter-section {
  background: #f6f6f6;
}

.pd-solution-filter-title p {
  margin: 0 0 8px !important;
  font-size: 12px;
  line-height: 1.4;
  font-weight: 900;
  color: #e60000;
  letter-spacing: 1.4px;
  text-transform: uppercase;
}

.pd-solution-object-title h2, .pd-solution-filter-title h2 {
  margin: 0 !important;
  font-size: 34px;
  line-height: 1.25;
  font-weight: 900;
  color: #111;
  letter-spacing: -0.4px;
}

.pd-solution-filter-tabs .nav {
  justify-content: center !important;
  gap: 18px;
  margin-bottom: 34px !important;
}

.pd-solution-filter-tabs .nav > li > a {
  min-width: 155px;
  min-height: 42px;
  padding: 0 22px !important;
  border-radius: 999px !important;
  border: 1px solid #e5e5e5 !important;
  background: #fff !important;
  color: #111 !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  font-size: 13px !important;
  line-height: 42px !important;
  font-weight: 900 !important;
  letter-spacing: .3px;
  text-transform: uppercase;
  box-shadow: 0 8px 20px rgba(20, 35, 55, 0.04);
}

.pd-solution-filter-tabs .tab-panels, .pd-solution-filter-tabs .panel {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.pd-family-projects-grid, .pd-solution-mini-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}

.pd-family-project-card, .pd-solution-mini-card {
  overflow: hidden;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 12px;
  box-shadow: 0 10px 26px rgba(20, 35, 55, 0.055);
  transition: all .25s ease;
}

.pd-solution-mini-card:hover {
  transform: translateY(-4px);
  border-color: rgba(230, 0, 0, 0.18);
  box-shadow: 0 16px 34px rgba(20, 35, 55, 0.1);
}

.pd-solution-mini-content {
  position: relative;
  padding: 30px 17px 18px;
}

.pd-solution-mini-content span {
  position: absolute;
  left: 17px;
  top: -23px;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid rgba(230, 0, 0, 0.16);
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 21px;
  box-shadow: 0 8px 18px rgba(20, 35, 55, 0.08);
}

.pd-smart-why-item h3, .pd-solution-mini-content h3 {
  margin: 0 0 10px !important;
  font-size: 16px;
  line-height: 1.35;
  font-weight: 900;
  color: #111;
}

.pd-solution-mini-content p {
  margin: 0 !important;
  font-size: 13.5px;
  line-height: 1.6;
  color: #555;
}

.pd-solution-filter-btn {
  display: table !important;
  margin: 28px auto 0 !important;
  min-width: 300px;
  min-height: 42px;
  padding: 0 26px !important;
  border-color: #111 !important;
  color: #111 !important;
  background: transparent !important;
  font-size: 13px !important;
  line-height: 42px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  border-radius: 6px !important;
}

.pd-solution-filter-tabs .nav > li.active > a, .pd-solution-filter-tabs .nav > li > a.active, .pd-solution-filter-btn:hover {
  background: #e60000 !important;
  border-color: #e60000 !important;
  color: #fff !important;
}

.pd-solution-value-title h2 {
  margin: 0 !important;
  font-size: 30px;
  line-height: 1.25;
  font-weight: 900;
  color: #111;
  letter-spacing: -0.3px;
}

.pd-solution-value-item {
  position: relative;
  height: 100%;
  min-height: 150px;
  padding: 0 18px 8px;
  text-align: center;
}

.pd-solution-value-col:not(:last-child) .pd-solution-value-item:after {
  content: "";
  position: absolute;
  right: -1px;
  top: 24px;
  bottom: 12px;
  width: 1px;
  background: #eeeeee;
}

.pd-solution-value-icon {
  width: 58px;
  height: 58px;
  margin: 0 auto 14px;
  border-radius: 50%;
  background: rgba(230, 0, 0, 0.08);
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 27px;
  line-height: 1;
  box-shadow: 0 10px 22px rgba(230, 0, 0, 0.08);
}

.pd-solution-value-title p, .pd-solution-process-title p {
  margin: 0 0 8px !important;
  font-size: 12px;
  line-height: 1.4;
  font-weight: 900;
  color: #e60000;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}

.pd-solution-process-title h2 {
  margin: 0 !important;
  font-size: 31px;
  line-height: 1.25;
  font-weight: 900;
  color: #111;
  letter-spacing: -0.3px;
}

.pd-solution-process-item {
  position: relative;
  height: 100%;
  min-height: 156px;
  padding: 34px 16px 18px;
  text-align: center;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 10px;
  box-shadow: 0 8px 20px rgba(20, 35, 55, 0.05);
  transition: all .25s ease;
}

.pd-solution-process-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 30px rgba(20, 35, 55, 0.08);
  border-color: rgba(230, 0, 0, 0.16);
}

.pd-solution-process-number {
  position: absolute;
  top: -11px;
  left: 50%;
  transform: translateX(-50%);
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #e60000;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  box-shadow: 0 8px 16px rgba(230, 0, 0, 0.18);
}

.pd-solution-process-icon {
  width: 46px;
  height: 46px;
  margin: 0 auto 12px;
  border-radius: 50%;
  background: rgba(230, 0, 0, 0.08);
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 21px;
  line-height: 1;
}

.pd-solution-process-item h3 {
  margin: 0 0 8px !important;
  font-size: 15px;
  line-height: 1.35;
  font-weight: 800;
  color: #111;
}

.pd-solution-process-item p {
  margin: 0 !important;
  font-size: 12.8px;
  line-height: 1.55;
  color: #666;
}

.pd-consult-hero-v1 {
  position: relative;
  min-height: 430px;
  overflow: hidden;
  background-color: #06111b;
}

.pd-consult-hero-v1:before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
  90deg,
  rgba(3, 10, 16, 0.94) 0%,
  rgba(3, 10, 16, 0.84) 32%,
  rgba(3, 10, 16, 0.52) 58%,
  rgba(3, 10, 16, 0.16) 100%
  );
  pointer-events: none;
}

.pd-family-hero-v2-row, .pd-consult-hero-row {
  position: relative;
  z-index: 3;
  min-height: 430px;
}

.pd-consult-hero-content {
  padding-top: 62px !important;
  padding-bottom: 54px !important;
}

.pd-consult-label {
  margin: 0 0 18px !important;
  color: #fff !important;
  font-size: 13px;
  line-height: 1.4;
  font-weight: 900;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.pd-consult-hero-text h1 {
  margin: 0 0 20px !important;
  font-size: 48px;
  line-height: 1.12;
  font-weight: 900;
  color: #fff;
  letter-spacing: -0.7px;
  text-transform: uppercase;
}

.pd-consult-hero-text h1:after {
  content: "";
  display: block;
  width: 58px;
  height: 3px;
  margin-top: 20px;
  border-radius: 99px;
  background: #e60000;
}

.pd-consult-desc {
  max-width: 520px;
  margin: 0 0 26px !important;
  color: rgba(255,255,255,0.88) !important;
  font-size: 16px;
  line-height: 1.72;
  font-weight: 500;
}

.pd-consult-hero-buttons {
  max-width: 520px;
  margin-bottom: 26px;
}

.pd-family-hero-v2-buttons .col-inner, .pd-business-hero-buttons .col-inner, .pd-business-explain-stats .col-inner, .pd-business-why-stats .col-inner, .pd-smart-stats-row .col-inner, .pd-solution-hero-buttons .col-inner, .pd-consult-hero-buttons .col-inner {
  padding-right: 12px;
}

.pd-consult-btn {
  min-height: 44px;
  margin: 0 !important;
  padding: 0 22px !important;
  border-radius: 6px !important;
  font-size: 13px !important;
  line-height: 44px !important;
  font-weight: 900 !important;
  text-transform: none !important;
}

.pd-consult-btn-main {
  background: #e60000 !important;
  border-color: #e60000 !important;
  color: #fff !important;
  box-shadow: 0 12px 26px rgba(230, 0, 0, 0.26);
}

.pd-family-btn-main:hover, .pd-package-btn:hover, .pd-business-hero-btn-main:hover, .pd-business-package-btn:hover, .pd-smart-package-btn:hover, .pd-solution-btn-main:hover, .pd-consult-btn-main:hover {
  background: #c90000 !important;
  border-color: #c90000 !important;
  color: #fff !important;
}

.pd-consult-btn-outline {
  background: rgba(0,0,0,0.12) !important;
  border-color: rgba(255,255,255,0.55) !important;
  color: #fff !important;
}

.pd-solution-btn-light, .pd-consult-btn-outline:hover {
  background: #fff !important;
  border-color: #fff !important;
  color: #111 !important;
}

.pd-consult-hero-checks ul {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 18px 38px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.pd-consult-hero-checks ul li {
  position: relative;
  padding-left: 30px;
  color: rgba(255,255,255,0.9);
  font-size: 13.5px;
  line-height: 1.4;
  font-weight: 800;
}

.pd-consult-hero-checks ul li:before {
  content: "✓";
  position: absolute;
  left: 0;
  top: -2px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.28);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  line-height: 1;
}

.pd-consult-benefit-title h2 {
  margin: 0 !important;
  font-size: 28px;
  line-height: 1.28;
  font-weight: 900;
  color: #111;
  letter-spacing: -0.25px;
  text-transform: uppercase;
}

.pd-consult-benefit-card {
  height: 100%;
  min-height: 150px;
  padding: 24px 16px 20px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 10px;
  text-align: center;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.045);
  transition: all .25s ease;
}

.pd-consult-benefit-icon {
  width: 54px;
  height: 54px;
  margin: 0 auto 14px;
  border-radius: 50%;
  background: rgba(230, 0, 0, 0.06);
  border: 1px solid rgba(230, 0, 0, 0.14);
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 25px;
  line-height: 1;
}

.pd-consult-benefit-card h3 {
  margin: 0 0 9px !important;
  font-size: 15px;
  line-height: 1.35;
  font-weight: 900;
  color: #111;
}

.pd-solution-value-item p, .pd-consult-benefit-card p {
  max-width: 170px;
  margin: 0 auto !important;
  font-size: 12.8px;
  line-height: 1.55;
  color: #555;
}

.pd-consult-intro-left {
  padding-right: 24px !important;
}

.pd-consult-intro-image-wrap {
  position: relative;
  overflow: hidden;
  border-radius: 12px;
  box-shadow: 0 14px 34px rgba(20, 35, 55, 0.08);
}

.pd-consult-intro-image img {
  width: 100%;
  height: 330px;
  object-fit: cover;
  object-position: center;
  display: block;
  border-radius: 12px;
  transition: transform .35s ease;
}

.pd-consult-video-box {
  position: absolute;
  right: 22px;
  bottom: 22px;
  min-width: 190px;
  min-height: 66px;
  padding: 12px 18px 12px 14px;
  border-radius: 9px;
  background: rgba(255,255,255,0.96);
  box-shadow: 0 12px 28px rgba(20, 35, 55, 0.14);
  display: flex;
  align-items: center;
  gap: 12px;
  color: #111;
  text-decoration: none !important;
  backdrop-filter: blur(8px);
}

.pd-consult-video-icon {
  width: 42px;
  height: 42px;
  min-width: 42px;
  border-radius: 50%;
  background: #ffecec;
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  line-height: 1;
  padding-left: 2px;
}

.pd-consult-video-box span:last-child {
  font-size: 13px;
  line-height: 1.35;
  font-weight: 800;
}

.pd-consult-intro-text h2 {
  position: relative;
  margin: 0 0 20px !important;
  padding-bottom: 14px;
  font-size: 31px;
  line-height: 1.25;
  font-weight: 900;
  color: #111;
  letter-spacing: -0.35px;
  text-transform: uppercase;
}

.pd-consult-intro-text h2:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 52px;
  height: 3px;
  border-radius: 99px;
  background: #e60000;
}

.pd-consult-intro-text p {
  max-width: 630px;
  margin: 0 0 18px !important;
  font-size: 15.5px;
  line-height: 1.72;
  color: #333;
  font-weight: 500;
}

.pd-consult-intro-text ul li {
  position: relative;
  padding-left: 30px;
  margin-bottom: 11px;
  font-size: 15px;
  line-height: 1.55;
  color: #222;
  font-weight: 600;
}

.pd-consult-intro-text ul li:before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 2px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #ffecec;
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  line-height: 1;
  font-weight: 900;
}

.pd-family-projects-line, .pd-business-type-line, .pd-business-journey-line, .pd-smart-type-line, .pd-smart-why-line, .pd-smart-device-line, .pd-consult-audience-line {
  width: 48px;
  height: 3px;
  margin: 12px auto 0;
  border-radius: 99px;
  background: #e60000;
}

.pd-consult-audience-card {
  height: 100%;
  overflow: hidden;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 10px;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.045);
  transition: all .25s ease;
}

.pd-consult-audience-image img {
  width: 100%;
  height: 115px !important;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .35s ease;
}

.pd-consult-audience-content {
  position: relative;
  min-height: 118px;
  padding: 32px 16px 18px;
  background: #fff;
}

.pd-consult-audience-icon {
  position: absolute;
  left: 16px;
  top: -25px;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid rgba(230, 0, 0, 0.18);
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 23px;
  line-height: 1;
  box-shadow: 0 9px 20px rgba(20, 35, 55, 0.08);
}

.pd-consult-audience-content p {
  margin: 0 !important;
  font-size: 13px;
  line-height: 1.55;
  color: #555;
}

.pd-consult-scope-card {
  height: 100%;
  min-height: 142px;
  padding: 22px 15px 18px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 10px;
  text-align: center;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.045);
  transition: all .25s ease;
}

.pd-consult-scope-icon {
  width: 48px;
  height: 48px;
  margin: 0 auto 13px;
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 34px;
  line-height: 1;
  font-weight: 400;
}

.pd-consult-scope-card p {
  max-width: 160px;
  margin: 0 auto !important;
  font-size: 12.5px;
  line-height: 1.55;
  color: #555;
}

.pd-consult-audience-title h2, .pd-consult-scope-title h2, .pd-consult-process-title h2 {
  margin: 0 !important;
  font-size: 28px;
  line-height: 1.25;
  font-weight: 900;
  color: #111;
  letter-spacing: -0.25px;
  text-transform: uppercase;
}

.pd-business-journey-row, .pd-consult-process-row {
  position: relative;
  align-items: stretch !important;
}

.pd-business-journey-row:before, .pd-consult-process-row:before {
  content: "";
  position: absolute;
  left: 8.333%;
  right: 8.333%;
  top: 0;
  height: 1px;
  border-top: 1px dashed rgba(230, 0, 0, 0.45);
  z-index: 1;
}

.pd-consult-process-col {
  position: relative;
  padding-top: 15px !important;
}

.pd-consult-process-card {
  position: relative;
  z-index: 2;
  height: 100%;
  min-height: 135px;
  padding: 28px 14px 18px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 9px;
  text-align: center;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.045);
  transition: all .25s ease;
}

.pd-consult-process-number {
  position: absolute;
  top: -24px;
  left: 50%;
  transform: translateX(-50%);
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: #e60000;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 9px;
  line-height: 1;
  font-weight: 900;
  box-shadow: 0 6px 14px rgba(230, 0, 0, 0.22);
}

.pd-consult-process-card p {
  max-width: 165px;
  margin: 0 auto !important;
  font-size: 12.5px;
  line-height: 1.55;
  color: #555;
}

.pd-consult-faq-left {
  padding-right: 22px !important;
}

.pd-consult-faq-right {
  padding-left: 22px !important;
}

.pd-consult-faq-title h2 {
  margin: 0 0 18px !important;
  font-size: 28px;
  line-height: 1.25;
  font-weight: 900;
  color: #111;
  text-transform: uppercase;
  letter-spacing: -0.25px;
}

.pd-consult-faq-box {
  overflow: hidden;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 10px;
  box-shadow: 0 10px 26px rgba(20, 35, 55, 0.045);
}

.pd-contact-faq-list .accordion-item, .pd-family-faq-v2-box .accordion-item, .pd-consult-faq-box .accordion-item {
  margin: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid #eeeeee !important;
}

.pd-faq-list .accordion-item:last-child, .pd-contact-faq-list .accordion-item:last-child, .pd-family-faq-v2-box .accordion-item:last-child, .pd-consult-faq-box .accordion-item:last-child {
  border-bottom: 0 !important;
}

.pd-consult-faq-box .accordion-title {
  position: relative !important;
  display: block !important;
  min-height: 42px;
  margin: 0 !important;
  padding: 12px 44px 12px 18px !important;
  border: 0 !important;
  background: #fff !important;
  color: #111 !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

.pd-consult-faq-box .accordion-title:after {
  content: "+";
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
  color: #111;
  font-size: 18px;
  line-height: 1;
  font-weight: 500;
}

.pd-faq-list .accordion-title:hover, .pd-faq-list .accordion-title.active, .pd-contact-faq-list .accordion-title:hover, .pd-contact-faq-list .accordion-title.active, .pd-consult-faq-box .accordion-title.active, .pd-consult-faq-box .accordion-title:hover {
  color: #e60000 !important;
  background: #fff8f8 !important;
}

.pd-consult-faq-box .accordion-title.active:after {
  content: "−";
  color: #e60000;
}

.pd-consult-faq-box .accordion-inner {
  padding: 0 18px 15px 18px !important;
  background: #fff8f8 !important;
  border: 0 !important;
}

.pd-family-faq-v2-box .accordion-inner p, .pd-consult-faq-box .accordion-inner p {
  margin: 0 !important;
  font-size: 13.5px;
  line-height: 1.65;
  color: #555;
}

.pd-consult-support-card {
  position: relative;
  min-height: 260px;
  overflow: hidden;
  border-radius: 13px;
  background: #111;
  box-shadow: 0 14px 34px rgba(20, 35, 55, 0.12);
}

.pd-consult-support-bg .img, .pd-consult-support-bg .img-inner {
  margin: 0 !important;
  border-radius: 13px;
  overflow: hidden;
}

.pd-consult-support-bg img {
  width: 100%;
  height: 260px;
  object-fit: cover;
  object-position: center right;
  display: block;
  border-radius: 13px;
}

.pd-consult-support-overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  background: linear-gradient(
  90deg,
  rgba(0,0,0,0.82) 0%,
  rgba(0,0,0,0.68) 45%,
  rgba(0,0,0,0.22) 100%
  );
}

.pd-consult-support-content {
  position: absolute;
  z-index: 3;
  left: 34px;
  top: 50%;
  transform: translateY(-50%);
  max-width: 360px;
}

.pd-consult-support-content h3 {
  margin: 0 0 18px !important;
  font-size: 19px;
  line-height: 1.45;
  font-weight: 900;
  color: #fff;
}

.pd-consult-support-content ul {
  list-style: none;
  margin: 0 0 22px;
  padding: 0;
}

.pd-consult-support-content ul li {
  position: relative;
  padding-left: 28px;
  margin-bottom: 9px;
  font-size: 14px;
  line-height: 1.4;
  font-weight: 700;
  color: rgba(255,255,255,0.9);
}

.pd-consult-support-content ul li:before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 1px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #e60000;
  color: #fff;
  font-size: 10px;
  line-height: 18px;
  text-align: center;
  font-weight: 900;
}

.pd-consult-support-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 22px;
  border-radius: 6px;
  background: #e60000;
  color: #fff;
  font-size: 13px;
  line-height: 40px;
  font-weight: 900;
  text-decoration: none !important;
  box-shadow: 0 10px 22px rgba(230, 0, 0, 0.22);
}

.pd-consult-register-left {
  padding-right: 12px !important;
}

.pd-consult-register-right {
  padding-left: 12px !important;
}

.pd-consult-form-box {
  height: 100%;
  padding: 28px 34px 30px;
  background: #fff;
  border: 1px solid rgba(230, 0, 0, 0.16);
  border-radius: 12px;
  box-shadow: 0 12px 30px rgba(20, 35, 55, 0.055);
}

.pd-consult-form-heading h2 {
  margin: 0 0 6px !important;
  font-size: 22px;
  line-height: 1.25;
  font-weight: 900;
  color: #111;
  text-transform: uppercase;
  letter-spacing: -0.25px;
}

.pd-consult-form-heading p {
  margin: 0 0 20px !important;
  font-size: 14px;
  line-height: 1.6;
  color: #555;
}

.pd-cf7-consult-form {
  width: 100%;
}

.pd-cf7-row {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px 18px;
  margin-bottom: 14px;
}

.pd-cf7-field label {
  display: block;
  margin: 0 0 7px;
  font-size: 12.8px;
  line-height: 1.4;
  font-weight: 800;
  color: #222;
}

.pd-cf7-field input, .pd-cf7-field select, .pd-cf7-field textarea {
  width: 100% !important;
  height: 42px;
  margin: 0 !important;
  padding: 0 14px !important;
  border: 1px solid #e6e6e6 !important;
  border-radius: 6px !important;
  background: #fff !important;
  color: #111 !important;
  font-size: 13px !important;
  line-height: 42px !important;
  box-shadow: none !important;
  outline: none !important;
}

.pd-cf7-field textarea {
  height: 92px;
  padding-top: 12px !important;
  line-height: 1.55 !important;
  resize: vertical;
}

.pd-cf7-field input:focus, .pd-cf7-field select:focus, .pd-cf7-field textarea:focus {
  border-color: rgba(230, 0, 0, 0.55) !important;
  box-shadow: 0 0 0 3px rgba(230, 0, 0, 0.06) !important;
}

.pd-cf7-field-full {
  margin-bottom: 13px;
}

.pd-cf7-acceptance {
  margin: 0 0 14px;
  font-size: 12.5px;
  line-height: 1.5;
  color: #444;
}

.pd-cf7-acceptance input[type="checkbox"] {
  margin-right: 7px;
}

.pd-cf7-acceptance a {
  color: #e60000;
  font-weight: 800;
  text-decoration: none;
}

.pd-cf7-submit-wrap {
  margin-top: 4px;
}

.pd-cf7-submit {
  width: 100% !important;
  height: 44px !important;
  margin: 0 !important;
  padding: 0 24px !important;
  border: 0 !important;
  border-radius: 6px !important;
  background: #e60000 !important;
  color: #fff !important;
  font-size: 14px !important;
  line-height: 44px !important;
  font-weight: 900 !important;
  text-transform: none !important;
  box-shadow: 0 10px 22px rgba(230, 0, 0, 0.2);
}

.pd-cf7-submit:hover {
  background: #c90000 !important;
  color: #fff !important;
}

.pd-cf7-consult-form .wpcf7-not-valid-tip {
  margin-top: 5px;
  font-size: 12px;
  color: #e60000;
}

.pd-cf7-consult-form .wpcf7-response-output {
  margin: 14px 0 0 !important;
  padding: 10px 12px !important;
  border-radius: 6px;
  font-size: 13px;
}

.pd-consult-why-box {
  position: relative;
  height: 100%;
  min-height: 420px;
  overflow: hidden;
  padding: 34px 34px 32px;
  border-radius: 12px;
  background:
  radial-gradient(circle at 86% 22%, rgba(255,255,255,0.14) 0, rgba(255,255,255,0) 28%),
  linear-gradient(135deg, #d90000 0%, #b90000 48%, #8f0000 100%);
  color: #fff;
  box-shadow: 0 16px 34px rgba(180, 0, 0, 0.18);
}

.pd-consult-why-box:after {
  content: "";
  position: absolute;
  right: -80px;
  bottom: -80px;
  width: 360px;
  height: 260px;
  opacity: 0.22;
  background:
  linear-gradient(25deg, transparent 48%, rgba(255,255,255,0.45) 49%, transparent 50%),
  linear-gradient(-18deg, transparent 48%, rgba(255,255,255,0.35) 49%, transparent 50%);
  pointer-events: none;
}

.pd-consult-why-box h3 {
  position: relative;
  z-index: 2;
  margin: 0 0 22px !important;
  font-size: 18px;
  line-height: 1.35;
  font-weight: 900;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: .3px;
}

.pd-about-stats-title, .pd-consult-why-list {
  position: relative;
  z-index: 2;
}

.pd-consult-why-item {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 18px;
}

.pd-consult-why-icon {
  width: 42px;
  height: 42px;
  min-width: 42px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,0.45);
  background: rgba(255,255,255,0.08);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
}

.pd-consult-why-item h4 {
  margin: 0 0 4px !important;
  font-size: 14.5px;
  line-height: 1.35;
  font-weight: 900;
  color: #fff;
}

.pd-consult-why-item p {
  margin: 0 !important;
  font-size: 13px;
  line-height: 1.55;
  color: rgba(255,255,255,0.88);
}

.pd-monitor-hero-v2 {
  position: relative;
  min-height: 560px;
  overflow: visible;
  background-color: #07111d;
}

.pd-monitor-hero-v2:before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
  90deg,
  rgba(4, 12, 22, 0.94) 0%,
  rgba(4, 12, 22, 0.88) 30%,
  rgba(4, 12, 22, 0.58) 54%,
  rgba(4, 12, 22, 0.18) 76%,
  rgba(4, 12, 22, 0.06) 100%
  );
  pointer-events: none;
}

.pd-monitor-hero-v2-row {
  min-height: 560px;
  position: relative;
  z-index: 3;
}

.pd-monitor-hero-v2-content {
  padding-top: 58px !important;
  padding-bottom: 135px !important;
}

.pd-monitor-v2-breadcrumb {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 22px;
  color: rgba(255,255,255,0.86);
  font-size: 13px;
  line-height: 1.4;
  font-weight: 700;
}

.pd-monitor-v2-text h1 {
  margin: 0 0 22px !important;
  font-size: 48px;
  line-height: 1.32;
  font-weight: 900;
  color: #fff;
  letter-spacing: -0.6px;
  text-transform: uppercase;
}

.pd-monitor-v2-text p {
  max-width: 670px;
  margin: 0 0 24px !important;
  color: rgba(255,255,255,0.9);
  font-size: 17px;
  line-height: 1.75;
  font-weight: 500;
}

.pd-monitor-v2-mini-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  max-width: 720px;
  margin-bottom: 26px;
}

.pd-monitor-v2-mini {
  display: flex;
  align-items: center;
  gap: 11px;
  min-height: 64px;
  padding: 10px 12px;
  border-radius: 10px;
  background: rgba(10, 20, 33, 0.72);
  border: 1px solid rgba(255,255,255,0.1);
  backdrop-filter: blur(6px);
}

.pd-monitor-v2-mini i {
  width: 34px;
  height: 34px;
  min-width: 34px;
  border-radius: 50%;
  background: rgba(230,0,0,0.14);
  border: 1px solid rgba(230,0,0,0.35);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-style: normal;
  font-size: 15px;
  line-height: 1;
  font-weight: 900;
}

.pd-monitor-v2-mini strong {
  display: block;
  margin: 0 0 2px;
  color: #fff;
  font-size: 12.8px;
  line-height: 1.28;
  font-weight: 900;
}

.pd-monitor-v2-mini small {
  display: block;
  color: rgba(255,255,255,0.72);
  font-size: 11.5px;
  line-height: 1.25;
  font-weight: 600;
}

.pd-monitor-v2-actions {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}

.pd-monitor-v2-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 24px;
  border-radius: 6px;
  font-size: 13.5px;
  line-height: 46px;
  font-weight: 900;
  text-decoration: none !important;
  text-transform: uppercase;
  letter-spacing: .2px;
}

.pd-monitor-v2-btn-red {
  background: #e60000;
  color: #fff;
  box-shadow: 0 12px 26px rgba(230,0,0,0.25);
}

.pd-consult-support-btn:hover, .pd-monitor-v2-btn-red:hover {
  background: #c90000;
  color: #fff;
}

.pd-monitor-v2-btn-dark {
  background: rgba(0,0,0,0.18);
  border: 1px solid rgba(255,255,255,0.42);
  color: #fff;
}

.pd-monitor-v2-btn-dark:hover {
  background: #fff;
  border-color: #fff;
  color: #111;
}

.pd-monitor-v2-strip {
  position: absolute;
  z-index: 5;
  left: 50%;
  bottom: -58px;
  transform: translateX(-50%);
  width: calc(100% - 70px);
  max-width: 1180px;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  overflow: hidden;
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 18px 42px rgba(0,0,0,0.14);
}

.pd-monitor-v2-strip-item {
  min-height: 126px;
  padding: 22px 18px 20px;
  text-align: center;
  border-right: 1px solid #eeeeee;
  background: #fff;
}

.pd-monitor-v2-strip-icon {
  width: 54px;
  height: 54px;
  margin: 0 auto 13px;
  border-radius: 50%;
  background: rgba(230,0,0,0.05);
  border: 2px solid rgba(230,0,0,0.16);
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 17px;
  line-height: 1;
  font-weight: 900;
}

.pd-monitor-v2-strip-item h3 {
  margin: 0 0 7px !important;
  color: #111;
  font-size: 16px;
  line-height: 1.35;
  font-weight: 900;
}

.pd-monitor-v2-strip-item p {
  max-width: 180px;
  margin: 0 auto !important;
  color: #555;
  font-size: 12.8px;
  line-height: 1.5;
}

.pd-after-monitor-hero-v2 {
  padding-top: 90px !important;
}

.pd-family-why-left, .pd-monitor-why-left {
  padding-right: 34px !important;
}

.pd-monitor-why-right {
  padding-left: 26px !important;
}

.pd-monitor-why-text h2 {
  margin: 0 0 18px !important;
  font-size: 34px;
  line-height: 1.2;
  font-weight: 900;
  color: #111;
  letter-spacing: -0.35px;
  text-transform: uppercase;
}

.pd-monitor-why-text p {
  max-width: 560px;
  margin: 0 0 20px !important;
  font-size: 15.5px;
  line-height: 1.72;
  color: #333;
  font-weight: 500;
}

.pd-consult-left ul, .pd-consult-commit ul, .pd-footer-menu ul, .pd-footer-contact ul, .pd-panel-list ul, .pd-family-why-text ul, .pd-consult-intro-text ul, .pd-monitor-why-text ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.pd-monitor-why-text ul li {
  position: relative;
  padding-left: 30px;
  margin-bottom: 11px;
  font-size: 15px;
  line-height: 1.55;
  color: #222;
  font-weight: 700;
}

.pd-monitor-why-text ul li:before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 2px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #e60000;
  color: #fff;
  font-size: 10px;
  line-height: 18px;
  text-align: center;
  font-weight: 900;
}

.pd-monitor-why-image-wrap {
  position: relative;
  overflow: hidden;
  border-radius: 14px;
  box-shadow: 0 16px 36px rgba(20, 35, 55, 0.1);
}

.pd-monitor-why-image img {
  width: 100%;
  height: 360px;
  object-fit: cover;
  object-position: center;
  display: block;
  border-radius: 14px;
  transition: transform .35s ease;
}

.pd-monitor-data-card {
  position: absolute;
  left: 28px;
  width: 220px;
  padding: 18px 18px 16px;
  border-radius: 12px;
  background: rgba(255,255,255,0.96);
  box-shadow: 0 14px 32px rgba(20, 35, 55, 0.14);
  backdrop-filter: blur(8px);
}

.pd-monitor-data-card-1 {
  top: 28px;
}

.pd-monitor-data-card-2 {
  left: 56px;
  bottom: 28px;
}

.pd-monitor-data-card span {
  display: block;
  margin: 0 0 8px;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 700;
  color: #555;
}

.pd-monitor-data-card strong {
  display: block;
  margin: 0 0 6px;
  font-size: 28px;
  line-height: 1;
  font-weight: 900;
  color: #111;
  letter-spacing: -0.3px;
}

.pd-monitor-data-card strong small {
  font-size: 13px;
  font-weight: 800;
  color: #555;
}

.pd-monitor-data-card em {
  display: block;
  margin: 0;
  font-size: 12px;
  line-height: 1.35;
  font-style: normal;
  font-weight: 700;
  color: #21a854;
}

.pd-monitor-data-card i {
  position: absolute;
  right: 17px;
  bottom: 17px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #21a854;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-style: normal;
  font-size: 12px;
  font-weight: 900;
}

.pd-monitor-chart-line {
  position: relative;
  height: 42px;
  margin-top: 12px;
  overflow: hidden;
}

.pd-monitor-chart-line:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 22px;
  height: 2px;
  background: linear-gradient(
  90deg,
  #79d18b 0%,
  #55c86a 18%,
  #8bdc94 32%,
  #38b85a 48%,
  #75d884 66%,
  #30aa52 82%,
  #69d878 100%
  );
  clip-path: polygon(
  0 80%, 10% 65%, 18% 72%, 26% 45%, 35% 60%,
  45% 35%, 56% 48%, 66% 28%, 77% 40%, 88% 20%, 100% 32%,
  100% 100%, 0 100%
  );
}

.pd-monitor-chart-line:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 21px;
  height: 2px;
  background: #28b85b;
  clip-path: polygon(
  0 80%, 10% 65%, 18% 72%, 26% 45%, 35% 60%,
  45% 35%, 56% 48%, 66% 28%, 77% 40%, 88% 20%, 100% 32%,
  100% 38%, 88% 26%, 77% 46%, 66% 34%, 56% 54%, 45% 41%,
  35% 66%, 26% 51%, 18% 78%, 10% 71%, 0 86%
  );
}

.pd-monitor-service-title p {
  margin: 0 0 6px !important;
  font-size: 11px;
  line-height: 1.4;
  font-weight: 900;
  color: #e60000;
  letter-spacing: 1.4px;
  text-transform: uppercase;
}

.pd-monitor-service-title h2 {
  margin: 0 !important;
  font-size: 27px;
  line-height: 1.28;
  font-weight: 900;
  color: #111;
  letter-spacing: -0.25px;
}

.pd-monitor-service-card {
  height: 100%;
  min-height: 162px;
  padding: 24px 15px 20px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 10px;
  text-align: center;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.045);
  transition: all .25s ease;
}

.pd-monitor-service-icon {
  width: 58px;
  height: 58px;
  margin: 0 auto 14px;
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 40px;
  line-height: 1;
  font-weight: 400;
}

.pd-monitor-service-card h3 {
  margin: 0 0 9px !important;
  font-size: 14.8px;
  line-height: 1.35;
  font-weight: 900;
  color: #111;
}

.pd-monitor-service-card p {
  max-width: 170px;
  margin: 0 auto !important;
  font-size: 12.6px;
  line-height: 1.55;
  color: #555;
}

.pd-monitor-process-wrap {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 28px;
  padding-top: 16px;
}

.pd-monitor-process-wrap:before {
  content: "";
  position: absolute;
  left: 9%;
  right: 9%;
  top: 42px;
  height: 1px;
  border-top: 1px dashed rgba(0,0,0,0.22);
  z-index: 1;
}

.pd-monitor-process-number {
  width: 74px;
  height: 74px;
  margin: 0 auto 18px;
  border-radius: 50%;
  background: #fff;
  border: 1.5px solid #e60000;
  color: #e60000;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-shadow: 0 8px 22px rgba(230, 0, 0, 0.08);
}

.pd-monitor-process-number strong {
  display: block;
  margin: 0 0 2px;
  font-size: 13px;
  line-height: 1;
  font-weight: 900;
}

.pd-monitor-process-number span {
  display: block;
  font-size: 11px;
  line-height: 1;
  font-weight: 800;
}

.pd-consult-audience-content h3, .pd-monitor-process-item h3 {
  margin: 0 0 9px !important;
  font-size: 15.5px;
  line-height: 1.35;
  font-weight: 900;
  color: #111;
}

.pd-monitor-process-item p {
  max-width: 190px;
  margin: 0 auto !important;
  font-size: 13px;
  line-height: 1.55;
  color: #555;
}

.pd-monitor-price-card {
  position: relative;
  height: 100%;
  min-height: 270px;
  padding: 30px 28px 24px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 12px;
  text-align: center;
  box-shadow: 0 10px 26px rgba(20, 35, 55, 0.055);
  transition: all .25s ease;
}

.pd-family-usecase-card:hover, .pd-family-step-item:hover, .pd-family-project-card:hover, .pd-business-type-card:hover, .pd-business-journey-card:hover, .pd-smart-type-card:hover, .pd-monitor-price-card:hover {
  transform: translateY(-4px);
  border-color: rgba(230, 0, 0, 0.2);
  box-shadow: 0 16px 34px rgba(20, 35, 55, 0.1);
}

.pd-monitor-price-featured {
  background: linear-gradient(135deg, #e60000 0%, #b90000 100%);
  border-color: #e60000;
  color: #fff;
  box-shadow: 0 16px 36px rgba(230, 0, 0, 0.18);
}

.pd-monitor-price-badge {
  position: absolute;
  left: 50%;
  top: -17px;
  transform: translateX(-50%);
  min-width: 140px;
  height: 32px;
  padding: 0 18px;
  border-radius: 999px 999px 0 0;
  background: #e60000;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: .3px;
}

.pd-monitor-price-card h3 {
  margin: 0 0 18px !important;
  font-size: 18px;
  line-height: 1.35;
  font-weight: 900;
  color: #111;
}

.pd-monitor-price {
  margin: 0 0 22px;
  font-size: 32px;
  line-height: 1.1;
  font-weight: 900;
  color: #111;
  letter-spacing: -0.5px;
}

.pd-monitor-price span {
  font-size: 14px;
  font-weight: 700;
  color: #555;
}

.pd-monitor-price-card ul {
  margin: 0 0 24px;
  padding: 0;
  list-style: none;
  text-align: left;
}

.pd-monitor-price-card ul li {
  position: relative;
  padding-left: 24px;
  margin-bottom: 10px;
  font-size: 13.5px;
  line-height: 1.45;
  font-weight: 600;
  color: #222;
}

.pd-monitor-price-featured ul li {
  color: rgba(255,255,255,0.94);
}

.pd-breadcrumb a:hover, .pd-contact-hero .pd-breadcrumb a:hover, .pd-solution-breadcrumb a:hover, .pd-monitor-price-featured h3, .pd-monitor-price-featured .pd-monitor-price, .pd-monitor-price-featured .pd-monitor-price span, .pd-monitor-price-featured ul li:before {
  color: #fff;
}

.pd-monitor-price-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 38px;
  padding: 0 18px;
  border-radius: 6px;
  border: 1px solid #e60000;
  background: #fff;
  color: #111;
  font-size: 13px;
  line-height: 38px;
  font-weight: 900;
  text-decoration: none !important;
}

.pd-monitor-price-featured .pd-monitor-price-btn {
  background: #fff;
  border-color: #fff;
  color: #c90000;
}

.pd-monitor-price-featured .pd-monitor-price-btn:hover {
  background: #111;
  border-color: #111;
  color: #fff;
}

.pd-monitor-support-box {
  height: 100%;
  min-height: 270px;
  padding: 30px 28px 24px;
  border-radius: 12px;
  background: #fff3f3;
  border: 1px solid rgba(230, 0, 0, 0.12);
}

.pd-monitor-support-box h3 {
  margin: 0 0 22px !important;
  font-size: 15.5px;
  line-height: 1.4;
  font-weight: 900;
  color: #e60000;
  text-transform: uppercase;
}

.pd-monitor-support-box ul li {
  position: relative;
  padding-left: 28px;
  margin-bottom: 17px;
  font-size: 14px;
  line-height: 1.45;
  font-weight: 700;
  color: #333;
}

.pd-monitor-support-box ul li:before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #fff;
  color: #e60000;
  border: 1px solid rgba(230, 0, 0, 0.25);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  line-height: 1;
  font-weight: 900;
}

.pd-monitor-process-title p, .pd-monitor-report-title p {
  margin: 0 0 5px !important;
  font-size: 11px;
  line-height: 1.4;
  font-weight: 900;
  color: #e60000;
  letter-spacing: 1.4px;
  text-transform: uppercase;
}

.pd-monitor-report-card {
  height: 100%;
  overflow: hidden;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 11px;
  text-align: center;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.045);
  transition: all .25s ease;
}

.pd-monitor-report-card:hover {
  transform: translateY(-4px);
  border-color: rgba(230, 0, 0, 0.18);
  box-shadow: 0 16px 32px rgba(20, 35, 55, 0.08);
}

.pd-monitor-report-image img {
  width: 100%;
  height: 122px !important;
  object-fit: cover;
  object-position: center;
  display: block;
  border-bottom: 1px solid #eeeeee;
  transition: transform .35s ease;
}

.pd-monitor-report-content {
  padding: 16px 14px 18px;
}

.pd-monitor-report-content p {
  max-width: 210px;
  margin: 0 auto !important;
  font-size: 13px;
  line-height: 1.5;
  color: #555;
}

.pd-monitor-faq-heading h2 {
  margin: 0 0 18px !important;
  font-size: 27px;
  line-height: 1.25;
  font-weight: 900;
  color: #111;
  text-transform: uppercase;
  letter-spacing: -0.25px;
}

.pd-monitor-faq-inner-row {
  margin-left: -8px !important;
  margin-right: -8px !important;
}

.pd-monitor-faq-inner-row .col {
  padding-left: 8px !important;
  padding-right: 8px !important;
}

.pd-monitor-help-card {
  position: relative;
  min-height: 238px;
  height: 100%;
  overflow: hidden;
  border-radius: 13px;
  background: linear-gradient(135deg, #d90000 0%, #b80000 55%, #8f0000 100%);
  box-shadow: 0 16px 34px rgba(180, 0, 0, 0.18);
}

.pd-monitor-help-card:before {
  content: "";
  position: absolute;
  inset: 0;
  background:
  radial-gradient(circle at 82% 18%, rgba(255,255,255,0.18) 0, rgba(255,255,255,0) 28%),
  linear-gradient(120deg, rgba(255,255,255,0.08), rgba(255,255,255,0));
  pointer-events: none;
  z-index: 1;
}

.pd-monitor-help-content {
  position: relative;
  z-index: 3;
  max-width: 270px;
  padding: 34px 28px;
  color: #fff;
}

.pd-monitor-help-content h3 {
  margin: 0 0 8px !important;
  font-size: 25px;
  line-height: 1.25;
  font-weight: 900;
  color: #fff;
  letter-spacing: -0.2px;
}

.pd-monitor-help-content p {
  max-width: 230px;
  margin: 0 0 24px !important;
  font-size: 14px;
  line-height: 1.6;
  color: rgba(255,255,255,0.9);
  font-weight: 600;
}

.pd-monitor-help-phone {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 48px;
  padding: 0 22px;
  border-radius: 6px;
  border: 1px solid rgba(255,255,255,0.65);
  background: rgba(255,255,255,0.04);
  color: #fff !important;
  font-size: 15px;
  line-height: 48px;
  font-weight: 900;
  text-decoration: none !important;
}

.pd-monitor-help-phone:hover {
  background: #fff;
  color: #e60000 !important;
}

.pd-monitor-help-phone span {
  font-size: 17px;
  line-height: 1;
}

.pd-monitor-help-image {
  position: absolute;
  right: -6px;
  bottom: 0;
  z-index: 2;
  width: 46%;
  max-width: 190px;
}

.pd-final-cta-image img, .pd-monitor-help-img img {
  width: 100%;
  height: auto;
  display: block;
}

.pd-service-hero-section {
  background: linear-gradient(90deg, #f8fafc 0%, #f8fafc 42%, #eef5fb 72%, #e9f2fb 100%);
  overflow: hidden;
}

.pd-service-hero-content-col {
  padding: 54px 30px 54px 64px !important;
  position: relative;
  z-index: 3;
}

.pd-business-why-stats, .pd-service-hero-content {
  max-width: 560px;
}

.pd-service-hero-kicker {
  margin: 0 0 16px;
  font-size: 14px;
  line-height: 1.4;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: #e40012;
  text-transform: uppercase;
}

.pd-service-hero-content h1 {
  margin: 0 0 18px;
  font-size: 48px;
  line-height: 1.08;
  font-weight: 800;
  color: #111111;
}

.pd-service-hero-content h1 span {
  color: #e40012;
}

.pd-service-hero-desc {
  margin: 0 0 28px;
  font-size: 17px;
  line-height: 1.85;
  color: #4b5563;
  max-width: 520px;
}

.pd-service-hero-btns {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 6px;
}

.pd-service-hero-btn .button {
  min-height: 50px;
  padding: 0 26px;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0;
  box-shadow: none;
}

.pd-btn-primary .button {
  background: #e40012 !important;
  border-color: #e40012 !important;
  color: #fff !important;
}

.pd-btn-primary .button:hover {
  background: #c90010 !important;
  border-color: #c90010 !important;
  color: #fff !important;
}

.pd-btn-outline .button {
  background: #fff !important;
  border: 2px solid #e40012 !important;
  color: #e40012 !important;
}

.pd-btn-outline .button:hover {
  background: #e40012 !important;
  color: #fff !important;
}

.pd-service-hero-image-col {
  padding: 0 !important;
  position: relative;
  min-height: 540px;
}

.pd-service-hero-image-wrap {
  position: relative;
  height: 100%;
  min-height: 540px;
  overflow: hidden;
}

.pd-service-hero-image-wrap:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 220px;
  height: 100%;
  z-index: 2;
  background: linear-gradient(90deg, #f8fafc 0%, rgba(248,250,252,0.95) 18%, rgba(248,250,252,0.68) 45%, rgba(248,250,252,0) 100%);
  pointer-events: none;
}

.pd-service-hero-image img {
  width: 100%;
  min-height: 540px;
  object-fit: cover;
  display: block;
}

.pd-service-hero-image .img-inner {
  width: 100% !important;
  height: 100%;
}

.pd-service-hero-image .img {
  width: 100%;
  margin: 0;
}

.pd-install-benefit-section {
  background: #fff;
  border-bottom: 1px solid #eeeeee;
  box-shadow: 0 8px 24px rgba(20, 35, 55, 0.035);
}

.pd-install-benefit-item {
  height: 100%;
  min-height: 82px;
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 8px 24px;
  background: #fff;
}

.pd-install-benefit-icon {
  width: 48px;
  height: 48px;
  min-width: 48px;
  border-radius: 50%;
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 31px;
  line-height: 1;
  font-weight: 400;
}

.pd-install-benefit-content p {
  margin: 0 !important;
  font-size: 13px;
  line-height: 1.55;
  color: #444;
}

.pd-install-intro-content-col {
  padding-right: 28px !important;
}

.pd-install-intro-image-col {
  padding-left: 18px !important;
  padding-right: 16px !important;
}

.pd-install-intro-feature-col {
  padding-left: 10px !important;
}

.pd-install-intro-content h2 {
  margin: 0 0 18px !important;
  font-size: 31px;
  line-height: 1.28;
  font-weight: 900;
  color: #111;
  letter-spacing: -0.3px;
}

.pd-install-intro-content p {
  margin: 0 0 16px !important;
  font-size: 15.5px;
  line-height: 1.75;
  color: #333;
  font-weight: 500;
}

.pd-install-intro-image img {
  width: 100%;
  height: 250px !important;
  object-fit: cover;
  object-position: center;
  display: block;
  border-radius: 12px;
  transition: transform .35s ease;
}

.pd-install-intro-feature-box {
  padding: 18px 18px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 12px;
  box-shadow: 0 12px 30px rgba(20, 35, 55, 0.07);
}

.pd-install-intro-feature-item {
  display: flex;
  align-items: center;
  gap: 13px;
  padding: 12px 0;
  border-bottom: 1px solid #eeeeee;
}

.pd-install-intro-feature-icon {
  width: 38px;
  height: 38px;
  min-width: 38px;
  border-radius: 10px;
  background: rgba(230, 0, 0, 0.06);
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  line-height: 1;
}

.pd-install-intro-feature-item h3 {
  margin: 0 0 4px !important;
  font-size: 14px;
  line-height: 1.3;
  font-weight: 900;
  color: #111;
}

.pd-install-intro-feature-item p {
  margin: 0 !important;
  font-size: 12.5px;
  line-height: 1.35;
  color: #555;
}

.pd-business-type-image .img, .pd-business-type-image .img-inner, .pd-smart-type-image .img, .pd-smart-type-image .img-inner, .pd-solution-mini-img .img, .pd-solution-mini-img .img-inner, .pd-consult-audience-image .img, .pd-consult-audience-image .img-inner, .pd-monitor-report-image .img, .pd-monitor-report-image .img-inner, .pd-install-fit-image .img, .pd-install-fit-image .img-inner {
  margin: 0 !important;
  border-radius: 0 !important;
  overflow: hidden;
}

.pd-install-fit-image img {
  width: 100%;
  height: 128px !important;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .35s ease;
}

.pd-news-card:hover .pd-news-image img, .pd-family-usecase-card:hover .pd-family-usecase-image img, .pd-family-project-card:hover .pd-family-project-thumb img, .pd-business-type-card:hover .pd-business-type-image img, .pd-smart-type-card:hover .pd-smart-type-image img, .pd-consult-audience-card:hover .pd-consult-audience-image img, .pd-install-fit-card:hover .pd-install-fit-image img {
  transform: scale(1.04);
}

.pd-install-fit-content {
  position: relative;
  min-height: 160px;
  padding: 32px 15px 18px;
  background: #fff;
}

.pd-install-fit-icon {
  position: absolute;
  left: 15px;
  top: -25px;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: #e60000;
  color: #fff;
  border: 4px solid #fff;
  box-shadow: 0 8px 18px rgba(20, 35, 55, 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 23px;
  line-height: 1;
}

.pd-install-fit-content p {
  margin: 0 !important;
  font-size: 12.8px;
  line-height: 1.55;
  color: #555;
}

.pd-install-fit-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 280px;
  min-height: 38px;
  padding: 0 24px;
  border-radius: 6px;
  border: 1px solid #e60000;
  background: #fff;
  color: #e60000;
  font-size: 13px;
  line-height: 38px;
  font-weight: 900;
  text-transform: uppercase;
  text-decoration: none !important;
}

.pd-install-scope-wrap {
  position: relative;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 24px;
  padding-top: 18px;
}

.pd-install-scope-wrap:before {
  content: "";
  position: absolute;
  left: 8%;
  right: 8%;
  top: 74px;
  height: 1px;
  border-top: 1px dashed rgba(0,0,0,0.24);
  z-index: 1;
}

.pd-install-scope-item {
  position: relative;
  z-index: 2;
  min-height: 205px;
  padding: 34px 15px 20px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 11px;
  text-align: center;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.045);
  transition: all .25s ease;
}

.pd-install-scope-number {
  position: absolute;
  top: -15px;
  left: 50%;
  transform: translateX(-50%);
  width: 31px;
  height: 31px;
  border-radius: 50%;
  background: #e60000;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  line-height: 1;
  font-weight: 900;
  box-shadow: 0 8px 16px rgba(230, 0, 0, 0.2);
}

.pd-install-scope-icon {
  width: 58px;
  height: 58px;
  margin: 0 auto 14px;
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 42px;
  line-height: 1;
  font-weight: 400;
}

.pd-install-scope-item p {
  margin: 0 auto !important;
  max-width: 165px;
  font-size: 12.6px;
  line-height: 1.55;
  color: #555;
}

.pd-install-scope-note {
  max-width: 920px;
  margin: 24px auto 0;
  padding: 13px 24px;
  border-radius: 8px;
  background: #fff2f2;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  text-align: center;
}

.pd-install-scope-note span {
  width: 28px;
  height: 28px;
  min-width: 28px;
  border-radius: 50%;
  background: #fff;
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  box-shadow: 0 6px 14px rgba(230, 0, 0, 0.1);
}

.pd-install-scope-note p {
  margin: 0 !important;
  font-size: 13.2px;
  line-height: 1.55;
  color: #333;
  font-weight: 600;
}

.pd-install-why-left {
  padding-right: 30px !important;
}

.pd-install-why-text h2 {
  margin: 0 0 18px !important;
  font-size: 30px;
  line-height: 1.25;
  font-weight: 900;
  color: #111;
  letter-spacing: -0.3px;
}

.pd-install-why-text ul li {
  position: relative;
  padding-left: 30px;
  margin-bottom: 11px;
  font-size: 14.8px;
  line-height: 1.6;
  color: #222;
  font-weight: 600;
}

.pd-install-why-text ul li:before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 3px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #e60000;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  line-height: 1;
  font-weight: 900;
}

.pd-install-why-text ul li strong {
  font-weight: 900;
  color: #111;
}

.pd-install-why-image-wrap {
  position: relative;
  min-height: 300px;
  overflow: hidden;
  border-radius: 14px;
  background: #f5f5f5;
}

.pd-monitor-why-image .img, .pd-monitor-why-image .img-inner, .pd-install-why-image .img, .pd-install-why-image .img-inner {
  margin: 0 !important;
  border-radius: 14px;
  overflow: hidden;
}

.pd-install-why-image img {
  width: 100%;
  height: 300px !important;
  object-fit: cover;
  object-position: center;
  display: block;
  border-radius: 14px;
}

.pd-install-why-card {
  position: absolute;
  z-index: 3;
  min-width: 185px;
  min-height: 62px;
  padding: 12px 16px;
  border-radius: 10px;
  background: rgba(255,255,255,0.96);
  border: 1px solid #eeeeee;
  box-shadow: 0 12px 28px rgba(20, 35, 55, 0.12);
  display: flex;
  align-items: center;
  gap: 12px;
  backdrop-filter: blur(8px);
}

.pd-install-why-card:after {
  content: "";
  position: absolute;
  width: 38px;
  height: 1px;
  background: #e60000;
}

.pd-install-why-card-icon {
  width: 38px;
  height: 38px;
  min-width: 38px;
  border-radius: 50%;
  background: rgba(230, 0, 0, 0.08);
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 19px;
  line-height: 1;
}

.pd-install-why-card h3 {
  margin: 0 0 3px !important;
  font-size: 13.5px;
  line-height: 1.25;
  font-weight: 900;
  color: #111;
}

.pd-install-why-card p {
  margin: 0 !important;
  font-size: 12.3px;
  line-height: 1.35;
  color: #555;
  font-weight: 600;
}

.pd-install-why-card-1 {
  top: 30px;
  left: 34px;
}

.pd-install-why-card-2 {
  top: 30px;
  right: 34px;
}

.pd-install-why-card-3 {
  left: 34px;
  bottom: 34px;
}

.pd-install-why-card-1:after, .pd-install-why-card-3:after {
  right: -38px;
  top: 50%;
}

.pd-install-why-card-4 {
  right: 34px;
  bottom: 34px;
}

.pd-install-why-card-2:after, .pd-install-why-card-4:after {
  left: -38px;
  top: 50%;
}

.pd-install-cost-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 14px;
}

.pd-install-cost-card {
  position: relative;
  min-height: 158px;
  padding: 34px 14px 18px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 11px;
  text-align: center;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.045);
  transition: all .25s ease;
}

.pd-install-cost-icon {
  position: absolute;
  left: 50%;
  top: -18px;
  transform: translateX(-50%);
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid rgba(230, 0, 0, 0.28);
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 17px;
  line-height: 1;
  font-weight: 900;
  box-shadow: 0 8px 18px rgba(230, 0, 0, 0.08);
}

.pd-install-cost-card h3 {
  margin: 0 0 10px !important;
  font-size: 14px;
  line-height: 1.35;
  font-weight: 900;
  color: #111;
}

.pd-install-cost-card p {
  max-width: 150px;
  margin: 0 auto !important;
  font-size: 12.3px;
  line-height: 1.55;
  color: #555;
}

.pd-business-type-title, .pd-smart-type-title, .pd-smart-device-title, .pd-consult-benefit-title, .pd-consult-audience-title, .pd-consult-scope-title, .pd-install-commit-title {
  text-align: center;
  margin-bottom: 22px !important;
}

.pd-monitor-process-title h2, .pd-monitor-report-title h2, .pd-install-fit-title h2, .pd-install-scope-title h2, .pd-install-cost-title h2, .pd-install-commit-title h2 {
  margin: 0 !important;
  font-size: 28px;
  line-height: 1.28;
  font-weight: 900;
  color: #111;
  letter-spacing: -0.25px;
}

.pd-monitor-faq-support-left, .pd-install-commit-left {
  padding-right: 18px !important;
}

.pd-install-commit-image-col {
  padding-left: 18px !important;
  padding-right: 18px !important;
}

.pd-family-explain-right, .pd-monitor-faq-support-right, .pd-install-commit-stats-col {
  padding-left: 18px !important;
}

.pd-install-commit-list ul li {
  position: relative;
  padding-left: 30px;
  margin-bottom: 13px;
  font-size: 14.5px;
  line-height: 1.55;
  color: #222;
  font-weight: 700;
}

.pd-install-commit-list ul li:before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 2px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #e60000;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  line-height: 1;
  font-weight: 900;
}

.pd-install-intro-image-wrap, .pd-install-commit-image-wrap {
  overflow: hidden;
  border-radius: 12px;
  box-shadow: 0 12px 30px rgba(20, 35, 55, 0.08);
}

.pd-family-why-image .img, .pd-family-why-image .img-inner, .pd-consult-intro-image .img, .pd-consult-intro-image .img-inner, .pd-install-intro-image .img, .pd-install-intro-image .img-inner, .pd-install-commit-image .img, .pd-install-commit-image .img-inner {
  margin: 0 !important;
  border-radius: 12px;
  overflow: hidden;
}

.pd-install-commit-image img {
  width: 100%;
  height: 210px !important;
  object-fit: cover;
  object-position: center;
  display: block;
  border-radius: 12px;
  transition: transform .35s ease;
}

.pd-consult-intro-image-wrap:hover .pd-consult-intro-image img, .pd-monitor-why-image-wrap:hover .pd-monitor-why-image img, .pd-monitor-report-card:hover .pd-monitor-report-image img, .pd-install-intro-image-wrap:hover .pd-install-intro-image img, .pd-install-commit-image-wrap:hover .pd-install-commit-image img {
  transform: scale(1.035);
}

.pd-install-commit-stats-box {
  padding: 18px 20px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 12px;
  box-shadow: 0 12px 30px rgba(20, 35, 55, 0.07);
}

.pd-install-commit-stat-item {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 15px 0;
  border-bottom: 1px solid #eeeeee;
}

.pd-family-stat-item:first-child, .pd-install-intro-feature-item:first-child, .pd-install-commit-stat-item:first-child {
  padding-top: 0;
}

.pd-family-stat-item:last-child, .pd-install-intro-feature-item:last-child, .pd-install-commit-stat-item:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.pd-install-commit-stat-icon {
  width: 40px;
  height: 40px;
  min-width: 40px;
  border-radius: 50%;
  background: rgba(230, 0, 0, 0.06);
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  line-height: 1;
}

.pd-install-commit-stat-item strong {
  display: block;
  margin: 0 0 4px;
  font-size: 22px;
  line-height: 1.1;
  font-weight: 900;
  color: #e60000;
}

.pd-install-commit-stat-item p {
  margin: 0 !important;
  font-size: 12.8px;
  line-height: 1.4;
  color: #555;
  font-weight: 600;
}

.pd-maint-hero-v1 {
  position: relative;
  min-height: 430px;
  overflow: visible;
  background-color: #f7f7f7;
}

.pd-maint-hero-v1:before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
  90deg,
  rgba(255,255,255,0.98) 0%,
  rgba(255,255,255,0.94) 26%,
  rgba(255,255,255,0.72) 45%,
  rgba(255,255,255,0.28) 63%,
  rgba(255,255,255,0.02) 100%
  );
  pointer-events: none;
}

.pd-maint-hero-row {
  min-height: 430px;
  position: relative;
  z-index: 3;
}

.pd-maint-hero-content-col {
  padding-top: 48px !important;
  padding-bottom: 110px !important;
}

.pd-hero-stat-row, .pd-page-hero-text, .pd-consult-hero-text, .pd-maint-hero-content {
  max-width: 620px;
}

.pd-maint-hero-label {
  margin: 0 0 16px !important;
  font-size: 13px;
  line-height: 1.4;
  font-weight: 900;
  color: #e60000;
  letter-spacing: 0.8px;
  text-transform: uppercase;
}

.pd-maint-hero-content h1 {
  margin: 0 0 22px !important;
  font-size: 48px;
  line-height: 1.14;
  font-weight: 900;
  color: #111;
  letter-spacing: -0.6px;
}

.pd-maint-hero-desc {
  max-width: 580px;
  margin: 0 0 28px !important;
  font-size: 16px;
  line-height: 1.75;
  color: #333;
  font-weight: 500;
}

.pd-maint-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.pd-maint-hero-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 26px;
  border-radius: 6px;
  font-size: 13.5px;
  line-height: 46px;
  font-weight: 900;
  text-decoration: none !important;
  text-transform: uppercase;
  letter-spacing: .2px;
}

.pd-maint-hero-btn-main {
  background: #e60000;
  border: 1px solid #e60000;
  color: #fff !important;
  box-shadow: 0 12px 26px rgba(230,0,0,0.22);
}

.pd-maint-hero-btn-outline {
  background: #fff;
  border: 1px solid #e60000;
  color: #e60000 !important;
}

.pd-maint-hero-btn-outline:hover {
  background: #e60000;
  color: #fff !important;
}

.pd-maint-hero-benefits {
  position: absolute;
  z-index: 5;
  left: 50%;
  bottom: -54px;
  transform: translateX(-50%);
  width: calc(100% - 70px);
  max-width: 1180px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  background: #fff;
  border-radius: 13px;
  overflow: hidden;
  box-shadow: 0 18px 42px rgba(20, 35, 55, 0.13);
  border: 1px solid rgba(0,0,0,0.04);
}

.pd-maint-benefit-item {
  display: flex;
  align-items: center;
  gap: 16px;
  min-height: 112px;
  padding: 22px 28px;
  background: #fff;
  border-right: 1px solid #eeeeee;
}

.pd-maint-benefit-icon {
  width: 56px;
  height: 56px;
  min-width: 56px;
  border-radius: 50%;
  color: #e60000;
  background: rgba(230, 0, 0, 0.05);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 34px;
  line-height: 1;
}

.pd-monitor-report-content h3, .pd-maint-benefit-item h3 {
  margin: 0 0 7px !important;
  font-size: 16px;
  line-height: 1.35;
  font-weight: 900;
  color: #111;
}

.pd-maint-benefit-item p {
  margin: 0 !important;
  font-size: 13px;
  line-height: 1.5;
  color: #444;
}

.pd-maint-why-title {
  position: relative;
  text-align: center;
  margin-bottom: 30px !important;
}

.pd-about-intro-row, .pd-family-explain-row, .pd-family-why-row, .pd-business-explain-row, .pd-business-why-row, .pd-consult-intro-row, .pd-consult-faq-cta-row, .pd-monitor-why-row, .pd-monitor-faq-support-row, .pd-install-intro-row, .pd-install-why-row, .pd-install-commit-row, .pd-maint-why-row {
  align-items: center !important;
}

.pd-maint-why-left {
  padding-right: 32px !important;
}

.pd-consult-intro-right, .pd-install-why-right, .pd-maint-why-right {
  padding-left: 24px !important;
}

.pd-monitor-support-box ul, .pd-install-why-text ul, .pd-install-commit-list ul, .pd-maint-why-list ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.pd-maint-why-list ul li {
  position: relative;
  padding-left: 32px;
  margin-bottom: 18px;
  font-size: 15px;
  line-height: 1.6;
  color: #222;
  font-weight: 600;
}

.pd-benefit-card p, .pd-why-card p, .pd-process-card p, .pd-panel-list ul li:last-child, .pd-contact-info-card p, .pd-consult-why-item:last-child, .pd-install-commit-list ul li:last-child, .pd-maint-why-list ul li:last-child {
  margin-bottom: 0;
}

.pd-maint-why-list ul li:before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 3px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #fff;
  border: 2px solid #e60000;
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  line-height: 1;
  font-weight: 900;
}

.pd-maint-compare-box {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  overflow: hidden;
  min-height: 285px;
  border-radius: 12px;
  background: #f5f5f5;
  box-shadow: 0 14px 34px rgba(20, 35, 55, 0.08);
}

.pd-maint-compare-side {
  position: relative;
  overflow: hidden;
  min-height: 285px;
}

.pd-maint-compare-image img {
  width: 100%;
  height: 285px !important;
  object-fit: cover;
  object-position: center;
  display: block;
}

.pd-maint-compare-side span {
  position: absolute;
  top: 16px;
  z-index: 3;
  min-height: 32px;
  padding: 0 18px;
  border-radius: 5px;
  color: #fff;
  font-size: 12px;
  line-height: 32px;
  font-weight: 900;
  text-transform: uppercase;
}

.pd-maint-compare-before span {
  left: 18px;
  background: rgba(17, 17, 17, 0.82);
}

.pd-ba-label-after, .pd-maint-compare-after span {
  right: 18px;
  background: #e60000;
}

.pd-maint-compare-before:after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.18);
  z-index: 2;
  pointer-events: none;
}

.pd-maint-compare-after:after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,60,150,0.08);
  z-index: 2;
  pointer-events: none;
}

.pd-maint-compare-box:before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  bottom: 0;
  width: 2px;
  background: rgba(255,255,255,0.95);
  transform: translateX(-50%);
  z-index: 5;
}

.pd-maint-compare-handle {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 6;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  background: #fff;
  color: #e60000;
  box-shadow: 0 10px 24px rgba(20, 35, 55, 0.14);
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2px;
}

.pd-maint-compare-handle i {
  font-style: normal;
  font-size: 17px;
  line-height: 1;
  font-weight: 900;
}

.pd-maint-service-card {
  height: 100%;
  min-height: 185px;
  padding: 25px 16px 20px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 11px;
  text-align: center;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.045);
  transition: all .25s ease;
}

.pd-maint-service-icon {
  width: 58px;
  height: 58px;
  margin: 0 auto 16px;
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 42px;
  line-height: 1;
  font-weight: 400;
}

.pd-install-fit-content h3, .pd-install-scope-item h3, .pd-maint-service-card h3 {
  margin: 0 0 10px !important;
  font-size: 15px;
  line-height: 1.35;
  font-weight: 900;
  color: #111;
}

.pd-maint-service-card p {
  max-width: 175px;
  margin: 0 auto !important;
  font-size: 12.7px;
  line-height: 1.58;
  color: #555;
}

.pd-smart-why-title, .pd-maint-process-title {
  text-align: center;
  margin-bottom: 30px !important;
}

.pd-maint-process-wrap {
  position: relative;
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 18px;
  padding-top: 8px;
}

.pd-maint-process-wrap:before {
  content: "";
  position: absolute;
  left: 7%;
  right: 7%;
  top: 43px;
  height: 1px;
  border-top: 1px dashed rgba(230, 0, 0, 0.55);
  z-index: 1;
}

.pd-smart-why-item, .pd-monitor-process-item, .pd-maint-process-item {
  position: relative;
  z-index: 2;
  text-align: center;
}

.pd-maint-process-item:not(:last-child):after {
  content: "→";
  position: absolute;
  top: 33px;
  right: -14px;
  z-index: 3;
  color: #e60000;
  font-size: 15px;
  line-height: 1;
  font-weight: 900;
}

.pd-maint-process-icon {
  width: 72px;
  height: 72px;
  margin: 0 auto 12px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid #eeeeee;
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 34px;
  line-height: 1;
  box-shadow: 0 10px 24px rgba(20, 35, 55, 0.07);
}

.pd-maint-process-number {
  width: 28px;
  height: 22px;
  margin: 0 auto 9px;
  border-radius: 4px;
  background: #e60000;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  line-height: 1;
  font-weight: 900;
}

.pd-maint-process-item h3 {
  margin: 0 0 8px !important;
  font-size: 14px;
  line-height: 1.35;
  font-weight: 900;
  color: #111;
}

.pd-maint-process-item p {
  max-width: 140px;
  margin: 0 auto !important;
  font-size: 12.4px;
  line-height: 1.5;
  color: #555;
}

.pd-maint-price-card {
  position: relative;
  height: 100%;
  min-height: 345px;
  padding: 32px 28px 26px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 12px;
  text-align: center;
  box-shadow: 0 10px 26px rgba(20, 35, 55, 0.055);
  transition: all .25s ease;
}

.pd-maint-price-card:hover {
  transform: translateY(-4px);
  border-color: rgba(230, 0, 0, 0.22);
  box-shadow: 0 16px 34px rgba(20, 35, 55, 0.1);
}

.pd-maint-price-card h3 {
  margin: 0 0 18px !important;
  font-size: 18px;
  line-height: 1.35;
  font-weight: 900;
  color: #111;
  text-transform: uppercase;
}

.pd-maint-price {
  margin: 0 0 24px;
  font-size: 34px;
  line-height: 1.1;
  font-weight: 900;
  color: #e60000;
  letter-spacing: -0.5px;
}

.pd-maint-price span {
  font-size: 14px;
  font-weight: 800;
  color: #333;
}

.pd-maint-price-card ul {
  margin: 0 0 26px;
  padding: 0;
  list-style: none;
  text-align: left;
}

.pd-maint-price-card ul li {
  position: relative;
  padding-left: 24px;
  margin-bottom: 11px;
  font-size: 13.5px;
  line-height: 1.45;
  font-weight: 600;
  color: #222;
}

.pd-monitor-price-card ul li:before, .pd-maint-price-card ul li:before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 1px;
  color: #e60000;
  font-size: 13px;
  line-height: 1;
  font-weight: 900;
}

.pd-maint-price-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 40px;
  padding: 0 18px;
  border-radius: 6px;
  border: 1px solid #e60000;
  background: #fff;
  color: #e60000;
  font-size: 13px;
  line-height: 40px;
  font-weight: 900;
  text-transform: uppercase;
  text-decoration: none !important;
}

.pd-monitor-price-btn:hover, .pd-install-fit-btn:hover, .pd-maint-price-btn:hover {
  background: #e60000;
  color: #fff;
}

.pd-maint-price-featured {
  border-color: #e60000;
  box-shadow: 0 16px 36px rgba(230, 0, 0, 0.14);
}

.pd-maint-price-badge {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 36px;
  border-radius: 12px 12px 0 0;
  background: #e60000;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

.pd-maint-price-featured h3 {
  margin-top: 24px !important;
}

.pd-maint-price-featured .pd-maint-price-btn {
  background: #e60000;
  color: #fff;
  box-shadow: 0 10px 22px rgba(230, 0, 0, 0.2);
}

.pd-maint-price-featured .pd-maint-price-btn:hover {
  background: #c90000;
  border-color: #c90000;
  color: #fff;
}

.pd-maint-frequency-card {
  position: relative;
  height: 100%;
  min-height: 345px;
  overflow: hidden;
  border-radius: 12px;
  background: #fff4f4;
  border: 1px solid rgba(230, 0, 0, 0.12);
  box-shadow: 0 10px 26px rgba(20, 35, 55, 0.055);
}

.pd-maint-frequency-content {
  position: relative;
  z-index: 2;
  padding: 32px 28px 18px;
  text-align: center;
}

.pd-maint-frequency-icon {
  width: 66px;
  height: 66px;
  margin: 0 auto 18px;
  border-radius: 50%;
  background: #fff;
  color: #e60000;
  border: 1px solid rgba(230, 0, 0, 0.18);
  box-shadow: 0 10px 22px rgba(230, 0, 0, 0.08);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 32px;
  line-height: 1;
}

.pd-maint-frequency-content h3 {
  margin: 0 0 18px !important;
  font-size: 17px;
  line-height: 1.35;
  font-weight: 900;
  color: #111;
  text-transform: uppercase;
}

.pd-maint-frequency-content ul {
  display: inline-block;
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: left;
}

.pd-maint-frequency-content ul li {
  position: relative;
  padding-left: 22px;
  margin-bottom: 10px;
  font-size: 13.5px;
  line-height: 1.45;
  font-weight: 700;
  color: #333;
}

.pd-maint-frequency-content ul li:before {
  content: "○";
  position: absolute;
  left: 0;
  top: 0;
  color: #e60000;
  font-size: 13px;
  line-height: 1.45;
  font-weight: 900;
}

.pd-maint-frequency-image {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 125px;
  overflow: hidden;
}

.pd-maint-compare-image .img, .pd-maint-compare-image .img-inner, .pd-maint-frequency-img .img, .pd-maint-frequency-img .img-inner {
  margin: 0 !important;
  height: 100%;
  border-radius: 0 !important;
  overflow: hidden;
}

.pd-solution-mini-img img, .pd-maint-frequency-img img {
  width: 100%;
  height: 125px !important;
  object-fit: cover;
  object-position: center;
  display: block;
}

.pd-consult-audience-row, .pd-maint-commit-row {
  align-items: stretch !important;
  justify-content: center !important;
}

.pd-maint-commit-item h3 {
  margin: 0 0 10px !important;
  font-size: 14.5px;
  line-height: 1.35;
  font-weight: 900;
  color: #111;
}

.pd-equip-hero-v1 {
  position: relative;
  min-height: 440px;
  overflow: visible;
  background-color: #07111d;
}

.pd-family-hero-v2 .section-bg, .pd-business-hero-v1 .section-bg, .pd-smart-hero-v1 .section-bg, .pd-consult-hero-v1 .section-bg, .pd-monitor-hero-v2 .section-bg, .pd-maint-hero-v1 .section-bg, .pd-equip-hero-v1 .section-bg {
  background-size: cover !important;
  background-position: center right !important;
}

.pd-equip-hero-v1:before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
  90deg,
  rgba(4, 10, 18, 0.94) 0%,
  rgba(4, 10, 18, 0.88) 28%,
  rgba(4, 10, 18, 0.66) 50%,
  rgba(4, 10, 18, 0.26) 76%,
  rgba(4, 10, 18, 0.08) 100%
  );
  pointer-events: none;
}

.pd-monitor-hero-v2 .section-content, .pd-maint-hero-v1 .section-content, .pd-equip-hero-v1 .section-content {
  position: relative;
  z-index: 3;
}

.pd-equip-hero-row {
  min-height: 440px;
  position: relative;
  z-index: 3;
}

.pd-equip-hero-content-col {
  padding-top: 46px !important;
  padding-bottom: 112px !important;
}

.pd-business-hero-text, .pd-equip-hero-content {
  max-width: 650px;
}

.pd-equip-breadcrumb {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 22px;
  color: rgba(255,255,255,0.82);
  font-size: 13px;
  line-height: 1.4;
  font-weight: 700;
}

.pd-monitor-v2-breadcrumb em, .pd-equip-breadcrumb em {
  font-style: normal;
  opacity: .7;
}

.pd-equip-hero-content h1 {
  margin: 0 0 22px !important;
  font-size: 48px;
  line-height: 1.14;
  font-weight: 900;
  color: #fff;
  letter-spacing: -0.5px;
  text-transform: uppercase;
}

.pd-equip-hero-content h1 span, .pd-equip-hero-content h1 strong {
  color: #e60000;
  font-weight: 900;
}

.pd-equip-hero-content p {
  max-width: 610px;
  margin: 0 0 28px !important;
  font-size: 15.5px;
  line-height: 1.78;
  color: rgba(255,255,255,0.88);
  font-weight: 500;
}

.pd-equip-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.pd-equip-hero-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 25px;
  border-radius: 6px;
  font-size: 13.5px;
  line-height: 46px;
  font-weight: 900;
  text-decoration: none !important;
  text-transform: uppercase;
  letter-spacing: .2px;
}

.pd-equip-hero-btn-main {
  background: #e60000;
  border: 1px solid #e60000;
  color: #fff !important;
  box-shadow: 0 12px 26px rgba(230,0,0,0.24);
}

.pd-maint-hero-btn-main:hover, .pd-equip-hero-btn-main:hover {
  background: #c90000;
  border-color: #c90000;
  color: #fff !important;
}

.pd-equip-hero-btn-light {
  background: #fff;
  border: 1px solid #fff;
  color: #e60000 !important;
}

.pd-equip-hero-btn-light:hover {
  background: #e60000;
  border-color: #e60000;
  color: #fff !important;
}

.pd-equip-hero-strip {
  position: absolute;
  z-index: 5;
  left: 50%;
  bottom: -54px;
  transform: translateX(-50%);
  width: calc(100% - 70px);
  max-width: 1120px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  overflow: hidden;
  background: #fff;
  border-radius: 13px;
  border: 1px solid rgba(0,0,0,0.04);
  box-shadow: 0 18px 42px rgba(20, 35, 55, 0.14);
}

.pd-equip-strip-item {
  display: flex;
  align-items: center;
  gap: 15px;
  min-height: 104px;
  padding: 20px 26px;
  background: #fff;
  border-right: 1px solid #eeeeee;
}

.pd-business-benefit-item:last-child, .pd-solution-benefit-item:last-child, .pd-monitor-v2-strip-item:last-child, .pd-maint-benefit-item:last-child, .pd-equip-strip-item:last-child {
  border-right: 0;
}

.pd-equip-strip-icon {
  width: 46px;
  height: 46px;
  min-width: 46px;
  border-radius: 50%;
  color: #e60000;
  background: rgba(230, 0, 0, 0.05);
  border: 1px solid rgba(230, 0, 0, 0.12);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  line-height: 1;
}

.pd-install-benefit-content h3, .pd-equip-strip-item h3 {
  margin: 0 0 6px !important;
  font-size: 15px;
  line-height: 1.35;
  font-weight: 900;
  color: #111;
}

.pd-equip-strip-item p {
  margin: 0 !important;
  font-size: 12.8px;
  line-height: 1.45;
  color: #555;
  font-weight: 600;
}

.pd-after-maint-hero, .pd-after-equip-hero-v1 {
  padding-top: 86px !important;
}

.pd-solution-object-title, .pd-solution-value-title, .pd-install-cost-title, .pd-maint-service-title, .pd-equip-category-title {
  text-align: center;
  margin-bottom: 26px !important;
}

.pd-equip-category-card {
  height: 100%;
  min-height: 150px;
  padding: 26px 15px 22px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 11px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-decoration: none !important;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.045);
  transition: all .25s ease;
}

.pd-equip-category-card:hover {
  transform: translateY(-4px);
  border-color: rgba(230, 0, 0, 0.22);
  box-shadow: 0 16px 32px rgba(20, 35, 55, 0.08);
}

.pd-equip-category-icon {
  width: 58px;
  height: 58px;
  margin: 0 auto 15px;
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 42px;
  line-height: 1;
  font-weight: 400;
}

.pd-equip-category-card h3 {
  margin: 0 !important;
  font-size: 15px;
  line-height: 1.45;
  font-weight: 900;
  color: #111;
}

.pd-hero-heading h1 span, .pd-card-family .pd-audience-text h2, .pd-section-title h2 span, .pd-why-title h2 span, .pd-process-title h2 span, .pd-news-content h3 a:hover, .pd-footer-menu ul li a:hover, .pd-footer-contact ul li a:hover, #pd_tl_2019:checked ~ .pd-timeline-nav label[for="pd_tl_2019"] strong, #pd_tl_2020:checked ~ .pd-timeline-nav label[for="pd_tl_2020"] strong, #pd_tl_2022:checked ~ .pd-timeline-nav label[for="pd_tl_2022"] strong, #pd_tl_2024:checked ~ .pd-timeline-nav label[for="pd_tl_2024"] strong, #pd_tl_2025:checked ~ .pd-timeline-nav label[for="pd_tl_2025"] strong, .pd-family-hero-v2-text h1 span, .pd-family-usecase-title h2 span, .pd-family-usecase-title strong, .pd-family-project-content h3 a:hover, .pd-business-hero-text h1 span, .pd-business-explain-text h2 span, .pd-business-why-text h2 span, .pd-smart-product-card:hover h3, .pd-consult-benefit-title h2 span, .pd-consult-video-box:hover, .pd-monitor-v2-text h1 span, .pd-monitor-why-text h2 span, .pd-install-commit-title h2 span, .pd-maint-hero-content h1 span, .pd-maint-why-title h2 span, .pd-equip-category-card:hover h3 {
  color: #e60000;
}

.pd-monitor-process-title, .pd-install-scope-title, .pd-maint-price-title, .pd-maint-commit-title, .pd-equip-why-title {
  text-align: center;
  margin-bottom: 28px !important;
}

.pd-equip-why-title p {
  margin: 0 0 5px !important;
  font-size: 12px;
  line-height: 1.4;
  font-weight: 900;
  color: #e60000;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.pd-equip-why-title h2 {
  margin: 0 !important;
  font-size: 29px;
  line-height: 1.28;
  font-weight: 900;
  color: #111;
  letter-spacing: -0.25px;
}

.pd-audience-row, .pd-why-row, .pd-project-row, .pd-consult-row, .pd-about-why-row, .pd-contact-info-row, .pd-contact-form-row, .pd-family-usecase-row, .pd-family-steps-row, .pd-family-package-row, .pd-business-type-row, .pd-business-package-row, .pd-smart-type-row, .pd-smart-product-row, .pd-smart-package-row, .pd-solution-object-row, .pd-solution-value-row, .pd-solution-process-row, .pd-consult-benefit-row, .pd-consult-scope-row, .pd-consult-register-row, .pd-monitor-service-row, .pd-monitor-price-row, .pd-monitor-report-row, .pd-install-benefit-row, .pd-install-fit-row, .pd-maint-service-row, .pd-maint-price-row, .pd-equip-category-row, .pd-equip-why-row {
  align-items: stretch !important;
}

.pd-about-stat-col, .pd-timeline-panels, .pd-solution-value-col, .pd-install-benefit-col, .pd-maint-commit-col, .pd-equip-why-col {
  position: relative;
}

.pd-install-benefit-col:not(:last-child):after, .pd-maint-commit-col:not(:last-child):after, .pd-equip-why-col:not(:last-child):after {
  content: "";
  position: absolute;
  right: 0;
  top: 18px;
  bottom: 18px;
  width: 1px;
  background: #eeeeee;
}

.pd-hero-right .col-inner, .pd-hero-img, .pd-benefit-col .col-inner, .pd-benefit-card, .pd-audience-col .col-inner, .pd-audience-image-col .col-inner, .pd-audience-image, .pd-audience-image .img, .pd-audience-image .img-inner, .pd-solar-service-col .col-inner, .pd-combo-col .col-inner, .pd-why-col .col-inner, .pd-why-card, .pd-process-col .col-inner, .pd-process-card, .pd-project-post-col .col-inner, .pd-project-more-col .col-inner, .pd-consult-left-col .col-inner, .pd-consult-form-col .col-inner, .pd-consult-right-col .col-inner, .pd-footer-col .col-inner, .pd-vmg-col .col-inner, .pd-about-why-col .col-inner, .pd-contact-info-col .col-inner, .pd-contact-info-card, .pd-contact-form-col .col-inner, .pd-contact-side-col .col-inner, .pd-contact-map-image, .pd-contact-map-image .img, .pd-contact-map-image .img-inner, .pd-family-usecase-col .col-inner, .pd-family-step-col .col-inner, .pd-family-step-card, .pd-family-package-col .col-inner, .pd-business-type-col .col-inner, .pd-business-journey-col .col-inner, .pd-business-package-col .col-inner, .pd-smart-type-col .col-inner, .pd-smart-brand-col .col-inner, .pd-smart-product-col .col-inner, .pd-smart-package-col .col-inner, .pd-solution-object-col .col-inner, .pd-solution-value-col .col-inner, .pd-solution-process-col .col-inner, .pd-consult-benefit-col .col-inner, .pd-consult-audience-col .col-inner, .pd-consult-scope-col .col-inner, .pd-consult-process-col .col-inner, .pd-monitor-service-col .col-inner, .pd-monitor-price-col .col-inner, .pd-monitor-support-col .col-inner, .pd-monitor-report-col .col-inner, .pd-service-hero-image, .pd-service-hero-image .img, .pd-service-hero-image img, .pd-install-benefit-col .col-inner, .pd-install-fit-col .col-inner, .pd-maint-service-col .col-inner, .pd-maint-price-col .col-inner, .pd-maint-frequency-col .col-inner, .pd-maint-commit-col .col-inner, .pd-equip-category-col .col-inner, .pd-equip-why-col .col-inner {
  height: 100%;
}

.pd-maint-commit-item, .pd-equip-why-item {
  height: 100%;
  min-height: 150px;
  padding: 4px 18px 8px;
  text-align: center;
}

.pd-maint-commit-icon, .pd-equip-why-icon {
  width: 62px;
  height: 62px;
  margin: 0 auto 15px;
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 42px;
  line-height: 1;
  font-weight: 400;
}

.pd-solution-value-item h3, .pd-consult-scope-card h3, .pd-consult-process-card h3, .pd-equip-why-item h3 {
  margin: 0 0 9px !important;
  font-size: 14.5px;
  line-height: 1.35;
  font-weight: 900;
  color: #111;
}

.pd-maint-commit-item p, .pd-equip-why-item p {
  max-width: 185px;
  margin: 0 auto !important;
  font-size: 12.8px;
  line-height: 1.55;
  color: #555;
}

.pd-business-journey-title, .pd-solution-filter-title, .pd-solution-process-title, .pd-consult-process-title, .pd-monitor-service-title, .pd-monitor-report-title, .pd-install-fit-title, .pd-equip-products-title {
  text-align: center;
  margin-bottom: 24px !important;
}

.pd-maint-why-title h2, .pd-maint-service-title h2, .pd-maint-process-title h2, .pd-maint-price-title h2, .pd-maint-commit-title h2, .pd-equip-category-title h2, .pd-equip-products-title h2 {
  position: relative;
  display: inline-block;
  margin: 0 !important;
  padding: 0 70px;
  font-size: 27px;
  line-height: 1.3;
  font-weight: 900;
  color: #111;
  letter-spacing: -0.25px;
  text-transform: uppercase;
}

.pd-maint-why-title h2:before, .pd-maint-why-title h2:after, .pd-maint-service-title h2:before, .pd-maint-service-title h2:after, .pd-maint-process-title h2:before, .pd-maint-process-title h2:after, .pd-maint-price-title h2:before, .pd-maint-price-title h2:after, .pd-maint-commit-title h2:before, .pd-maint-commit-title h2:after, .pd-equip-category-title h2:before, .pd-equip-category-title h2:after, .pd-equip-products-title h2:before, .pd-equip-products-title h2:after {
  content: "";
  position: absolute;
  top: 50%;
  width: 48px;
  height: 2px;
  background: #e60000;
  transform: translateY(-50%);
}

.pd-smartcat-row, .pd-equip-product-tabs {
  margin-top: 0 !important;
}

.pd-equip-product-tabs .nav {
  justify-content: center;
  margin-bottom: 24px !important;
  gap: 0;
}

.pd-final-cta-image .img, .pd-final-cta-image .img-inner, .pd-about-intro-image, .pd-contact-policy .wpcf7-list-item, .pd-family-explain-image, .pd-family-usecase-image, .pd-family-why-image, .pd-business-explain-image, .pd-business-type-image, .pd-business-why-image, .pd-smart-type-image, .pd-solution-object-image, .pd-solution-object-image .img, .pd-solution-object-image .img-inner, .pd-solution-filter-tabs, .pd-solution-filter-tabs .nav > li, .pd-solution-mini-img, .pd-consult-intro-image, .pd-consult-audience-image, .pd-consult-faq-box .accordion, .pd-consult-support-bg, .pd-cf7-acceptance .wpcf7-list-item, .pd-monitor-why-image, .pd-monitor-report-image, .pd-monitor-help-img, .pd-monitor-help-img .img, .pd-monitor-help-img .img-inner, .pd-service-hero-btn, .pd-install-intro-image, .pd-install-fit-image, .pd-install-why-image, .pd-install-commit-image, .pd-maint-compare-image, .pd-maint-frequency-img, .pd-equip-product-tabs .nav > li {
  margin: 0 !important;
}

.pd-equip-product-tabs .nav > li > a {
  min-width: 155px;
  height: 42px;
  padding: 0 22px !important;
  border-radius: 0 !important;
  border: 0 !important;
  border-right: 1px solid #eeeeee !important;
  color: #222 !important;
  font-size: 13.5px !important;
  line-height: 42px !important;
  font-weight: 800 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  background: transparent !important;
}

.pd-equip-product-tabs .nav > li:first-child > a {
  border-radius: 6px 0 0 6px !important;
}

.pd-equip-product-tabs .nav > li:last-child > a {
  border-right: 0 !important;
  border-radius: 0 6px 6px 0 !important;
}

.pd-equip-products-section .product-small {
  padding-bottom: 18px !important;
}

.pd-install-fit-card, .pd-equip-products-section .product-small .box {
  height: 100%;
  overflow: hidden;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 11px;
  box-shadow: 0 8px 22px rgba(20, 35, 55, 0.045);
  transition: all .25s ease;
}

.pd-consult-benefit-card:hover, .pd-consult-audience-card:hover, .pd-consult-scope-card:hover, .pd-consult-process-card:hover, .pd-monitor-service-card:hover, .pd-install-fit-card:hover, .pd-install-scope-item:hover, .pd-install-cost-card:hover, .pd-maint-service-card:hover, .pd-equip-products-section .product-small .box:hover {
  transform: translateY(-4px);
  border-color: rgba(230, 0, 0, 0.2);
  box-shadow: 0 16px 32px rgba(20, 35, 55, 0.08);
}

.pd-equip-products-section .product-small .box-image {
  padding: 18px 18px 6px;
  background: #fff;
}

.pd-equip-products-section .product-small .box-image img {
  width: 100%;
  height: 210px !important;
  object-fit: contain;
  object-position: center;
}

.pd-equip-products-section .product-small .box-text {
  padding: 14px 18px 18px !important;
  text-align: left;
}

.pd-equip-products-section .product-small .product-title {
  min-height: 48px;
  margin: 0 0 10px !important;
  font-size: 14.5px !important;
  line-height: 1.45 !important;
  font-weight: 900 !important;
  color: #111 !important;
}

.pd-equip-products-section .product-small .product-title a {
  color: #111 !important;
  text-decoration: none !important;
}

.pd-faq-list .accordion-title.active .toggle i, .pd-contact-faq-list .accordion-title.active .toggle i, .pd-equip-products-section .product-small .product-title a:hover {
  color: #e60000 !important;
}

.pd-equip-products-section .product-small .price-wrapper {
  margin-top: 10px;
}

.pd-equip-products-section .product-small .price, .pd-equip-products-section .product-small .amount {
  color: #e60000 !important;
  font-size: 17px !important;
  line-height: 1.35;
  font-weight: 900 !important;
}

.pd-equip-products-section .product-small .add-to-cart-button, .pd-equip-products-section .product-small .button {
  width: 100%;
  min-height: 36px;
  margin: 12px 0 0 !important;
  border-radius: 5px !important;
  border: 1px solid #e60000 !important;
  background: #fff !important;
  color: #e60000 !important;
  font-size: 12.5px !important;
  line-height: 36px !important;
  font-weight: 900 !important;
  text-transform: none !important;
}

.pd-family-projects-more-btn:hover, .pd-equip-product-tabs .nav > li.active > a, .pd-equip-product-tabs .nav > li > a:hover, .pd-equip-products-section .product-small .button:hover {
  background: #e60000 !important;
  color: #fff !important;
}

.pd-install-fit-btn-wrap, .pd-equip-products-more {
  text-align: center;
  margin-top: 10px;
}

.pd-equip-products-more-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 230px;
  min-height: 42px;
  padding: 0 28px;
  border-radius: 6px;
  background: #e60000;
  color: #fff !important;
  font-size: 13px;
  line-height: 42px;
  font-weight: 900;
  text-transform: uppercase;
  text-decoration: none !important;
  box-shadow: 0 10px 22px rgba(230, 0, 0, 0.18);
}

.pd-equip-products-more-btn:hover {
  background: #c90000;
  color: #fff !important;
}

.pd-benefit-section, .pd-audience-section, .pd-solar-section, .pd-smartcat-section, .pd-combo-section, .pd-why-section, .pd-process-section, .pd-project-section, .pd-news-section, .pd-consult-section, .pd-faq-section, .pd-final-cta-section, .pd-about-intro-section, .pd-vmg-section, .pd-about-why-section, .pd-about-stats-section, .pd-timeline-section, .pd-contact-info-section, .pd-contact-form-section, .pd-contact-faq-section, .pd-family-benefits-section, .pd-family-explain-section, .pd-family-usecase-section, .pd-family-steps-section, .pd-family-why-section, .pd-family-package-section, .pd-family-projects-section, .pd-family-faq-v2-section, .pd-business-explain-section, .pd-business-type-section, .pd-business-journey-section, .pd-business-why-section, .pd-business-package-section, .pd-smart-type-section, .pd-smart-why-section, .pd-smart-device-section, .pd-smart-package-section, .pd-solution-object-section, .pd-solution-value-section, .pd-solution-process-section, .pd-consult-benefit-section, .pd-consult-intro-section, .pd-consult-audience-section, .pd-consult-scope-section, .pd-consult-process-section, .pd-consult-faq-cta-section, .pd-consult-register-section, .pd-monitor-why-section, .pd-monitor-service-section, .pd-monitor-process-section, .pd-monitor-price-section, .pd-monitor-report-section, .pd-monitor-faq-support-section, .pd-install-intro-section, .pd-install-fit-section, .pd-install-scope-section, .pd-install-why-section, .pd-install-cost-section, .pd-install-commit-section, .pd-maint-why-section, .pd-maint-service-section, .pd-maint-process-section, .pd-maint-price-section, .pd-maint-commit-section, .pd-equip-category-section, .pd-equip-why-section, .pd-equip-products-section, .pd-equip-brand-v2-section {
  background: #fff;
}

.pd-equip-brand-v2-title {
  text-align: center;
  margin-bottom: 18px;
}

.pd-equip-brand-v2-title h2 {
  margin: 0;
  font-size: 13px;
  line-height: 1.4;
  font-weight: 900;
  color: #e60000;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}

.pd-equip-brand-v2-wrap {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  gap: 12px;
  align-items: center;
}

.pd-equip-brand-v2-item {
  height: 58px;
  padding: 10px 18px;
  background: #fff;
  border: 1px solid #eeeeee;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none !important;
  box-shadow: 0 6px 18px rgba(20, 35, 55, 0.035);
  transition: all .25s ease;
}

.pd-smartcat-list .product-category .col-inner:hover, .pd-smartcat-section .product-category .col-inner:hover, .pd-equip-brand-v2-item:hover {
  transform: translateY(-3px);
  border-color: rgba(230, 0, 0, 0.18);
  box-shadow: 0 14px 28px rgba(20, 35, 55, 0.08);
}

.pd-equip-brand-v2-item img {
  width: auto;
  max-width: 118px;
  max-height: 34px;
  object-fit: contain;
  display: block;
}

.pd-equip-process-section {
  background: #fff;
  padding-top: 28px !important;
  padding-bottom: 36px !important;
}

.pd-equip-process-title {
  text-align: center;
  margin-bottom: 34px !important;
}

.pd-equip-process-title h2 {
  position: relative;
  display: inline-block;
  margin: 0 !important;
  padding: 0 56px;
  font-size: 16px;
  line-height: 1.4;
  font-weight: 900;
  color: #e60000;
  letter-spacing: 2px;
  text-transform: uppercase;
}

.pd-equip-process-title h2:before, .pd-equip-process-title h2:after {
  content: "";
  position: absolute;
  top: 50%;
  width: 38px;
  height: 1px;
  background: #e60000;
  transform: translateY(-50%);
}

.pd-maint-why-title h2:before, .pd-maint-service-title h2:before, .pd-maint-process-title h2:before, .pd-maint-price-title h2:before, .pd-maint-commit-title h2:before, .pd-equip-category-title h2:before, .pd-equip-products-title h2:before, .pd-equip-process-title h2:before {
  left: 0;
}

.pd-maint-why-title h2:after, .pd-maint-service-title h2:after, .pd-maint-process-title h2:after, .pd-maint-price-title h2:after, .pd-maint-commit-title h2:after, .pd-equip-category-title h2:after, .pd-equip-products-title h2:after, .pd-equip-process-title h2:after {
  right: 0;
}

.pd-equip-process-wrap {
  position: relative;
  max-width: 1120px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 34px;
  padding-top: 0;
}

.pd-equip-process-wrap:before {
  content: "";
  position: absolute;
  left: 9%;
  right: 9%;
  top: 38px;
  height: 1px;
  background: #dcdcdc;
  z-index: 1;
}

.pd-equip-process-item:not(:last-child):after {
  content: "";
  position: absolute;
  top: 36px;
  right: -20px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #e60000;
  z-index: 4;
}

.pd-equip-process-item {
  position: relative;
  z-index: 2;
  text-align: center;
  padding: 0 8px;
}

.pd-equip-process-icon {
  position: relative;
  z-index: 3;
  width: 76px;
  height: 76px;
  margin: 0 auto 20px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid #eeeeee;
  color: #e60000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 32px;
  line-height: 1;
  box-shadow: 0 10px 24px rgba(20, 35, 55, 0.07);
}

.pd-equip-process-item h3 {
  margin: 0 0 8px !important;
  font-size: 15px;
  line-height: 1.35;
  font-weight: 900;
  color: #111;
}

.pd-equip-process-item p {
  max-width: 185px;
  margin: 0 auto !important;
  font-size: 13px;
  line-height: 1.55;
  color: #555;
}

.project-left-col, .project-right-col {
  flex: 0 0 50% !important;
  max-width: 50% !important;
  padding-left: 15px;
  padding-right: 15px;
}

.project-main-img {
  width: 100% !important;
  height: 430px !important;
  object-fit: cover !important;
  border-radius: 8px !important;
}

.project-thumb-grid {
  display: flex !important;
  flex-wrap: nowrap !important;
  margin-left: -5px;
  margin-right: -5px;
  margin-top: 10px;
}

.project-thumb-col {
  flex: 0 0 20% !important;
  max-width: 20% !important;
  padding: 0 5px;
}

.img-thumbnail-item {
  position: relative;
  cursor: pointer;
}

.project-thumb-img {
  width: 100% !important;
  height: 75px !important;
  object-fit: cover !important;
  border-radius: 4px !important;
  display: block;
}

.more-images-overlay {
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background: rgba(0,0,0,0.6);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  font-size: 14px;
  border-radius: 4px;
}

.project-badge {
  color: #d92323;
  font-weight: bold;
  text-transform: uppercase;
  font-size: 13px;
  display: block;
  margin-bottom: 8px;
  letter-spacing: 0.5px;
}

.project-title {
  font-size: 28px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  color: #222 !important;
  margin-top: 0 !important;
  margin-bottom: 20px !important;
}

.project-meta-top-grid {
  display: flex !important;
  flex-wrap: wrap;
  gap: 15px;
  margin-bottom: 20px;
  border-bottom: 1px solid #eee;
  padding-bottom: 15px;
}

.meta-top-item {
  flex: 1;
  min-width: 120px;
  display: flex;
  align-items: center;
  gap: 10px;
}

.icon-box-img-custom {
  color: #d92323;
  font-size: 24px;
  display: flex;
  align-items: center;
}

.meta-label {
  margin: 0 !important;
  font-size: 12px;
  color: #777;
  line-height: 1.2;
}

.meta-value {
  font-size: 14px;
  color: #333;
  font-weight: 700;
}

.project-short-desc {
  color: #555;
  line-height: 1.6;
  font-size: 14.5px;
}

.project-stats-grid-wrapper {
  background: #fff;
  border: 1px solid #f2f2f2;
  border-radius: 8px;
  padding: 20px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);
}

.stats-custom-grid {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 15px 20px;
}

.icon-box-img-custom-sub {
  color: #d92323;
  font-size: 18px;
  background: #fff3f3;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.stat-value {
  font-size: 15px;
  color: #222;
  font-weight: 700;
  display: block;
  line-height: 1.2;
}

.stat-label {
  font-size: 12px;
  color: #666;
}

.single-project-wrapper, .single-product-custom-wrapper {
  padding: 30px 0;
  background: #fff;
}

.product-left-col {
  flex: 0 0 45% !important;
  max-width: 45% !important;
  padding: 0 20px;
}

.product-right-col {
  flex: 0 0 55% !important;
  max-width: 55% !important;
  padding: 0 20px;
}

.product-cat-badge {
  color: #d92323;
  font-weight: bold;
  text-transform: uppercase;
  font-size: 12px;
  display: block;
  margin-bottom: 5px;
  letter-spacing: 0.5px;
}

.product-summary-content .product-title {
  font-size: 26px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  margin-top: 0 !important;
  margin-bottom: 15px !important;
  color: #222;
}

.product-meta-price-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 20px;
  margin-bottom: 15px;
}

.price-box-wrapper .price {
  font-size: 24px !important;
  font-weight: 700;
  color: #d92323 !important;
}

.price-box-wrapper .price del {
  font-size: 16px;
  color: #999;
  margin-left: 10px;
  font-weight: normal;
}

.product-rating-stock {
  display: flex;
  align-items: center;
  gap: 15px;
}

.stock-status {
  font-size: 13px;
  font-weight: bold;
}

.stock-status.in-stock {
  color: #2ecc71;
}

.stock-status.out-of-stock {
  color: #e74c3c;
}

.product-short-description-text {
  font-size: 14.5px;
  color: #555;
  line-height: 1.6;
  margin-bottom: 20px;
}

.product-quick-specs-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 15px 12px;
  background: #fdfdfd;
  border: 1px solid #f0f0f0;
  border-radius: 8px;
  padding: 15px;
  margin-bottom: 25px;
}

.spec-card-item {
  display: flex;
  align-items: center;
  gap: 10px;
}

.spec-icon-circle {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #fff3f3;
  color: #d92323;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  flex-shrink: 0;
}

.spec-label {
  margin: 0 !important;
  font-size: 11.5px;
  color: #777;
  line-height: 1.2;
}

.spec-value {
  font-size: 13px;
  color: #222;
  font-weight: 700;
  display: block;
  line-height: 1.2;
}

.product-action-buttons-wrapper .cart {
  display: flex !important;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 20px;
}

.pd-solar-title-row, .pd-smartcat-title-row, .pd-smartcat-list .product-category, .pd-combo-title-row, .pd-why-title-row, .pd-process-title-row, .pd-project-title-row, .pd-news-title-row, .pd-faq-title-row, .pd-about-why-title-row, .pd-family-usecase-title-row, .pd-family-steps-title-row, .pd-family-package-title-row, .pd-family-faq-v2-title-row, .pd-business-type-title-row, .pd-business-journey-title-row, .pd-business-package-title-row, .pd-smart-type-title-row, .pd-smart-why-title-row, .pd-smart-device-title-row, .pd-smart-package-title-row, .pd-install-intro-content p:last-child, .pd-equip-products-section .products, .product-action-buttons-wrapper .quantity {
  margin-bottom: 0 !important;
}

.product-action-buttons-wrapper .single_add_to_cart_button {
  background-color: #d92323 !important;
  color: #fff !important;
  text-transform: uppercase;
  font-weight: bold;
  padding: 10px 25px;
  border-radius: 4px;
  margin-bottom: 0 !important;
}

.product-trust-badges-row {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  border-top: 1px dashed #e5e5e5;
  padding-top: 15px;
}

.trust-badge-item {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1;
}

.trust-badge-item i {
  color: #d92323;
  font-size: 20px;
}

.trust-badge-item strong {
  display: block;
  font-size: 12px;
  color: #333;
  line-height: 1.2;
}

.trust-badge-item span {
  font-size: 11px;
  color: #777;
}

.product-description-custom-layout {
  padding-top: 20px;
}

.product-main-flex-row, .desc-flex-row {
  display: flex !important;
  flex-wrap: wrap !important;
  margin-left: -20px;
  margin-right: -20px;
}

.desc-left-col {
  flex: 0 0 58% !important;
  max-width: 58% !important;
  padding: 0 20px;
}

.desc-right-col {
  flex: 0 0 42% !important;
  max-width: 42% !important;
  padding: 0 20px;
}

.product-main-text-content ul {
  list-style: none !important;
  padding-left: 0 !important;
  margin-bottom: 25px;
}

.product-main-text-content ul li {
  position: relative;
  padding-left: 28px !important;
  margin-bottom: 12px;
  font-size: 14.5px;
  color: #333;
  line-height: 1.5;
}

.product-main-text-content ul li::before {
  content: "\e903" !important;
  font-family: "fl-icons" !important;
  position: absolute;
  left: 0;
  top: 2px;
  color: #d92323;
  font-size: 14px;
  background: #fff0f0;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
}

.product-features-highlight-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 12px;
  margin-top: 25px;
}

.feature-highlight-box {
  background: #fff5f5;
  border-radius: 6px;
  padding: 15px 10px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.feature-box-icon {
  color: #d92323;
  font-size: 20px;
  margin-bottom: 8px;
}

.feature-box-info strong {
  display: block;
  font-size: 13px;
  color: #222;
  margin-bottom: 4px;
  line-height: 1.2;
}

.feature-box-info span {
  font-size: 11px;
  color: #666;
  display: block;
  line-height: 1.3;
}

.specs-table-wrapper {
  border: 1px solid #f0f0f0;
  border-radius: 6px;
  overflow: hidden;
}

.product-dynamic-specs-table {
  width: 100%;
  margin-bottom: 0 !important;
  border-collapse: collapse;
}

.product-dynamic-specs-table tr {
  border-bottom: 1px solid #f7f7f7;
}

.product-dynamic-specs-table tr:last-child {
  border-bottom: none;
}

.product-dynamic-specs-table tr:nth-child(even) {
  background-color: #fafafa;
}

.spec-label-title {
  padding: 10px 15px !important;
  font-size: 13.5px;
  color: #555;
  font-weight: 600;
  width: 45%;
}

.spec-value-content {
  padding: 10px 15px !important;
  font-size: 13.5px;
  color: #222;
  font-weight: 500;
}

.spec-empty {
  padding: 20px !important;
  text-align: center;
  color: #999;
  font-style: italic;
}

.pd-smartcat-section mark.count, .pd-project-list .is-divider, .pd-project-list .button, .pd-project-list .more-link, .pd-family-faq-v2-box .accordion-title .toggle, .pd-consult-faq-box .accordion-title .toggle, .pd-equip-products-section .star-rating, .only-specs-view .desc-left-col {
  display: none !important;
}

.only-specs-view .desc-right-col {
  flex: 0 0 100% !important;
  max-width: 100% !important;
}

.custom-project-grid {
  display: grid !important;
  gap: 20px;
  width: 100%;
  margin: 15px 0;
}

.custom-project-grid.grid-cols-4 {
  grid-template-columns: repeat(4, 1fr) !important;
}

.custom-project-grid.grid-cols-3 {
  grid-template-columns: repeat(3, 1fr) !important;
}

.custom-project-grid.grid-cols-2 {
  grid-template-columns: repeat(2, 1fr) !important;
}

.project-grid-card {
  background: #fff;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.project-grid-card:hover {
  transform: translateY(-4px);
}

.project-card-anchor {
  text-decoration: none !important;
  display: block;
}

.project-card-thumbnail {
  width: 100%;
  height: 160px;
  overflow: hidden;
  border-radius: 8px;
  margin-bottom: 10px;
}

.project-card-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.project-card-meta-data {
  padding: 2px 0;
}

.project-card-meta-title {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #222 !important;
  margin-top: 0 !important;
  margin-bottom: 4px !important;
  line-height: 1.3 !important;
}

.project-card-meta-spec {
  font-size: 13px !important;
  color: #666 !important;
  margin-bottom: 3px !important;
  line-height: 1.2 !important;
}

.project-card-meta-saving {
  font-size: 12.5px !important;
  color: #888 !important;
  margin-bottom: 0 !important;
  line-height: 1.2 !important;
}

.project-archive-header-banner {
  background-color: #fcfcfc;
  border-bottom: 1px solid #f1f1f1;
  padding: 35px 0 25px 0;
}

.archive-top-badge {
  color: #d92323;
  font-weight: bold;
  font-size: 13px;
  letter-spacing: 0.5px;
  display: block;
  margin-bottom: 5px;
}

.archive-main-title {
  font-size: 32px !important;
  font-weight: 700 !important;
  color: #222 !important;
  margin-top: 0 !important;
  margin-bottom: 12px !important;
}

.archive-short-intro {
  font-size: 15px;
  color: #666;
  max-width: 700px;
  line-height: 1.5;
  margin-bottom: 0;
}

.project-flex-row, .project-archive-flex-layout {
  display: flex !important;
  flex-wrap: wrap !important;
  margin-left: -15px;
  margin-right: -15px;
}

.project-archive-left-content {
  flex: 0 0 75% !important;
  max-width: 75% !important;
  padding-left: 15px;
  padding-right: 15px;
}

.project-archive-right-sidebar {
  flex: 0 0 25% !important;
  max-width: 25% !important;
  padding-left: 15px;
  padding-right: 15px;
}

.archive-top-toolbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #fdfdfd;
  padding: 10px 15px;
  border: 1px solid #eee;
  border-radius: 8px;
  margin-bottom: 25px;
}

.posts-count-text {
  font-size: 13.5px;
  color: #555;
}

.posts-count-text strong {
  color: #222;
}

.stats-grid-item, .toolbar-right {
  display: flex;
  align-items: center;
  gap: 12px;
}

.sort-dropdown-wrapper .custom-sort-select {
  height: 34px !important;
  padding: 0 30px 0 12px !important;
  font-size: 13px !important;
  border: 1px solid #ddd !important;
  border-radius: 6px !important;
  background-color: #fff !important;
  width: auto !important;
  display: inline-block !important;
  margin: 0 !important;
  color: #444;
}

.view-toggle-buttons {
  display: flex;
  border: 1px solid #ddd;
  border-radius: 6px;
  overflow: hidden;
  background: #fff;
}

.view-toggle-buttons .toggle-btn {
  width: 34px;
  height: 34px;
  display: flex !important;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  color: #777;
  cursor: pointer;
  transition: all 0.2s ease;
}

.view-toggle-buttons .toggle-btn.active {
  background: #d92323 !important;
  color: #fff !important;
}

.archive-project-main-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 20px 15px;
  width: 100%;
}

.archive-project-card {
  background: #fff;
  border: 1px solid #eaeaea;
  border-radius: 12px !important;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow: 0 4px 15px rgba(0,0,0,0.02);
  transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.archive-project-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 12px 25px rgba(0,0,0,0.07);
  border-color: #d92323;
}

.card-thumbnail-wrapper {
  position: relative;
  width: 100%;
  height: 160px !important;
  overflow: hidden;
  background: #fdfdfd;
}

.card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.5s ease !important;
}

.archive-project-card:hover .card-img {
  transform: scale(1.08);
}

.image-count-badge {
  position: absolute;
  top: 10px;
  right: 10px;
  background: rgba(0, 0, 0, 0.65) !important;
  backdrop-filter: blur(4px);
  color: #fff;
  font-size: 11px;
  font-weight: 600;
  padding: 3px 9px;
  border-radius: 20px !important;
  display: flex;
  align-items: center;
  gap: 4px;
}

.card-info-content {
  padding: 15px 12px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

.card-cat-label {
  color: #d92323;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 6px;
  display: block;
  letter-spacing: 0.5px;
}

.card-project-title {
  font-size: 14.5px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  margin: 0 0 12px 0 !important;
}

.card-project-title a {
  color: #222 !important;
  text-decoration: none !important;
}

.card-project-title a:hover {
  color: #d92323 !important;
}

.card-specs-row {
  display: flex;
  flex-direction: column;
  gap: 5px;
  margin-top: auto;
  margin-bottom: 10px;
}

.card-specs-row .spec-item {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  color: #555;
}

.card-specs-row .spec-item i {
  color: #d92323;
  font-size: 13px;
  width: 14px;
  text-align: center;
}

.card-footer-date {
  font-size: 12px;
  color: #999;
  border-top: 1px solid #f7f7f7;
  padding-top: 8px;
  margin-top: 5px;
}

.step-placeholder-box {
  padding: 60px 20px;
  text-align: center;
  border: 2px dashed #ddd;
  background: #fafafa;
  border-radius: 8px;
  color: #999;
}

.archive-project-pagination {
  text-align: center;
  margin-top: 35px;
}

.archive-project-pagination .page-numbers {
  display: inline-block;
  width: 32px;
  height: 32px;
  line-height: 32px;
  margin: 0 3px;
  border-radius: 4px;
  background: #f4f4f4;
  color: #444;
  font-weight: bold;
  font-size: 13px;
  text-decoration: none;
}

.archive-project-pagination .page-numbers.current {
  background: #d92323;
  color: #fff;
}

/* --- MEDIA QUERIES --- */
@media (min-width: 1600px) {
  .pd-service-hero-content-col {
    padding-left: 80px !important;
  }
  
  .pd-service-hero-content h1 {
    font-size: 48px;
  }
}

@media (max-width: 1199px) {
  .archive-project-main-grid {
    grid-template-columns: repeat(3, 1fr) !important;
  }
}

@media (max-width: 1024px) {
  .pd-hero-row {
    min-height: auto;
  }
  
  .pd-hero-heading h1 {
    font-size: 38px;
  }
  
  .pd-hero-img img {
    min-height: 430px;
  }
  
  .pd-service-hero-content-col {
    padding: 46px 24px 40px 32px !important;
  }
  
  .pd-service-hero-content h1 {
    font-size: 48px;
  }
  
  .pd-service-hero-desc {
    font-size: 16px;
    line-height: 1.75;
  }
  
  .pd-service-hero-image-col, .pd-service-hero-image-wrap, .pd-service-hero-image img {
    min-height: 480px;
  }
  
  .pd-service-hero-image-wrap:before {
    width: 160px;
  }
  
  .pd-install-cost-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 18px 14px;
  }
  
  .pd-maint-process-wrap {
    grid-template-columns: repeat(4, 1fr);
    gap: 22px 16px;
  }
  
  .pd-maint-process-wrap:before, .pd-maint-process-item:after {
    display: none !important;
  }
  
  .pd-maint-process-item {
    padding: 22px 14px 18px;
    border: 1px solid #eeeeee;
    border-radius: 12px;
    box-shadow: 0 8px 22px rgba(20, 35, 55, 0.045);
  }
  
  .pd-maint-process-icon {
    width: 60px;
    height: 60px;
    font-size: 29px;
  }
  
  .pd-maint-process-item p {
    max-width: 220px;
  }
}

@media (max-width: 991px) {
  .product-quick-specs-grid, .product-features-highlight-grid, .custom-project-grid.grid-cols-4, .custom-project-grid.grid-cols-3 {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  
  .project-card-thumbnail {
    height: 140px;
  }
  
  .project-archive-left-content, .project-archive-right-sidebar {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
  
  .project-archive-right-sidebar {
    margin-top: 30px;
  }
}

@media (max-width: 849px) {
  .pd-benefit-item {
    padding: 16px;
  }
  
  .pd-audience-content {
    width: 48% !important;
    max-width: 48% !important;
    flex-basis: 48% !important;
    padding: 24px 12px 22px 22px !important;
  }
  
  .pd-audience-image-col {
    width: 62% !important;
    max-width: 62% !important;
  }
  
  .pd-audience-text ul li {
    font-size: 13px;
  }
  
  .pd-solar-service-col {
    flex-basis: 50% !important;
    max-width: 50% !important;
    padding-bottom: 14px !important;
  }
  
  .pd-solar-card-img img {
    height: 150px;
  }
  
  .pd-smartcat-section .products .product-category {
    width: calc(25% - 9px) !important;
  }
  
  .pd-smartcat-list .box-image img, .pd-smartcat-section .product-category .box-image img {
    height: 82px;
  }
  
  .pd-benefit-col, .pd-why-col {
    padding-bottom: 12px !important;
  }
  
  .pd-why-item {
    min-height: 76px;
    padding: 15px 16px;
  }
  
  .pd-process-col {
    flex-basis: 50% !important;
    max-width: 50% !important;
    padding-bottom: 24px !important;
  }
  
  .pd-process-item {
    background: #fff;
    border: 1px solid #eeeeee;
    border-radius: 13px;
    padding: 18px 14px;
    box-shadow: 0 8px 20px rgba(20, 35, 55, 0.045);
  }
  
  .pd-project-more-col {
    padding-top: 14px !important;
  }
  
  .pd-project-more-card, .pd-project-more-card a {
    min-height: 160px;
  }
  
  .pd-project-list .box-image img {
    height: 145px;
  }
  
  .pd-news-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
  
  .pd-news-image {
    height: 165px;
  }
  
  .pd-consult-left, .pd-consult-form-box, .pd-consult-commit {
    border-radius: 14px;
    border: 1px solid #eeeeee;
  }
  
  .pd-cf7-grid {
    grid-template-columns: 1fr 1fr;
  }
  
  .pd-smartcat-title h2, .pd-combo-title h2, .pd-why-title h2, .pd-process-title h2, .pd-project-title h2, .pd-news-title h2, .pd-faq-title h2 {
    font-size: 23px;
  }
  
  .pd-final-cta-left {
    padding: 20px 20px 16px !important;
  }
  
  .pd-final-cta-text h2 {
    font-size: 20px;
    max-width: 100%;
  }
  
  .pd-final-cta-right .col-inner {
    height: 135px;
    min-height: 135px;
  }
  
  .pd-final-cta-image {
    right: 70px;
    bottom: -8px;
    width: 250px;
  }
  
  .pd-page-hero-content {
    padding-top: 44px !important;
    padding-bottom: 44px !important;
  }
  
  .pd-about-intro-section {
    padding-top: 42px !important;
    padding-bottom: 38px !important;
  }
  
  .pd-vmg-wrap {
    padding: 24px 20px 24px !important;
  }
  
  .pd-vmg-title h2 {
    font-size: 19px;
  }
  
  .pd-vmg-card {
    min-height: auto;
    padding: 30px 24px;
  }
  
  .pd-about-why-title h2 {
    font-size: 19px;
    margin-bottom: 20px;
  }
  
  .pd-about-why-card {
    min-height: auto;
    padding: 30px 22px;
  }
  
  .pd-page-hero-text p, .pd-about-stats-title h2 {
    font-size: 18px;
  }
  
  .pd-about-stat-col {
    padding-bottom: 24px !important;
  }
  
  .pd-about-intro-text h2, .pd-about-stat-card h3 {
    font-size: 32px;
  }
  
  .pd-timeline-wrap h2 {
    font-size: 20px;
    margin-bottom: 26px;
  }
  
  .pd-timeline-nav {
    grid-template-columns: repeat(5, 180px);
    overflow-x: auto;
    padding-bottom: 10px;
  }
  
  .pd-timeline-nav:before {
    left: 60px;
    right: auto;
    width: 760px;
  }
  
  .pd-timeline-panel {
    grid-template-columns: 1fr;
    padding: 24px;
  }
  
  .pd-page-hero, .pd-page-hero-row, .pd-contact-hero, .pd-contact-hero .pd-page-hero-row {
    min-height: 290px;
  }
  
  .pd-contact-hero .pd-page-hero-text p {
    font-size: 17px;
  }
  
  .pd-contact-info-item {
    min-height: 150px;
    padding: 28px 24px;
  }
  
  .pd-contact-form-card {
    padding: 30px 26px;
  }
  
  .pd-about-intro-image img, .pd-contact-map-card, .pd-contact-map-image img {
    height: 300px;
  }
  
  .pd-contact-faq-wrap {
    padding: 24px 18px 22px !important;
  }
  
  .pd-family-hero-v2, .pd-family-hero-v2-row {
    min-height: 520px;
  }
  
  .pd-family-hero-v2:before {
    background: linear-gradient(
    90deg,
    rgba(255,255,255,1) 0%,
    rgba(255,255,255,0.95) 50%,
    rgba(255,255,255,0.35) 100%
    );
  }
  
  .pd-family-hero-v2-content {
    padding-top: 44px !important;
    padding-bottom: 150px !important;
  }
  
  .pd-family-floating-cards {
    left: 24px;
    right: 24px;
    bottom: 26px;
    max-width: none;
  }
  
  .pd-family-float-card {
    flex: 1;
    width: auto;
  }
  
  .pd-family-benefit-card {
    min-height: 88px;
  }
  
  .pd-about-why-section, .pd-family-explain-section {
    padding-top: 30px !important;
    padding-bottom: 34px !important;
  }
  
  .pd-family-explain-stats {
    width: 100%;
    max-width: 420px;
  }
  
  .pd-family-explain-image img {
    height: 360px;
  }
  
  .pd-family-usecase-image img {
    height: 170px;
  }
  
  .pd-family-steps-section {
    padding-top: 24px !important;
    padding-bottom: 28px !important;
  }
  
  .pd-family-step-item {
    min-height: 200px;
  }
  
  .pd-family-why-stats {
    left: 18px;
    right: 18px;
    bottom: 18px;
  }
  
  .pd-family-why-stat-card {
    padding: 14px 13px;
  }
  
  .pd-panel-content h3, .pd-family-why-stat-card strong {
    font-size: 22px;
  }
  
  .pd-family-project-thumb, .pd-family-project-thumb img, .pd-family-project-no-image {
    height: 180px;
  }
  
  .pd-business-hero-v1 {
    min-height: auto;
    padding-bottom: 150px !important;
  }
  
  .pd-contact-hero .pd-page-hero-content, .pd-business-hero-content {
    padding-top: 46px !important;
    padding-bottom: 46px !important;
  }
  
  .pd-business-hero-v1:before {
    background: linear-gradient(
    90deg,
    rgba(255,255,255,1) 0%,
    rgba(255,255,255,0.94) 52%,
    rgba(255,255,255,0.42) 100%
    );
  }
  
  .pd-business-hero-benefits {
    left: 20px;
    right: 20px;
    bottom: 26px;
    grid-template-columns: repeat(2, 1fr);
  }
  
  .pd-business-explain-section {
    padding-top: 42px !important;
    padding-bottom: 34px !important;
  }
  
  .pd-family-explain-text h2, .pd-business-explain-text h2 {
    font-size: 30px;
  }
  
  .pd-business-journey-col {
    padding-top: 12px !important;
    padding-bottom: 16px !important;
  }
  
  .pd-business-step-number {
    top: 12px;
    left: 12px;
    transform: none;
  }
  
  .pd-business-journey-card {
    min-height: 195px;
    padding: 32px 15px 22px;
  }
  
  .pd-business-why-section {
    padding-top: 28px !important;
    padding-bottom: 32px !important;
  }
  
  .pd-business-explain-stats .col-inner, .pd-business-why-stats .col-inner {
    padding-right: 0;
    margin-bottom: 12px;
  }
  
  .pd-smart-hero-v1, .pd-smart-hero-row {
    min-height: 560px;
  }
  
  .pd-smart-hero-v1:before {
    background: linear-gradient(
    90deg,
    rgba(255,255,255,1) 0%,
    rgba(255,255,255,0.95) 52%,
    rgba(255,255,255,0.45) 100%
    );
  }
  
  .pd-smart-hero-content {
    padding-top: 48px !important;
    padding-bottom: 46px !important;
  }
  
  .pd-page-hero-text h1, .pd-family-hero-v2-text h1, .pd-smart-hero-text h1 {
    font-size: 42px;
  }
  
  .pd-family-desc, .pd-smart-desc {
    font-size: 16px;
  }
  
  .pd-smart-stats-row .col-inner {
    padding-right: 10px;
    margin-bottom: 10px;
  }
  
  .pd-business-type-image img, .pd-smart-type-image img {
    height: 175px !important;
  }
  
  .pd-family-faq-v2-title h2, .pd-smart-why-title h2 {
    font-size: 26px !important;
  }
  
  .pd-smart-why-timeline {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px 18px;
    padding-top: 0;
  }
  
  .pd-smart-why-item {
    padding: 24px 16px 20px;
    border: 1px solid #eeeeee;
    border-radius: 12px;
    box-shadow: 0 10px 24px rgba(20, 35, 55, 0.055);
  }
  
  .pd-smart-why-number {
    top: 12px;
    left: 12px;
    transform: none;
    width: 28px;
    height: 28px;
    font-size: 10px;
  }
  
  .pd-smart-why-icon {
    margin-top: 8px;
  }
  
  .pd-smart-why-item p {
    max-width: 260px;
  }
  
  .pd-business-type-title h2, .pd-business-journey-title h2, .pd-smart-type-title h2, .pd-smart-device-title h2 {
    font-size: 25px !important;
  }
  
  .pd-consult-left-col, .pd-consult-form-col, .pd-consult-right-col, .pd-faq-row .col, .pd-smart-brand-col {
    padding-bottom: 14px !important;
  }
  
  .pd-family-why-section, .pd-family-package-section, .pd-business-package-section, .pd-smart-package-section {
    padding-top: 26px !important;
    padding-bottom: 30px !important;
  }
  
  .pd-family-package-card, .pd-business-package-card, .pd-smart-package-card {
    min-height: auto;
    padding: 30px 26px 26px;
  }
  
  .pd-package-badge, .pd-business-package-badge, .pd-smart-package-badge {
    top: -16px;
  }
  
  .pd-solution-hero-v1, .pd-solution-hero-row {
    min-height: 500px;
  }
  
  .pd-solution-hero-content {
    padding-top: 42px !important;
    padding-bottom: 168px !important;
  }
  
  .pd-solution-hero-text h1 {
    font-size: 34px;
  }
  
  .pd-solution-benefit-strip {
    width: calc(100% - 36px);
    grid-template-columns: repeat(2, 1fr);
  }
  
  .pd-solution-benefit-item {
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,0.08);
  }
  
  .pd-solution-object-image img {
    height: 210px;
  }
  
  .pd-solution-filter-tabs .nav > li > a {
    min-width: auto;
    min-height: 40px;
    padding: 0 16px !important;
    font-size: 12px !important;
  }
  
  .pd-solution-value-item {
    min-height: 145px;
    padding: 0 14px;
  }
  
  .pd-solution-process-item {
    min-height: 170px;
  }
  
  .pd-consult-hero-v1:before {
    background: linear-gradient(
    90deg,
    rgba(3, 10, 16, 0.94) 0%,
    rgba(3, 10, 16, 0.82) 62%,
    rgba(3, 10, 16, 0.45) 100%
    );
  }
  
  .pd-consult-hero-content {
    padding-top: 48px !important;
    padding-bottom: 44px !important;
  }
  
  .pd-contact-hero .pd-page-hero-text h1, .pd-business-hero-text h1, .pd-consult-hero-text h1 {
    font-size: 40px;
  }
  
  .pd-smart-product-card, .pd-consult-benefit-card {
    min-height: 145px;
  }
  
  .pd-business-why-image img, .pd-consult-intro-image img {
    height: 310px;
  }
  
  .pd-consult-audience-content {
    min-height: 105px;
  }
  
  .pd-consult-scope-card {
    min-height: 138px;
  }
  
  .pd-consult-process-col {
    padding-top: 0 !important;
    padding-bottom: 16px !important;
  }
  
  .pd-consult-process-number {
    top: 12px;
    left: 12px;
    transform: none;
    width: 25px;
    height: 25px;
  }
  
  .pd-consult-process-card {
    min-height: 145px;
    padding: 34px 15px 18px;
  }
  
  .pd-card-business .pd-audience-text h2, .pd-family-usecase-title h2, .pd-family-steps-title h2, .pd-family-package-title h2, .pd-family-projects-heading h2, .pd-business-package-title h2, .pd-smart-package-title h2, .pd-consult-audience-title h2, .pd-consult-scope-title h2, .pd-consult-process-title h2, .pd-consult-faq-title h2 {
    font-size: 25px;
  }
  
  .pd-consult-support-card, .pd-consult-support-bg img {
    min-height: 250px;
    height: 250px;
  }
  
  .pd-consult-register-right {
    padding-left: 15px !important;
    padding-top: 22px !important;
  }
  
  .pd-consult-form-box {
    padding: 26px 24px;
  }
  
  .pd-monitor-hero-v2-content {
    padding-top: 44px !important;
    padding-bottom: 170px !important;
  }
  
  .pd-business-hero-text p, .pd-consult-desc, .pd-monitor-v2-text p {
    font-size: 15.5px;
  }
  
  .pd-monitor-v2-strip {
    bottom: -70px;
    width: calc(100% - 36px);
    grid-template-columns: repeat(2, 1fr);
  }
  
  .pd-business-benefit-item, .pd-monitor-v2-strip-item {
    border-right: 0;
    border-bottom: 1px solid #eeeeee;
  }
  
  .pd-monitor-v2-strip-item:nth-last-child(1) {
    grid-column: span 2;
    border-bottom: 0;
  }
  
  .pd-after-monitor-hero-v2 {
    padding-top: 115px !important;
  }
  
  .pd-solution-object-title h2, .pd-solution-filter-title h2, .pd-monitor-why-text h2 {
    font-size: 28px;
  }
  
  .pd-business-explain-image img, .pd-monitor-why-image img {
    height: 330px;
  }
  
  .pd-monitor-process-number {
    width: 58px;
    height: 58px;
    margin-bottom: 14px;
  }
  
  .pd-solution-object-col, .pd-monitor-price-col, .pd-monitor-support-col {
    padding-bottom: 20px !important;
  }
  
  .pd-solution-mini-img img, .pd-consult-audience-image img, .pd-monitor-report-image img {
    height: 150px !important;
  }
  
  .pd-monitor-help-card {
    min-height: 230px;
  }
  
  .pd-monitor-help-content {
    max-width: 360px;
  }
  
  .pd-monitor-help-image {
    width: 34%;
    max-width: 190px;
  }
  
  .pd-service-hero-section {
    background: #f8fafc;
  }
  
  .pd-service-hero-row {
    display: flex;
    flex-direction: column-reverse;
  }
  
  .pd-service-hero-content-col {
    padding: 28px 20px 34px !important;
  }
  
  .pd-process-item p, .pd-footer-brand p, .pd-service-hero-content {
    max-width: 100%;
  }
  
  .pd-service-hero-kicker {
    font-size: 12px;
    margin-bottom: 12px;
  }
  
  .pd-service-hero-content h1 {
    font-size: 38px;
    line-height: 1.12;
    margin-bottom: 14px;
  }
  
  .pd-service-hero-desc {
    font-size: 15px;
    line-height: 1.72;
    margin-bottom: 22px;
    max-width: 100%;
  }
  
  .pd-solution-filter-tabs .nav, .pd-service-hero-btns {
    gap: 10px;
  }
  
  .pd-service-hero-btn {
    width: 100%;
  }
  
  .pd-service-hero-btn .button {
    width: 100%;
    justify-content: center;
    min-height: 48px;
    padding: 0 18px;
    font-size: 14px;
  }
  
  .pd-service-hero-image-col, .pd-service-hero-image-wrap, .pd-service-hero-image img {
    min-height: 260px;
  }
  
  .pd-install-benefit-col {
    padding-bottom: 0 !important;
  }
  
  .pd-install-benefit-item {
    min-height: 78px;
    padding: 14px 18px;
    border-bottom: 1px solid #eeeeee;
  }
  
  .pd-install-intro-image-col {
    padding-top: 24px !important;
  }
  
  .pd-install-intro-feature-col {
    padding-top: 20px !important;
  }
  
  .pd-audience-text h2, .pd-family-why-text h2, .pd-business-why-text h2, .pd-consult-intro-text h2, .pd-install-intro-content h2 {
    font-size: 27px;
  }
  
  .pd-install-intro-image img {
    height: 290px !important;
  }
  
  .pd-install-intro-feature-box {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 20px;
  }
  
  .pd-install-fit-image img {
    height: 155px !important;
  }
  
  .pd-monitor-process-wrap, .pd-install-scope-wrap {
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
    padding-top: 0;
  }
  
  .pd-install-scope-item {
    min-height: 185px;
    padding: 34px 16px 20px;
  }
  
  .pd-install-scope-note {
    align-items: flex-start;
    text-align: left;
  }
  
  .pd-solution-value-title h2, .pd-solution-process-title h2, .pd-install-why-text h2 {
    font-size: 26px;
  }
  
  .pd-install-why-image img, .pd-install-why-image-wrap {
    height: 320px !important;
    min-height: 320px;
  }
  
  .pd-monitor-service-card, .pd-install-cost-card {
    min-height: 150px;
  }
  
  .pd-install-cost-card p {
    max-width: 220px;
  }
  
  .pd-install-intro-content-col, .pd-install-intro-image-col, .pd-install-intro-feature-col, .pd-install-commit-left, .pd-install-commit-image-col, .pd-install-commit-stats-col {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
  
  .pd-contact-side-col, .pd-install-commit-image-col, .pd-install-commit-stats-col {
    padding-top: 22px !important;
  }
  
  .pd-install-commit-image img {
    height: 260px !important;
  }
  
  .pd-install-commit-stats-box {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0;
  }
  
  .pd-install-commit-stat-item {
    justify-content: center;
    border-bottom: 0;
    border-right: 1px solid #eeeeee;
    padding: 0 14px;
  }
  
  .pd-install-commit-stat-item:last-child {
    border-right: 0;
  }
  
  .pd-maint-hero-row {
    min-height: 420px;
  }
  
  .pd-smart-checks li, .pd-maint-hero-desc {
    font-size: 15px;
  }
  
  .pd-maint-benefit-item {
    min-height: 102px;
    padding: 20px 22px;
    border-right: 0;
    border-bottom: 1px solid #eeeeee;
  }
  
  .pd-about-intro-left, .pd-family-explain-left, .pd-family-why-left, .pd-business-explain-left, .pd-business-why-left, .pd-consult-intro-left, .pd-consult-faq-left, .pd-consult-register-left, .pd-monitor-why-left, .pd-monitor-faq-support-left, .pd-install-why-left, .pd-maint-why-left {
    padding-right: 15px !important;
  }
  
  .pd-about-intro-right, .pd-family-explain-right, .pd-family-why-right, .pd-business-explain-right, .pd-business-why-right, .pd-consult-intro-right, .pd-consult-faq-right, .pd-monitor-why-right, .pd-monitor-faq-support-right, .pd-install-why-right, .pd-maint-why-right {
    padding-left: 15px !important;
    padding-top: 24px !important;
  }
  
  .pd-audience-card, .pd-audience-inner, .pd-maint-compare-box, .pd-maint-compare-side {
    min-height: 270px;
  }
  
  .pd-maint-compare-image img {
    height: 270px !important;
  }
  
  .pd-maint-service-card {
    min-height: 165px;
  }
  
  .pd-maint-service-card p {
    max-width: 230px;
  }
  
  .pd-family-benefits-grid, .pd-family-projects-grid, .pd-solution-mini-grid, .pd-monitor-v2-mini-list, .pd-install-cost-grid, .pd-maint-process-wrap {
    grid-template-columns: repeat(2, 1fr);
  }
  
  .pd-footer-col, .pd-solution-process-col, .pd-maint-price-col, .pd-maint-frequency-col {
    padding-bottom: 18px !important;
  }
  
  .pd-maint-frequency-image {
    position: relative;
    height: 180px;
    margin-top: 12px;
  }
  
  .pd-maint-frequency-img img {
    height: 180px !important;
  }
  
  .pd-combo-card, .pd-final-cta-row, .pd-family-usecase-card, .pd-business-why-stat, .pd-solution-object-text p, .pd-consult-why-box, .pd-monitor-hero-v2, .pd-monitor-hero-v2-row, .pd-monitor-price-card, .pd-monitor-support-box, .pd-maint-hero-v1, .pd-maint-price-card, .pd-maint-frequency-card, .pd-equip-hero-v1 {
    min-height: auto;
  }
  
  .pd-business-hero-row, .pd-consult-hero-v1, .pd-consult-hero-row, .pd-equip-hero-row {
    min-height: 430px;
  }
  
  .pd-maint-hero-content-col, .pd-equip-hero-content-col {
    padding-top: 40px !important;
    padding-bottom: 150px !important;
  }
  
  .pd-monitor-v2-text h1, .pd-maint-hero-content h1, .pd-equip-hero-content h1 {
    font-size: 38px;
  }
  
  .pd-equip-hero-content p {
    font-size: 14.8px;
  }
  
  .pd-maint-hero-benefits, .pd-equip-hero-strip {
    bottom: -82px;
    width: calc(100% - 36px);
    grid-template-columns: repeat(2, 1fr);
  }
  
  .pd-equip-strip-item {
    min-height: 98px;
    padding: 18px 20px;
    border-right: 0;
    border-bottom: 1px solid #eeeeee;
  }
  
  .pd-business-benefit-item:nth-last-child(-n+1), .pd-solution-benefit-item:nth-child(3), .pd-solution-benefit-item:nth-child(4), .pd-install-benefit-col:last-child .pd-install-benefit-item, .pd-install-intro-feature-item:nth-child(3), .pd-maint-benefit-item:nth-child(3), .pd-maint-benefit-item:nth-child(4), .pd-equip-strip-item:nth-child(3), .pd-equip-strip-item:nth-child(4) {
    border-bottom: 0;
  }
  
  .pd-after-maint-hero, .pd-after-equip-hero-v1 {
    padding-top: 120px !important;
  }
  
  .pd-audience-col, .pd-combo-col, .pd-vmg-col, .pd-about-why-col, .pd-contact-info-col, .pd-contact-faq-row .col, .pd-family-usecase-col, .pd-family-step-col, .pd-family-faq-v2-col, .pd-business-type-col, .pd-smart-type-col, .pd-consult-benefit-col, .pd-consult-audience-col, .pd-consult-scope-col, .pd-monitor-service-col, .pd-monitor-report-col, .pd-install-fit-col, .pd-maint-service-col, .pd-equip-category-col {
    padding-bottom: 16px !important;
  }
  
  .pd-final-cta-right, .pd-install-fit-content, .pd-equip-category-card {
    min-height: 135px;
  }
  
  .pd-section-title h2, .pd-contact-faq-title h2, .pd-consult-benefit-title h2, .pd-consult-form-heading h2, .pd-monitor-service-title h2, .pd-monitor-process-title h2, .pd-monitor-report-title h2, .pd-monitor-faq-heading h2, .pd-install-fit-title h2, .pd-install-scope-title h2, .pd-install-cost-title h2, .pd-install-commit-title h2, .pd-equip-why-title h2 {
    font-size: 24px;
  }
  
  .pd-family-package-col, .pd-business-package-col, .pd-smart-package-col, .pd-solution-value-col, .pd-maint-commit-col, .pd-equip-why-col {
    padding-bottom: 22px !important;
  }
  
  .pd-process-col:before, .pd-process-col:after, .pd-about-stat-col:nth-child(2):after, .pd-business-journey-row:before, .pd-smart-feature-dot, .pd-smart-why-timeline:before, .pd-solution-value-col:not(:last-child) .pd-solution-value-item:after, .pd-consult-process-row:before, .pd-monitor-process-wrap:before, .pd-service-hero-image-wrap:before, .pd-install-benefit-col:not(:last-child):after, .pd-install-scope-wrap:before, .pd-maint-commit-col:not(:last-child):after, .pd-equip-why-col:not(:last-child):after {
    display: none;
  }
  
  .pd-maint-commit-item, .pd-equip-why-item {
    min-height: 135px;
    padding: 0 14px;
  }
  
  .pd-maint-commit-icon, .pd-equip-why-icon {
    width: 56px;
    height: 56px;
    font-size: 36px;
  }
  
  .pd-maint-why-title h2, .pd-maint-service-title h2, .pd-maint-process-title h2, .pd-maint-price-title h2, .pd-maint-commit-title h2, .pd-equip-category-title h2, .pd-equip-products-title h2 {
    padding: 0 52px;
    font-size: 24px;
  }
  
  .pd-maint-why-title h2:before, .pd-maint-why-title h2:after, .pd-maint-service-title h2:before, .pd-maint-service-title h2:after, .pd-maint-process-title h2:before, .pd-maint-process-title h2:after, .pd-maint-price-title h2:before, .pd-maint-price-title h2:after, .pd-maint-commit-title h2:before, .pd-maint-commit-title h2:after, .pd-equip-category-title h2:before, .pd-equip-category-title h2:after, .pd-equip-products-title h2:before, .pd-equip-products-title h2:after {
    width: 36px;
  }
  
  .pd-equip-product-tabs .nav {
    flex-wrap: nowrap;
    justify-content: flex-start;
    overflow-x: auto;
    padding-bottom: 8px;
  }
  
  .pd-equip-product-tabs .nav > li > a {
    min-width: 145px;
    white-space: nowrap;
  }
  
  .pd-equip-products-section .product-small .box-image img {
    height: 190px !important;
  }
  
  .pd-equip-brand-v2-wrap {
    display: flex;
    overflow-x: auto;
    gap: 12px;
    padding-bottom: 8px;
    scroll-snap-type: x mandatory;
  }
  
  .pd-equip-brand-v2-item {
    min-width: 165px;
    scroll-snap-align: start;
  }
  
  .pd-equip-process-title h2 {
    padding: 0 44px;
    font-size: 15px;
    letter-spacing: 1.3px;
  }
  
  .pd-equip-process-title h2:before, .pd-equip-process-title h2:after {
    width: 30px;
  }
  
  .pd-equip-process-wrap {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    max-width: 100%;
  }
  
  .pd-equip-process-wrap:before, .pd-equip-process-item:after {
    display: none !important;
  }
  
  .pd-monitor-process-item, .pd-equip-process-item {
    padding: 24px 16px 20px;
    border: 1px solid #eeeeee;
    border-radius: 12px;
    box-shadow: 0 8px 22px rgba(20, 35, 55, 0.045);
  }
  
  .pd-equip-process-icon {
    width: 60px;
    height: 60px;
    margin-bottom: 14px;
    font-size: 28px;
  }
  
  .pd-equip-process-item p {
    max-width: 240px;
  }
  
  .project-main-img {
    height: 320px !important;
  }
  
  .project-thumb-img {
    height: 55px !important;
  }
  
  .project-title {
    font-size: 22px !important;
  }
  
  .project-left-col, .product-left-col {
    margin-bottom: 25px;
  }
  
  .product-trust-badges-row {
    flex-direction: column;
    gap: 12px;
  }
  
  .project-left-col, .project-right-col, .product-left-col, .product-right-col, .desc-left-col, .desc-right-col {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
  
  .desc-left-col {
    margin-bottom: 30px;
  }
}

@media (max-width: 767px) {
  .archive-project-main-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  
  .card-thumbnail-wrapper {
    height: 130px;
  }
  
  .archive-top-toolbar {
    flex-direction: column; align-items: flex-start; gap: 10px;
  }
  
  .toolbar-right {
    width: 100%; justify-content: space-between;
  }
}

@media (max-width: 549px) {
  .pd-before-after {
    height: 220px;
    border-radius: 10px;
  }
  
  .pd-ba-handle {
    width: 44px;
    height: 44px;
  }
  
  .pd-ba-label {
    top: 12px;
    min-height: 28px;
    padding: 0 13px;
    font-size: 10.5px;
    line-height: 28px;
  }
  
  .pd-hero-row {
    border-radius: 0 0 14px 14px;
    background: #0000000a;
  }
  
  .pd-hero-left {
    padding-top: 32px !important;
    padding-bottom: 22px !important;
  }
  
  .pd-hero-heading h1 {
    font-size: 31px;
    line-height: 1.18;
    letter-spacing: -0.4px;
  }
  
  .pd-hero-desc p {
    font-size: 15px;
    line-height: 1.65;
    margin-bottom: 22px;
  }
  
  .pd-hero-stat {
    margin-bottom: 10px;
  }
  
  .pd-hero-img img {
    min-height: 280px;
    object-position: center;
  }
  
  .pd-benefit-item {
    align-items: flex-start;
    gap: 12px;
    padding: 15px 14px;
    border-radius: 12px;
    flex-wrap: wrap;
    min-height: 190px;
  }
  
  .pd-benefit-icon {
    width: 46px;
    height: 46px;
    min-width: 46px;
    margin: auto;
  }
  
  .pd-solar-service-col {
    flex-basis: 100% !important;
    max-width: 100% !important;
  }
  
  .pd-section-title h2 {
    font-size: 23px;
    margin-bottom: 12px;
  }
  
  .pd-solar-card-content {
    padding: 15px 15px 16px;
  }
  
  .pd-smartcat-section .products .product-category {
    width: calc(50% - 6px) !important;
  }
  
  .pd-smartcat-title h2 {
    font-size: 21px;
    margin-bottom: 12px;
  }
  
  .pd-smartcat-list .box-image, .pd-smartcat-section .product-category .box-image {
    padding: 14px 14px 6px;
  }
  
  .pd-smartcat-list .box-image img, .pd-smartcat-section .product-category .box-image img {
    height: 78px;
  }
  
  .pd-smartcat-list .box-text h5, .pd-smartcat-section .product-category .box-text h5, .pd-smartcat-section .woocommerce-loop-category__title {
    font-size: 13px !important;
  }
  
  .pd-combo-card {
    border-radius: 13px;
    padding: 20px 18px;
  }
  
  .pd-roi-content h3 {
    font-size: 32px;
  }
  
  .pd-why-item {
    align-items: flex-start;
    gap: 12px;
    padding: 15px 14px;
    border-radius: 12px;
  }
  
  .pd-why-icon {
    width: 42px;
    height: 42px;
    min-width: 42px;
  }
  
  .pd-process-col {
    flex-basis: 100% !important;
    max-width: 100% !important;
    padding-bottom: 14px !important;
  }
  
  .pd-process-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    text-align: left;
    padding: 16px 14px;
  }
  
  .pd-process-icon {
    margin: 0;
    width: 46px;
    height: 46px;
    min-width: 46px;
  }
  
  .pd-project-list .post-title, .pd-project-list .post-title a {
    font-size: 15px !important;
  }
  
  .pd-project-more-card, .pd-project-more-card a {
    min-height: 150px;
  }
  
  .pd-consult-left, .pd-consult-form-box, .pd-consult-commit {
    min-height: auto;
    padding: 22px 18px;
  }
  
  .pd-cf7-submit {
    grid-column: auto;
  }
  
  .pd-commit-shield {
    position: static;
    margin-top: 16px;
  }
  
  .pd-benefit-icon:before, .pd-combo-title h2, .pd-why-title h2, .pd-process-title h2, .pd-project-title h2, .pd-news-title h2, .pd-faq-title h2 {
    font-size: 21px;
  }
  
  .pd-faq-list .accordion-title {
    padding: 12px 38px 12px 36px !important;
    font-size: 13px !important;
  }
  
  .pd-faq-list .accordion-inner {
    padding: 0 18px 14px 36px !important;
  }
  
  .pd-final-cta-row {
    border-radius: 14px;
  }
  
  .pd-final-cta-left {
    padding: 22px 18px 16px !important;
  }
  
  .pd-final-cta-text h2 {
    font-size: 21px;
    line-height: 1.22;
  }
  
  .pd-final-cta-buttons .col-inner {
    padding-right: 0;
    margin-bottom: 9px;
  }
  
  .pd-final-cta-right {
    min-height: 145px;
  }
  
  .pd-final-cta-right .col-inner {
    height: 145px;
    min-height: 145px;
  }
  
  .pd-final-cta-image {
    right: 52px;
    bottom: -6px;
    width: 220px;
    max-width: 74%;
  }
  
  .pd-final-cta-icons {
    right: 9px;
    top: 12px;
    width: 50px;
  }
  
  .pd-final-icon-item {
    width: 50px;
    min-height: 44px;
    border-radius: 16px;
  }
  
  .pd-footer-section {
    padding-top: 22px !important;
  }
  
  .pd-footer-logo {
    max-width: 135px;
  }
  
  .pd-footer-bottom-row {
    padding-top: 12px;
    padding-bottom: 12px;
  }
  
  .pd-page-hero:before {
    background: linear-gradient(
    90deg,
    rgba(0, 0, 0, 0.9) 0%,
    rgba(0, 0, 0, 0.75) 55%,
    rgba(0, 0, 0, 0.35) 100%
    );
  }
  
  .pd-page-hero-text h1 {
    font-size: 34px;
    line-height: 1.15;
  }
  
  .pd-about-intro-text .pd-about-label {
    font-size: 13px;
    margin-bottom: 10px;
  }
  
  .pd-about-intro-text h2 {
    font-size: 28px;
    line-height: 1.25;
    margin-bottom: 18px;
  }
  
  .pd-about-intro-text p {
    font-size: 15px;
    line-height: 1.7;
    margin-bottom: 22px;
  }
  
  .pd-vmg-wrap {
    border-radius: 12px;
    padding: 22px 14px 18px !important;
  }
  
  .pd-vmg-title h2 {
    font-size: 17px;
    line-height: 1.45;
    margin-bottom: 18px;
  }
  
  .pd-vmg-icon {
    width: 64px;
    height: 64px;
    margin-bottom: 18px;
  }
  
  .pd-about-why-title h2 {
    font-size: 17px;
    line-height: 1.4;
  }
  
  .pd-vmg-card, .pd-about-why-card {
    padding: 26px 20px;
    border-radius: 12px;
  }
  
  .pd-about-why-icon {
    width: 52px;
    height: 52px;
    margin-bottom: 18px;
  }
  
  .pd-about-why-icon:before {
    font-size: 40px;
  }
  
  .pd-about-stats-section {
    padding-top: 14px !important;
    padding-bottom: 26px !important;
  }
  
  .pd-solar-card, .pd-faq-list, .pd-about-stats-wrap {
    border-radius: 12px;
  }
  
  .pd-about-stats-title h2 {
    padding: 20px 16px 10px;
    font-size: 16px;
  }
  
  .pd-about-stats-list {
    padding: 8px 0 12px !important;
  }
  
  .pd-about-stat-col:after {
    display: none !important;
  }
  
  .pd-about-stat-card {
    padding: 14px 10px;
  }
  
  .pd-about-stat-icon {
    width: 40px;
    height: 40px;
    margin-bottom: 10px;
  }
  
  .pd-about-stat-icon:before {
    font-size: 31px;
  }
  
  .pd-timeline-section {
    padding-top: 28px !important;
    padding-bottom: 34px !important;
  }
  
  .pd-timeline-nav {
    grid-template-columns: 1fr;
    gap: 12px;
    overflow: visible;
  }
  
  .pd-timeline-nav label {
    display: grid;
    grid-template-columns: 58px 1fr;
    text-align: left;
    column-gap: 14px;
    align-items: center;
    padding: 14px;
    border: 1px solid #eeeeee;
    border-radius: 12px;
    background: #fff;
  }
  
  .pd-timeline-nav label span {
    width: 50px;
    height: 50px;
    margin: 0;
    grid-row: span 2;
  }
  
  .pd-timeline-nav label strong {
    margin: 0 0 4px;
    font-size: 15px;
  }
  
  .pd-timeline-nav label small {
    max-width: none;
    margin: 0;
    font-size: 13px;
  }
  
  .pd-timeline-panel {
    padding: 20px 18px;
    border-radius: 12px;
  }
  
  .pd-page-hero, .pd-page-hero-row, .pd-contact-hero, .pd-contact-hero .pd-page-hero-row {
    min-height: 300px;
  }
  
  .pd-contact-hero:before {
    background: linear-gradient(
    90deg,
    rgba(0, 0, 0, 0.92) 0%,
    rgba(0, 0, 0, 0.78) 58%,
    rgba(0, 0, 0, 0.4) 100%
    );
  }
  
  .pd-page-hero-content, .pd-contact-hero .pd-page-hero-content {
    padding-top: 38px !important;
    padding-bottom: 38px !important;
  }
  
  .pd-breadcrumb, .pd-contact-hero .pd-breadcrumb {
    font-size: 13px;
    margin-bottom: 14px;
  }
  
  .pd-contact-hero .pd-page-hero-text h1 {
    font-size: 32px;
    line-height: 1.18;
  }
  
  .pd-title-line, .pd-contact-hero .pd-title-line {
    width: 48px;
    height: 3px;
    margin: 18px 0 20px;
  }
  
  .pd-page-hero-text p, .pd-contact-hero .pd-page-hero-text p {
    font-size: 16px;
    line-height: 1.55;
  }
  
  .pd-contact-info-section {
    padding-top: 30px !important;
    padding-bottom: 20px !important;
  }
  
  .pd-contact-info-item {
    min-height: auto;
    align-items: flex-start;
    gap: 16px;
    padding: 22px 18px;
    border-radius: 12px;
  }
  
  .pd-contact-info-icon {
    width: 50px;
    height: 50px;
    min-width: 50px;
    font-size: 22px;
  }
  
  .pd-about-why-card h3, .pd-timeline-wrap h2, .pd-contact-info-content p {
    font-size: 18px;
  }
  
  .pd-contact-form-card, .pd-working-card {
    padding: 24px 18px;
    border-radius: 12px;
  }
  
  .pd-contact-cf7 {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  
  .pd-working-row {
    align-items: flex-start;
    flex-direction: column;
    gap: 4px;
  }
  
  .pd-contact-faq-section {
    padding-top: 10px !important;
    padding-bottom: 30px !important;
  }
  
  .pd-contact-faq-wrap {
    padding: 22px 14px 18px !important;
    border-radius: 12px;
  }
  
  .pd-contact-faq-list .accordion-title {
    min-height: 48px;
    padding: 14px 42px 14px 16px !important;
    font-size: 14px !important;
  }
  
  .pd-contact-faq-list .accordion-inner {
    padding: 0 16px 14px 16px !important;
  }
  
  .pd-family-hero-v2:before {
    background: linear-gradient(
    90deg,
    rgba(255,255,255,0.98) 0%,
    rgba(255,255,255,0.9) 62%,
    rgba(255,255,255,0.45) 100%
    );
  }
  
  .pd-family-hero-v2-content {
    padding-top: 34px !important;
    padding-bottom: 28px !important;
  }
  
  .pd-family-label {
    font-size: 12px;
    margin-bottom: 10px !important;
  }
  
  .pd-family-hero-v2-text h1 {
    font-size: 34px;
    line-height: 1.15;
    margin-bottom: 16px;
  }
  
  .pd-family-desc {
    font-size: 15px;
    line-height: 1.65;
    margin-bottom: 20px !important;
  }
  
  .pd-family-floating-cards {
    position: relative;
    left: auto;
    right: auto;
    bottom: auto;
    z-index: 5;
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 0 15px 26px;
  }
  
  .pd-family-float-card {
    width: 100%;
    min-height: auto;
    padding: 14px 15px;
    border-radius: 12px;
  }
  
  .pd-family-benefits-section {
    padding-top: 14px !important;
    padding-bottom: 18px !important;
  }
  
  .pd-family-benefits-grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }
  
  .pd-family-benefit-card {
    min-height: auto;
    padding: 15px 14px;
    border-radius: 12px;
  }
  
  .pd-family-benefit-icon {
    width: 40px;
    height: 40px;
    min-width: 40px;
  }
  
  .pd-family-explain-text h2 {
    font-size: 26px;
    line-height: 1.25;
  }
  
  .pd-family-title-line {
    width: 48px;
    height: 3px;
    margin: 14px 0 18px;
  }
  
  .pd-family-explain-text p {
    font-size: 14.5px;
    line-height: 1.7;
  }
  
  .pd-family-explain-stats {
    margin-top: 20px;
    padding: 16px;
    border-radius: 12px;
  }
  
  .pd-family-stat-icon {
    width: 36px;
    height: 36px;
    min-width: 36px;
    font-size: 16px;
  }
  
  .pd-family-explain-image img {
    height: 260px;
    border-radius: 12px;
  }
  
  .pd-family-usecase-content {
    padding: 32px 18px 20px;
  }
  
  .pd-family-usecase-icon {
    left: 18px;
    width: 52px;
    height: 52px;
    top: -26px;
    font-size: 24px;
  }
  
  .pd-family-usecase-content h3 {
    min-height: auto;
    font-size: 17px;
  }
  
  .pd-family-steps-title h2 {
    font-size: 22px;
    line-height: 1.3;
    margin-bottom: 18px;
  }
  
  .pd-family-step-item {
    min-height: 190px;
    padding: 26px 14px 20px;
    border-radius: 12px;
  }
  
  .pd-family-why-line {
    width: 48px;
    margin: 14px 0 18px;
  }
  
  .pd-family-why-image-wrap:before {
    background: linear-gradient(
    90deg,
    rgba(255,255,255,0.8) 0%,
    rgba(255,255,255,0.2) 45%,
    rgba(255,255,255,0) 100%
    );
  }
  
  .pd-family-why-stats {
    position: static;
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    margin-top: 14px;
  }
  
  .pd-family-why-stat-card {
    min-height: auto;
    padding: 14px 15px;
    border-radius: 12px;
  }
  
  .pd-family-package-title h2 {
    font-size: 22px;
    margin-bottom: 20px;
  }
  
  .pd-package-price {
    font-size: 26px;
  }
  
  .pd-family-project-thumb, .pd-family-project-thumb img, .pd-family-project-no-image {
    height: 210px;
  }
  
  .pd-family-faq-v2-title h2 {
    font-size: 23px !important;
  }
  
  .pd-family-faq-v2-line {
    width: 46px;
    margin-top: 10px;
  }
  
  .pd-contact-faq-list, .pd-family-faq-v2-box {
    border-radius: 10px;
  }
  
  .pd-family-faq-v2-box .accordion-title {
    min-height: 45px !important;
    padding: 12px 42px 12px 15px !important;
    font-size: 13.5px !important;
  }
  
  .pd-family-faq-v2-box .accordion-title:after {
    right: 12px;
    width: 21px;
    height: 21px;
  }
  
  .pd-business-hero-v1 {
    padding-bottom: 0 !important;
  }
  
  .pd-business-hero-text h1 {
    font-size: 32px;
    line-height: 1.14;
    margin-bottom: 16px;
  }
  
  .pd-business-hero-text p {
    font-size: 14.5px;
    line-height: 1.65;
    margin-bottom: 20px;
  }
  
  .pd-family-checks ul, .pd-business-hero-checks ul {
    gap: 9px 16px;
  }
  
  .pd-business-hero-benefits {
    position: relative;
    left: auto;
    right: auto;
    bottom: auto;
    display: grid;
    grid-template-columns: 1fr;
    margin: 0 15px 26px;
    border-radius: 12px;
  }
  
  .pd-business-benefit-item {
    min-height: auto;
    padding: 16px 15px;
    border-right: 0;
    border-bottom: 1px solid #eeeeee;
  }
  
  .pd-business-benefit-icon {
    width: 38px;
    height: 38px;
    min-width: 38px;
    font-size: 20px;
  }
  
  .pd-business-explain-text h2 {
    font-size: 26px;
    line-height: 1.25;
    margin-bottom: 16px;
  }
  
  .pd-business-explain-text p {
    font-size: 14.5px;
    line-height: 1.68;
  }
  
  .pd-business-explain-stats {
    margin-top: 20px;
  }
  
  .pd-business-explain-stat {
    min-height: auto;
    padding: 15px;
    border-radius: 12px;
  }
  
  .pd-business-type-icon {
    left: 17px;
    top: -26px;
    width: 52px;
    height: 52px;
  }
  
  .pd-business-journey-title h2 {
    font-size: 22px !important;
    line-height: 1.3 !important;
  }
  
  .pd-business-journey-card {
    min-height: 185px;
    border-radius: 12px;
    padding: 30px 14px 20px;
  }
  
  .pd-family-step-icon, .pd-business-step-icon {
    width: 52px;
    height: 52px;
    margin-bottom: 12px;
  }
  
  .pd-family-why-text ul li, .pd-business-why-text ul li {
    font-size: 14px;
    margin-bottom: 10px;
  }
  
  .pd-business-why-stat {
    padding: 14px 15px;
    border-radius: 12px;
  }
  
  .pd-family-why-stat-icon, .pd-business-why-stat-icon {
    width: 38px;
    height: 38px;
    min-width: 38px;
    font-size: 19px;
  }
  
  .pd-business-why-stat-info strong {
    font-size: 24px;
  }
  
  .pd-contact-map-card, .pd-contact-map-image img, .pd-business-explain-image img, .pd-business-why-image img {
    height: 240px;
    border-radius: 12px;
  }
  
  .pd-smart-hero-v1:before {
    background: linear-gradient(
    90deg,
    rgba(255,255,255,0.98) 0%,
    rgba(255,255,255,0.92) 68%,
    rgba(255,255,255,0.48) 100%
    );
  }
  
  .pd-business-hero-content, .pd-business-explain-section, .pd-smart-hero-content {
    padding-top: 34px !important;
    padding-bottom: 30px !important;
  }
  
  .pd-smart-label {
    min-height: 24px;
    margin-bottom: 14px !important;
    padding: 0 11px;
    font-size: 12px;
    line-height: 24px;
  }
  
  .pd-smart-hero-text h1 {
    font-size: 33px;
    line-height: 1.15;
    margin-bottom: 16px;
  }
  
  .pd-smart-desc {
    font-size: 14.5px;
    line-height: 1.65;
    margin-bottom: 18px !important;
  }
  
  .pd-contact-faq-line, .pd-smart-checks {
    margin-bottom: 20px;
  }
  
  .pd-smart-checks li {
    padding-left: 27px;
    margin-bottom: 9px;
    font-size: 13.5px;
  }
  
  .pd-smart-checks li:before {
    width: 18px;
    height: 18px;
    line-height: 18px;
  }
  
  .pd-smart-stat-card {
    min-height: 86px;
    padding: 14px 10px;
  }
  
  .pd-consult-left h2, .pd-contact-form-title h2, .pd-working-content h3, .pd-family-usecase-title h2, .pd-business-type-icon:before, .pd-smart-stat-card strong {
    font-size: 23px;
  }
  
  .pd-smart-stat-card span {
    font-size: 11.8px;
  }
  
  .pd-business-type-title h2, .pd-smart-type-title h2 {
    font-size: 22px !important;
  }
  
  .pd-business-type-image img, .pd-smart-type-image img {
    height: 195px !important;
  }
  
  .pd-business-type-content, .pd-smart-type-content {
    padding: 34px 17px 20px;
  }
  
  .pd-smart-type-icon {
    left: 17px;
    top: -26px;
    width: 52px;
    height: 52px;
    font-size: 23px;
  }
  
  .pd-smart-why-title h2 {
    font-size: 23px !important;
    line-height: 1.3 !important;
  }
  
  .pd-smart-why-item {
    padding: 24px 15px 20px;
  }
  
  .pd-smart-why-icon {
    width: 56px;
    height: 56px;
    margin-bottom: 12px;
  }
  
  .pd-family-step-icon:before, .pd-business-step-icon:before, .pd-smart-why-icon:before {
    font-size: 38px;
  }
  
  .pd-smart-why-item h3 {
    font-size: 15.5px;
  }
  
  .pd-smart-device-title h2 {
    font-size: 22px !important;
    line-height: 1.35 !important;
  }
  
  .pd-smart-why-line, .pd-smart-device-line {
    width: 44px;
    margin-top: 10px;
  }
  
  .pd-smart-brand-card {
    height: 60px;
    padding: 10px;
  }
  
  .pd-smart-brand-logo img {
    max-width: 112px;
    max-height: 30px;
  }
  
  .pd-smart-product-card {
    min-height: 138px;
    padding: 14px 8px 12px;
  }
  
  .pd-smart-product-image img {
    width: 78px !important;
    height: 68px !important;
  }
  
  .pd-business-package-title h2, .pd-smart-package-title h2 {
    font-size: 22px;
    margin-bottom: 20px !important;
  }
  
  .pd-family-package-card, .pd-business-package-card, .pd-smart-package-card {
    padding: 28px 22px 24px;
    border-radius: 12px;
  }
  
  .pd-business-package-price, .pd-smart-package-price {
    font-size: 27px;
  }
  
  .pd-contact-faq-list .accordion-inner p, .pd-family-package-content ul li, .pd-business-benefit-item h3, .pd-business-type-content p, .pd-business-package-content ul li, .pd-smart-type-content p, .pd-smart-package-content ul li {
    font-size: 13.5px;
  }
  
  .pd-solution-hero-v1:before {
    background: linear-gradient(
    90deg,
    rgba(3, 12, 20, 0.93) 0%,
    rgba(3, 12, 20, 0.82) 70%,
    rgba(3, 12, 20, 0.55) 100%
    );
  }
  
  .pd-solution-hero-content {
    padding-top: 32px !important;
    padding-bottom: 28px !important;
  }
  
  .pd-solution-breadcrumb {
    margin-bottom: 16px;
    font-size: 12px;
  }
  
  .pd-solution-hero-text h1 {
    font-size: 29px;
    line-height: 1.22;
    margin-bottom: 16px !important;
  }
  
  .pd-solution-hero-text p {
    font-size: 14.2px;
    line-height: 1.65;
    margin-bottom: 20px !important;
  }
  
  .pd-solution-benefit-strip {
    position: relative;
    left: auto;
    bottom: auto;
    transform: none;
    width: auto;
    max-width: none;
    grid-template-columns: 1fr;
    margin: 0 15px 24px;
  }
  
  .pd-solution-benefit-item {
    min-height: auto;
    padding: 14px 16px;
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,0.08);
  }
  
  .pd-family-why-text h2, .pd-business-why-text h2, .pd-solution-object-title h2 {
    font-size: 24px;
    line-height: 1.3;
  }
  
  .pd-news-image, .pd-family-usecase-image img, .pd-solution-object-image img {
    height: 190px;
  }
  
  .pd-solution-object-content {
    padding: 22px 16px 18px;
  }
  
  .pd-solution-object-icon {
    left: 16px;
    width: 52px;
    height: 52px;
    font-size: 24px;
  }
  
  .pd-solution-object-text h3 {
    font-size: 22px;
    margin-bottom: 12px !important;
  }
  
  .pd-solution-object-text p {
    font-size: 14px;
    line-height: 1.65;
    margin-bottom: 14px !important;
  }
  
  .pd-solution-filter-title h2 {
    font-size: 24px;
    line-height: 1.32;
  }
  
  .pd-solution-filter-tabs .nav {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    overflow-x: auto;
    gap: 8px;
    padding-bottom: 8px;
    margin-bottom: 22px !important;
  }
  
  .pd-solution-filter-tabs .nav > li {
    flex: 0 0 auto;
  }
  
  .pd-solution-filter-tabs .nav > li > a {
    white-space: nowrap;
    min-height: 38px;
    padding: 0 15px !important;
    font-size: 11.5px !important;
    line-height: 38px !important;
  }
  
  .pd-news-grid, .pd-cf7-grid, .pd-solution-mini-grid {
    grid-template-columns: 1fr;
  }
  
  .pd-solution-mini-content {
    padding: 30px 15px 17px;
  }
  
  .pd-solution-filter-btn {
    min-width: 100%;
    font-size: 12px !important;
  }
  
  .pd-solution-value-title h2 {
    font-size: 23px;
    line-height: 1.32;
  }
  
  .pd-solution-value-icon {
    width: 52px;
    height: 52px;
    margin-bottom: 12px;
    font-size: 24px;
  }
  
  .pd-solution-process-title h2 {
    font-size: 23px;
    line-height: 1.3;
  }
  
  .pd-solution-process-item {
    min-height: auto;
    padding: 32px 14px 16px;
  }
  
  .pd-solution-process-icon {
    width: 42px;
    height: 42px;
    font-size: 19px;
    margin-bottom: 10px;
  }
  
  .pd-consult-hero-v1:before {
    background: linear-gradient(
    90deg,
    rgba(3, 10, 16, 0.95) 0%,
    rgba(3, 10, 16, 0.88) 72%,
    rgba(3, 10, 16, 0.62) 100%
    );
  }
  
  .pd-about-intro-section, .pd-consult-hero-content {
    padding-top: 34px !important;
    padding-bottom: 34px !important;
  }
  
  .pd-consult-label {
    font-size: 12px;
    margin-bottom: 14px !important;
  }
  
  .pd-consult-hero-text h1 {
    font-size: 31px;
    line-height: 1.18;
    margin-bottom: 16px !important;
  }
  
  .pd-consult-hero-text h1:after {
    width: 48px;
    margin-top: 16px;
  }
  
  .pd-consult-desc {
    font-size: 14.3px;
    line-height: 1.65;
    margin-bottom: 20px !important;
  }
  
  .pd-family-usecase-line, .pd-consult-hero-buttons {
    margin-bottom: 18px;
  }
  
  .pd-family-hero-v2-buttons .col-inner, .pd-business-hero-buttons .col-inner, .pd-solution-hero-buttons .col-inner, .pd-consult-hero-buttons .col-inner {
    padding-right: 0;
    margin-bottom: 10px;
  }
  
  .pd-consult-hero-checks ul {
    gap: 11px 18px;
  }
  
  .pd-consult-hero-checks ul li {
    font-size: 13px;
    padding-left: 27px;
  }
  
  .pd-consult-hero-checks ul li:before {
    width: 20px;
    height: 20px;
  }
  
  .pd-consult-benefit-icon {
    width: 50px;
    height: 50px;
    font-size: 23px;
    margin-bottom: 12px;
  }
  
  .pd-about-intro-image img, .pd-consult-intro-image img {
    height: 230px;
  }
  
  .pd-consult-video-box {
    right: 14px;
    bottom: 14px;
    min-width: 165px;
    min-height: 58px;
    padding: 10px 13px;
  }
  
  .pd-consult-video-icon {
    width: 36px;
    height: 36px;
    min-width: 36px;
    font-size: 13px;
  }
  
  .pd-consult-intro-text h2 {
    font-size: 23px;
    line-height: 1.3;
    margin-bottom: 16px !important;
  }
  
  .pd-consult-audience-content {
    padding: 31px 15px 17px;
    min-height: auto;
  }
  
  .pd-consult-audience-icon {
    left: 15px;
    top: -24px;
    width: 48px;
    height: 48px;
    font-size: 22px;
  }
  
  .pd-benefit-content p, .pd-combo-content ul li, .pd-final-cta-text p, .pd-about-stat-card p, .pd-contact-info-content span, .pd-family-checks ul li, .pd-family-faq-v2-box .accordion-inner p, .pd-business-hero-checks ul li, .pd-smart-why-item p, .pd-consult-audience-content p {
    font-size: 13px;
  }
  
  .pd-consult-scope-card {
    min-height: auto;
    padding: 21px 14px 17px;
  }
  
  .pd-consult-scope-icon {
    width: 44px;
    height: 44px;
    margin-bottom: 11px;
    font-size: 31px;
  }
  
  .pd-family-why-section, .pd-business-type-section, .pd-smart-type-section, .pd-consult-benefit-section, .pd-consult-audience-section, .pd-consult-scope-section, .pd-consult-process-section {
    padding-top: 24px !important;
    padding-bottom: 26px !important;
  }
  
  .pd-consult-scope-title h2, .pd-consult-process-title h2 {
    font-size: 22px;
    line-height: 1.35;
  }
  
  .pd-consult-process-card {
    min-height: auto;
    padding: 34px 14px 17px;
    border-radius: 10px;
  }
  
  .pd-consult-faq-box .accordion-title {
    padding: 12px 40px 12px 15px !important;
    font-size: 13.5px !important;
  }
  
  .pd-family-faq-v2-box .accordion-inner, .pd-consult-faq-box .accordion-inner {
    padding: 0 15px 14px 15px !important;
  }
  
  .pd-consult-support-card, .pd-consult-support-bg img {
    min-height: 270px;
    height: 270px;
  }
  
  .pd-consult-support-content {
    left: 22px;
    right: 22px;
    max-width: none;
  }
  
  .pd-combo-content h3, .pd-family-stat-item strong, .pd-business-explain-stat strong, .pd-consult-support-content h3 {
    font-size: 17px;
  }
  
  .pd-benefit-content, .pd-about-intro-btn, .pd-family-btn, .pd-package-btn, .pd-business-hero-btn, .pd-business-package-btn, .pd-smart-package-btn, .pd-solution-btn, .pd-consult-btn, .pd-consult-support-btn {
    width: 100%;
  }
  
  .pd-consult-form-box {
    padding: 22px 18px;
    border-radius: 12px;
  }
  
  .pd-cf7-row {
    grid-template-columns: 1fr;
    gap: 12px;
    margin-bottom: 12px;
  }
  
  .pd-cf7-field input, .pd-cf7-field select {
    height: 40px;
    line-height: 40px !important;
  }
  
  .pd-consult-why-box {
    padding: 26px 20px 24px;
    border-radius: 12px;
  }
  
  .pd-solar-card-content h3, .pd-news-content h3, .pd-family-package-content h3, .pd-business-type-content h3, .pd-business-package-content h3, .pd-smart-type-content h3, .pd-smart-package-content h3, .pd-consult-why-box h3 {
    font-size: 16px;
  }
  
  .pd-consult-why-item {
    gap: 12px;
  }
  
  .pd-family-float-icon, .pd-consult-why-icon {
    width: 38px;
    height: 38px;
    min-width: 38px;
    font-size: 18px;
  }
  
  .pd-smart-hero-v1 .section-bg, .pd-consult-hero-v1 .section-bg, .pd-monitor-hero-v2 .section-bg {
    background-position: 70% center !important;
  }
  
  .pd-monitor-hero-v2:before {
    background: linear-gradient(
    90deg,
    rgba(4, 12, 22, 0.95) 0%,
    rgba(4, 12, 22, 0.88) 70%,
    rgba(4, 12, 22, 0.58) 100%
    );
  }
  
  .pd-monitor-v2-text h1 {
    font-size: 30px;
    line-height: 1.18;
    margin-bottom: 16px !important;
  }
  
  .pd-monitor-v2-mini-list {
    grid-template-columns: 1fr;
    gap: 9px;
  }
  
  .pd-monitor-v2-mini {
    min-height: 58px;
  }
  
  .pd-monitor-v2-btn {
    width: 100%;
    min-height: 43px;
    line-height: 43px;
    font-size: 12.5px;
  }
  
  .pd-monitor-v2-strip-item, .pd-monitor-v2-strip-item:nth-last-child(1) {
    grid-column: auto;
    min-height: auto;
    padding: 20px 16px;
    border-right: 0;
    border-bottom: 1px solid #eeeeee;
  }
  
  .pd-vmg-section, .pd-contact-form-section, .pd-monitor-why-section {
    padding-top: 28px !important;
    padding-bottom: 30px !important;
  }
  
  .pd-monitor-why-text h2 {
    font-size: 24px;
    line-height: 1.3;
    margin-bottom: 15px !important;
  }
  
  .pd-family-why-image img, .pd-monitor-why-image img {
    height: 250px;
  }
  
  .pd-monitor-data-card {
    width: 170px;
    left: 14px;
    padding: 13px 14px 12px;
  }
  
  .pd-monitor-data-card-1 {
    top: 14px;
  }
  
  .pd-monitor-chart-line {
    height: 30px;
  }
  
  .pd-consult-benefit-card, .pd-monitor-service-card {
    min-height: auto;
    padding: 22px 14px 18px;
  }
  
  .pd-monitor-service-icon {
    width: 52px;
    height: 52px;
    margin-bottom: 12px;
    font-size: 35px;
  }
  
  .pd-monitor-process-item {
    padding: 22px 14px 18px;
  }
  
  .pd-monitor-process-number {
    width: 54px;
    height: 54px;
  }
  
  .pd-monitor-price-card, .pd-monitor-support-box {
    padding: 26px 22px 22px;
    border-radius: 12px;
  }
  
  .pd-monitor-price {
    font-size: 28px;
  }
  
  .pd-monitor-report-content {
    padding: 15px 13px 17px;
  }
  
  .pd-consult-faq-title h2, .pd-monitor-faq-heading h2 {
    font-size: 22px;
    margin-bottom: 16px !important;
  }
  
  .pd-monitor-faq-inner-row .col {
    padding-bottom: 12px !important;
  }
  
  .pd-monitor-help-card {
    min-height: 260px;
    border-radius: 12px;
  }
  
  .pd-monitor-help-content {
    max-width: none;
    padding: 28px 22px;
  }
  
  .pd-process-icon:before, .pd-contact-faq-title h2, .pd-family-benefit-icon:before, .pd-family-why-stat-card strong, .pd-family-projects-heading h2, .pd-consult-audience-title h2, .pd-monitor-data-card strong, .pd-monitor-help-content h3 {
    font-size: 22px;
  }
  
  .pd-monitor-help-content p {
    max-width: 210px;
    font-size: 13.5px;
  }
  
  .pd-monitor-help-phone {
    min-height: 44px;
    padding: 0 18px;
    font-size: 14px;
    line-height: 44px;
  }
  
  .pd-monitor-help-image {
    width: 42%;
    max-width: 160px;
  }
  
  .pd-install-benefit-section {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }
  
  .pd-install-benefit-item {
    gap: 13px;
    padding: 13px 14px;
  }
  
  .pd-install-benefit-icon {
    width: 42px;
    height: 42px;
    min-width: 42px;
    font-size: 27px;
  }
  
  .pd-install-intro-content h2 {
    font-size: 23px;
    line-height: 1.35;
    margin-bottom: 14px !important;
  }
  
  .pd-consult-intro-text p, .pd-monitor-v2-text p, .pd-monitor-why-text p, .pd-install-intro-content p {
    font-size: 14.2px;
    line-height: 1.65;
  }
  
  .pd-install-intro-feature-box {
    display: block;
    padding: 16px;
  }
  
  .pd-install-intro-feature-item:nth-child(3) {
    border-bottom: 1px solid #eeeeee;
  }
  
  .pd-install-intro-feature-icon {
    width: 36px;
    height: 36px;
    min-width: 36px;
    font-size: 20px;
  }
  
  .pd-install-intro-feature-item h3 {
    font-size: 13.8px;
  }
  
  .pd-install-intro-feature-item p {
    font-size: 12.3px;
  }
  
  .pd-consult-audience-image img, .pd-install-fit-image img {
    height: 175px !important;
  }
  
  .pd-install-fit-content {
    min-height: auto;
    padding: 31px 15px 17px;
  }
  
  .pd-install-fit-btn {
    width: 100%;
    min-width: 0;
    font-size: 12.5px;
  }
  
  .pd-install-scope-note {
    padding: 13px 15px;
    gap: 10px;
  }
  
  .pd-install-why-text h2 {
    font-size: 22px;
    line-height: 1.35;
    margin-bottom: 15px !important;
  }
  
  .pd-install-why-image img, .pd-install-why-image-wrap {
    height: 360px !important;
    min-height: 360px;
  }
  
  .pd-install-why-card {
    min-width: 150px;
    min-height: 56px;
    padding: 10px 12px;
    gap: 9px;
  }
  
  .pd-install-why-card-icon {
    width: 32px;
    height: 32px;
    min-width: 32px;
    font-size: 16px;
  }
  
  .pd-install-why-card p {
    font-size: 11.5px;
  }
  
  .pd-install-why-card-1 {
    top: 14px;
    left: 14px;
  }
  
  .pd-install-why-card-2 {
    top: 14px;
    right: 14px;
  }
  
  .pd-monitor-data-card-2, .pd-install-why-card-3 {
    left: 14px;
    bottom: 14px;
  }
  
  .pd-install-why-card-4 {
    right: 14px;
    bottom: 14px;
  }
  
  .pd-install-scope-item, .pd-install-cost-card {
    min-height: auto;
    padding: 32px 15px 18px;
  }
  
  .pd-consult-intro-text ul li, .pd-monitor-why-text ul li, .pd-install-why-text ul li, .pd-install-commit-list ul li {
    font-size: 13.8px;
    padding-left: 27px;
  }
  
  .pd-install-intro-image img, .pd-install-commit-image img {
    height: 210px !important;
  }
  
  .pd-install-commit-stats-box {
    display: block;
    padding: 17px 18px;
  }
  
  .pd-install-commit-stat-item {
    justify-content: flex-start;
    border-right: 0;
    border-bottom: 1px solid #eeeeee;
    padding: 14px 0;
  }
  
  .pd-install-commit-stat-item:first-child {
    padding-top: 0;
  }
  
  .pd-install-commit-stat-item:last-child {
    border-bottom: 0;
    padding-bottom: 0;
  }
  
  .pd-vmg-card h3, .pd-panel-content h3, .pd-install-commit-stat-item strong {
    font-size: 20px;
  }
  
  .pd-maint-hero-v1:before {
    background: linear-gradient(
    90deg,
    rgba(255,255,255,0.98) 0%,
    rgba(255,255,255,0.92) 68%,
    rgba(255,255,255,0.62) 100%
    );
  }
  
  .pd-maint-hero-label {
    font-size: 11.5px;
    margin-bottom: 12px !important;
  }
  
  .pd-maint-benefit-icon {
    width: 46px;
    height: 46px;
    min-width: 46px;
    font-size: 28px;
  }
  
  .pd-benefit-content h3, .pd-footer-menu h3, .pd-footer-contact h3, .pd-footer-newsletter h3, .pd-contact-info-content h3, .pd-family-step-item h3, .pd-business-journey-card h3, .pd-consult-audience-content h3, .pd-monitor-support-box h3, .pd-monitor-report-content h3, .pd-maint-benefit-item h3 {
    font-size: 15px;
  }
  
  .pd-monitor-process-item p, .pd-monitor-report-content p, .pd-install-benefit-content p, .pd-install-scope-note p, .pd-maint-benefit-item p {
    font-size: 12.8px;
  }
  
  .pd-family-explain-section, .pd-solution-filter-section, .pd-consult-intro-section, .pd-install-intro-section, .pd-maint-why-section {
    padding-top: 26px !important;
    padding-bottom: 30px !important;
  }
  
  .pd-maint-why-list ul li {
    padding-left: 28px;
    margin-bottom: 13px;
    font-size: 13.8px;
  }
  
  .pd-maint-compare-box {
    grid-template-columns: 1fr;
    min-height: auto;
  }
  
  .pd-maint-compare-side {
    min-height: 190px;
  }
  
  .pd-maint-compare-image img {
    height: 190px !important;
  }
  
  .pd-maint-compare-side span {
    top: 12px;
    min-height: 28px;
    padding: 0 14px;
    font-size: 11px;
    line-height: 28px;
  }
  
  .pd-ba-label-before, .pd-maint-compare-before span {
    left: 12px;
  }
  
  .pd-ba-label-after, .pd-maint-compare-after span {
    right: 12px;
  }
  
  .pd-maint-service-card {
    min-height: auto;
    padding: 22px 15px 18px;
  }
  
  .pd-install-scope-icon, .pd-maint-service-icon {
    width: 52px;
    height: 52px;
    margin-bottom: 12px;
    font-size: 36px;
  }
  
  .pd-maint-process-icon {
    width: 56px;
    height: 56px;
    margin-bottom: 11px;
    font-size: 27px;
  }
  
  .pd-solution-value-title, .pd-install-cost-title, .pd-maint-why-title, .pd-maint-price-title {
    margin-bottom: 22px !important;
  }
  
  .pd-maint-price-card {
    padding: 28px 22px 22px;
  }
  
  .pd-maint-price-featured h3 {
    margin-top: 22px !important;
  }
  
  .pd-vmg-icon:before, .pd-about-stat-card h3, .pd-maint-price {
    font-size: 30px;
  }
  
  .pd-maint-frequency-content {
    padding: 28px 22px 16px;
  }
  
  .pd-maint-frequency-image {
    height: 160px;
  }
  
  .pd-maint-frequency-img img {
    height: 160px !important;
  }
  
  .pd-family-hero-v2 .section-bg, .pd-business-hero-v1 .section-bg, .pd-maint-hero-v1 .section-bg, .pd-equip-hero-v1 .section-bg {
    background-position: 68% center !important;
  }
  
  .pd-equip-hero-v1:before {
    background: linear-gradient(
    90deg,
    rgba(4, 10, 18, 0.96) 0%,
    rgba(4, 10, 18, 0.90) 70%,
    rgba(4, 10, 18, 0.62) 100%
    );
  }
  
  .pd-family-hero-v2, .pd-family-hero-v2-row, .pd-family-why-image-wrap, .pd-business-hero-row, .pd-smart-hero-v1, .pd-smart-hero-row, .pd-solution-hero-v1, .pd-solution-hero-row, .pd-consult-hero-v1, .pd-consult-hero-row, .pd-maint-hero-row, .pd-equip-hero-row {
    min-height: auto;
  }
  
  .pd-monitor-hero-v2-content, .pd-maint-hero-content-col, .pd-equip-hero-content-col {
    padding-top: 32px !important;
    padding-bottom: 32px !important;
  }
  
  .pd-monitor-v2-breadcrumb, .pd-equip-breadcrumb {
    font-size: 12px;
    margin-bottom: 16px;
  }
  
  .pd-maint-hero-content h1, .pd-equip-hero-content h1 {
    font-size: 30px;
    line-height: 1.2;
    margin-bottom: 16px !important;
  }
  
  .pd-maint-hero-desc, .pd-equip-hero-content p {
    font-size: 14px;
    line-height: 1.65;
    margin-bottom: 22px !important;
  }
  
  .pd-monitor-v2-actions, .pd-maint-hero-actions, .pd-equip-hero-actions {
    gap: 10px;
  }
  
  .pd-maint-hero-btn, .pd-equip-hero-btn {
    width: 100%;
    min-height: 43px;
    line-height: 43px;
    font-size: 12.5px;
    padding: 0 18px;
  }
  
  .pd-monitor-v2-strip, .pd-maint-hero-benefits, .pd-equip-hero-strip {
    position: relative;
    left: auto;
    bottom: auto;
    transform: none;
    width: auto;
    max-width: none;
    grid-template-columns: 1fr;
    margin: 0 15px 26px;
    border-radius: 12px;
  }
  
  .pd-maint-benefit-item, .pd-equip-strip-item {
    min-height: auto;
    padding: 18px 16px;
    border-right: 0;
    border-bottom: 1px solid #eeeeee;
  }
  
  .pd-business-benefit-item:last-child, .pd-solution-benefit-item:last-child, .pd-monitor-v2-strip-item:last-child, .pd-maint-benefit-item:last-child, .pd-equip-strip-item:last-child {
    border-bottom: 0;
  }
  
  .pd-equip-strip-icon {
    width: 42px;
    height: 42px;
    min-width: 42px;
    font-size: 23px;
  }
  
  .pd-why-content p, .pd-process-item p, .pd-family-benefit-content p, .pd-family-step-item p, .pd-family-why-stat-card span, .pd-business-benefit-item p, .pd-business-journey-card p, .pd-business-why-stat-info span, .pd-smart-product-card h3, .pd-solution-value-item p, .pd-solution-process-item p, .pd-consult-benefit-card p, .pd-consult-scope-card p, .pd-consult-process-card p, .pd-monitor-service-card p, .pd-install-why-card h3, .pd-equip-strip-item p {
    font-size: 12.5px;
  }
  
  .pd-after-monitor-hero-v2, .pd-after-maint-hero, .pd-after-equip-hero-v1 {
    padding-top: 28px !important;
  }
  
  .pd-equip-category-card {
    min-height: 120px;
    padding: 22px 12px 18px;
  }
  
  .pd-equip-category-icon {
    width: 50px;
    height: 50px;
    margin-bottom: 12px;
    font-size: 35px;
  }
  
  .pd-why-content h3, .pd-process-item h3, .pd-vmg-card p, .pd-vmg-card ul li, .pd-about-why-card p, .pd-panel-content p, .pd-panel-list ul li, .pd-family-benefit-content h3, .pd-family-usecase-content p, .pd-solution-value-item h3, .pd-solution-process-item h3, .pd-consult-scope-card h3, .pd-consult-process-card h3, .pd-equip-category-card h3 {
    font-size: 14px;
  }
  
  .pd-family-usecase-section, .pd-solution-value-section, .pd-solution-process-section, .pd-maint-commit-section, .pd-equip-why-section {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
  }
  
  .pd-solution-object-subtitle, .pd-solution-value-title p, .pd-solution-process-title p, .pd-equip-why-title p {
    font-size: 11px;
  }
  
  .pd-consult-benefit-title h2, .pd-consult-form-heading h2, .pd-monitor-service-title h2, .pd-monitor-process-title h2, .pd-monitor-report-title h2, .pd-install-fit-title h2, .pd-install-scope-title h2, .pd-install-cost-title h2, .pd-install-commit-title h2, .pd-equip-why-title h2 {
    font-size: 21px;
    line-height: 1.35;
  }
  
  .pd-maint-commit-col, .pd-equip-why-col {
    padding-bottom: 18px !important;
  }
  
  .pd-solution-value-item, .pd-maint-commit-item, .pd-equip-why-item {
    min-height: auto;
    padding: 0 10px;
  }
  
  .pd-maint-commit-icon, .pd-equip-why-icon {
    width: 52px;
    height: 52px;
    margin-bottom: 12px;
    font-size: 33px;
  }
  
  .pd-maint-commit-item h3, .pd-equip-why-item h3 {
    font-size: 14.2px;
  }
  
  .pd-install-fit-content p, .pd-maint-commit-item p, .pd-equip-why-item p {
    font-size: 12.6px;
  }
  
  .pd-family-projects-section, .pd-family-faq-v2-section, .pd-consult-faq-cta-section, .pd-consult-register-section, .pd-monitor-faq-support-section, .pd-equip-products-section {
    padding-top: 24px !important;
    padding-bottom: 30px !important;
  }
  
  .pd-maint-why-title h2, .pd-maint-service-title h2, .pd-maint-process-title h2, .pd-maint-price-title h2, .pd-maint-commit-title h2, .pd-equip-category-title h2, .pd-equip-products-title h2 {
    padding: 0;
    font-size: 21px;
    line-height: 1.35;
  }
  
  .pd-business-type-title, .pd-business-journey-title, .pd-smart-type-title, .pd-smart-device-title, .pd-consult-benefit-title, .pd-consult-audience-title, .pd-consult-scope-title, .pd-consult-process-title, .pd-monitor-service-title, .pd-monitor-report-title, .pd-install-fit-title, .pd-install-commit-title, .pd-equip-products-title, .pd-equip-product-tabs .nav {
    margin-bottom: 18px !important;
  }
  
  .pd-equip-product-tabs .nav > li > a {
    min-width: 135px;
    height: 38px;
    line-height: 38px !important;
    font-size: 12.8px !important;
  }
  
  .pd-solution-mini-img img, .pd-monitor-report-image img, .pd-equip-products-section .product-small .box-image img {
    height: 170px !important;
  }
  
  .pd-equip-products-section .product-small .product-title {
    min-height: auto;
    font-size: 14px !important;
  }
  
  .pd-equip-products-more-btn {
    width: 100%;
    min-width: 0;
  }
  
  .pd-equip-brand-v2-section {
    padding-top: 22px !important;
    padding-bottom: 26px !important;
  }
  
  .pd-equip-brand-v2-title {
    margin-bottom: 14px;
  }
  
  .pd-footer-copyright p, .pd-consult-video-box span:last-child, .pd-equip-brand-v2-title h2 {
    font-size: 12px;
  }
  
  .pd-equip-brand-v2-item {
    min-width: 145px;
    height: 54px;
    padding: 9px 14px;
  }
  
  .pd-equip-brand-v2-item img {
    max-width: 105px;
    max-height: 30px;
  }
  
  .pd-business-journey-section, .pd-business-why-section, .pd-smart-why-section, .pd-smart-device-section, .pd-solution-object-section, .pd-monitor-service-section, .pd-monitor-process-section, .pd-monitor-price-section, .pd-monitor-report-section, .pd-install-fit-section, .pd-install-scope-section, .pd-install-why-section, .pd-install-cost-section, .pd-install-commit-section, .pd-maint-service-section, .pd-maint-process-section, .pd-maint-price-section, .pd-equip-category-section, .pd-equip-process-section {
    padding-top: 24px !important;
    padding-bottom: 28px !important;
  }
  
  .pd-family-faq-v2-title, .pd-smart-why-title, .pd-solution-object-title, .pd-solution-process-title, .pd-monitor-process-title, .pd-install-scope-title, .pd-maint-service-title, .pd-maint-process-title, .pd-maint-commit-title, .pd-equip-category-title, .pd-equip-why-title, .pd-equip-process-title {
    margin-bottom: 20px !important;
  }
  
  .pd-equip-process-title h2 {
    padding: 0;
    font-size: 14px;
    line-height: 1.45;
  }
  
  .pd-hero-right:before, .pd-timeline-nav:before, .pd-install-why-card:after, .pd-maint-why-title h2:before, .pd-maint-why-title h2:after, .pd-maint-compare-box:before, .pd-maint-compare-handle, .pd-maint-service-title h2:before, .pd-maint-service-title h2:after, .pd-maint-process-title h2:before, .pd-maint-process-title h2:after, .pd-maint-price-title h2:before, .pd-maint-price-title h2:after, .pd-maint-commit-title h2:before, .pd-maint-commit-title h2:after, .pd-equip-category-title h2:before, .pd-equip-category-title h2:after, .pd-equip-products-title h2:before, .pd-equip-products-title h2:after, .pd-equip-process-title h2:before, .pd-equip-process-title h2:after {
    display: none;
  }
  
  .pd-family-projects-grid, .pd-smart-why-timeline, .pd-monitor-process-wrap, .pd-install-scope-wrap, .pd-install-cost-grid, .pd-maint-process-wrap, .pd-equip-process-wrap {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  
  .pd-maint-process-item, .pd-equip-process-item {
    padding: 22px 15px 18px;
  }
  
  .pd-equip-process-icon {
    width: 56px;
    height: 56px;
    margin-bottom: 12px;
    font-size: 26px;
  }
  
  .pd-consult-benefit-card h3, .pd-monitor-service-card h3, .pd-monitor-process-item h3, .pd-install-benefit-content h3, .pd-install-fit-content h3, .pd-install-scope-item h3, .pd-install-cost-card h3, .pd-maint-service-card h3, .pd-maint-process-item h3, .pd-equip-strip-item h3, .pd-equip-process-item h3 {
    font-size: 14.5px;
  }
  
  .pd-install-scope-item p, .pd-install-cost-card p, .pd-maint-service-card p, .pd-maint-process-item p, .pd-equip-process-item p {
    max-width: 260px;
    font-size: 12.6px;
  }
  
  .custom-project-grid {
    grid-template-columns: 1fr !important;
    gap: 15px;
  }
  
  .pd-solar-card-img img, .pd-project-list .box-image img, .project-card-thumbnail {
    height: 180px;
  }
}

@media screen and (max-width: 549px) {
  .pd-audience-row {
    display:block !important;
    position:relative;
  }
  
  .pd-audience-card {
    min-height:400px;
    overflow:hidden;
    position:relative;
  }
  
  .pd-audience-inner {
    position:relative;
    min-height:400px;
  }
  
  .pd-audience-image-col {
    position:absolute !important;
    top:0;
    left:0;
    right:0;
    bottom:0;
    width:100% !important;
    max-width:100% !important;
    flex-basis:100% !important;
    z-index:1;
    padding:0 !important;
  }
  
  .pd-audience-image-col img {
    width:100%;
    height:100%;
    object-fit:cover;
  }
  
  .pd-audience-image-col:after {
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(
    90deg,
    rgba(255,247,245,.95) 0%,
    rgba(255,247,245,.85) 45%,
    rgba(255,247,245,.30) 75%,
    rgba(255,247,245,.10) 100%
    );
    z-index:2;
  }
  
  .pd-audience-row .pd-audience-content {
    position:relative !important;
    width:100% !important;
    max-width:100% !important;
    flex-basis:100% !important;
    z-index:10;
    padding:0px 15px !important;
  }
  
  .pd-audience-text h2 {
    font-size:28px !important;
    line-height:1 !important;
    margin-bottom:18px;
  }
  
  .pd-audience-text ul li {
    font-size:16px !important;
    line-height:1.45 !important;
  }
  
  .pd-audience-btn {
    width:auto !important;
    display:inline-flex !important;
    min-width:250px;
  }
}

@media (max-width: 480px) {
  .stats-custom-grid {
    grid-template-columns: 1fr !important;
    gap: 15px;
  }
  
  .project-meta-top-grid {
    flex-direction: column;
    gap: 12px;
  }
  
  .product-quick-specs-grid {
    grid-template-columns: 1fr !important;
    gap: 12px;
  }
  
  .archive-project-main-grid {
    grid-template-columns: 1fr !important;
  }
  
  .card-thumbnail-wrapper {
    height: 180px;
  }
}
:root {
  --pd-red: #ed1c24;
  --pd-red-dark: #d90009;
  --pd-black: #111111;
  --pd-text: #3f3f46;
  --pd-muted: #71717a;
  --pd-border: #e5e7eb;
}

/* Reset popup */
#pd-consult-popup,
#pd-consult-popup *,
.pd-consult-lightbox,
.pd-consult-lightbox * {
  box-sizing: border-box;
}

#pd-consult-popup {
  background: #fff !important;
  border-radius: 18px !important;
  overflow: hidden !important;
}

#pd-consult-popup .section,
#pd-consult-popup .section-content,
#pd-consult-popup .row,
#pd-consult-popup .col,
#pd-consult-popup .col-inner {
  background-color: transparent !important;
}

#pd-consult-popup .pd-consult-section {
  background: #fff !important;
  padding: 0 !important;
  max-height: 92vh;
  overflow-y: auto;
}

#pd-consult-popup .pd-consult-row {
  margin: 0 !important;
  max-width: 100% !important;
}

#pd-consult-popup .pd-consult-left > .col-inner,
#pd-consult-popup .pd-consult-right > .col-inner {
  padding: 48px 54px 40px !important;
  min-height: 100%;
}

#pd-consult-popup .pd-consult-left > .col-inner {
  background: #fff !important;
  border-right: 1px solid #eef0f3;
}

#pd-consult-popup .pd-consult-right > .col-inner {
  background: linear-gradient(180deg, #ffffff 0%, #fbfbfb 100%) !important;
}

/* Close button */
.mfp-close {
  font-size: 42px !important;
  font-weight: 300 !important;
  color: #111 !important;
  opacity: 1 !important;
  right: 18px !important;
  top: 14px !important;
}

/* Header */
#pd-consult-popup .pd-kicker {
  width: 42px;
  height: 3px;
  background: var(--pd-red);
  border-radius: 999px;
  margin-bottom: 16px;
}

#pd-consult-popup .pd-popup-title {
  font-size: 32px !important;
  line-height: 1.22 !important;
  font-weight: 800 !important;
  color: #111 !important;
  margin: 0 0 12px !important;
  letter-spacing: -0.03em;
}

#pd-consult-popup .pd-popup-title span {
  display: block;
  color: var(--pd-red) !important;
  font-size: 36px !important;
}

#pd-consult-popup .pd-popup-desc {
  max-width: 620px;
  margin: 0 0 30px !important;
  color: var(--pd-text) !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
}

/* CF7 reset */
#pd-consult-popup .pd-cf7-consult {
  margin: 0 !important;
  background: transparent !important;
}

#pd-consult-popup .pd-cf7-consult p {
  margin: 0 !important;
}

#pd-consult-popup .pd-cf7-consult .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
}

/* Grid */
#pd-consult-popup .pd-form-grid {
  display: grid;
  gap: 18px 22px;
}

#pd-consult-popup .pd-form-grid-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

#pd-consult-popup .pd-field {
  margin-bottom: 18px;
}

#pd-consult-popup .pd-field label,
#pd-consult-popup .pd-interest-field > label {
  display: block;
  margin-bottom: 9px;
  color: #171717 !important;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.3;
}

#pd-consult-popup .pd-field label span,
#pd-consult-popup .pd-interest-field > label span {
  color: var(--pd-red) !important;
}

/* Inputs */
#pd-consult-popup .pd-input-wrap {
  position: relative;
}

#pd-consult-popup .pd-field-icon {
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  color: #111;
  font-size: 18px;
  line-height: 1;
  pointer-events: none;
}

#pd-consult-popup .pd-textarea-wrap .pd-field-icon {
  top: 20px;
  transform: none;
}

#pd-consult-popup .pd-cf7-consult input[type="text"],
#pd-consult-popup .pd-cf7-consult input[type="tel"],
#pd-consult-popup .pd-cf7-consult input[type="email"],
#pd-consult-popup .pd-cf7-consult select,
#pd-consult-popup .pd-cf7-consult textarea {
  width: 100% !important;
  min-height: 50px !important;
  height: auto !important;
  border: 1px solid var(--pd-border) !important;
  border-radius: 7px !important;
  background: #fff !important;
  box-shadow: none !important;
  color: #111 !important;
  font-size: 15px !important;
  line-height: 1.4 !important;
  padding: 0 16px 0 48px !important;
  margin: 0 !important;
}

#pd-consult-popup .pd-cf7-consult textarea {
  min-height: 88px !important;
  resize: vertical;
  padding-top: 16px !important;
}

#pd-consult-popup .pd-cf7-consult input:focus,
#pd-consult-popup .pd-cf7-consult select:focus,
#pd-consult-popup .pd-cf7-consult textarea:focus {
  border-color: var(--pd-red) !important;
  box-shadow: 0 0 0 3px rgba(237, 28, 36, .08) !important;
  outline: none !important;
}

/* Radio cards */
#pd-consult-popup .pd-choice-cf7 .wpcf7-radio {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item {
  margin: 0 !important;
  display: block !important;
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item label {
  display: block !important;
  margin: 0 !important;
  cursor: pointer;
}

#pd-consult-popup .pd-choice-cf7 input[type="radio"] {
  position: absolute !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item-label {
  position: relative;
  min-height: 112px;
  border: 1px solid var(--pd-border);
  border-radius: 7px;
  background: #fff;
  color: #111;
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 9px;
  padding: 16px 10px 14px;
  text-align: center;
  font-size: 13px;
  line-height: 1.15;
  font-weight: 800;
  transition: all .22s ease;
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item-label:hover {
  border-color: rgba(237, 28, 36, .45);
  box-shadow: 0 10px 24px rgba(15, 23, 42, .06);
  transform: translateY(-1px);
}

#pd-consult-popup .pd-choice-cf7 input[type="radio"]:checked + .wpcf7-list-item-label {
  border-color: var(--pd-red);
  background: linear-gradient(145deg, #fff 0%, #fff7f7 100%);
  box-shadow: inset 0 0 0 1px rgba(237, 28, 36, .12);
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item-label::before {
  display: block;
  color: #111;
  font-size: 32px;
  line-height: 34px;
  font-weight: 400;
}

#pd-consult-popup .pd-choice-cf7 input[type="radio"]:checked + .wpcf7-list-item-label::before {
  color: var(--pd-red);
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item-label::after {
  content: "✓";
  position: absolute;
  top: 8px;
  right: 8px;
  width: 21px;
  height: 21px;
  border-radius: 999px;
  display: none;
  align-items: center;
  justify-content: center;
  background: var(--pd-red);
  color: #fff;
  font-size: 13px;
  font-weight: 800;
}

#pd-consult-popup .pd-choice-cf7 input[type="radio"]:checked + .wpcf7-list-item-label::after {
  display: flex;
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item:nth-child(1) .wpcf7-list-item-label::before {
  content: "☀";
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item:nth-child(2) .wpcf7-list-item-label::before {
  content: "⌂";
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item:nth-child(3) .wpcf7-list-item-label::before {
  content: "▣";
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item:nth-child(4) .wpcf7-list-item-label::before {
  content: "◉";
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item:nth-child(5) .wpcf7-list-item-label::before {
  content: "▱";
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item:nth-child(6) .wpcf7-list-item-label::before {
  content: "▤";
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item:nth-child(7) .wpcf7-list-item-label::before {
  content: "⚙";
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item:nth-child(8) .wpcf7-list-item-label::before {
  content: "⊞";
}

/* Acceptance */
#pd-consult-popup .pd-policy {
  margin: 4px 0 18px;
}

#pd-consult-popup .pd-policy .wpcf7-list-item {
  margin: 0 !important;
}

#pd-consult-popup .pd-policy label {
  display: flex !important;
  align-items: flex-start;
  gap: 12px;
  margin: 0 !important;
  color: #4b5563 !important;
  font-size: 14px;
  line-height: 1.55;
  cursor: pointer;
  font-weight: 400;
}

#pd-consult-popup .pd-policy input[type="checkbox"] {
  width: 19px !important;
  height: 19px !important;
  margin: 2px 0 0 !important;
  flex: 0 0 19px;
  accent-color: var(--pd-red);
}

/* Submit */
#pd-consult-popup .pd-submit-wrap {
  position: relative;
}

#pd-consult-popup .pd-submit-wrap::after {
  content: "→";
  position: absolute;
  top: 50%;
  right: 28px;
  transform: translateY(-50%);
  color: #fff;
  font-size: 32px;
  font-weight: 300;
  line-height: 1;
  pointer-events: none;
}

#pd-consult-popup .pd-cf7-consult input[type="submit"].pd-submit {
  width: 100% !important;
  min-height: 58px !important;
  border: none !important;
  border-radius: 7px !important;
  background: linear-gradient(90deg, var(--pd-red) 0%, #f20b16 100%) !important;
  color: #fff !important;
  display: block !important;
  padding: 0 64px !important;
  margin: 0 !important;
  font-size: 18px !important;
  line-height: 58px !important;
  font-weight: 800 !important;
  letter-spacing: .01em;
  text-align: center;
  box-shadow: 0 12px 22px rgba(237, 28, 36, .24);
  cursor: pointer;
}

#pd-consult-popup .pd-cf7-consult input[type="submit"].pd-submit:hover {
  background: linear-gradient(90deg, var(--pd-red-dark) 0%, var(--pd-red) 100%) !important;
}

/* CF7 notice */
#pd-consult-popup .wpcf7-not-valid-tip {
  margin-top: 6px;
  color: var(--pd-red) !important;
  font-size: 12px;
}

#pd-consult-popup .wpcf7-response-output {
  margin: 18px 0 0 !important;
  padding: 12px 16px !important;
  border-radius: 8px;
  font-size: 14px;
}

/* Source tags */
#pd-consult-popup .pd-source-tags {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
  margin-top: 28px;
}

#pd-consult-popup .pd-source-tags span {
  min-height: 38px;
  border: 1px solid var(--pd-border);
  border-radius: 6px;
  background: #fff;
  color: #6b7280;
  font-size: 12px;
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Right column */
#pd-consult-popup .pd-aside-title {
  margin: 18px 0 14px !important;
  color: var(--pd-red) !important;
  font-size: 23px !important;
  line-height: 1.25 !important;
  font-weight: 800 !important;
}

#pd-consult-popup .pd-aside-line {
  width: 64px;
  height: 3px;
  background: var(--pd-red);
  border-radius: 999px;
  margin-bottom: 38px;
}

#pd-consult-popup .pd-benefit-list {
  display: flex;
  flex-direction: column;
}

#pd-consult-popup .pd-benefit-item {
  display: grid;
  grid-template-columns: 82px 1fr;
  gap: 22px;
  padding: 0 0 28px;
  margin-bottom: 28px;
  border-bottom: 1px dashed #dfe3e8;
}

#pd-consult-popup .pd-benefit-icon {
  width: 70px;
  height: 70px;
  border-radius: 999px;
  background: #fff0f0;
  color: var(--pd-red);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 32px;
  font-weight: 600;
}

#pd-consult-popup .pd-benefit-text h4 {
  margin: 5px 0 7px !important;
  color: #111 !important;
  font-size: 18px !important;
  line-height: 1.25 !important;
  font-weight: 800 !important;
}

#pd-consult-popup .pd-benefit-text p {
  margin: 0 !important;
  color: #444 !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
}

/* Quote */
#pd-consult-popup .pd-quote-card {
  margin-top: 28px;
  background: #fff;
  border-radius: 13px;
  overflow: hidden;
  box-shadow: 0 12px 32px rgba(15, 23, 42, .10);
  border: 1px solid #f1f1f1;
}

#pd-consult-popup .pd-quote-content {
  display: grid;
  grid-template-columns: 42px 1fr;
  gap: 16px;
  padding: 22px 28px 28px;
}

#pd-consult-popup .pd-quote-mark {
  color: var(--pd-red);
  font-size: 58px;
  line-height: .85;
  font-weight: 900;
}

#pd-consult-popup .pd-quote-content p {
  margin: 0 !important;
  color: #3f3f46 !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
}

/* Responsive */
@media (max-width: 1024px) {
  #pd-consult-popup .pd-consult-left > .col-inner,
  #pd-consult-popup .pd-consult-right > .col-inner {
    padding: 38px 34px !important;
  }

  #pd-consult-popup .pd-choice-cf7 .wpcf7-radio {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #pd-consult-popup .pd-source-tags {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 849px) {
  #pd-consult-popup .pd-consult-left > .col-inner {
    border-right: none;
    border-bottom: 1px solid #eef0f3;
  }

  #pd-consult-popup .pd-form-grid-2 {
    grid-template-columns: 1fr;
  }

  #pd-consult-popup .pd-popup-title {
    font-size: 27px !important;
  }

  #pd-consult-popup .pd-popup-title span {
    font-size: 30px !important;
  }
}

@media (max-width: 549px) {
  #pd-consult-popup .pd-consult-section {
    max-height: 94vh;
  }

  #pd-consult-popup .pd-consult-left > .col-inner,
  #pd-consult-popup .pd-consult-right > .col-inner {
    padding: 28px 18px !important;
  }

  #pd-consult-popup .pd-popup-title {
    font-size: 24px !important;
  }

  #pd-consult-popup .pd-popup-title span {
    font-size: 27px !important;
  }

  #pd-consult-popup .pd-choice-cf7 .wpcf7-radio {
    gap: 10px;
  }

  #pd-consult-popup .pd-choice-cf7 .wpcf7-list-item-label {
    min-height: 104px;
    padding: 14px 8px 12px;
  }

  #pd-consult-popup .pd-cf7-consult input[type="submit"].pd-submit {
    min-height: 54px !important;
    line-height: 54px !important;
    font-size: 14px !important;
    padding: 0 46px 0 18px !important;
  }

  #pd-consult-popup .pd-submit-wrap::after {
    right: 18px;
    font-size: 26px;
  }

  #pd-consult-popup .pd-benefit-item {
    grid-template-columns: 58px 1fr;
    gap: 16px;
  }

  #pd-consult-popup .pd-benefit-icon {
    width: 54px;
    height: 54px;
    font-size: 24px;
  }

  #pd-consult-popup .pd-source-tags {
    display: none;
  }

  .mfp-close {
    right: 6px !important;
    top: 4px !important;
  }
}
/* ================================
   PHAT DECORS POPUP CF7 HARD FIX
================================ */

#pd-consult-popup {
  background: #fff !important;
}

#pd-consult-popup .pd-consult-left > .col-inner {
  background: #fff !important;
}

#pd-consult-popup .pd-consult-form-box {
  border: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

#pd-consult-popup .pd-cf7-consult,
#pd-consult-popup #pd-cf7-consult,
#pd-consult-popup .wpcf7,
#pd-consult-popup .wpcf7 form {
  width: 100% !important;
  max-width: 100% !important;
  background: transparent !important;
  margin: 0 !important;
  padding: 0 !important;
}

#pd-consult-popup .wpcf7 p {
  margin: 0 !important;
}

#pd-consult-popup .pd-form-grid {
  display: grid !important;
  gap: 18px 22px !important;
  margin: 0 !important;
}

#pd-consult-popup .pd-form-grid-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

#pd-consult-popup .pd-field {
  margin: 0 0 18px !important;
}

#pd-consult-popup .pd-field label,
#pd-consult-popup .pd-interest-field > label {
  display: block !important;
  margin: 0 0 9px !important;
  color: #111 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
}

#pd-consult-popup .pd-field label span,
#pd-consult-popup .pd-interest-field > label span {
  color: #ed1c24 !important;
}

#pd-consult-popup .pd-input-wrap {
  position: relative !important;
  width: 100% !important;
}

#pd-consult-popup .pd-field-icon {
  position: absolute !important;
  left: 16px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 5 !important;
  color: #111 !important;
  font-size: 17px !important;
  line-height: 1 !important;
  pointer-events: none !important;
}

#pd-consult-popup .pd-textarea-wrap .pd-field-icon {
  top: 20px !important;
  transform: none !important;
}

#pd-consult-popup .wpcf7-form-control-wrap {
  display: block !important;
  width: 100% !important;
}

#pd-consult-popup input[type="text"],
#pd-consult-popup input[type="tel"],
#pd-consult-popup input[type="email"],
#pd-consult-popup select,
#pd-consult-popup textarea {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 50px !important;
  height: 50px !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 7px !important;
  background: #fff !important;
  box-shadow: none !important;
  color: #111 !important;
  font-size: 15px !important;
  line-height: 1.4 !important;
  padding: 0 16px 0 48px !important;
  margin: 0 !important;
}

#pd-consult-popup textarea {
  height: auto !important;
  min-height: 118px !important;
  padding-top: 16px !important;
  resize: vertical !important;
}

#pd-consult-popup input:focus,
#pd-consult-popup select:focus,
#pd-consult-popup textarea:focus {
  border-color: #ed1c24 !important;
  box-shadow: 0 0 0 3px rgba(237, 28, 36, .08) !important;
  outline: none !important;
}

/* Radio cards */
#pd-consult-popup .pd-choice-cf7 {
  width: 100% !important;
  display: block !important;
  margin-top: 0 !important;
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-radio {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 14px !important;
  width: 100% !important;
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item label {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  cursor: pointer !important;
}

#pd-consult-popup .pd-choice-cf7 input[type="radio"] {
  position: absolute !important;
  opacity: 0 !important;
  width: 1px !important;
  height: 1px !important;
  pointer-events: none !important;
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item-label {
  position: relative !important;
  min-height: 112px !important;
  width: 100% !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 7px !important;
  background: #fff !important;
  color: #111 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  padding: 16px 10px 14px !important;
  text-align: center !important;
  font-size: 13px !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
  white-space: normal !important;
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item-label:hover {
  border-color: rgba(237, 28, 36, .45) !important;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .06) !important;
}

#pd-consult-popup .pd-choice-cf7 input[type="radio"]:checked + .wpcf7-list-item-label {
  border-color: #ed1c24 !important;
  background: linear-gradient(145deg, #fff 0%, #fff7f7 100%) !important;
  box-shadow: inset 0 0 0 1px rgba(237, 28, 36, .12) !important;
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item-label::before {
  display: block !important;
  color: #111 !important;
  font-size: 32px !important;
  line-height: 34px !important;
  font-weight: 400 !important;
}

#pd-consult-popup .pd-choice-cf7 input[type="radio"]:checked + .wpcf7-list-item-label::before {
  color: #ed1c24 !important;
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item-label::after {
  content: "✓" !important;
  position: absolute !important;
  top: 8px !important;
  right: 8px !important;
  width: 21px !important;
  height: 21px !important;
  border-radius: 999px !important;
  display: none !important;
  align-items: center !important;
  justify-content: center !important;
  background: #ed1c24 !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 800 !important;
}

#pd-consult-popup .pd-choice-cf7 input[type="radio"]:checked + .wpcf7-list-item-label::after {
  display: flex !important;
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item:nth-child(1) .wpcf7-list-item-label::before {
  content: "☀" !important;
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item:nth-child(2) .wpcf7-list-item-label::before {
  content: "⌂" !important;
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item:nth-child(3) .wpcf7-list-item-label::before {
  content: "▣" !important;
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item:nth-child(4) .wpcf7-list-item-label::before {
  content: "◉" !important;
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item:nth-child(5) .wpcf7-list-item-label::before {
  content: "▱" !important;
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item:nth-child(6) .wpcf7-list-item-label::before {
  content: "▤" !important;
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item:nth-child(7) .wpcf7-list-item-label::before {
  content: "⚙" !important;
}

#pd-consult-popup .pd-choice-cf7 .wpcf7-list-item:nth-child(8) .wpcf7-list-item-label::before {
  content: "⊞" !important;
}

/* Acceptance */
#pd-consult-popup .pd-policy {
  margin: 4px 0 18px !important;
}

#pd-consult-popup .pd-policy .wpcf7-list-item {
  margin: 0 !important;
}

#pd-consult-popup .pd-policy label {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  margin: 0 !important;
  color: #4b5563 !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  font-weight: 400 !important;
}

#pd-consult-popup .pd-policy input[type="checkbox"] {
  width: 19px !important;
  height: 19px !important;
  min-height: 19px !important;
  margin: 2px 0 0 !important;
  flex: 0 0 19px !important;
  accent-color: #ed1c24 !important;
}

/* Submit */
#pd-consult-popup .pd-submit-wrap {
  position: relative !important;
  width: 100% !important;
}

#pd-consult-popup .pd-submit-wrap::before {
  content: "☎" !important;
  position: absolute !important;
  top: 50% !important;
  left: calc(50% - 178px) !important;
  transform: translateY(-50%) !important;
  color: #fff !important;
  font-size: 20px !important;
  z-index: 3 !important;
  pointer-events: none !important;
}

#pd-consult-popup .pd-submit-wrap::after {
  content: "→" !important;
  position: absolute !important;
  top: 50% !important;
  right: 28px !important;
  transform: translateY(-50%) !important;
  color: #fff !important;
  font-size: 32px !important;
  font-weight: 300 !important;
  z-index: 3 !important;
  pointer-events: none !important;
}

#pd-consult-popup input[type="submit"].pd-submit,
#pd-consult-popup .pd-submit {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 58px !important;
  height: 58px !important;
  border: none !important;
  border-radius: 7px !important;
  background: linear-gradient(90deg, #ed1c24 0%, #f20b16 100%) !important;
  color: #fff !important;
  display: block !important;
  padding: 0 64px !important;
  margin: 0 !important;
  font-size: 18px !important;
  line-height: 58px !important;
  font-weight: 800 !important;
  letter-spacing: .01em !important;
  text-align: center !important;
  box-shadow: 0 12px 22px rgba(237, 28, 36, .24) !important;
  cursor: pointer !important;
}

/* Source tags */
#pd-consult-popup .pd-source-tags {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 14px !important;
  margin-top: 28px !important;
}

#pd-consult-popup .pd-source-tags span {
  min-height: 38px !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 6px !important;
  background: #fff !important;
  color: #6b7280 !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Tablet/mobile */
@media (max-width: 1024px) {
  #pd-consult-popup .pd-choice-cf7 .wpcf7-radio {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  #pd-consult-popup .pd-source-tags {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 849px) {
  #pd-consult-popup .pd-form-grid-2 {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 549px) {
  #pd-consult-popup .pd-choice-cf7 .wpcf7-radio {
    gap: 10px !important;
  }

  #pd-consult-popup .pd-choice-cf7 .wpcf7-list-item-label {
    min-height: 104px !important;
    padding: 14px 8px 12px !important;
  }

  #pd-consult-popup input[type="submit"].pd-submit,
  #pd-consult-popup .pd-submit {
    height: 54px !important;
    min-height: 54px !important;
    line-height: 54px !important;
    font-size: 14px !important;
    padding: 0 46px 0 18px !important;
  }

  #pd-consult-popup .pd-submit-wrap::before {
    display: none !important;
  }

  #pd-consult-popup .pd-submit-wrap::after {
    right: 18px !important;
    font-size: 26px !important;
  }

  #pd-consult-popup .pd-source-tags {
    display: none !important;
  }
}
/* =====================================
   PHAT DECORS POPUP HEADER / FOOTER FIX
===================================== */

/* Chỉ áp dụng cho popup tư vấn */
.mfp-wrap:has(#pd-consult-popup) {
  overflow-y: auto !important;
}

.mfp-wrap:has(#pd-consult-popup) .mfp-container {
  padding: 32px 16px !important;
  display: block !important;
  height: auto !important;
  min-height: 100vh !important;
}

.mfp-wrap:has(#pd-consult-popup) .mfp-container:before {
  display: none !important;
  content: none !important;
}

.mfp-wrap:has(#pd-consult-popup) .mfp-content {
  vertical-align: top !important;
  margin: 0 auto !important;
  max-width: 1280px !important;
}

/* Popup không tự cắt header nữa */
#pd-consult-popup {
  max-height: none !important;
  overflow: visible !important;
}

/* Phần nội dung bên trong mới là nơi scroll */
#pd-consult-popup .pd-consult-section {
  max-height: calc(100vh - 64px) !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  background: #fff !important;
  border-radius: 18px !important;
}

/* Chừa khoảng thở trên dưới */
#pd-consult-popup .pd-consult-left > .col-inner,
#pd-consult-popup .pd-consult-right > .col-inner {
  padding-top: 46px !important;
  padding-bottom: 46px !important;
}

/* Đảm bảo heading không bị theme kéo margin âm */
#pd-consult-popup .pd-consult-heading {
  display: block !important;
  margin: 0 0 26px !important;
  padding: 0 !important;
}

#pd-consult-popup .pd-popup-title {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Source tags chỉ để debug, bản live nên ẩn */
#pd-consult-popup .pd-source-tags {
  display: none !important;
}

/* Nút submit không bị sát đáy */
#pd-consult-popup .pd-submit-wrap {
  margin-bottom: 4px !important;
}

/* Fix scrollbar nhìn gọn hơn */
#pd-consult-popup .pd-consult-section::-webkit-scrollbar {
  width: 8px;
}

#pd-consult-popup .pd-consult-section::-webkit-scrollbar-track {
  background: #f3f4f6;
  border-radius: 999px;
}

#pd-consult-popup .pd-consult-section::-webkit-scrollbar-thumb {
  background: #9ca3af;
  border-radius: 999px;
}

@media (max-width: 849px) {
  .mfp-wrap:has(#pd-consult-popup) .mfp-container {
    padding: 18px 10px !important;
  }

  #pd-consult-popup .pd-consult-section {
    max-height: calc(100vh - 36px) !important;
    border-radius: 14px !important;
  }
}

@media (max-width: 549px) {
  #pd-consult-popup .pd-consult-left > .col-inner,
  #pd-consult-popup .pd-consult-right > .col-inner {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
}
/* =====================================
   PHAT DECORS - FINAL HEADER FIX
   Không dùng :has để tránh lỗi tương thích
===================================== */

body.pd-consult-popup-active {
  overflow: hidden !important;
}

/* Overlay popup scroll từ ngoài, không scroll bên trong section */
body.pd-consult-popup-active .mfp-wrap {
  overflow-y: auto !important;
  overflow-x: hidden !important;
}

body.pd-consult-popup-active .mfp-container {
  display: block !important;
  height: auto !important;
  min-height: 100vh !important;
  padding: 32px 16px !important;
  text-align: center !important;
}

body.pd-consult-popup-active .mfp-container::before {
  display: none !important;
  content: none !important;
}

body.pd-consult-popup-active .mfp-content {
  display: inline-block !important;
  vertical-align: top !important;
  margin: 0 auto !important;
  max-width: 1280px !important;
  text-align: left !important;
}

/* Popup box */
body.pd-consult-popup-active #pd-consult-popup {
  max-height: none !important;
  overflow: visible !important;
  background: #fff !important;
  border-radius: 18px !important;
}

/* Quan trọng: bỏ scroll nội bộ làm mất header */
body.pd-consult-popup-active #pd-consult-popup .pd-consult-section {
  max-height: none !important;
  overflow: visible !important;
  overflow-y: visible !important;
  background: #fff !important;
  border-radius: 18px !important;
}

/* Đảm bảo phần heading luôn nằm đúng đầu popup */
#pd-consult-popup .pd-consult-heading {
  display: block !important;
  margin: 0 0 28px !important;
  padding: 0 !important;
  overflow: visible !important;
}

#pd-consult-popup .pd-kicker {
  display: block !important;
  margin-top: 0 !important;
  margin-bottom: 16px !important;
}

#pd-consult-popup .pd-popup-title {
  display: block !important;
  margin: 0 0 12px !important;
  padding: 0 !important;
  overflow: visible !important;
}

#pd-consult-popup .pd-popup-desc {
  margin: 0 !important;
  padding: 0 !important;
}

/* Chừa đủ khoảng trên giống mẫu */
#pd-consult-popup .pd-consult-left > .col-inner,
#pd-consult-popup .pd-consult-right > .col-inner {
  padding-top: 48px !important;
}

/* Nút close luôn ở góc popup */
body.pd-consult-popup-active .mfp-close {
  position: absolute !important;
  top: 14px !important;
  right: 18px !important;
  z-index: 9999 !important;
  font-size: 42px !important;
  color: #111 !important;
  opacity: 1 !important;
}

/* Mobile */
@media (max-width: 849px) {
  body.pd-consult-popup-active .mfp-container {
    padding: 18px 10px !important;
  }

  body.pd-consult-popup-active #pd-consult-popup {
    border-radius: 14px !important;
  }

  body.pd-consult-popup-active #pd-consult-popup .pd-consult-section {
    border-radius: 14px !important;
  }
}

@media (max-width: 549px) {
  #pd-consult-popup .pd-consult-left > .col-inner,
  #pd-consult-popup .pd-consult-right > .col-inner {
    padding-top: 30px !important;
  }
}
/* ==========================================================
   HERO DỊCH VỤ PHAT.DECORS
   Class tổng: wm-service-hero
   ========================================================== */

.wm-service-hero {
    position: relative;
    overflow: hidden;
    background-color: #eef2f3;
}


/* ==========================================================
   ẢNH NỀN VÀ LỚP PHỦ
   ========================================================== */

.wm-service-hero > .section-bg {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

/* Làm sáng phía trái để nội dung dễ đọc */
.wm-service-hero > .section-bg::before {
    content: "";

    position: absolute;
    inset: 0;
    z-index: 1;

    background:
        linear-gradient(
            90deg,
            rgba(255, 255, 255, 0.98) 0%,
            rgba(255, 255, 255, 0.92) 35%,
            rgba(255, 255, 255, 0.42) 58%,
            rgba(255, 255, 255, 0.04) 100%
        );

    pointer-events: none;
}

/* Ánh sáng nhẹ ở giữa banner */
.wm-service-hero > .section-bg::after {
    content: "";

    position: absolute;
    inset: 0;
    z-index: 2;

    background:
        radial-gradient(
            circle at 52% 20%,
            rgba(255, 255, 255, 0.35),
            transparent 42%
        );

    pointer-events: none;
}

.wm-service-hero > .section-content {
    position: relative;
    z-index: 3;
}


/* ==========================================================
   KHUNG HERO
   ========================================================== */

.wm-service-hero-row {
    min-height: 500px;
    padding-top: 38px;
    padding-bottom: 145px;
}

.wm-service-hero-content {
    position: relative;
    z-index: 4;
}


/* ==========================================================
   BREADCRUMB
   ========================================================== */

.wm-service-breadcrumb {
    margin: 0 0 35px;
}

.wm-service-breadcrumb p {
    margin: 0 !important;

    display: flex;
    align-items: center;
    gap: 9px;

    color: #555d61;

    font-size: 13px;
    font-weight: 500;
    line-height: 1.4;
}

.wm-service-breadcrumb a {
    color: #555d61;
    transition: color 0.25s ease;
}

.wm-service-breadcrumb a:hover {
    color: #e1272f;
}

.wm-service-breadcrumb span {
    color: #999fa2;
}

.wm-service-breadcrumb strong {
    color: #202628;
    font-weight: 600;
}


/* ==========================================================
   NỘI DUNG HERO
   ========================================================== */

.wm-service-hero-text {
    max-width: 620px;
    margin: 0;
}

.wm-service-eyebrow {
    margin: 0 0 14px !important;

    color: #e1272f;

    font-size: 16px;
    font-weight: 800;
    line-height: 1.4;
    letter-spacing: 0.015em;
    text-transform: uppercase;
}

.wm-service-hero-text h1 {
    margin: 0 0 20px !important;
    padding: 0;

    color: #171b1d;

    font-size: clamp(39px, 4vw, 48px);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -0.04em;
    text-transform: uppercase;
}

.wm-service-hero-text h1 span {
    color: #14863c;
}

.wm-service-description {
    max-width: 590px;
    margin: 0 !important;

    color: #444b4f;

    font-size: 15px;
    font-weight: 400;
    line-height: 1.75;
}


/* ==========================================================
   THANH LỢI ÍCH PHÍA DƯỚI
   ========================================================== */

.wm-service-benefits-row {
    position: absolute;
    right: 0;
    bottom: 25px;
    left: 0;
    z-index: 6;

    max-width: 1200px;
    padding: 0 12px;
}

.wm-service-benefits-row > .col {
    padding: 5px;
}


/* ==========================================================
   TỪNG THẺ LỢI ÍCH
   ========================================================== */

.wm-service-benefit-col > .col-inner {
    height: 100%;
}

.wm-service-benefit {
    min-height: 78px;
    padding: 13px 15px;

    display: flex;
    align-items: center;
    gap: 12px;

    background: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(24, 38, 44, 0.08);
    border-radius: 13px;

    box-shadow:
        0 8px 24px rgba(30, 45, 53, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.9);

    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;
}

.wm-service-benefit:hover {
    transform: translateY(-5px);
    border-color: rgba(225, 39, 47, 0.18);

    box-shadow:
        0 14px 32px rgba(30, 45, 53, 0.14),
        0 4px 14px rgba(225, 39, 47, 0.06);
}


/* ==========================================================
   ICON LỢI ÍCH
   ========================================================== */

.wm-service-benefit-icon {
    width: 46px;
    min-width: 46px;
    height: 46px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #e1272f;
    background-color: rgba(225, 39, 47, 0.07);
    border-radius: 50%;

    transition:
        color 0.3s ease,
        background-color 0.3s ease;
}

.wm-service-benefit-icon svg {
    width: 25px;
    height: 25px;

    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.wm-service-benefit:hover .wm-service-benefit-icon {
    color: #ffffff;
    background-color: #e1272f;
}


/* ==========================================================
   NỘI DUNG LỢI ÍCH
   ========================================================== */

.wm-service-benefit-text {
    min-width: 0;
}

.wm-service-benefit-text h4 {
    margin: 0 0 3px !important;

    color: #171b1d;

    font-size: 13px;
    font-weight: 700;
    line-height: 1.35;
    text-transform: none;
}

.wm-service-benefit-text p {
    margin: 0 !important;

    color: #656c70;

    font-size: 11px;
    font-weight: 500;
    line-height: 1.4;
}


/* ==========================================================
   TABLET
   ========================================================== */

@media screen and (max-width: 849px) {

    .wm-service-hero > .section-bg {
        background-position: 64% center;
    }

    .wm-service-hero > .section-bg::before {
        background:
            linear-gradient(
                90deg,
                rgba(255, 255, 255, 0.98) 0%,
                rgba(255, 255, 255, 0.9) 52%,
                rgba(255, 255, 255, 0.34) 100%
            );
    }

    .wm-service-hero-row {
        min-height: 520px;
        padding-bottom: 185px;
    }

    .wm-service-hero-text {
        max-width: 540px;
    }

    .wm-service-benefits-row {
        bottom: 18px;
    }

    .wm-service-benefit {
        min-height: 72px;
        padding: 11px 12px;
    }

    .wm-service-benefit-icon {
        width: 42px;
        min-width: 42px;
        height: 42px;
    }

    .wm-service-benefit-text h4 {
        font-size: 12px;
    }
}


/* ==========================================================
   MOBILE
   ========================================================== */

@media screen and (max-width: 549px) {

    .wm-service-hero > .section-bg {
        background-position: 72% center;
    }

    .wm-service-hero > .section-bg::before {
        background:
            linear-gradient(
                90deg,
                rgba(255, 255, 255, 0.98) 0%,
                rgba(255, 255, 255, 0.91) 72%,
                rgba(255, 255, 255, 0.72) 100%
            );
    }

    .wm-service-hero-row {
        min-height: auto;
        padding-top: 25px;
        padding-bottom: 25px;
    }

    .wm-service-breadcrumb {
        margin-bottom: 25px;
    }

    .wm-service-eyebrow {
        margin-bottom: 11px !important;
        font-size: 13px;
    }

    .wm-service-hero-text h1 {
        margin-bottom: 16px !important;

        font-size: 33px;
        line-height: 1.17;
    }

    .wm-service-description {
        font-size: 14px;
        line-height: 1.65;
    }

    /* Trên mobile bỏ position absolute để tránh chồng nội dung */
    .wm-service-benefits-row {
        position: relative;
        right: auto;
        bottom: auto;
        left: auto;

        margin-top: 22px;
        padding-bottom: 18px;
    }

    .wm-service-benefits-row > .col {
        padding: 5px;
    }

    .wm-service-benefit {
        min-height: 78px;
        padding: 11px 10px;
        gap: 9px;
    }

    .wm-service-benefit-icon {
        width: 39px;
        min-width: 39px;
        height: 39px;
    }

    .wm-service-benefit-icon svg {
        width: 21px;
        height: 21px;
    }

    .wm-service-benefit-text h4 {
        font-size: 11px;
    }

    .wm-service-benefit-text p {
        font-size: 10px;
    }
}


/* ==========================================================
   GIẢM HIỆU ỨNG CHUYỂN ĐỘNG
   ========================================================== */

@media (prefers-reduced-motion: reduce) {

    .wm-service-benefit,
    .wm-service-benefit-icon {
        transition: none;
    }

    .wm-service-benefit:hover {
        transform: none;
    }
}
/* ==========================================================
   KHỐI DỊCH VỤ CỦA CHÚNG TÔI
   Class tổng: wm-service-list-section
   ========================================================== */

.wm-service-list-section {
    position: relative;
    overflow: hidden;
    background-color: #ffffff;
}


/* ==========================================================
   TIÊU ĐỀ KHỐI
   ========================================================== */

.wm-service-list-heading-row {
    margin-bottom: 34px;
}

.wm-service-list-heading {
    max-width: 760px;
    margin-right: auto;
    margin-left: auto;
}

.wm-service-list-kicker-wrap {
    margin-bottom: 9px;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
}

.wm-service-list-line {
    width: 42px;
    height: 2px;

    background: linear-gradient(
        90deg,
        transparent 0%,
        #e1272f 100%
    );
}

.wm-service-list-line:last-child {
    background: linear-gradient(
        90deg,
        #e1272f 0%,
        transparent 100%
    );
}

.wm-service-list-kicker {
    color: #171b1d;

    font-size: 17px;
    font-weight: 800;
    line-height: 1.4;
    letter-spacing: 0.01em;
    text-transform: uppercase;
}

.wm-service-list-heading p {
    margin: 0 !important;

    color: #666d72;

    font-size: 14px;
    font-weight: 400;
    line-height: 1.6;
}


/* ==========================================================
   GRID 5 CỘT
   Không dùng margin âm để tránh lệch container
   ========================================================== */

.wm-service-grid {
    width: 100% !important;
    max-width: 1200px !important;

    margin-right: auto !important;
    margin-left: auto !important;

    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.wm-service-grid > .col.wm-service-card-col {
    width: 20%;
    max-width: 20%;
    flex: 0 0 20%;

    padding: 8px !important;
}


/* ==========================================================
   KHUNG CARD
   Col-inner chính là card để không phải dùng HTML bao ngoài
   ========================================================== */

.wm-service-card-col > .col-inner {
    position: relative;

    height: 100%;

    display: flex;
    flex-direction: column;

    overflow: hidden;

    background-color: #ffffff;
    border: 1px solid #e9ecef;
    border-radius: 16px;

    box-shadow:
        0 6px 20px rgba(18, 31, 42, 0.05),
        0 1px 4px rgba(18, 31, 42, 0.025);

    transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        box-shadow 0.3s ease;
}

.wm-service-card-col:hover > .col-inner {
    transform: translateY(-7px);

    border-color: rgba(225, 39, 47, 0.18);

    box-shadow:
        0 18px 38px rgba(18, 31, 42, 0.1),
        0 5px 15px rgba(225, 39, 47, 0.055);
}


/* ==========================================================
   ẢNH DỊCH VỤ
   ========================================================== */

.wm-service-card-photo {
    width: 100%;
    height: 145px;
    margin: 0 !important;

    overflow: hidden;

    border-radius: 15px 15px 0 0;
}

.wm-service-card-photo .img-inner {
    width: 100%;
    height: 145px;

    overflow: hidden;

    border-radius: inherit;
}

.wm-service-card-photo img {
    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: center;

    transition: transform 0.5s ease;
}

.wm-service-card-col:hover .wm-service-card-photo img {
    transform: scale(1.055);
}


/* ==========================================================
   ICON VÀ SỐ THỨ TỰ
   ========================================================== */

.wm-service-card-meta {
    position: relative;
    z-index: 3;

    min-height: 46px;
    margin-top: -23px;
    padding: 0 18px;

    display: flex;
    align-items: flex-end;
    gap: 10px;
}

.wm-service-card-icon {
    width: 48px;
    min-width: 48px;
    height: 48px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #e1272f;
    background-color: #ffffff;
    border: 1px solid rgba(225, 39, 47, 0.14);
    border-radius: 50%;

    box-shadow:
        0 8px 20px rgba(18, 31, 42, 0.09),
        inset 0 1px 0 rgba(255, 255, 255, 0.8);

    transition:
        color 0.3s ease,
        background-color 0.3s ease,
        transform 0.3s ease;
}

.wm-service-card-icon svg {
    width: 24px;
    height: 24px;

    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.wm-service-card-col:hover .wm-service-card-icon {
    color: #ffffff;
    background-color: #e1272f;

    transform: translateY(-3px);
}

.wm-service-card-number {
    padding-bottom: 3px;

    color: #b7101a;

    font-size: 20px;
    font-weight: 700;
    line-height: 1;
}


/* ==========================================================
   NỘI DUNG CARD
   ========================================================== */

.wm-service-card-content {
    margin: 0;
    padding: 15px 18px 0;
}

.wm-service-card-content h3 {
    margin: 0 0 11px !important;
    padding: 0;

    color: #171b1d;

    font-size: 16px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: -0.01em;
    text-transform: none;
}

.wm-service-card-content p {
    margin: 0 !important;

    color: #666d72;

    font-size: 13px;
    font-weight: 400;
    line-height: 1.7;
}


/* ==========================================================
   NÚT XEM CHI TIẾT
   Đẩy xuống đáy để các card đồng đều
   ========================================================== */

.wm-service-card-col .wm-service-card-link.button {
    min-height: auto;

    margin: auto 18px 21px !important;
    padding: 15px 0 0 !important;

    display: inline-flex;
    align-items: center;
    align-self: flex-start;

    color: #e1272f;
    background: transparent;
    border: 0;
    border-radius: 0;

    box-shadow: none;

    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0;
    text-transform: none;

    transition: color 0.25s ease;
}

.wm-service-card-col .wm-service-card-link.button:hover {
    color: #c61d25;
    background: transparent;

    box-shadow: none;
}

.wm-service-card-col .wm-service-card-link.button i {
    margin-left: 7px;

    font-size: 13px;

    transition: transform 0.25s ease;
}

.wm-service-card-col:hover .wm-service-card-link.button i {
    transform: translateX(4px);
}


/* ==========================================================
   TABLET
   Hai card trên một hàng
   ========================================================== */

@media screen and (min-width: 550px) and (max-width: 849px) {

    .wm-service-grid > .col.wm-service-card-col {
        width: 50%;
        max-width: 50%;
        flex: 0 0 50%;
    }

    .wm-service-card-col > .col-inner {
        min-height: 410px;
    }

    .wm-service-card-photo,
    .wm-service-card-photo .img-inner {
        height: 180px;
    }
}


/* ==========================================================
   MOBILE
   Một card trên một hàng
   ========================================================== */

@media screen and (max-width: 549px) {

    .wm-service-list-heading-row {
        margin-bottom: 23px;
    }

    .wm-service-list-kicker-wrap {
        gap: 10px;
    }

    .wm-service-list-line {
        width: 27px;
    }

    .wm-service-list-kicker {
        font-size: 14px;
    }

    .wm-service-list-heading p {
        font-size: 13px;
    }

    .wm-service-grid {
        width: 100% !important;

        margin-right: auto !important;
        margin-left: auto !important;
    }

    .wm-service-grid > .col.wm-service-card-col {
        width: 100%;
        max-width: 100%;
        flex: 0 0 100%;

        padding: 8px 0 !important;
    }

    .wm-service-card-col > .col-inner {
        min-height: 0;

        border-radius: 15px;
    }

    .wm-service-card-photo,
    .wm-service-card-photo .img-inner {
        height: 190px;

        border-radius: 14px 14px 0 0;
    }

    .wm-service-card-meta {
        padding-right: 16px;
        padding-left: 16px;
    }

    .wm-service-card-content {
        padding: 14px 16px 0;
    }

    .wm-service-card-content h3 {
        font-size: 16px;
    }

    .wm-service-card-col .wm-service-card-link.button {
        margin-right: 16px !important;
        margin-bottom: 19px !important;
        margin-left: 16px !important;
    }
}


/* ==========================================================
   GIẢM HIỆU ỨNG CHUYỂN ĐỘNG
   ========================================================== */

@media (prefers-reduced-motion: reduce) {

    .wm-service-card-col > .col-inner,
    .wm-service-card-photo img,
    .wm-service-card-icon,
    .wm-service-card-link.button i {
        transition: none;
    }

    .wm-service-card-col:hover > .col-inner,
    .wm-service-card-col:hover .wm-service-card-photo img,
    .wm-service-card-col:hover .wm-service-card-icon {
        transform: none;
    }
}