/* ======================================================
   PropertyTV Widgets — Frontend Styles (v1: Hero)
   - No YouTube embeds. Links always open in new tab.
   ====================================================== */

.ptv-hero{
  --ptv-primary: var(--rm-color-gold, #f7c600);
  --ptv-deep-blue: var(--rm-color-ink, #1f1f1f);
  --ptv-hero-height: 85vh;
  --ptv-overlay: 65; /* 0..100 */
  --ptv-actions-justify: center;

  position: relative;
  width: 100%;
  min-height: max(100vh, var(--ptv-hero-height));
  height: max(100vh, var(--ptv-hero-height));
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;

  background-color: var(--ptv-deep-blue);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.ptv-hero__overlay{
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(
    to top,
    rgba(10, 29, 55, 0.85) 0%,
    rgba(10, 29, 55, 0.20) 55%,
    rgba(10, 29, 55, 0.45) 100%
  );
  opacity: calc(var(--ptv-overlay) / 100);
}

.ptv-hero__inner{
  position: relative;
  z-index: 2;
  max-width: 980px;
  margin: 0 auto;
  padding: 0 18px;
  color: #fff;
}

.ptv-hero__badge{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: rgba(255,255,255,0.20);
  border: 1px solid rgba(255,255,255,0.28);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  padding: 6px 14px;
  border-radius: 999px;
  margin-bottom: 16px;
}

.ptv-hero__ping{
  position: relative;
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--ptv-primary);
  box-shadow: 0 0 0 0 rgba(242, 208, 13, 0.5);
}

.ptv-hero__ping::before{
  content: "";
  position: absolute;
  inset: -6px;
  border-radius: 999px;
  background: rgba(242, 208, 13, 0.35);
  animation: ptv-ping 1.35s ease-out infinite;
}

@keyframes ptv-ping{
  0%{ transform: scale(0.35); opacity: 1; }
  100%{ transform: scale(1.25); opacity: 0; }
}

.ptv-hero__badge-text{
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.ptv-hero__title{
  margin: 0;
  font-weight: 900;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  line-height: 0.95;
  font-size: clamp(34px, 5vw, 72px);
}

.ptv-hero__subtitle{
  margin: 14px 0 0;
  font-size: clamp(16px, 1.35vw, 20px);
  font-weight: 600;
  color: rgba(255,255,255,0.92);
}

.ptv-hero__actions{
  margin-top: 28px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  justify-content: var(--ptv-actions-justify);
}

.ptv-btn{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 14px 22px;
  border-radius: 14px;
  text-decoration: none !important;
  user-select: none;
  font-weight: 900;
  letter-spacing: 0.02em;
  transition: transform 0.18s ease, background-color 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
  box-shadow: 0 10px 30px rgba(0,0,0,0.18);
}

.ptv-btn:hover{
  transform: translateY(-1px) scale(1.02);
}

.ptv-btn--primary{
  background: var(--ptv-primary);
  color: var(--ptv-deep-blue) !important;
}

.ptv-hero__video{
  position: absolute;
  inset: 0;
  z-index: 1;
  overflow: hidden;
}

.ptv-hero__video iframe,
.ptv-hero__video .ptv-hero__video-frame,
.ptv-hero__video .ptv-hero__player,
.ptv-hero__video .ptv-hero__player iframe{
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100vw !important;
  height: 56.25vw !important;
  min-width: 177.78vh;
  min-height: 100vh;
  transform: translate(-50%, -50%) scale(1.06);
  border: none;
  pointer-events: none;
}

.ptv-hero__sound{
  position: absolute;
  bottom: max(16px, env(safe-area-inset-bottom));
  left: max(16px, env(safe-area-inset-left));
  width: 52px;
  height: 52px;
  border-radius: 50%;
  border: 2px solid rgba(255,255,255,0.3);
  background: rgba(0,0,0,0.5);
  color: #fff;
  font-size: 20px;
  cursor: pointer;
  transition: background 0.2s ease, transform 0.2s ease;
  z-index: 4;
}

.ptv-hero__sound:hover{
  background: rgba(0,0,0,0.7);
  transform: scale(1.1);
}


.ptv-btn--ghost{
  background: rgba(255,255,255,0.10);
  border: 1px solid rgba(255,255,255,0.18);
  color: #fff !important;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: none;
}

.ptv-btn--ghost:hover{
  background: rgba(255,255,255,0.18);
}

.ptv-ico{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  line-height: 1;
}

/* Responsive tweaks */
@media (max-width: 768px){
  .ptv-btn{ width: 100%; justify-content: center; }
}

/* ------------------------------------------------------
   Shared section styles
------------------------------------------------------ */
.ptv-section{
  margin: 0 auto;
  padding: 24px 0;
}

.ptv-section__head{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 18px;
}

.ptv-section__title{
  margin: 0;
  display: flex;
  align-items: center;
  gap: 10px;
  color: #0a1d37;
  line-height: 1.1;
}

.ptv-section__title-text{
  font-size: clamp(22px, 2.2vw, 32px);
  font-weight: 900;
  line-height: 1.1;
}

.ptv-section__bar{
  width: 6px;
  height: 30px;
  border-radius: 999px;
  background: #f2d00d;
  flex: 0 0 auto;
}

.ptv-section__action{
  color: #0a1d37;
  font-weight: 800;
  text-decoration: none;
  white-space: nowrap;
}

.ptv-section__action:hover{ color: #b89900; }

/* ------------------------------------------------------
   Featured Highlights widget
------------------------------------------------------ */
.ptv-featured__grid{
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
  gap: 20px;
}

.ptv-featured__main{
  display: block;
  position: relative;
  overflow: hidden;
  border-radius: 16px;
  min-height: 320px;
  text-decoration: none;
  box-shadow: 0 8px 26px rgba(2, 6, 23, 0.10);
  background: #0a1d37;
}

.ptv-featured__img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .5s ease;
}

.ptv-featured__main:hover .ptv-featured__img{ transform: scale(1.04); }

.ptv-featured__overlay{
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(10,29,55,.92) 0%, rgba(10,29,55,.24) 54%, rgba(10,29,55,.56) 100%);
}

.ptv-featured__play{
  position: absolute;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
  width: 74px;
  height: 74px;
  border-radius: 999px;
  background: #f2d00d;
  color: #0a1d37;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  font-weight: 900;
}

.ptv-featured__meta{
  position: absolute;
  left: 22px;
  right: 22px;
  bottom: 18px;
  color: #fff;
  display: grid;
  gap: 7px;
}

.ptv-featured__name{
  font-size: clamp(19px, 1.6vw, 28px);
  font-weight: 900;
  line-height: 1.18;
}

.ptv-featured__stats{
  font-size: 13px;
  color: rgba(255,255,255,.9);
  font-weight: 600;
}

.ptv-featured__badge{
  display: inline-flex;
  align-items: center;
  width: fit-content;
  background: rgba(255,255,255,.2);
  border: 1px solid rgba(255,255,255,.26);
  color: #fff;
  font-size: 11px;
  font-weight: 800;
  border-radius: 999px;
  padding: 4px 9px;
}

.ptv-featured__side{
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  background: #fff;
  padding: 14px;
}

.ptv-featured__upnext{
  margin: 0 0 8px;
  color: #64748b;
  font-size: 11px;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-weight: 800;
}

.ptv-featured__item{
  display: grid;
  grid-template-columns: 104px minmax(0, 1fr);
  gap: 10px;
  text-decoration: none;
  color: inherit;
  margin: 0 0 12px;
}
.ptv-featured__item:last-child{ margin-bottom: 0; }

.ptv-featured__item-img{
  width: 100%;
  aspect-ratio: 16/9;
  border-radius: 10px;
  object-fit: cover;
}

.ptv-featured__item-text{ display: grid; gap: 4px; align-content: center; }
.ptv-featured__item-title{
  color: #0a1d37;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.3;
}
.ptv-featured__item-meta{
  color: #64748b;
  font-size: 12px;
}

/* Featured Highlights rendered in Luxury Tours card layout */
.ptv-featured.ptv-luxury .ptv-featured__grid{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

.ptv-featured.ptv-luxury .ptv-featured__item.ptv-luxury__card{
  grid-template-columns: 1fr;
  gap: 8px;
  margin: 0;
}

.ptv-featured.ptv-luxury .ptv-featured__item-img{
  aspect-ratio: 16 / 9;
  border-radius: 12px;
  object-fit: cover;
}

@media (max-width: 1200px){
  .ptv-featured.ptv-luxury .ptv-featured__grid{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 900px){
  .ptv-featured.ptv-luxury .ptv-featured__grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px){
  .ptv-featured.ptv-luxury .ptv-featured__grid{
    grid-template-columns: 1fr;
  }
}

/* ------------------------------------------------------
   Luxury Tours widget
------------------------------------------------------ */
.ptv-luxury__grid{
  display: grid;
  gap: 18px;
}
.ptv-luxury--4col{
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.ptv-luxury--3col{
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ptv-luxury__card{
  display: grid;
  gap: 8px;
  text-decoration: none;
  color: inherit;
}

.ptv-luxury__media{
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid #e5e7eb;
}

.ptv-luxury__img{
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
  transition: transform .45s ease;
}

.ptv-luxury__card:hover .ptv-luxury__img{ transform: scale(1.04); }

.ptv-luxury__duration{
  position: absolute;
  right: 8px;
  bottom: 8px;
  background: rgba(15,23,42,.72);
  color: #fff;
  font-size: 11px;
  border-radius: 6px;
  padding: 2px 6px;
  font-weight: 700;
}

.ptv-luxury__title{
  color: #0a1d37;
  font-weight: 800;
  line-height: 1.35;
}

.ptv-luxury__meta{
  color: #64748b;
  font-size: 13px;
}

/* ------------------------------------------------------
   Join CTA widget
------------------------------------------------------ */
.ptv-join{
  border: 1px solid #e2e8f0;
  border-radius: 20px;
  background:
    radial-gradient(60% 100% at 100% 0%, rgba(242,208,13,.18) 0%, rgba(242,208,13,0) 65%),
    #fff;
  box-shadow: 0 8px 26px rgba(2,6,23,.06);
  padding: clamp(20px, 3vw, 34px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 26px;
}

.ptv-join__content{
  min-width: 0;
  flex: 1;
}

.ptv-join__title{
  margin: 0;
  color: #0a1d37;
  font-size: clamp(28px, 2.5vw, 42px);
  line-height: 1.06;
  font-weight: 900;
}

.ptv-join__desc{
  margin: 12px 0 0;
  color: #475569;
  max-width: 760px;
  font-size: clamp(15px, 1.15vw, 19px);
}

.ptv-join__stats{
  margin-top: 16px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 26px;
}

.ptv-join__stat{
  display: grid;
  gap: 2px;
}

.ptv-join__stat strong{
  color: #0a1d37;
  font-size: clamp(23px, 1.8vw, 32px);
  line-height: 1;
  font-weight: 900;
}

.ptv-join__stat:first-child strong{ color: #d2b100; }

.ptv-join__stat span{
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: .09em;
  font-size: 11px;
  font-weight: 800;
}

.ptv-join__action{
  flex: 0 0 auto;
}

/* ------------------------------------------------------
   Neighborhood Guides widget
------------------------------------------------------ */
.ptv-guides__grid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.ptv-guides__card{
  position: relative;
  min-height: 240px;
  border-radius: 16px;
  overflow: hidden;
  text-decoration: none;
}

.ptv-guides__img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .5s ease;
}
.ptv-guides__card:hover .ptv-guides__img{ transform: scale(1.06); }

.ptv-guides__overlay{
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(10,29,55,.85) 0%, rgba(10,29,55,.1) 70%);
}

.ptv-guides__content{
  position: absolute;
  left: 14px;
  right: 14px;
  bottom: 14px;
  display: grid;
  gap: 6px;
}

.ptv-guides__badge{
  width: fit-content;
  padding: 3px 9px;
  border-radius: 999px;
  background: rgba(255,255,255,.2);
  border: 1px solid rgba(255,255,255,.26);
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}

.ptv-guides__title{
  color: #fff;
  font-size: 24px;
  line-height: 1.1;
  font-weight: 900;
}

.ptv-guides__loc{
  color: rgba(255,255,255,.9);
  font-size: 14px;
  font-weight: 600;
}

/* ------------------------------------------------------
   Video Category Filter widget
------------------------------------------------------ */
.ptv-filter__chips{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 14px;
}

.ptv-filter__chip{
  border: 1px solid #cbd5e1;
  background: #fff;
  color: #0f172a;
  border-radius: 999px;
  padding: 6px 12px;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
}

.ptv-filter__chip.is-active{
  background: #f2d00d;
  border-color: #f2d00d;
  color: #0a1d37;
}

.ptv-filter__grid{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.ptv-filter__card{
  display: grid;
  gap: 6px;
  text-decoration: none;
  color: inherit;
}

.ptv-filter__img{
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: 12px;
  border: 1px solid #e5e7eb;
}

.ptv-filter__title{
  color: #0a1d37;
  font-size: 15px;
  line-height: 1.35;
  font-weight: 800;
}

.ptv-filter__cats{
  color: #334155;
  font-size: 12px;
}

.ptv-filter__meta{
  color: #64748b;
  font-size: 12px;
}

/* ------------------------------------------------------
   Responsive
------------------------------------------------------ */
@media (max-width: 1200px){
  .ptv-featured__grid{ grid-template-columns: 1fr; }
  .ptv-luxury--4col{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ptv-guides__grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ptv-filter__grid{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 900px){
  .ptv-join{ flex-direction: column; align-items: flex-start; }
  .ptv-luxury--3col,
  .ptv-luxury--4col,
  .ptv-filter__grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 640px){
  .ptv-section__head{ align-items: flex-start; }
  .ptv-featured__item{ grid-template-columns: 88px minmax(0, 1fr); }
  .ptv-guides__grid,
  .ptv-luxury--3col,
  .ptv-luxury--4col,
  .ptv-filter__grid{ grid-template-columns: 1fr; }
  .ptv-guides__title{ font-size: 20px; }
}

/* ------------------------------------------------------
   Buy Property Page Enhancements (Elementor sections)
------------------------------------------------------ */
#ptv-buy-why{
  background: linear-gradient(180deg, #fffdf3 0%, #ffffff 100%);
}
.elementor-16976 .elementor-element.elementor-element-605df161{
  background: linear-gradient(180deg, #fffdf3 0%, #ffffff 100%);
}

#ptv-buy-why .elementor-widget-wrap,
#ptv-buy-why .elementor-column,
#ptv-buy-why .elementor-element{
  background: transparent !important;
}
.elementor-16976 .elementor-element.elementor-element-605df161 .elementor-widget-wrap,
.elementor-16976 .elementor-element.elementor-element-605df161 .elementor-column,
.elementor-16976 .elementor-element.elementor-element-605df161 .elementor-element{
  background: transparent !important;
}

#ptv-buy-why .elementor-heading-title{
  color: #0a1d37;
  font-weight: 800;
  letter-spacing: -0.01em;
}

#ptv-buy-why .elementor-text-editor{
  max-width: 860px;
  margin: 0 auto;
  color: #4b5563;
  font-size: 18px;
  line-height: 1.7;
}

#ptv-buy-pillars{
  background: #ffffff;
}

#ptv-buy-pillars .elementor-column{
  margin-bottom: 14px;
}

#ptv-buy-pillars .elementor-widget-icon-box{
  background: #fffdf6;
  border: 1px solid #f4ecd0;
  border-radius: 16px;
  box-shadow: 0 12px 28px rgba(20, 26, 37, 0.06);
  padding: 26px 22px;
  height: 100%;
}

#ptv-buy-pillars .elementor-icon-box-icon{
  margin-bottom: 12px;
}

#ptv-buy-pillars .elementor-icon{
  background: #f2d00d;
  color: #0a1d37;
  border-radius: 12px;
  width: 52px;
  height: 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 8px 18px rgba(242, 208, 13, 0.35);
}

#ptv-buy-pillars .elementor-icon i{
  font-size: 20px;
}

#ptv-buy-pillars .elementor-icon-box-title{
  color: #0a1d37;
  font-weight: 700;
  font-size: 22px;
}

