/* Scoped property-management redesign. No changes to other pages. */
.pm-hero, .pm-benefits { --pm-navy:#092949; --pm-ink:#152a46; --pm-muted:#53647a; --pm-green:#0a9b71; --pm-blue:#3073cf; --pm-coral:#eb5b60; }
.pm-hero.main { position:relative; padding:60px 0 82px; background:linear-gradient(122deg,#fff 0%,#fff 53%,#f4fbf9 100%); overflow:hidden; }
.pm-hero__layout { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr); align-items:center; gap:76px; }
.pm-hero__copy { min-width:0; max-width:610px; padding:16px 0; }
.pm-hero__eyebrow, .pm-benefits__eyebrow { margin:0 0 19px; color:#117e69; font-size:12px; font-weight:800; letter-spacing:.11em; line-height:1.5; }
.pm-hero__title { font-size:clamp(35px,3.25vw,52px); line-height:1.17; color:var(--pm-navy); font-weight:800; letter-spacing:-.025em; text-transform:none; margin:0 0 24px; }
.pm-hero__lead { font-size:17px; line-height:1.7; color:var(--pm-muted); max-width:550px; margin:0 0 31px; }
.pm-hero__actions { display:flex; align-items:center; gap:21px; flex-wrap:wrap; }
.pm-hero__button.button { width:auto; min-height:57px; height:auto; padding:16px 23px; border-radius:10px; display:inline-flex; gap:11px; align-items:center; text-transform:uppercase; font-size:13px; font-weight:800; letter-spacing:.015em; background:linear-gradient(135deg,#23be78,#0b966d); color:#fff; box-shadow:0 12px 22px rgba(12,154,110,.16); text-decoration:none; }
.pm-hero__button.button:hover { background:linear-gradient(135deg,#1db270,#0a8564); color:#fff; }
.pm-hero__button svg {flex:0 0 auto;}
.pm-hero__phone { color:var(--pm-navy); font-size:14px; font-weight:700; text-decoration:underline; text-underline-offset:4px; }
.pm-hero__phone:hover { color:var(--pm-green); }
.pm-hero__booking-note { color:#7a8797; font-size:12px; margin:11px 0 0; }
.pm-hero__trust { display:flex; gap:11px 23px; align-items:center; flex-wrap:wrap; border-top:1px solid #e2eaed; margin-top:31px; padding-top:22px; }
.pm-hero__trust span { display:inline-flex; align-items:center; gap:8px; font-weight:700; color:#405a68; font-size:12px; }
.pm-hero__trust svg { color:#12976f; }
.pm-hero__visual { position:relative; min-width:0; max-width:480px; width:100%; margin-left:auto; padding:14px 0 29px; }
.pm-hero__visual::before { content:""; position:absolute; z-index:0; left:-55px; top:80px; width:154px; height:154px; border-radius:50%; background:#e9f8f2; }
.pm-hero__photo-frame { border-radius:28px; position:relative; z-index:1; overflow:hidden; height:480px; box-shadow:0 25px 70px rgba(10,49,73,.10); background:#e7f2ed; }
.pm-hero__photo {display:block; height:100%; width:100%; object-fit:cover; object-position:center; }
.pm-hero__visual-label { z-index:3; position:absolute; display:flex; align-items:center; gap:10px; right:-16px; top:52px; background:#fff; border:1px solid #e6eceb; box-shadow:0 8px 23px rgba(3,37,57,.10); padding:13px 15px; border-radius:13px; color:#244054; font-size:12px; font-weight:800; line-height:1.45; }
.pm-hero__visual-label-dot {height:12px; width:12px; flex:0 0 12px; border-radius:50%; background:#14b881; box-shadow:0 0 0 5px #e5f8ef;}
.pm-hero__reviews { position:absolute; z-index:4; bottom:4px; left:-28px; width:max-content; max-width:calc(100% + 10px); background:#fff; border:1px solid #e7eefa; border-radius:14px; display:flex; align-items:center; gap:12px; padding:14px 15px; box-shadow:0 12px 30px rgba(5,31,62,.15); color:var(--pm-navy); text-decoration:none; }
.pm-hero__reviews:hover { text-decoration:none; color:var(--pm-green); box-shadow:0 15px 35px rgba(5,31,62,.22); }
.pm-hero__google-icon { display:flex; align-items:center; justify-content:center; width:41px; height:41px; border:1px solid #e8eef7; border-radius:11px; background:#fff; font-size:24px; font-weight:800; color:#4285f4; font-family:Arial,sans-serif; }
.pm-hero__review-copy { display:flex; flex-direction:column; gap:1px; }
.pm-hero__review-copy strong { font-size:14px; line-height:1.35; }
.pm-hero__review-copy small { font-size:12px; color:#708198; }
.pm-hero__review-arrow { color:var(--pm-green); display:flex; margin-left:10px; }
.pm-benefits { padding:84px 0 83px; background:linear-gradient(180deg,#f4f8fc 0%,#f8fafc 100%); }
.pm-benefits__intro { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); align-items:end; gap:60px; margin-bottom:32px; }
.pm-benefits__eyebrow { color:#55718e; margin-bottom:11px; }
.pm-benefits__titles h2 { color:var(--pm-navy); font-weight:800; font-size:clamp(30px,2.75vw,42px); line-height:1.2; letter-spacing:-.026em; text-transform:none; }
.pm-benefits__lead { color:var(--pm-muted); font-size:15px; line-height:1.75; margin:0 0 3px; }
.pm-benefits__grid { display:grid; grid-template-columns:1.16fr 1fr 1fr; gap:17px; }
.pm-benefit { min-width:0; padding:29px 27px; border-radius:19px; min-height:296px; display:flex; flex-direction:column; align-items:flex-start; }
.pm-benefit--featured { background:linear-gradient(145deg,#0d4160,#082640); color:#fff; position:relative; overflow:hidden; box-shadow:0 13px 35px rgba(4,37,68,.12); }
.pm-benefit--featured::after { content:""; height:240px; width:240px; position:absolute; bottom:-155px; right:-80px; border-radius:50%; border:42px solid rgba(71,207,155,.14); pointer-events:none; }
.pm-benefit--standard { background:#fff; border:1px solid #e5ebf1; box-shadow:0 8px 24px rgba(15,50,84,.045); color:var(--pm-ink); }
.pm-benefit__icon { border-radius:13px; display:flex; align-items:center; justify-content:center; height:57px; width:57px; margin-bottom:22px; }
.pm-benefit__icon--featured { color:#fff; background:rgba(41,188,153,.22); }
.pm-benefit__icon--blue { color:#2a70bc; background:#eaf3ff; }
.pm-benefit__icon--coral { color:#d75058; background:#fff0ef; }
.pm-benefit__content { position:relative; z-index:1; }
.pm-benefit__tag { font-weight:800; letter-spacing:.095em; color:#768ba0; font-size:11px; margin:0 0 9px; }
.pm-benefit--featured .pm-benefit__tag { color:#9ae8cb; }
.pm-benefit h3 { color:inherit; font-weight:800; font-size:21px; line-height:1.25; letter-spacing:-.01em; text-transform:none; margin:0 0 12px; }
.pm-benefit__content > p:last-of-type { font-size:14px; line-height:1.72; margin:0; color:#596c7c; }
.pm-benefit--featured .pm-benefit__content > p:last-of-type { color:#d8e7ef; }
.pm-benefit__pills { display:flex; flex-wrap:wrap; gap:8px; margin-top:23px; }
.pm-benefit__pills span { display:flex; align-items:center; gap:6px; font-size:11px; line-height:1.2; font-weight:700; padding:9px 10px; color:#defcee; background:rgba(255,255,255,.10); border:1px solid rgba(255,255,255,.10); border-radius:18px; }
.pm-benefits__footer { display:flex; justify-content:space-between; align-items:center; gap:22px; margin-top:27px; padding:21px 25px; background:#fff; border-radius:15px; border:1px solid #e3ebf0; }
.pm-benefits__footer p { color:#536477; font-size:14px; margin:0; line-height:1.5; }
.pm-benefits__footer strong { color:var(--pm-navy); }
.pm-benefits__footer a { color:#0b936d; font-size:14px; font-weight:800; white-space:nowrap; display:inline-flex; align-items:center; gap:8px; text-decoration:none; }
.pm-benefits__footer a:hover { text-decoration:underline; }
@media (max-width:1199px){
  .pm-hero__layout {gap:43px;}
  .pm-hero__visual-label {right:-7px;}
  .pm-hero__title {font-size:clamp(34px,3.7vw,45px);}
  .pm-benefits__grid {grid-template-columns:1fr 1fr;}
  .pm-benefit--featured {grid-column:span 2; min-height:0;}
  .pm-benefit--featured .pm-benefit__pills {margin-top:16px;}
  .pm-benefit--standard {min-height:260px;}
}
@media (max-width:991px){
  .pm-hero.main {padding:53px 0 58px;}
  .pm-hero__layout {grid-template-columns:minmax(0,1fr) minmax(0,.86fr); gap:24px;}
  .pm-hero__title {font-size:clamp(30px,3.7vw,39px);}
  .pm-hero__lead {font-size:15px;line-height:1.65;}
  .pm-hero__photo-frame {height:390px;}
  .pm-hero__visual-label {display:none;}
  .pm-hero__reviews {left:-16px;}
  .pm-hero__actions {gap:9px;}
  .pm-benefits {padding:60px 0;}
  .pm-benefits__intro {gap:18px;}
}
@media (max-width:767px){
  .pm-hero.main {padding:38px 0 58px;}
  .pm-hero__layout {grid-template-columns:1fr; gap:26px;}
  .pm-hero__copy {padding:0;max-width:600px;}
  .pm-hero__title {font-size:clamp(30px,7vw,42px);}
  .pm-hero__lead {margin-bottom:23px;}
  .pm-hero__trust {margin-top:23px;}
  .pm-hero__visual {max-width:450px; margin:0 auto; padding:0 8px 25px;}
  .pm-hero__photo-frame {height:350px;}
  .pm-hero__reviews {left:0;bottom:0;}
  .pm-benefits__intro {display:block;margin-bottom:24px;}
  .pm-benefits__lead {margin-top:16px;}
  .pm-benefits__grid {grid-template-columns:1fr;gap:13px;}
  .pm-benefit--featured {grid-column:auto;}
  .pm-benefit,.pm-benefit--standard {min-height:0;padding:24px;}
  .pm-benefits__footer {flex-direction:column;align-items:flex-start;padding:20px;}
}
@media (max-width:430px){
  .pm-hero__title {font-size:32px;}
  .pm-hero__actions {align-items:stretch;flex-direction:column;}
  .pm-hero__button.button {justify-content:center;font-size:12px;padding:15px 11px;min-height:54px;}
  .pm-hero__phone {padding:7px 0;}
  .pm-hero__photo-frame {height:300px;}
  .pm-hero__reviews {max-width:calc(100% + 7px);padding:11px;gap:8px;}
  .pm-hero__google-icon {width:34px;height:34px;font-size:21px;}
  .pm-hero__review-copy strong {font-size:12px;}
  .pm-hero__review-copy small {font-size:11px;}
  .pm-hero__review-arrow {margin-left:0;}
  .pm-benefits__titles h2 {font-size:29px;}
  .pm-benefit h3 {font-size:20px;}
}
@media (prefers-reduced-motion:no-preference){
  .pm-hero__button.button,.pm-hero__reviews,.pm-benefits__footer a {transition:box-shadow .16s ease,background .16s ease,color .16s ease;}
}