#ptv-buy-pillars .elementor-icon-box-description{
  color: #5f6c80;
  line-height: 1.65;
  font-size: 15px;
}

#ptv-buy-process-head{
  background: #f8fbff;
}
.elementor-16976 .elementor-element.elementor-element-67ea582e{
  background: #f8fbff;
}

#ptv-buy-process-head .elementor-heading-title{
  color: #0a1d37;
  font-weight: 800;
}

#ptv-buy-process-head .elementor-text-editor{
  color: #60708a;
}

#ptv-buy-process-cards{
  background: #f8fbff;
}
.elementor-16976 .elementor-element.elementor-element-5f8776c{
  background: #f8fbff;
}

#ptv-buy-process-cards .elementor-widget-icon-box{
  background: rgba(255, 255, 255, 0.35);
  border: 1px solid #dce8f7;
  border-radius: 16px;
  padding: 22px 18px;
  box-shadow: 0 10px 24px rgba(15, 30, 52, 0.03);
  backdrop-filter: blur(2px);
  height: 100%;
}
.elementor-16976 .elementor-element.elementor-element-5f8776c .elementor-widget-icon-box{
  background: rgba(255, 255, 255, 0.35);
  border: 1px solid #dce8f7;
  border-radius: 16px;
  padding: 22px 18px;
  box-shadow: 0 10px 24px rgba(15, 30, 52, 0.03);
  backdrop-filter: blur(2px);
  height: 100%;
}

#ptv-buy-process-cards .elementor-widget-icon-box .elementor-widget-container{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}
.elementor-16976 .elementor-element.elementor-element-5f8776c .elementor-widget-icon-box .elementor-widget-container{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

#ptv-buy-process-cards .elementor-icon{
  color: #f0b90b;
}

#ptv-buy-process-cards .elementor-icon-box-title{
  color: #0a1d37;
  font-weight: 700;
  font-size: 20px;
}

#ptv-buy-process-cards .elementor-icon-box-description{
  color: #5f6c80;
  font-size: 15px;
}

#ptv-buy-advisory{
  background: #ffffff;
}
.elementor-16976 .elementor-element.elementor-element-e9a4485d{
  background:
    radial-gradient(80% 120% at 100% 0%, rgba(242, 208, 13, 0.14) 0%, rgba(242, 208, 13, 0) 70%),
    #ffffff;
}

#ptv-buy-advisory .elementor-widget-wrap{
  background: #ffffff;
}

#ptv-buy-advisory .elementor-column:first-child .elementor-widget-wrap{
  border: 1px solid #eceff4;
  border-radius: 16px;
  padding: 20px;
  box-shadow: 0 10px 24px rgba(17, 27, 45, 0.04);
}

#ptv-buy-advisory .elementor-column:last-child .elementor-widget-wrap{
  border: 1px solid #f3e7bd;
  background: #fffcf1;
  border-radius: 16px;
  padding: 20px;
}

#ptv-buy-advisory .elementor-heading-title{
  color: #0a1d37;
  font-weight: 700;
}

#ptv-buy-advisory .elementor-text-editor,
#ptv-buy-advisory .elementor-text-editor li{
  color: #5c687a;
  line-height: 1.7;
}

#ptv-buy-cta{
  background: linear-gradient(180deg, #fffdf4 0%, #ffffff 100%);
  border-top: 1px solid #f2e7c4;
  border-bottom: 1px solid #f2e7c4;
}

#ptv-buy-cta .elementor-heading-title{
  color: #0a1d37;
  font-weight: 800;
}

#ptv-buy-cta .elementor-text-editor{
  color: #5d6980;
  font-size: 17px;
}

#ptv-buy-cta .elementor-button{
  background: #f2d00d;
  color: #0a1d37;
  border-radius: 14px;
  font-weight: 800;
  box-shadow: 0 12px 24px rgba(242, 208, 13, 0.32);
  padding: 14px 28px;
}

#ptv-buy-cta .elementor-button:hover{
  background: #e7c406;
  color: #0a1d37;
}

#ptv-buy-whatyouget-head{
  background: #f7fbff;
}
.elementor-16976 .elementor-element.elementor-element-c723e7fc{
  background: #f7fbff;
}

#ptv-buy-whatyouget-cards{
  background: #f7fbff;
}
.elementor-16976 .elementor-element.elementor-element-b9cc594f{
  background: #f7fbff;
}

#ptv-buy-whatyouget-cards .elementor-widget-icon-box{
  background: rgba(255, 255, 255, 0.28);
  border: 1px solid #d9e8fb;
  border-radius: 16px;
  padding: 22px 18px;
  box-shadow: 0 10px 22px rgba(16, 34, 56, 0.03);
  backdrop-filter: blur(2px);
  height: 100%;
}
.elementor-16976 .elementor-element.elementor-element-b9cc594f .elementor-widget-icon-box{
  background: rgba(255, 255, 255, 0.28);
  border: 1px solid #d9e8fb;
  border-radius: 16px;
  padding: 22px 18px;
  box-shadow: 0 10px 22px rgba(16, 34, 56, 0.03);
  backdrop-filter: blur(2px);
  height: 100%;
}

#ptv-buy-whatyouget-cards .elementor-widget-icon-box .elementor-widget-container{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}
.elementor-16976 .elementor-element.elementor-element-b9cc594f .elementor-widget-icon-box .elementor-widget-container{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

#ptv-buy-whatyouget-cards .elementor-icon-box-title{
  color: #0a1d37;
  font-size: 20px;
  font-weight: 700;
}

#ptv-buy-whatyouget-cards .elementor-icon-box-description{
  color: #5f6c80;
  line-height: 1.65;
  font-size: 15px;
}

#ptv-buy-mistakes{
  background: #ffffff;
}
.elementor-16976 .elementor-element.elementor-element-6c4c1733{
  background: #ffffff;
}

#ptv-buy-advisory{
  background:
    radial-gradient(80% 120% at 100% 0%, rgba(242, 208, 13, 0.14) 0%, rgba(242, 208, 13, 0) 70%),
    #ffffff;
}

#ptv-buy-faq{
  background: #fefcf4;
  border-top: 1px solid #f2e7c4;
  border-bottom: 1px solid #f2e7c4;
}

#ptv-buy-faq .elementor-widget-accordion .elementor-accordion-item{
  background: #fff;
  border: 1px solid #efe4bf;
  border-radius: 12px;
  margin-bottom: 10px;
  overflow: hidden;
}

#ptv-buy-faq .elementor-tab-title{
  color: #0a1d37;
  font-weight: 700;
}

#ptv-buy-faq .elementor-tab-content{
  color: #5d6980;
  line-height: 1.7;
}

/* Advisory and list section polish */
#ptv-buy-advisory .elementor-column:first-child .elementor-widget-wrap,
#ptv-buy-mistakes .elementor-column .elementor-widget-wrap{
  border-radius: 18px;
  padding: 24px 24px 20px;
}
.elementor-16976 .elementor-element.elementor-element-e9a4485d > .elementor-container,
#ptv-buy-advisory > .elementor-container{
  column-gap: 24px;
}
.elementor-16976 .elementor-element.elementor-element-e9a4485d .elementor-column:first-child .elementor-widget-wrap,
.elementor-16976 .elementor-element.elementor-element-6c4c1733 .elementor-column .elementor-widget-wrap{
  border-radius: 18px;
  padding: 24px 24px 20px;
}

#ptv-buy-advisory .elementor-column:first-child .elementor-widget-wrap{
  border: 1px solid #e8edf6;
  background: rgba(255, 255, 255, 0.78);
  box-shadow: 0 12px 28px rgba(17, 27, 45, 0.05);
}
.elementor-16976 .elementor-element.elementor-element-e9a4485d .elementor-column:first-child .elementor-widget-wrap{
  border: 1px solid #e8edf6;
  background: rgba(255, 255, 255, 0.78);
  box-shadow: 0 12px 28px rgba(17, 27, 45, 0.05);
}

#ptv-buy-advisory .elementor-column:last-child .elementor-widget-wrap{
  border: 1px solid #f3e2ad;
  background: linear-gradient(180deg, #fffef9 0%, #fff9e7 100%);
  box-shadow: 0 12px 26px rgba(194, 152, 15, 0.08);
  padding: 24px 24px 20px;
}
.elementor-16976 .elementor-element.elementor-element-e9a4485d .elementor-column:last-child .elementor-widget-wrap{
  border: 1px solid #f3e2ad;
  background: linear-gradient(180deg, #fffef9 0%, #fff9e7 100%);
  box-shadow: 0 12px 26px rgba(194, 152, 15, 0.08);
  padding: 24px 24px 20px;
}

#ptv-buy-mistakes{
  background:
    linear-gradient(180deg, #ffffff 0%, #fcfdff 100%);
}

#ptv-buy-mistakes .elementor-column:first-child .elementor-widget-wrap{
  border: 1px solid #e8edf6;
  background: #ffffff;
  box-shadow: 0 10px 24px rgba(17, 27, 45, 0.04);
}
.elementor-16976 .elementor-element.elementor-element-6c4c1733 .elementor-column:first-child .elementor-widget-wrap{
  border: 1px solid #e8edf6;
  background: #ffffff;
  box-shadow: 0 10px 24px rgba(17, 27, 45, 0.04);
}

#ptv-buy-mistakes .elementor-column:last-child .elementor-widget-wrap{
  border: 1px solid #f2e0a8;
  background: linear-gradient(180deg, #fffef8 0%, #fffbed 100%);
  box-shadow: 0 10px 24px rgba(194, 152, 15, 0.08);
}
.elementor-16976 .elementor-element.elementor-element-6c4c1733 .elementor-column:last-child .elementor-widget-wrap{
  border: 1px solid #f2e0a8;
  background: linear-gradient(180deg, #fffef8 0%, #fffbed 100%);
  box-shadow: 0 10px 24px rgba(194, 152, 15, 0.08);
}

#ptv-buy-advisory .elementor-heading-title,
#ptv-buy-mistakes .elementor-heading-title{
  position: relative;
  padding-left: 14px;
}

#ptv-buy-advisory .elementor-heading-title::before,
#ptv-buy-mistakes .elementor-heading-title::before{
  content: "";
  position: absolute;
  left: 0;
  top: 0.2em;
  width: 4px;
  height: 0.95em;
  border-radius: 999px;
  background: #f2d00d;
}

#ptv-buy-advisory .elementor-text-editor ul,
#ptv-buy-mistakes .elementor-text-editor ul{
  list-style: none;
  margin: 10px 0 0;
  padding: 0;
}

#ptv-buy-advisory .elementor-text-editor li,
#ptv-buy-mistakes .elementor-text-editor li{
  position: relative;
  margin: 0 0 10px;
  padding: 0 0 0 28px;
  color: #526177;
  line-height: 1.68;
}

#ptv-buy-advisory .elementor-text-editor li::before,
#ptv-buy-mistakes .elementor-text-editor li::before{
  content: "";
  position: absolute;
  left: 0;
  top: 0.38em;
  width: 18px;
  height: 18px;
  border-radius: 999px;
  background: #f2d00d;
  box-shadow: inset 0 0 0 5px #fff;
}

/* Right advisory column: styled question cards instead of plain bullets */
#ptv-buy-advisory .elementor-column:last-child .elementor-text-editor ul,
.elementor-16976 .elementor-element.elementor-element-e9a4485d .elementor-column:last-child .elementor-text-editor ul{
  display: grid;
  gap: 10px;
  margin-top: 12px;
}

#ptv-buy-advisory .elementor-column:last-child .elementor-text-editor li,
.elementor-16976 .elementor-element.elementor-element-e9a4485d .elementor-column:last-child .elementor-text-editor li{
  margin: 0;
  padding: 12px 14px 12px 42px;
  border: 1px solid #f0dfac;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.72);
  color: #3f4f67;
  line-height: 1.55;
}

#ptv-buy-advisory .elementor-column:last-child .elementor-text-editor li::before,
.elementor-16976 .elementor-element.elementor-element-e9a4485d .elementor-column:last-child .elementor-text-editor li::before{
  content: "Q";
  width: 22px;
  height: 22px;
  left: 12px;
  top: 11px;
  background: #f2d00d;
  color: #0a1d37;
  box-shadow: none;
  font-size: 12px;
  font-weight: 800;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* Icon list presentation for advisory + mistakes columns */
#ptv-buy-advisory .elementor-widget-icon-list .elementor-icon-list-items,
#ptv-buy-mistakes .elementor-widget-icon-list .elementor-icon-list-items,
.elementor-16976 .elementor-element.elementor-element-e9a4485d .elementor-widget-icon-list .elementor-icon-list-items,
.elementor-16976 .elementor-element.elementor-element-6c4c1733 .elementor-widget-icon-list .elementor-icon-list-items{
  margin: 12px 0 0;
  display: grid;
  gap: 10px;
}

#ptv-buy-advisory .elementor-widget-icon-list .elementor-icon-list-item,
#ptv-buy-mistakes .elementor-widget-icon-list .elementor-icon-list-item,
.elementor-16976 .elementor-element.elementor-element-e9a4485d .elementor-widget-icon-list .elementor-icon-list-item,
.elementor-16976 .elementor-element.elementor-element-6c4c1733 .elementor-widget-icon-list .elementor-icon-list-item{
  align-items: flex-start;
  border: 1px solid #e9eef7;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.75);
  padding: 10px 12px;
}

#ptv-buy-advisory .elementor-widget-icon-list .elementor-icon-list-icon i,
#ptv-buy-mistakes .elementor-widget-icon-list .elementor-icon-list-icon i,
.elementor-16976 .elementor-element.elementor-element-e9a4485d .elementor-widget-icon-list .elementor-icon-list-icon i,
.elementor-16976 .elementor-element.elementor-element-6c4c1733 .elementor-widget-icon-list .elementor-icon-list-icon i{
  color: #f2d00d;
  font-size: 15px;
}

#ptv-buy-advisory .elementor-widget-icon-list .elementor-icon-list-text,
#ptv-buy-mistakes .elementor-widget-icon-list .elementor-icon-list-text,
.elementor-16976 .elementor-element.elementor-element-e9a4485d .elementor-widget-icon-list .elementor-icon-list-text,
.elementor-16976 .elementor-element.elementor-element-6c4c1733 .elementor-widget-icon-list .elementor-icon-list-text{
  color: #3f4f67;
  line-height: 1.58;
}

/* Keep section-level single background appearance */
#ptv-buy-process-head + #ptv-buy-process-cards,
#ptv-buy-whatyouget-head + #ptv-buy-whatyouget-cards{
  margin-top: -1px;
}

/* Fallback styling when section CSS IDs are missing (Buy page) */
.elementor-16976 .elementor-widget-icon-box .elementor-widget-container{
  background: #fffdf6;
  border: 1px solid #f1e8c9;
  border-radius: 16px;
  box-shadow: 0 10px 24px rgba(20, 26, 37, 0.06);
  padding: 22px 18px;
}

.elementor-16976 .elementor-widget-icon-box .elementor-icon{
  background: #f2d00d;
  color: #0a1d37;
  border-radius: 12px;
  width: 50px;
  height: 50px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.elementor-16976 .elementor-widget-icon-box .elementor-icon i{
  font-size: 19px;
}

.elementor-16976 .elementor-widget-icon-box .elementor-icon-box-title{
  color: #0a1d37;
  font-weight: 700;
}

.elementor-16976 .elementor-widget-icon-box .elementor-icon-box-description{
  color: #5f6c80;
  line-height: 1.65;
}

.elementor-16976 .elementor-widget-heading .elementor-heading-title{
  color: #0a1d37;
}

.elementor-16976 .elementor-widget-text-editor{
  color: #5d6980;
}

.elementor-16976 .elementor-widget-button .elementor-button{
  background: #f2d00d;
  color: #0a1d37;
  border-radius: 14px;
  font-weight: 800;
  box-shadow: 0 10px 22px rgba(242, 208, 13, 0.3);
}

.elementor-16976 .elementor-widget-button .elementor-button:hover{
  background: #e7c406;
  color: #0a1d37;
}

/* Alternating light section separation for Buy page content blocks */
.elementor-16976 .elementor-section,
.elementor-16976 .e-con{
  transition: background-color .2s ease;
}

.elementor-16976 .elementor-section:nth-of-type(odd),
.elementor-16976 .e-con:nth-of-type(odd){
  background-color: #ffffff;
}

.elementor-16976 .elementor-section:nth-of-type(even),
.elementor-16976 .e-con:nth-of-type(even){
  background-color: #f9fbfe;
}

/* ------------------------------------------------------
   Sell Property Page Enhancements (mirrors Buy)
------------------------------------------------------ */
#ptv-sell-why{
  background: linear-gradient(180deg, #fffdf3 0%, #ffffff 100%);
}

#ptv-sell-why .elementor-heading-title,
#ptv-sell-process-head .elementor-heading-title,
#ptv-sell-advisory .elementor-heading-title,
#ptv-sell-whatyouget-head .elementor-heading-title,
#ptv-sell-mistakes .elementor-heading-title,
#ptv-sell-faq .elementor-heading-title{
  color: #0a1d37;
  font-weight: 800;
}

#ptv-sell-why .elementor-text-editor,
#ptv-sell-process-head .elementor-text-editor,
#ptv-sell-advisory .elementor-text-editor,
#ptv-sell-whatyouget-head .elementor-text-editor,
#ptv-sell-faq .elementor-tab-content{
  color: #5f6c80;
  line-height: 1.7;
}

#ptv-sell-pillars .elementor-widget-icon-box,
#ptv-sell-process-cards .elementor-widget-icon-box,
#ptv-sell-whatyouget-cards .elementor-widget-icon-box{
  background: #fffdf6;
  border: 1px solid #f1e8c9;
  border-radius: 16px;
  box-shadow: 0 10px 24px rgba(20, 26, 37, 0.06);
  padding: 22px 18px;
  height: 100%;
}

#ptv-sell-pillars .elementor-icon,
#ptv-sell-process-cards .elementor-icon,
#ptv-sell-whatyouget-cards .elementor-icon,
#ptv-sell-advisory .elementor-widget-icon-list .elementor-icon-list-icon i,
#ptv-sell-mistakes .elementor-widget-icon-list .elementor-icon-list-icon i{
  color: #f2d00d;
}

#ptv-sell-advisory .elementor-column .elementor-widget-wrap,
#ptv-sell-mistakes .elementor-column .elementor-widget-wrap{
  border-radius: 18px;
  padding: 24px 24px 20px;
}

#ptv-sell-advisory .elementor-column:first-child .elementor-widget-wrap,
#ptv-sell-mistakes .elementor-column:first-child .elementor-widget-wrap{
  border: 1px solid #e8edf6;
  background: #ffffff;
  box-shadow: 0 10px 24px rgba(17, 27, 45, 0.04);
}

#ptv-sell-advisory .elementor-column:last-child .elementor-widget-wrap,
#ptv-sell-mistakes .elementor-column:last-child .elementor-widget-wrap{
  border: 1px solid #f2e0a8;
  background: linear-gradient(180deg, #fffef8 0%, #fffbed 100%);
  box-shadow: 0 10px 24px rgba(194, 152, 15, 0.08);
}

#ptv-sell-advisory .elementor-widget-icon-list .elementor-icon-list-items,
#ptv-sell-mistakes .elementor-widget-icon-list .elementor-icon-list-items{
  margin: 12px 0 0;
  display: grid;
  gap: 10px;
}

#ptv-sell-advisory .elementor-widget-icon-list .elementor-icon-list-item,
#ptv-sell-mistakes .elementor-widget-icon-list .elementor-icon-list-item{
  border: 1px solid #e9eef7;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.75);
  padding: 10px 12px;
}

#ptv-sell-cta{
  background: linear-gradient(180deg, #fffdf4 0%, #ffffff 100%);
  border-top: 1px solid #f2e7c4;
  border-bottom: 1px solid #f2e7c4;
}

#ptv-sell-cta .elementor-button{
  background: #f2d00d;
  color: #0a1d37;
  border-radius: 14px;
  font-weight: 800;
  box-shadow: 0 12px 24px rgba(242, 208, 13, 0.32);
}

#ptv-sell-faq{
  background: #fefcf4;
  border-top: 1px solid #f2e7c4;
  border-bottom: 1px solid #f2e7c4;
}

#ptv-sell-faq .elementor-widget-accordion .elementor-accordion-item{
  background: #fff;
  border: 1px solid #efe4bf;
  border-radius: 12px;
  margin-bottom: 10px;
  overflow: hidden;
}

/* Fallback styling on Sell page when section CSS IDs are not printed */
.elementor-17149 .elementor-widget-icon-box .elementor-widget-container{
  background: #fffdf6;
  border: 1px solid #f1e8c9;
  border-radius: 16px;
  box-shadow: 0 10px 24px rgba(20, 26, 37, 0.06);
  padding: 22px 18px;
}

.elementor-17149 .elementor-widget-icon-box .elementor-icon{
  color: #f2d00d;
}

.elementor-17149 .elementor-widget-heading .elementor-heading-title{
  color: #0a1d37;
}

.elementor-17149 .elementor-widget-text-editor{
  color: #5d6980;
}

.elementor-17149 .elementor-widget-button .elementor-button{
  background: #f2d00d;
  color: #0a1d37;
  border-radius: 14px;
  font-weight: 800;
  box-shadow: 0 10px 22px rgba(242, 208, 13, 0.3);
}

.elementor-17149 .elementor-widget-icon-list .elementor-icon-list-icon i{
  color: #f2d00d;
}

.elementor-17149 .elementor-widget-icon-list .elementor-icon-list-item{
  border: 1px solid #e9eef7;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.75);
  padding: 10px 12px;
}

/* ------------------------------------------------------
   Interiors Page Enhancements
------------------------------------------------------ */
#ptv-interiors-why{
  background: linear-gradient(180deg, #fffdf5 0%, #ffffff 100%);
}

#ptv-interiors-process-head,
#ptv-interiors-whatyouget-head{
  background: #f8fbff;
}

#ptv-interiors-why .elementor-heading-title,
#ptv-interiors-process-head .elementor-heading-title,
#ptv-interiors-scope .elementor-heading-title,
#ptv-interiors-whatyouget-head .elementor-heading-title,
#ptv-interiors-cta .elementor-heading-title,
#ptv-interiors-faq .elementor-heading-title{
  color: #0a1d37;
  font-weight: 800;
}

#ptv-interiors-why .elementor-text-editor,
#ptv-interiors-process-head .elementor-text-editor,
#ptv-interiors-whatyouget-head .elementor-text-editor,
#ptv-interiors-scope .elementor-icon-list-text,
#ptv-interiors-faq .elementor-tab-content{
  color: #5f6c80;
  line-height: 1.7;
}

#ptv-interiors-pillars .elementor-widget-icon-box,
#ptv-interiors-process-cards .elementor-widget-icon-box,
#ptv-interiors-whatyouget-cards .elementor-widget-icon-box{
  background: #fffdf6;
  border: 1px solid #f1e8c9;
  border-radius: 16px;
  box-shadow: 0 10px 24px rgba(20, 26, 37, 0.06);
  padding: 22px 16px;
  height: 100%;
}

#ptv-interiors-pillars .elementor-icon,
#ptv-interiors-process-cards .elementor-icon,
#ptv-interiors-whatyouget-cards .elementor-icon,
#ptv-interiors-scope .elementor-icon-list-icon i{
  color: #f2d00d;
}

#ptv-interiors-scope .elementor-column .elementor-widget-wrap{
  border: 1px solid #e8edf6;
  background: #ffffff;
  border-radius: 18px;
  padding: 24px 24px 20px;
  box-shadow: 0 10px 24px rgba(17, 27, 45, 0.04);
}

#ptv-interiors-scope .elementor-column:last-child .elementor-widget-wrap{
  border-color: #f2e0a8;
  background: linear-gradient(180deg, #fffef8 0%, #fffbed 100%);
  box-shadow: 0 10px 24px rgba(194, 152, 15, 0.08);
}

#ptv-interiors-scope .elementor-widget-icon-list .elementor-icon-list-items{
  margin: 12px 0 0;
  display: grid;
  gap: 10px;
}

#ptv-interiors-scope .elementor-widget-icon-list .elementor-icon-list-item{
  border: 1px solid #e9eef7;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.75);
  padding: 10px 12px;
}

#ptv-interiors-cta{
  background: linear-gradient(180deg, #fffdf4 0%, #ffffff 100%);
  border-top: 1px solid #f2e7c4;
  border-bottom: 1px solid #f2e7c4;
}

#ptv-interiors-cta .elementor-button{
  background: #f2d00d;
  color: #0a1d37;
  border-radius: 14px;
  font-weight: 800;
  box-shadow: 0 12px 24px rgba(242, 208, 13, 0.32);
}

#ptv-interiors-faq{
  background: #fefcf4;
  border-top: 1px solid #f2e7c4;
  border-bottom: 1px solid #f2e7c4;
}

#ptv-interiors-faq .elementor-widget-accordion .elementor-accordion-item{
  background: #fff;
  border: 1px solid #efe4bf;
  border-radius: 12px;
  margin-bottom: 10px;
  overflow: hidden;
}

/* Fallback styling when section IDs are not printed on Interiors page */
.elementor-17160 .elementor-widget-icon-box .elementor-widget-container{
  background: #fffdf6;
  border: 1px solid #f1e8c9;
  border-radius: 16px;
  box-shadow: 0 10px 24px rgba(20, 26, 37, 0.06);
  padding: 22px 18px;
}

.elementor-17160 .elementor-widget-icon-box .elementor-icon,
.elementor-17160 .elementor-widget-icon-list .elementor-icon-list-icon i{
  color: #f2d00d;
}

.elementor-17160 .elementor-widget-heading .elementor-heading-title{
  color: #0a1d37;
}

.elementor-17160 .elementor-widget-text-editor{
  color: #5d6980;
}

.elementor-17160 .elementor-widget-button .elementor-button{
  background: #f2d00d;
  color: #0a1d37;
  border-radius: 14px;
  font-weight: 800;
  box-shadow: 0 10px 22px rgba(242, 208, 13, 0.3);
}

.elementor-17160 .elementor-widget-icon-list .elementor-icon-list-item{
  border: 1px solid #e9eef7;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.75);
  padding: 10px 12px;
}

/* ------------------------------------------------------
   Company Page Enhancements
------------------------------------------------------ */
#ptv-company-hero{
  position: relative;
}

#ptv-company-hero .elementor-heading-title{
  color: #ffffff;
  font-size: clamp(36px, 5vw, 64px);
  line-height: 1.05;
  font-weight: 900;
  max-width: 760px;
}

#ptv-company-hero .elementor-text-editor{
  color: rgba(255,255,255,0.86);
  max-width: 620px;
  font-size: 18px;
  line-height: 1.7;
}

#ptv-company-hero .elementor-button{
  background: #137fec;
  color: #fff;
  border-radius: 10px;
  font-weight: 800;
  box-shadow: 0 10px 22px rgba(19, 127, 236, 0.3);
}

#ptv-company-story{
  background: #ffffff;
}

#ptv-company-story .elementor-heading-title{
  color: #0f172a;
  font-weight: 800;
}

#ptv-company-story .elementor-widget-icon-box .elementor-widget-container{
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  padding: 24px;
}

#ptv-company-values{
  background: #f6f7f8;
}

#ptv-company-values-cards .elementor-widget-icon-box .elementor-widget-container{
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  padding: 24px;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.05);
  height: 100%;
}

#ptv-company-values-cards .elementor-icon{
  color: #137fec;
}

#ptv-company-stats{
  background: #0f172a;
}

#ptv-company-stats .elementor-heading-title{
  color: #ffffff;
  font-weight: 900;
  font-size: clamp(30px, 3vw, 46px);
}

#ptv-company-stats .elementor-text-editor{
  color: #137fec;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 800;
}

#ptv-company-team{
  background: #ffffff;
}

#ptv-company-team .elementor-widget-image img{
  border-radius: 14px;
  aspect-ratio: 4/5;
  object-fit: cover;
}

#ptv-company-team-cards .elementor-widget-wrap{
  gap: 4px;
}

#ptv-company-team .elementor-widget-heading .elementor-heading-title{
  color: #0f172a;
  font-weight: 800;
}

#ptv-company-team .elementor-widget-text-editor{
  color: #137fec;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.07em;
  font-weight: 700;
}

#ptv-company-journey{
  background: #f6f7f8;
}

#ptv-company-journey .elementor-icon-list-items{
  margin: 14px auto 0;
  max-width: 860px;
}

#ptv-company-journey .elementor-icon-list-item{
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 12px 14px;
  margin-bottom: 10px;
}

#ptv-company-journey .elementor-icon-list-icon i{
  color: #137fec;
}

#ptv-company-cta{
  background: #137fec;
}

#ptv-company-cta .elementor-heading-title,
#ptv-company-cta .elementor-text-editor{
  color: #ffffff;
}

#ptv-company-cta .elementor-button{
  border-radius: 10px;
  font-weight: 800;
}

#ptv-company-cta-buttons .elementor-column:first-child .elementor-button{
  background: #ffffff;
  color: #137fec;
}

#ptv-company-cta-buttons .elementor-column:last-child .elementor-button{
  background: transparent;
  color: #ffffff;
  border: 2px solid #ffffff;
}

/* Fallback when section CSS IDs are not printed on Company page */
.elementor-360 .elementor-widget-heading .elementor-heading-title{ color: #0f172a; }
.elementor-360 .elementor-widget-button .elementor-button{
  background: #137fec;
  color: #fff;
  border-radius: 10px;
  font-weight: 800;
}
.elementor-360 .elementor-widget-icon-box .elementor-widget-container{
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  padding: 20px;
}

/* ------------------------------------------------------
   Company Page - Modern Visual Upgrade (Live Section IDs)
------------------------------------------------------ */
.elementor-360 .elementor-element.elementor-element-09d0087e{
  min-height: 620px;
}

.elementor-360 .elementor-element.elementor-element-09d0087e > .elementor-container{
  min-height: 620px;
  align-items: center;
}

.elementor-360 .elementor-element.elementor-element-db2a0127 .elementor-heading-title{
  color: #fff;
  font-size: clamp(40px, 5vw, 72px);
  line-height: 1.02;
  font-weight: 900;
  max-width: 900px;
  text-shadow: 0 3px 20px rgba(2, 6, 23, 0.35);
}

.elementor-360 .elementor-element.elementor-element-02299f0f .elementor-text-editor{
  color: rgba(255, 255, 255, 0.9);
  max-width: 640px;
  font-size: 18px;
  line-height: 1.75;
}

.elementor-360 .elementor-element.elementor-element-16576547 .elementor-button{
  background: #137fec;
  color: #fff;
  border-radius: 12px;
  padding: 14px 24px;
  font-weight: 800;
  box-shadow: 0 14px 28px rgba(19, 127, 236, 0.35);
}

.elementor-360 .elementor-element.elementor-element-3f2a3afd{
  background: linear-gradient(180deg, #ffffff 0%, #fbfcff 100%);
}

.elementor-360 .elementor-element.elementor-element-3f2a3afd .elementor-container{
  column-gap: 26px;
}

.elementor-360 .elementor-element.elementor-element-640931d0 .elementor-widget-wrap{
  background: #ffffff;
  border: 1px solid #e5edf7;
  border-radius: 18px;
  padding: 28px;
  box-shadow: 0 16px 32px rgba(15, 23, 42, 0.06);
}

.elementor-360 .elementor-element.elementor-element-33f24fa4 .elementor-heading-title,
.elementor-360 .elementor-element.elementor-element-fcea2a7c .elementor-heading-title,
.elementor-360 .elementor-element.elementor-element-b3c9b6d4 .elementor-heading-title,
.elementor-360 .elementor-element.elementor-element-95c1175f .elementor-heading-title,
.elementor-360 .elementor-element.elementor-element-9ae7ddd5 .elementor-heading-title{
  color: #0f172a;
  font-weight: 800;
  letter-spacing: -0.01em;
}

.elementor-360 .elementor-element.elementor-element-47d51d45 .elementor-widget-container{
  background: linear-gradient(180deg, #f8fbff 0%, #f3f8ff 100%);
  border: 1px solid #d3e2f7;
  border-radius: 18px;
  padding: 28px;
  box-shadow: 0 16px 34px rgba(15, 23, 42, 0.07);
}

.elementor-360 .elementor-element.elementor-element-ff8b9129 .elementor-widget-wrap{
  background: #fffef9;
  border: 1px solid #f1e2bb;
  border-radius: 18px;
  padding: 28px;
  box-shadow: 0 16px 34px rgba(194, 152, 15, 0.10);
}

.elementor-360 .elementor-element.elementor-element-ff8b9129 .elementor-widget-icon-list .elementor-icon-list-items{
  margin-top: 8px;
}

.elementor-360 .elementor-element.elementor-element-ff8b9129 .elementor-widget-icon-list .elementor-icon-list-item{
  border: 1px solid #f0dfac;
  border-radius: 12px;
  background: rgba(255,255,255,0.72);
  padding: 10px 12px;
  margin-bottom: 9px;
}

.elementor-360 .elementor-element.elementor-element-ff8b9129 .elementor-widget-icon-list .elementor-icon-list-icon i{
  color: #137fec;
}

.elementor-360 .elementor-element.elementor-element-ff8b9129 .elementor-widget-text-editor p{
  color: #334155;
  font-weight: 600;
}

.elementor-360 .elementor-element.elementor-element-8f1e2941{
  background: #f4f7fb;
}

.elementor-360 .elementor-element.elementor-element-ed93f446 .elementor-widget-icon-box .elementor-widget-container{
  background: #fff;
  border: 1px solid #e3e9f2;
  border-radius: 14px;
  padding: 24px;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.06);
  transition: transform .2s ease, box-shadow .2s ease;
}

.elementor-360 .elementor-element.elementor-element-ed93f446 .elementor-widget-icon-box:hover .elementor-widget-container{
  transform: translateY(-5px);
  box-shadow: 0 16px 30px rgba(15, 23, 42, 0.1);
}

.elementor-360 .elementor-element.elementor-element-ed93f446 .elementor-icon{
  color: #137fec;
}

.elementor-360 .elementor-element.elementor-element-117bd6f9{
  background: linear-gradient(180deg, #081b38 0%, #0b2144 100%);
}

.elementor-360 .elementor-element.elementor-element-117bd6f9 .elementor-column:not(:last-child){
  border-right: 1px solid rgba(255, 255, 255, 0.08);
}

.elementor-360 .elementor-element.elementor-element-117bd6f9 .elementor-heading-title{
  color: #fff;
  font-weight: 900;
  font-size: clamp(34px, 3vw, 52px);
}

.elementor-360 .elementor-element.elementor-element-117bd6f9 .elementor-text-editor{
  color: #60a5fa;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: 11px;
  font-weight: 800;
}

.elementor-360 .elementor-element.elementor-element-0d076065{
  background: #ffffff;
}

.elementor-360 .elementor-element.elementor-element-f59af683 .elementor-widget-image img{
  border-radius: 16px;
  aspect-ratio: 4/5;
  object-fit: cover;
  box-shadow: 0 12px 24px rgba(15, 23, 42, 0.1);
}

.elementor-360 .elementor-element.elementor-element-f59af683 .elementor-widget-heading .elementor-heading-title{
  font-size: 22px;
}

.elementor-360 .elementor-element.elementor-element-f59af683 .elementor-widget-text-editor{
  color: #137fec;
  text-transform: uppercase;
  letter-spacing: .07em;
  font-size: 11px;
  font-weight: 700;
}

/* Journey timeline redesign */
.elementor-360 .elementor-element.elementor-element-81cdd89e{
  background: #f4f6fa;
}

.elementor-360 .elementor-element.elementor-element-fed9e74e .elementor-icon-list-items{
  position: relative;
  max-width: 900px;
  margin: 22px auto 0;
  padding: 0 0 0 28px;
}

.elementor-360 .elementor-element.elementor-element-fed9e74e .elementor-icon-list-items::before{
  content: "";
  position: absolute;
  left: 10px;
  top: 6px;
  bottom: 6px;
  width: 2px;
  background: linear-gradient(180deg, #bfdbfe 0%, #137fec 100%);
}

.elementor-360 .elementor-element.elementor-element-fed9e74e .elementor-icon-list-item{
  position: relative;
  background: #fff;
  border: 1px solid #d9e3f2;
  border-radius: 12px;
  padding: 14px 16px 14px 14px;
  margin-bottom: 12px;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.06);
  align-items: flex-start;
}

.elementor-360 .elementor-element.elementor-element-fed9e74e .elementor-icon-list-item:nth-child(even){
  margin-left: 44px;
}

.elementor-360 .elementor-element.elementor-element-fed9e74e .elementor-icon-list-icon{
  position: absolute;
  left: -28px;
  top: 14px;
  width: 22px;
  height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #137fec;
  border-radius: 999px;
  box-shadow: 0 0 0 4px #f4f6fa;
}

.elementor-360 .elementor-element.elementor-element-fed9e74e .elementor-icon-list-icon i{
  color: #fff;
  font-size: 10px;
}

.elementor-360 .elementor-element.elementor-element-fed9e74e .elementor-icon-list-text{
  color: #334155;
  line-height: 1.65;
}

/* Force timeline styling against theme/plugin overrides */
.elementor-page-360 .elementor-element.elementor-element-fed9e74e .elementor-icon-list-item{
  background: #ffffff !important;
  border: 1px solid #d9e3f2 !important;
  border-radius: 12px !important;
  padding: 14px 16px 14px 14px !important;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.06) !important;
}

.elementor-page-360 .elementor-element.elementor-element-fed9e74e .elementor-icon-list-icon{
  background: #137fec !important;
  border-radius: 999px !important;
}

.elementor-page-360 .elementor-element.elementor-element-fed9e74e .elementor-icon-list-icon i{
  color: #fff !important;
}

.elementor-360 .elementor-element.elementor-element-f3eb78fe{
  background: linear-gradient(180deg, #137fec 0%, #0d6dd0 100%);
}

.elementor-360 .elementor-element.elementor-element-f3eb78fe .elementor-heading-title,
.elementor-360 .elementor-element.elementor-element-f3eb78fe .elementor-text-editor{
  color: #fff;
}

.elementor-360 .elementor-element.elementor-element-6f990dfa .elementor-button{
  background: #fff;
  color: #137fec;
  border-radius: 10px;
  font-weight: 800;
}

.elementor-360 .elementor-element.elementor-element-da0d9edc .elementor-button{
  background: transparent;
  color: #fff;
  border: 2px solid rgba(255, 255, 255, 0.95);
  border-radius: 10px;
  font-weight: 800;
}

@media (max-width: 991px){
  .elementor-360 .elementor-element.elementor-element-fed9e74e .elementor-icon-list-item:nth-child(even){
    margin-left: 0;
  }
  .elementor-360 .elementor-element.elementor-element-117bd6f9 .elementor-column{
    border-right: 0 !important;
  }
}

/* ------------------------------------------------------
   Company Page - Stable Class Selectors (non-volatile)
------------------------------------------------------ */
.elementor-page-360 .ptv-company-hero{
  min-height: 620px;
}
.elementor-page-360 .ptv-company-hero > .elementor-container{
  min-height: 620px;
  align-items: center;
}
.elementor-page-360 .ptv-company-hero .elementor-heading-title{
  color: #fff !important;
  font-size: clamp(38px, 5vw, 72px) !important;
  line-height: 1.03 !important;
  font-weight: 900 !important;
}
.elementor-page-360 .ptv-company-hero .elementor-text-editor{
  color: rgba(255,255,255,0.9) !important;
  font-size: 18px;
  line-height: 1.75;
}
.elementor-page-360 .ptv-company-hero .elementor-button{
  background: #137fec !important;
  color: #fff !important;
  border-radius: 12px !important;
  box-shadow: 0 14px 28px rgba(19,127,236,.35) !important;
}

.elementor-page-360 .ptv-company-story{
  background: linear-gradient(180deg, #ffffff 0%, #fbfcff 100%) !important;
}
.elementor-page-360 .ptv-company-story > .elementor-container{
  column-gap: 26px;
}
.elementor-page-360 .ptv-company-story .elementor-column .elementor-widget-wrap{
  border-radius: 18px;
  padding: 28px;
}
.elementor-page-360 .ptv-company-story .elementor-column:first-child .elementor-widget-wrap{
  background: #ffffff;
  border: 1px solid #e5edf7;
  box-shadow: 0 16px 32px rgba(15,23,42,.06);
}
.elementor-page-360 .ptv-company-story .elementor-column:last-child .elementor-widget-wrap{
  background: #fffef9;
  border: 1px solid #f1e2bb;
  box-shadow: 0 16px 34px rgba(194,152,15,.10);
}
.elementor-page-360 .ptv-company-story .elementor-widget-icon-list .elementor-icon-list-item{
  border: 1px solid #f0dfac;
  border-radius: 12px;
  background: rgba(255,255,255,.75);
  padding: 10px 12px;
  margin-bottom: 9px;
}
.elementor-page-360 .ptv-company-story .elementor-widget-icon-list .elementor-icon-list-icon i{
  color: #137fec !important;
}

.elementor-page-360 .ptv-company-values{
  background:
    radial-gradient(80% 120% at 5% 0%, rgba(19,127,236,.08) 0%, rgba(19,127,236,0) 60%),
    radial-gradient(70% 120% at 100% 100%, rgba(212,175,55,.10) 0%, rgba(212,175,55,0) 65%),
    #f4f7fb !important;
}

.elementor-page-360 .ptv-company-values .elementor-widget-heading .elementor-heading-title{
  font-size: clamp(34px, 4vw, 48px) !important;
  font-weight: 900 !important;
  color: #0f172a !important;
}

.elementor-page-360 .ptv-company-values .elementor-widget-text-editor{
  color: #475569 !important;
}

.elementor-page-360 .ptv-company-values .elementor-inner-section > .elementor-container{
  column-gap: 22px;
}

.elementor-page-360 .ptv-company-values .elementor-widget-icon-box .elementor-widget-container{
  position: relative;
  overflow: hidden;
  background: linear-gradient(180deg, #ffffff 0%, #fdfefe 100%) !important;
  border: 1px solid #dce6f5 !important;
  border-radius: 16px !important;
  padding: 26px 24px !important;
  box-shadow: 0 12px 26px rgba(15,23,42,.08) !important;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.elementor-page-360 .ptv-company-values .elementor-widget-icon-box .elementor-widget-container::before{
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 4px;
  background: linear-gradient(90deg, #137fec 0%, #69aef5 65%, #d4af37 100%);
  opacity: .95;
}

.elementor-page-360 .ptv-company-values .elementor-widget-icon-box:hover .elementor-widget-container{
  transform: translateY(-6px);
  border-color: #bfd6f3 !important;
  box-shadow: 0 18px 34px rgba(15,23,42,.12) !important;
}

.elementor-page-360 .ptv-company-values .elementor-widget-icon-box .elementor-icon-box-wrapper{
  display: grid;
  gap: 8px;
}

.elementor-page-360 .ptv-company-values .elementor-widget-icon-box .elementor-icon{
  width: 52px;
  height: 52px;
  border-radius: 12px;
  background: linear-gradient(180deg, #e7f1fe 0%, #d9e9fd 100%);
  color: #137fec !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: inset 0 0 0 1px rgba(19,127,236,.12);
}

.elementor-page-360 .ptv-company-values .elementor-widget-icon-box .elementor-icon i{
  font-size: 22px;
}

.elementor-page-360 .ptv-company-values .elementor-widget-icon-box .elementor-icon-box-title{
  color: #0f172a !important;
  font-size: 24px !important;
  font-weight: 800 !important;
}

.elementor-page-360 .ptv-company-values .elementor-widget-icon-box .elementor-icon-box-description{
  color: #4b5d73 !important;
  line-height: 1.65 !important;
}

.elementor-page-360 .ptv-company-stats{
  background:
    radial-gradient(120% 140% at 0% 0%, rgba(19,127,236,.22) 0%, rgba(19,127,236,0) 55%),
    linear-gradient(180deg, #081b38 0%, #0b2144 100%) !important;
}

.elementor-page-360 .ptv-company-stats > .elementor-container{
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 20px 36px rgba(2, 8, 23, 0.35);
  background: rgba(255,255,255,.02);
}

.elementor-page-360 .ptv-company-stats .elementor-column{
  padding: 22px 14px;
  position: relative;
}

.elementor-page-360 .ptv-company-stats .elementor-column:not(:last-child)::after{
  content: "";
  position: absolute;
  top: 18%;
  right: 0;
  width: 1px;
  height: 64%;
  background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(148,163,184,.45) 50%, rgba(255,255,255,0) 100%);
}

.elementor-page-360 .ptv-company-stats .elementor-heading-title{
  color: #fff !important;
  font-size: clamp(34px, 3.6vw, 56px) !important;
  line-height: .95 !important;
  font-weight: 900 !important;
  letter-spacing: -0.02em;
  text-shadow: 0 10px 24px rgba(2, 8, 23, .35);
}

.elementor-page-360 .ptv-company-stats .elementor-text-editor{
  color: #93c5fd !important;
  text-transform: uppercase;
  letter-spacing: .1em;
  font-size: 11px;
  font-weight: 800;
  margin-top: 8px;
}

@media (max-width: 991px){
  .elementor-page-360 .ptv-company-stats > .elementor-container{
    border-radius: 14px;
  }
  .elementor-page-360 .ptv-company-stats .elementor-column{
    padding: 20px 10px;
  }
  .elementor-page-360 .ptv-company-stats .elementor-column:nth-child(2)::after{
    display: none;
  }
}

@media (max-width: 767px){
  .elementor-page-360 .ptv-company-stats .elementor-column:not(:last-child)::after{
    display: none;
  }
  .elementor-page-360 .ptv-company-stats .elementor-column{
    border-bottom: 1px solid rgba(148,163,184,.25);
  }
  .elementor-page-360 .ptv-company-stats .elementor-column:last-child{
    border-bottom: 0;
  }
}

.elementor-page-360 .ptv-company-team .elementor-widget-image img{
  border-radius: 16px !important;
  aspect-ratio: 4/5;
  object-fit: cover;
  box-shadow: 0 12px 24px rgba(15,23,42,.1);
}

.elementor-page-360 .ptv-company-journey{
  background: #f4f6fa !important;
}
.elementor-page-360 .ptv-company-journey .elementor-icon-list-items{
  position: relative;
  max-width: 900px;
  margin: 22px auto 0;
  padding: 0 0 0 28px;
}
.elementor-page-360 .ptv-company-journey .elementor-icon-list-items::before{
  content: "";
  position: absolute;
  left: 10px;
  top: 6px;
  bottom: 6px;
  width: 2px;
  background: linear-gradient(180deg, #bfdbfe 0%, #137fec 100%);
}
.elementor-page-360 .ptv-company-journey .elementor-icon-list-item{
  position: relative;
  background: #fff !important;
  border: 1px solid #d9e3f2 !important;
  border-radius: 12px !important;
  padding: 14px 16px 14px 14px !important;
  margin-bottom: 12px !important;
  box-shadow: 0 8px 20px rgba(15,23,42,.06) !important;
  align-items: flex-start !important;
}
.elementor-page-360 .ptv-company-journey .elementor-icon-list-item:nth-child(even){
  margin-left: 44px;
}
.elementor-page-360 .ptv-company-journey .elementor-icon-list-icon{
  position: absolute;
  left: -28px;
  top: 14px;
  width: 22px;
  height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #137fec !important;
  border-radius: 999px !important;
  box-shadow: 0 0 0 4px #f4f6fa;
}
.elementor-page-360 .ptv-company-journey .elementor-icon-list-icon i{
  color: #fff !important;
  font-size: 10px;
}

.elementor-page-360 .ptv-company-cta{
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(76% 120% at 0% 0%, rgba(255,255,255,.12) 0%, rgba(255,255,255,0) 58%),
    radial-gradient(80% 120% at 100% 100%, rgba(247,198,0,.12) 0%, rgba(247,198,0,0) 60%),
    linear-gradient(135deg, #0d6dd0 0%, #1177d8 45%, #0a58b4 100%) !important;
}

.elementor-page-360 .ptv-company-cta::before{
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(120deg, rgba(255,255,255,.06) 0%, rgba(255,255,255,0) 30%, rgba(255,255,255,.05) 68%, rgba(255,255,255,0) 100%);
}

.elementor-page-360 .ptv-company-cta > .elementor-container{
  position: relative;
  z-index: 1;
  max-width: 980px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 26px 24px;
}
.elementor-page-360 .ptv-company-cta .elementor-heading-title,
.elementor-page-360 .ptv-company-cta .elementor-text-editor{
  color: #fff !important;
}
.elementor-page-360 .ptv-company-cta .elementor-heading-title{
  font-size: clamp(34px, 4vw, 50px) !important;
  font-weight: 900 !important;
  letter-spacing: -0.015em;
  line-height: 1.08 !important;
  text-shadow: 0 8px 20px rgba(2, 8, 23, .18);
}
.elementor-page-360 .ptv-company-cta .elementor-text-editor{
  max-width: 700px;
  margin: 14px auto 0;
  color: rgba(255,255,255,.96) !important;
  font-size: 18px;
  line-height: 1.68;
}
.elementor-page-360 .ptv-company-cta-buttons .elementor-column:first-child .elementor-button{
  background: #fff !important;
  color: #137fec !important;
  border-radius: 12px !important;
  padding: 14px 24px !important;
  font-weight: 800 !important;
  box-shadow: 0 12px 28px rgba(2,8,23,.2) !important;
}
.elementor-page-360 .ptv-company-cta-buttons .elementor-column:last-child .elementor-button{
  background: transparent !important;
  color: #fff !important;
  border: 2px solid rgba(255,255,255,.95) !important;
  border-radius: 12px !important;
  padding: 14px 24px !important;
  font-weight: 800 !important;
  backdrop-filter: blur(2px);
}
.elementor-page-360 .ptv-company-cta-buttons .elementor-button:hover{
  transform: translateY(-2px);
}

@media (max-width: 767px){
  .elementor-page-360 .ptv-company-cta > .elementor-container{
    padding: 17px 14px;
  }
  .elementor-page-360 .ptv-company-cta .elementor-text-editor{
    font-size: 16px;
  }
}

@media (max-width: 991px){
  .elementor-page-360 .ptv-company-journey .elementor-icon-list-item:nth-child(even){
    margin-left: 0;
  }
}

/* Property Management page (excluding hero) */
#ptv-pm-services-head,
#ptv-pm-services-grid,
#ptv-pm-overview-head,
#ptv-pm-overview-grid,
#ptv-pm-calculator,
#ptv-pm-trust-head,
#ptv-pm-testimonials{
  background: #f6f7f8;
}

#ptv-pm-services-head .elementor-heading-title,
#ptv-pm-overview-head .elementor-heading-title,
#ptv-pm-calculator .elementor-heading-title,
#ptv-pm-trust-head .elementor-heading-title{
  color: #0f172a;
  font-weight: 800;
  letter-spacing: -0.02em;
}

#ptv-pm-services-head .elementor-text-editor,
#ptv-pm-overview-head .elementor-text-editor,
#ptv-pm-calculator .elementor-text-editor{
  color: #6b7280;
  font-size: 16px;
}

#ptv-pm-services-grid .ptv-pm-service-col > .elementor-element-populated{
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  padding: 28px 24px;
  min-height: 278px;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.03);
}

#ptv-pm-overview-grid .ptv-pm-service-col > .elementor-element-populated{
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  padding: 28px 24px;
  min-height: 278px;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.03);
}

#ptv-pm-services-grid .elementor-widget-icon-box .elementor-icon{
  background: #137fec;
  color: #fff;
  border-radius: 12px;
  width: 54px;
  height: 54px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 8px 20px rgba(19, 127, 236, 0.25);
}

#ptv-pm-overview-grid .elementor-widget-icon-box .elementor-icon{
  background: #137fec;
  color: #fff;
  border-radius: 12px;
  width: 54px;
  height: 54px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 8px 20px rgba(19, 127, 236, 0.25);
}

#ptv-pm-services-grid .elementor-icon-box-title{
  color: #111827;
  font-size: 27px;
  font-weight: 700;
}

#ptv-pm-overview-grid .elementor-icon-box-title{
  color: #111827;
  font-size: 27px;
  font-weight: 700;
}

#ptv-pm-services-grid .elementor-icon-box-description{
  color: #6b7280;
  font-size: 14px;
  line-height: 1.7;
}

#ptv-pm-services-grid .elementor-text-editor a{
  color: #137fec;
  font-weight: 700;
  text-decoration: none;
}

#ptv-pm-calculator > .elementor-container{
  align-items: center;
  column-gap: 26px;
}

#ptv-pm-calculator .elementor-widget-icon-box{
  margin-top: 16px;
}

#ptv-pm-calculator .elementor-icon-box-icon .elementor-icon{
  color: #137fec;
  background: #dbeafe;
  border-radius: 999px;
}

#ptv-pm-calculator .elementor-icon-box-description{
  color: #6b7280;
  font-size: 13px;
}

.ptv-pm-yield-card{
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  padding: 20px;
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.09);
}

.ptv-pm-yield-grid{
  display: grid;
  grid-template-columns: 1.3fr 1fr;
  gap: 18px;
}

.ptv-pm-fields label{
  display: block;
  margin-bottom: 7px;
  color: #374151;
  font-size: 13px;
  font-weight: 700;
}

.ptv-pm-range{
  position: relative;
  height: 4px;
  border-radius: 999px;
  background: linear-gradient(90deg, #137fec 0 58%, #dbeafe 58% 100%);
  margin-bottom: 10px;
}

.ptv-pm-range::after{
  content: "";
  position: absolute;
  top: 50%;
  left: 58%;
  transform: translate(-50%, -50%);
  width: 12px;
  height: 12px;
  border-radius: 999px;
  background: #137fec;
}

.ptv-pm-range-values{
  display: flex;
  justify-content: space-between;
  color: #137fec;
  font-size: 12px;
  font-weight: 800;
  margin-bottom: 14px;
}

.ptv-pm-input{
  background: #f3f4f6;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  color: #374151;
  font-size: 14px;
  padding: 11px 12px;
  margin-bottom: 12px;
}

.ptv-pm-output{
  background: #eff6ff;
  border-radius: 14px;
  padding: 20px 16px;
  text-align: center;
}

.ptv-pm-output p{
  margin: 0;
  color: #6b7280;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 700;
}

.ptv-pm-yield{
  color: #137fec;
  font-size: 54px;
  line-height: 1;
  letter-spacing: -0.02em;
  font-weight: 800;
  margin: 10px 0;
}

.ptv-pm-income{
  margin-bottom: 14px !important;
  color: #64748b !important;
  font-size: 13px !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.ptv-pm-btn{
  display: inline-block;
  width: 100%;
  background: #137fec;
  color: #fff !important;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
  border-radius: 10px;
  padding: 11px 12px;
}

#ptv-pm-trust-head > .elementor-container{
  align-items: center;
}

.ptv-pm-kpis{
  display: flex;
  justify-content: flex-end;
  gap: 28px;
}

.ptv-pm-kpi-num{
  color: #137fec;
  font-size: 42px;
  line-height: 1;
  font-weight: 800;
  text-align: center;
}

.ptv-pm-kpi-label{
  color: #6b7280;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .07em;
  font-weight: 700;
  text-align: center;
  margin-top: 3px;
}

.ptv-pm-testimonial{
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  padding: 24px;
  height: 100%;
}

.ptv-pm-stars{
  color: #fbbf24;
  font-size: 18px;
  letter-spacing: 2px;
  margin-bottom: 12px;
}

.ptv-pm-quote{
  color: #374151;
  font-size: 20px;
  line-height: 1.7;
  margin-bottom: 20px;
  font-style: italic;
}

.ptv-pm-author{
  display: flex;
  align-items: center;
  gap: 10px;
}

.ptv-pm-author img{
  width: 44px;
  height: 44px;
  border-radius: 999px;
  object-fit: cover;
}

.ptv-pm-author strong{
  display: block;
  color: #111827;
  font-size: 14px;
}

.ptv-pm-author span{
  color: #6b7280;
  font-size: 12px;
}

@media (max-width: 1024px){
  .ptv-pm-yield-grid{
    grid-template-columns: 1fr;
  }
  .ptv-pm-kpis{
    justify-content: flex-start;
  }
}

#ptv-pm-process-head,
#ptv-pm-process-grid{
  background: #ffffff;
}

#ptv-pm-process-head .elementor-text-editor{
  color: #6b7280;
}

#ptv-pm-process-grid .elementor-widget-icon-box{
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  background: #f9fafb;
  padding: 22px 18px;
  height: 100%;
}

#ptv-pm-process-grid .elementor-icon-box-title{
  color: #0f172a;
  font-size: 20px;
  font-weight: 700;
}

#ptv-pm-process-grid .elementor-icon-box-description{
  color: #6b7280;
  line-height: 1.68;
  font-size: 14px;
}

#ptv-pm-process-grid .elementor-icon{
  color: #137fec;
}

#ptv-pm-comprehensive{
  background: #f8fafc;
  border-top: 1px solid #e5e7eb;
  border-bottom: 1px solid #e5e7eb;
}

#ptv-pm-comprehensive .elementor-heading-title{
  color: #0f172a;
}

#ptv-pm-comprehensive .elementor-text-editor{
  color: #64748b;
}

#ptv-pm-comprehensive .elementor-widget-icon-list .elementor-icon-list-items{
  display: grid;
  gap: 10px;
  margin-top: 14px;
}

#ptv-pm-comprehensive .elementor-widget-icon-list .elementor-icon-list-item{
  border: 1px solid #dbeafe;
  background: #fff;
  border-radius: 10px;
  padding: 10px 12px;
}

#ptv-pm-comprehensive .elementor-widget-icon-list .elementor-icon-list-icon i{
  color: #137fec;
}

#ptv-pm-comprehensive .elementor-widget-icon-list .elementor-icon-list-text{
  color: #1f2937;
  font-size: 14px;
}

.ptv-pm-mini-grid{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.ptv-pm-mini-grid article{
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 16px;
  min-height: 134px;
}

.ptv-pm-mini-grid h4{
  margin: 0 0 8px;
  color: #0f172a;
  font-size: 17px;
  font-weight: 700;
}

.ptv-pm-mini-grid p{
  margin: 0;
  color: #64748b;
  font-size: 14px;
  line-height: 1.65;
}

#ptv-pm-faq{
  background: #ffffff;
}

#ptv-pm-faq .elementor-widget-accordion .elementor-accordion-item{
  border: 1px solid #dbeafe;
  border-radius: 12px;
  margin-bottom: 10px;
  overflow: hidden;
}

#ptv-pm-faq .elementor-tab-title{
  color: #0f172a;
  font-weight: 700;
  background: #f8fbff;
}

#ptv-pm-faq .elementor-tab-content{
  color: #64748b;
  line-height: 1.7;
}

#ptv-pm-cta{
  background: linear-gradient(180deg, #eff6ff 0%, #f8fafc 100%);
}

#ptv-pm-cta .elementor-heading-title{
  color: #0f172a;
  font-weight: 800;
}

#ptv-pm-cta .elementor-text-editor{
  color: #64748b;
  max-width: 780px;
  margin: 10px auto 0;
}

#ptv-pm-cta .elementor-button{
  background: #137fec;
  color: #fff;
  border-radius: 12px;
  padding: 13px 24px;
  font-weight: 800;
  box-shadow: 0 12px 30px rgba(19, 127, 236, 0.25);
}

@media (max-width: 767px){
  .ptv-pm-mini-grid{
    grid-template-columns: 1fr;
  }
}

#ptv-pm-overview-grid .elementor-icon-box-description{
  color: #6b7280;
  font-size: 14px;
  line-height: 1.7;
}

/* Property Management - Rent hero band (single cohesive section) */
#ptv-pm-rent-hero{
  position: relative;
  overflow: hidden;
  background-color: #0b1f3a;
}

#ptv-pm-rent-hero::before{
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background:
    radial-gradient(120% 140% at 100% 0%, rgba(56, 189, 248, 0.22) 0%, rgba(56, 189, 248, 0) 58%),
    radial-gradient(90% 120% at 0% 100%, rgba(251, 191, 36, 0.22) 0%, rgba(251, 191, 36, 0) 58%),
    linear-gradient(130deg, rgba(11, 31, 58, 0.78) 0%, rgba(21, 74, 131, 0.72) 48%, rgba(30, 110, 196, 0.68) 100%);
}

#ptv-pm-rent-hero > .elementor-container{
  position: relative;
  z-index: 1;
  border-radius: 24px;
  padding: 34px;
  box-shadow: 0 24px 60px rgba(5, 18, 35, 0.3);
}

#ptv-pm-rent-hero .elementor-column > .elementor-element-populated{
  padding: 0;
}

.ptv-pm-rent-hero-copy{
  max-width: 980px;
  margin: 0 auto 24px;
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 0;
}

.ptv-pm-rent-hero-copy h2{
  margin: 10px 0 8px;
  color: #fff;
  font-size: clamp(36px, 3.2vw, 52px);
  line-height: 1.03;
  letter-spacing: -0.02em;
  font-weight: 900;
  max-width: 980px;
}

.ptv-pm-rent-hero-copy p{
  margin: 0;
  color: rgba(255, 255, 255, 0.92);
  font-size: 18px;
  line-height: 1.55;
  max-width: 980px;
}

#ptv-pm-rent-hero .elementor-widget-heading > .elementor-widget-container .elementor-heading-title{
  color: #fff !important;
  letter-spacing: -0.02em;
  font-weight: 900;
}

#ptv-pm-rent-hero > .elementor-container > .elementor-column > .elementor-element-populated > .elementor-widget-heading:first-child .elementor-heading-title{
  font-size: clamp(36px, 3.2vw, 50px);
  line-height: 1.04;
  margin-bottom: 8px;
}

#ptv-pm-rent-hero .elementor-widget-text-editor .elementor-text-editor{
  color: rgba(233, 245, 255, 0.92) !important;
  font-size: 19px;
  line-height: 1.62;
}

#ptv-pm-rent-hero .ptv-pm-rent-chip{
  background: rgba(255, 255, 255, 0.17);
  border-color: rgba(255, 255, 255, 0.32);
  color: #fff;
}

#ptv-pm-rent-hero .ptv-pm-rent-stats{
  margin-top: 18px;
}

#ptv-pm-rent-hero .ptv-pm-rent-stats > div{
  background: rgba(255, 255, 255, 0.14);
  border: 1px solid rgba(255, 255, 255, 0.24);
}

#ptv-pm-rent-hero .ptv-pm-rent-stats strong{
  color: #fff;
}

#ptv-pm-rent-hero .ptv-pm-rent-stats span{
  color: rgba(255, 255, 255, 0.92);
}

.ptv-pm-rent-form-intro{
  margin-top: 0;
  margin-bottom: 10px;
  text-align: center;
}

.ptv-pm-rent-form-intro h3{
  margin: 0 0 4px;
  color: #ffffff;
  font-size: 40px;
  line-height: 1.1;
  letter-spacing: -0.02em;
  font-weight: 900;
}

.ptv-pm-rent-form-intro p{
  margin: 0;
  color: rgba(255, 255, 255, 0.9);
  font-size: 15px;
  line-height: 1.5;
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
}

#ptv-pm-rent-hero [data-ptv-form="rent_property"] .ptv-sf-form{
  margin: 0;
  background: rgba(9, 27, 56, 0.45);
  border: 1px solid rgba(96, 131, 188, 0.35);
  border-radius: 14px;
  padding: 14px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.08);
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
}

#ptv-pm-rent-hero [data-ptv-form="rent_property"] .ptv-sf-grid{
  gap: 12px;
}

#ptv-pm-rent-hero [data-ptv-form="rent_property"] .ptv-sf-label{
  font-weight: 700;
  color: #ecf5ff;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .02em;
}

#ptv-pm-rent-hero [data-ptv-form="rent_property"] .ptv-sf-input{
  min-height: 42px;
  border-radius: 8px;
  border: 1px solid rgba(197, 220, 247, 0.68);
  background: rgba(255, 255, 255, 0.96);
  font-size: 13px;
  padding: 8px 12px;
}

#ptv-pm-rent-hero [data-ptv-form="rent_property"] .ptv-sf-input:focus{
  outline: none;
  border-color: #137fec;
  box-shadow: 0 0 0 3px rgba(19, 127, 236, 0.15);
}

#ptv-pm-rent-hero [data-ptv-form="rent_property"] .ptv-sf-submit{
  background: linear-gradient(135deg, #f4c81d 0%, #d9a600 100%);
  color: #0b1f3a;
  border-radius: 10px;
  min-height: 40px;
  min-width: 130px;
  padding: 8px 16px;
  font-size: 12px;
  font-weight: 800;
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.24);
}

#ptv-pm-rent-hero [data-ptv-form="rent_property"] .ptv-sf-trust{
  color: rgba(233, 245, 255, 0.9);
}

@media (max-width: 1200px){
  #ptv-pm-rent-hero > .elementor-container{
    padding: 24px;
  }

  .ptv-pm-rent-hero-copy h2{
    font-size: clamp(30px, 3.2vw, 40px);
  }

  .ptv-pm-rent-hero-copy p{
    font-size: 17px;
  }

  #ptv-pm-rent-hero > .elementor-container > .elementor-column > .elementor-element-populated > .elementor-widget-heading:first-child .elementor-heading-title{
    font-size: clamp(30px, 3.2vw, 40px);
  }

  .ptv-pm-rent-form-intro h3{
    font-size: 30px;
  }
}

@media (max-width: 991px){
  #ptv-pm-rent-hero > .elementor-container{
    border-radius: 16px;
    padding: 16px;
  }

  .ptv-pm-rent-hero-copy p{
    max-width: 100%;
  }

  #ptv-pm-rent-hero > .elementor-container > .elementor-column > .elementor-element-populated > .elementor-widget-heading:first-child .elementor-heading-title{
    font-size: 30px;
  }

  .ptv-pm-rent-form-intro h3{
    font-size: 28px;
  }

  .ptv-pm-rent-form-intro p{
    font-size: 14px;
  }

  #ptv-pm-rent-hero [data-ptv-form="rent_property"] .ptv-sf-grid{
    grid-template-columns: 1fr;
  }
}

/* Property Management page alignment with provided reference design */
#ptv-pm-overview-head,
#ptv-pm-overview-grid,
#ptv-pm-quick-nav-head,
#ptv-pm-quick-nav,
#ptv-pm-process-head,
#ptv-pm-process-grid,
#ptv-pm-faq{
  background: #f5f7fb;
}

#ptv-pm-overview-head .elementor-heading-title,
#ptv-pm-quick-nav-head .elementor-heading-title,
#ptv-pm-process-head .elementor-heading-title,
#ptv-pm-faq .elementor-heading-title{
  color: #111827;
  font-weight: 800;
  letter-spacing: -0.02em;
}

#ptv-pm-overview-head .elementor-text-editor,
#ptv-pm-quick-nav-head .elementor-text-editor,
#ptv-pm-process-head .elementor-text-editor{
  color: #6b7280;
}

#ptv-pm-overview-grid .ptv-pm-service-col > .elementor-element-populated{
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  padding: 22px 16px;
  text-align: center;
}

#ptv-pm-overview-grid .elementor-icon-box-title{
  font-size: 18px;
  font-weight: 700;
}

#ptv-pm-overview-grid .elementor-icon-box-description{
  font-size: 13px;
  color: #6b7280;
}

#ptv-pm-quick-nav .elementor-column > .elementor-element-populated{
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  padding: 18px 16px;
  text-align: center;
}

#ptv-pm-quick-nav .elementor-icon-box-title{
  font-size: 17px;
  font-weight: 700;
}

#ptv-pm-quick-nav .elementor-icon-box-description{
  color: #6b7280;
  font-size: 13px;
}

#ptv-pm-quick-nav .elementor-button{
  background: #0f1f3a;
  color: #fff;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 700;
  padding: 10px 14px;
}

#ptv-pm-process-grid .elementor-widget-icon-box{
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  padding: 18px 12px;
  text-align: center;
}

#ptv-pm-process-grid .elementor-icon{
  color: #4f46e5;
}

#ptv-pm-process-grid .elementor-icon-box-title{
  font-size: 14px;
  font-weight: 700;
}

#ptv-pm-process-grid .elementor-icon-box-description{
  color: #7c8595;
  font-size: 12px;
  line-height: 1.55;
}

#ptv-pm-rent-hero{
  padding-top: 4px;
  padding-bottom: 10px;
}

#ptv-pm-rent-hero > .elementor-container{
  border-radius: 14px;
  padding: 22px;
  background: linear-gradient(180deg, rgba(9, 28, 58, 0.98) 0%, rgba(16, 57, 108, 0.96) 100%);
}

.ptv-pm-rent-hero-copy{
  margin-bottom: 14px;
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 0;
}

.ptv-pm-rent-hero-copy h2{
  font-size: clamp(48px, 4.2vw, 66px);
}

.ptv-pm-rent-hero-copy p{
  font-size: 28px;
  line-height: 1.45;
}

.ptv-pm-rent-chip{
  background: rgba(255,255,255,0.14);
  border: 1px solid rgba(255,255,255,0.24);
  border-radius: 8px;
  font-size: 14px;
  letter-spacing: 0;
  text-transform: none;
}

.ptv-pm-rent-stats{
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ptv-pm-rent-stats > div{
  border-radius: 8px;
}

.ptv-pm-rent-form-intro h3{
  font-size: 44px;
}

.ptv-pm-rent-form-intro p{
  font-size: 24px;
}

#ptv-pm-rent-hero [data-ptv-form="rent_property"] .ptv-sf-form{
  background: rgba(8, 25, 50, 0.3);
  border: 1px solid rgba(154, 186, 230, 0.24);
}

#ptv-pm-rent-hero [data-ptv-form="rent_property"] .ptv-sf-input{
  min-height: 56px;
  border-radius: 10px;
}

#ptv-pm-rent-hero [data-ptv-form="rent_property"] .ptv-sf-submit{
  border-radius: 10px;
  min-height: 54px;
}

#ptv-pm-faq .elementor-widget-accordion .elementor-accordion-item{
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  margin-bottom: 10px;
  overflow: hidden;
}

#ptv-pm-faq .elementor-tab-title{
  color: #111827;
  font-weight: 600;
}

#ptv-pm-faq .elementor-tab-content{
  color: #6b7280;
}

@media (max-width: 991px){
  .ptv-pm-rent-hero-copy h2{ font-size: 36px; }
  .ptv-pm-rent-hero-copy p{ font-size: 18px; }
  .ptv-pm-rent-form-intro h3{ font-size: 30px; }
  .ptv-pm-rent-form-intro p{ font-size: 16px; }
}

/* Property Management final reference sync (below hero only) */
#ptv-pm-overview-head,
#ptv-pm-overview-grid,
#ptv-pm-quick-nav-head,
#ptv-pm-quick-nav,
#ptv-pm-process-head,
#ptv-pm-process-grid,
#ptv-pm-faq{
  background: #f6f8fb !important;
}

#ptv-pm-overview-head .elementor-widget-heading .elementor-heading-title,
#ptv-pm-quick-nav-head .elementor-widget-heading .elementor-heading-title,
#ptv-pm-process-head .elementor-widget-heading .elementor-heading-title,
#ptv-pm-faq .elementor-widget-heading .elementor-heading-title{
  color: #111827 !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em !important;
}

#ptv-pm-overview-head .elementor-widget-text-editor .elementor-text-editor,
#ptv-pm-quick-nav-head .elementor-widget-text-editor .elementor-text-editor,
#ptv-pm-process-head .elementor-widget-text-editor .elementor-text-editor{
  color: #6b7280 !important;
}

#ptv-pm-overview-grid .ptv-pm-service-col > .elementor-element-populated{
  background: #ffffff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 14px !important;
  padding: 22px 16px !important;
  min-height: 220px !important;
  text-align: center !important;
}

#ptv-pm-overview-grid .elementor-widget-icon-box .elementor-icon{
  width: 48px;
  height: 48px;
  border-radius: 12px;
  background: #eef3ff;
  color: #3348a5;
}

#ptv-pm-overview-grid .elementor-icon-box-title{
  color: #111827 !important;
  font-size: 17px !important;
  font-weight: 700 !important;
}

#ptv-pm-overview-grid .elementor-icon-box-description{
  color: #6b7280 !important;
  font-size: 12px !important;
  line-height: 1.65 !important;
}

#ptv-pm-quick-nav .elementor-column > .elementor-element-populated{
  background: #ffffff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 16px !important;
  padding: 22px 20px !important;
  text-align: center !important;
}

#ptv-pm-quick-nav .elementor-widget-icon-box .elementor-icon{
  color: #3348a5 !important;
}

#ptv-pm-quick-nav .elementor-icon-box-title{
  color: #111827 !important;
  font-size: 23px !important;
  font-weight: 700 !important;
}

#ptv-pm-quick-nav .elementor-icon-box-description{
  color: #6b7280 !important;
  font-size: 13px !important;
  line-height: 1.7 !important;
}

#ptv-pm-quick-nav .elementor-button{
  background: #0d1d3b !important;
  color: #ffffff !important;
  border-radius: 8px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  padding: 11px 16px !important;
}

#ptv-pm-process-grid .elementor-widget-icon-box{
  position: relative;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  text-align: center !important;
  padding: 8px 8px 0 !important;
}

#ptv-pm-process-grid .elementor-widget-icon-box .elementor-icon{
  width: 42px;
  height: 42px;
  border-radius: 10px;
  background: #eef3ff;
  color: #2d45a4;
}

#ptv-pm-process-grid .elementor-column:nth-child(1) .elementor-widget-icon-box::after,
#ptv-pm-process-grid .elementor-column:nth-child(2) .elementor-widget-icon-box::after,
#ptv-pm-process-grid .elementor-column:nth-child(3) .elementor-widget-icon-box::after,
#ptv-pm-process-grid .elementor-column:nth-child(4) .elementor-widget-icon-box::after{
  content: "";
  position: absolute;
  top: -2px;
  left: calc(50% + 16px);
  width: 22px;
  height: 22px;
  border-radius: 999px;
  background: #2c43a2;
  border: 2px solid #ffffff;
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
}

#ptv-pm-process-grid .elementor-column:nth-child(1) .elementor-widget-icon-box::after{ content: "1"; }
#ptv-pm-process-grid .elementor-column:nth-child(2) .elementor-widget-icon-box::after{ content: "2"; }
#ptv-pm-process-grid .elementor-column:nth-child(3) .elementor-widget-icon-box::after{ content: "3"; }
#ptv-pm-process-grid .elementor-column:nth-child(4) .elementor-widget-icon-box::after{ content: "4"; }

#ptv-pm-process-grid .elementor-icon-box-title{
  color: #111827 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}

#ptv-pm-process-grid .elementor-icon-box-description{
  color: #7a8597 !important;
  font-size: 11px !important;
  line-height: 1.6 !important;
}

#ptv-pm-rent-hero{
  background:
    radial-gradient(80% 80% at 0% 0%, rgba(22, 86, 171, 0.26) 0%, rgba(22, 86, 171, 0) 65%),
    radial-gradient(90% 90% at 100% 100%, rgba(4, 18, 41, 0.6) 0%, rgba(4, 18, 41, 0) 72%),
    linear-gradient(180deg, #0c1c3a 0%, #0a1833 100%) !important;
}

#ptv-pm-rent-hero > .elementor-container{
  border-radius: 16px !important;
  padding: 42px 30px !important;
  background: rgba(9, 24, 52, 0.56) !important;
  border: 1px solid rgba(136, 165, 216, 0.22) !important;
  box-shadow: 0 20px 56px rgba(3, 12, 26, 0.45) !important;
}

.ptv-pm-rent-form-intro{
  margin-bottom: 18px !important;
}

.ptv-pm-rent-form-intro h3{
  color: #ffffff !important;
  font-size: clamp(36px, 4vw, 52px) !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em !important;
  text-align: center !important;
  margin: 0 0 8px !important;
}

.ptv-pm-rent-form-intro p{
  color: rgba(230, 240, 255, 0.92) !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  max-width: 780px !important;
  margin: 0 auto !important;
  text-align: center !important;
}

.ptv-pm-rent-hero-copy{
  margin: 0 auto 16px !important;
  max-width: 900px !important;
  border-radius: 10px !important;
  border: 1px solid rgba(90, 121, 177, 0.38) !important;
  background: linear-gradient(180deg, rgba(24, 63, 130, 0.28) 0%, rgba(13, 35, 74, 0.3) 100%) !important;
  padding: 16px !important;
}

.ptv-pm-rent-hero-copy h2{
  margin: 8px 0 8px !important;
  color: #ffffff !important;
  font-size: clamp(32px, 3.4vw, 44px) !important;
  line-height: 1.08 !important;
  font-weight: 800 !important;
}

.ptv-pm-rent-hero-copy p{
  margin: 0 !important;
  color: rgba(231, 240, 255, 0.92) !important;
  font-size: 13px !important;
  line-height: 1.7 !important;
}

.ptv-pm-rent-chip{
  display: inline-flex !important;
  align-items: center !important;
  padding: 4px 8px !important;
  border-radius: 999px !important;
  background: rgba(250, 201, 21, 0.18) !important;
  color: #ffd34f !important;
  border: 1px solid rgba(250, 201, 21, 0.34) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

.ptv-pm-rent-stats{
  margin-top: 10px !important;
  border-top: 1px solid rgba(142, 170, 221, 0.26);
  padding-top: 10px;
}

.ptv-pm-rent-stats > div{
  border: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
  padding: 0 !important;
}

.ptv-pm-rent-stats strong{
  color: #ffffff !important;
  font-size: 11px !important;
}

.ptv-pm-rent-stats span{
  color: rgba(220, 232, 255, 0.9) !important;
  font-size: 10px !important;
}

#ptv-pm-rent-hero [data-ptv-form="rent_property"] .ptv-sf-form{
  max-width: 900px !important;
  margin: 0 auto !important;
  background: rgba(8, 22, 49, 0.42) !important;
  border: 1px solid rgba(130, 162, 216, 0.24) !important;
  border-radius: 12px !important;
  padding: 16px !important;
}

#ptv-pm-rent-hero [data-ptv-form="rent_property"] .ptv-sf-grid{
  gap: 14px !important;
}

#ptv-pm-rent-hero [data-ptv-form="rent_property"] .ptv-sf-label{
  color: #d5e6ff !important;
  font-size: 10px !important;
  letter-spacing: 0.03em !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
}

#ptv-pm-rent-hero [data-ptv-form="rent_property"] .ptv-sf-input{
  min-height: 40px !important;
  border-radius: 8px !important;
  border: 1px solid rgba(190, 212, 244, 0.72) !important;
  background: rgba(255, 255, 255, 0.96) !important;
  font-size: 12px !important;
}

#ptv-pm-rent-hero [data-ptv-form="rent_property"] .ptv-sf-submit{
  min-height: 38px !important;
  border-radius: 8px !important;
  padding: 9px 16px !important;
  background: linear-gradient(135deg, #f8d02f 0%, #e1b109 100%) !important;
  color: #102445 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
}

#ptv-pm-faq{
  background: #ffffff !important;
}

#ptv-pm-faq .elementor-widget-heading .elementor-heading-title{
  margin-bottom: 8px;
}

#ptv-pm-faq .elementor-widget-accordion .elementor-accordion-item{
  border: 1px solid #e5e7eb !important;
  border-radius: 10px !important;
  margin-bottom: 10px !important;
  overflow: hidden !important;
  background: #f9fafb !important;
}

#ptv-pm-faq .elementor-tab-title{
  color: #111827 !important;
  font-weight: 600 !important;
  font-size: 13px !important;
}

#ptv-pm-faq .elementor-tab-content{
  color: #6b7280 !important;
  font-size: 13px !important;
  line-height: 1.7 !important;
}

@media (max-width: 991px){
  #ptv-pm-overview-grid .ptv-pm-service-col > .elementor-element-populated{
    min-height: 0 !important;
  }

  #ptv-pm-rent-hero > .elementor-container{
    padding: 20px 14px !important;
  }

  .ptv-pm-rent-hero-copy{
    padding: 12px !important;
  }

  .ptv-pm-rent-form-intro h3{
    font-size: 30px !important;
  }

  .ptv-pm-rent-hero-copy h2{
    font-size: 28px !important;
  }
}

.ptv-sf-upload-note{
  display: block;
  margin-top: 6px;
  font-size: 11px;
  line-height: 1.4;
  color: #6b7280;
}

.ptv-sf-upload-meta{
  grid-column: 1 / -1;
  margin-top: -2px;
  font-size: 11px;
  line-height: 1.35;
  color: #6b7280;
}

.ptv-sf-grid .ptv-sf-label:has(input[name="preferred_datetime"]){
  grid-column: 1 / -1;
  font-size: 12px;
  font-weight: 700;
}

.ptv-sf-input[type="file"]{
  min-height: 40px;
  padding: 6px 8px;
  cursor: pointer;
}

.ptv-sf-input[type="file"]::file-selector-button{
  margin-right: 10px;
  padding: 7px 12px;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  background: #ffffff;
  color: #111827;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  transition: background .2s ease, border-color .2s ease;
}

.ptv-sf-input[type="file"]:hover::file-selector-button{
  background: #f8fafc;
  border-color: #9ca3af;
}
