.pt-page {
      --green: #2f7d32;
      --green-dark: #1f5f25;
      --blue: #0b63ce;
      --navy: #071d3a;
      --ink: #071936;
      --muted: #516071;
      --soft: #f6f8fb;
      --border: rgba(7, 25, 54, 0.12);
      --shadow: 0 18px 45px rgba(7, 25, 54, 0.13);

      --hero-bg: url('/uploads/workspaces/12/images/home-page/pitown-hero-lakeside-20260707135022-2d6316d3.jpg?v=a4647bf72355');
      --dashboard-img: url('/uploads/workspaces/12/images/home-page/pitown-dashboard-ui-20260707135107-e57a84a6.jpg?v=125f169cc37a');
      --home-img: url('/uploads/workspaces/12/images/home-page/pitown-for-home-20260707135130-50fac597.jpg?v=b75dbbddf987');
      --business-img: url('/uploads/workspaces/12/images/home-page/pitown-for-business-20260707135149-e8193a99.jpg?v=760513a99f26');
      --builders-img: url('/uploads/workspaces/12/images/home-page/pitown-for-builders-20260707135209-58374fc1.jpg?v=491761ce76ba');
      --footer-img: url('/uploads/workspaces/12/images/home-page/pitown-footer-lake-20260707135230-fc860951.jpg?v=90d06ab8b78c');

      /* Replace this with the new bigger PiShield image once uploaded */
      --shield-img: url('/uploads/workspaces/12/images/home-page/pitown-trust-shield-20260707135301-b4488bc9.jpeg?v=1c31cdfca405');

      font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      color: var(--ink);
      background: #fff;
      overflow: hidden;
    }

    .pt-page * {
      box-sizing: border-box;
    }

    .pt-page a {
      color: inherit;
      text-decoration: none;
    }

    .pt-wrap {
      max-width: 1220px;
      margin: 0 auto;
      padding: 0 28px;
    }

    .pt-hero {
      position: relative;
      min-height: 680px;
      background-image:
        linear-gradient(90deg, rgba(255,255,255,0.96) 0%, rgba(255,255,255,0.90) 31%, rgba(255,255,255,0.38) 54%, rgba(255,255,255,0.03) 100%),
        var(--hero-bg);
      background-size: cover;
      background-position: 82% top;
      border-bottom: 1px solid rgba(7, 25, 54, 0.1);
      overflow: hidden;
    }

    .pt-hero:after {
      content: "";
      position: absolute;
      inset: auto 0 0 0;
      height: 160px;
      background: linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,0.92));
      pointer-events: none;
      z-index: 1;
    }

    .pt-hero-inner {
      position: relative;
      z-index: 2;
      min-height: 680px;
      display: grid;
      grid-template-columns: 0.98fr 1.02fr;
      gap: 34px;
      align-items: center;
      padding: 58px 28px 46px;
    }

    .pt-hero-copy {
      position: relative;
      z-index: 4;
    }

    .pt-eyebrow {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 8px 14px;
      background: rgba(255,255,255,0.86);
      border: 1px solid rgba(47,125,50,0.18);
      color: var(--green-dark);
      border-radius: 999px;
      font-weight: 850;
      font-size: 13px;
      margin-bottom: 20px;
      box-shadow: 0 12px 28px rgba(7,25,54,0.08);
      /* backdrop-filter removed by PiTown */
    }

    .pt-title {
      margin: 0;
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(46px, 6vw, 78px);
      line-height: 0.98;
      letter-spacing: -3px;
      color: var(--navy);
      max-width: 650px;
    }

    .pt-title .green {
      color: var(--green);
      display: block;
      font-size: 0.64em;
      letter-spacing: -2px;
      margin-top: 10px;
      line-height: 1.05;
    }

    .pt-subtitle {
      margin: 26px 0 0;
      max-width: 590px;
      color: #26384e;
      font-size: 18px;
      line-height: 1.65;
      font-weight: 520;
    }

    .pt-short {
      margin: 18px 0 0;
      color: #20324a;
      font-size: 18px;
      font-weight: 750;
    }

    .pt-hero-buttons {
      display: flex;
      flex-wrap: wrap;
      gap: 16px;
      margin-top: 30px;
    }

    .pt-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      min-height: 52px;
      padding: 0 24px;
      border-radius: 13px;
      font-weight: 850;
      font-size: 15px;
      text-decoration: none;
      border: 1px solid transparent;
      transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
      white-space: nowrap;
    }

    .pt-btn:hover {
      transform: translateY(-2px);
    }

    .pt-btn-primary {
      background: var(--green);
      color: #fff;
      box-shadow: 0 14px 28px rgba(47, 125, 50, 0.25);
    }

    .pt-btn-primary:hover {
      background: var(--green-dark);
    }

    .pt-btn-light {
      background: rgba(255, 255, 255, 0.96);
      color: var(--ink);
      border-color: rgba(7, 25, 54, 0.14);
      box-shadow: 0 12px 25px rgba(7, 25, 54, 0.09);
    }

    .pt-trust-mini {
      margin-top: 38px;
      display: inline-flex;
      align-items: center;
      gap: 13px;
      color: var(--navy);
      max-width: 460px;
      background: rgba(255,255,255,0.86);
      border: 1px solid rgba(7,25,54,0.10);
      border-radius: 18px;
      padding: 12px 15px;
      box-shadow: 0 18px 36px rgba(7,25,54,0.12);
      /* backdrop-filter removed by PiTown */
    }

    .pt-trust-mini-icon {
      width: 42px;
      height: 42px;
      border-radius: 999px;
      background: #eaf3ff;
      color: var(--blue);
      display: grid;
      place-items: center;
      font-size: 22px;
      box-shadow: 0 8px 18px rgba(7,25,54,0.12);
      flex: 0 0 auto;
    }

    .pt-trust-mini strong {
      display: block;
      font-size: 17px;
      line-height: 1.1;
      color: var(--navy);
    }

    .pt-trust-mini span {
      display: block;
      font-size: 14px;
      margin-top: 4px;
      font-weight: 750;
      color: #38475a;
    }

    .pt-dashboard-frame {
      position: relative;
      min-height: 470px;
      display: flex;
      align-items: center;
      justify-content: flex-start;
      z-index: 3;
    }

    .pt-dashboard-img {
      width: min(610px, 100%);
      aspect-ratio: 4 / 3;
      background-image: var(--dashboard-img);
      background-size: contain;
      background-repeat: no-repeat;
      background-position: center;
      filter: drop-shadow(0 30px 45px rgba(7, 25, 54, 0.24));
      border-radius: 22px;
      transform: translate(5px, 54px);
      position: relative;
      z-index: 2;
    }

    .pt-section {
      padding: 34px 0 68px;
      background: #fff;
    }

    .pt-use-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 28px;
      margin-top: -4px;
    }

    .pt-use-card {
      display: block;
      background: #fff;
      border: 1px solid var(--border);
      border-radius: 18px;
      overflow: hidden;
      box-shadow: 0 12px 35px rgba(7, 25, 54, 0.08);
      position: relative;
      transition: transform 0.18s ease, box-shadow 0.18s ease;
    }

    .pt-use-card:hover {
      transform: translateY(-5px);
      box-shadow: 0 20px 45px rgba(7, 25, 54, 0.14);
    }

    .pt-card-image {
      height: 190px;
      background-size: cover;
      background-position: center;
    }

    .pt-card-image.home {
      background-image: var(--home-img);
    }

    .pt-card-image.business {
      background-image: var(--business-img);
    }

    .pt-card-image.builders {
      background-image: var(--builders-img);
    }

    .pt-card-icon {
      width: 66px;
      height: 66px;
      border-radius: 999px;
      display: grid;
      place-items: center;
      color: #fff;
      font-size: 31px;
      border: 5px solid #fff;
      box-shadow: 0 12px 30px rgba(7, 25, 54, 0.18);
      margin: -34px 0 12px 32px;
      position: relative;
      z-index: 2;
    }

    .pt-card-icon.green {
      background: var(--green);
    }

    .pt-card-icon.blue {
      background: var(--blue);
    }

    .pt-card-icon.purple {
      background: #6d36aa;
    }

    .pt-use-content {
      padding: 0 32px 30px;
      min-height: 210px;
    }

    .pt-use-content h2 {
      margin: 10px 0 14px;
      font-family: Georgia, "Times New Roman", serif;
      color: var(--navy);
      font-size: 31px;
      letter-spacing: -0.8px;
    }

    .pt-use-content p {
      margin: 0;
      color: #24364c;
      font-size: 17px;
      line-height: 1.62;
      font-weight: 500;
    }

    .pt-card-arrow {
      position: absolute;
      right: 27px;
      bottom: 27px;
      width: 32px;
      height: 32px;
      display: grid;
      place-items: center;
      color: #fff;
      border-radius: 999px;
      font-size: 20px;
      font-weight: 900;
    }

    .pt-card-arrow.green {
      background: var(--green);
    }

    .pt-card-arrow.blue {
      background: var(--blue);
    }

    .pt-card-arrow.purple {
      background: #6d36aa;
    }

    .pt-center-title {
      text-align: center;
      margin: 42px auto 30px;
    }

    .pt-center-title h2 {
      margin: 0;
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(32px, 4vw, 43px);
      color: var(--navy);
      letter-spacing: -1.2px;
    }

    .pt-underline {
      width: 52px;
      height: 3px;
      border-radius: 999px;
      background: var(--green);
      display: block;
      margin: 13px auto 0;
    }

    .pt-feature-grid {
      display: grid;
      grid-template-columns: repeat(9, 1fr);
      gap: 14px;
      margin-top: 22px;
    }

    .pt-feature {
      display: block;
      min-height: 158px;
      border: 1px solid var(--border);
      border-radius: 16px;
      background: #fff;
      text-align: center;
      padding: 21px 12px 16px;
      box-shadow: 0 10px 24px rgba(7, 25, 54, 0.055);
    }

    .pt-feature .icon {
      height: 45px;
      font-size: 38px;
      display: grid;
      place-items: center;
      margin-bottom: 10px;
    }

    .pt-feature h3 {
      margin: 0;
      color: var(--navy);
      font-size: 15px;
      font-weight: 850;
    }

    .pt-feature p {
      margin: 8px auto 0;
      color: #38475a;
      font-size: 12px;
      line-height: 1.35;
      font-weight: 600;
      max-width: 105px;
    }

    .pt-trust-block {
      position: relative;
      margin-top: 54px;
      display: grid;
      grid-template-columns: 300px 1fr;
      gap: 34px;
      align-items: center;
      padding: 10px 0 0;
    }

    .pt-shield {
      width: 260px;
      height: 260px;
      background-image: var(--shield-img);
      background-size: contain;
      background-repeat: no-repeat;
      background-position: center;
      justify-self: center;
      border-radius: 0;
      background-color: transparent;
      box-shadow: none;
      border: none;
      display: block;
    }

    .pt-trust-copy {
      text-align: center;
      padding-right: 120px;
    }

    .pt-trust-copy h2 {
      margin: 0 auto;
      max-width: 780px;
      font-family: Georgia, "Times New Roman", serif;
      color: var(--navy);
      font-size: clamp(25px, 3vw, 34px);
      line-height: 1.25;
      letter-spacing: -0.8px;
    }

    .pt-trust-copy h2 span {
      color: var(--green);
    }

    .pt-badges {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      gap: 20px;
      margin-top: 24px;
      color: #24364c;
      font-size: 14px;
      font-weight: 760;
    }

    .pt-badge {
      display: inline-flex;
      align-items: center;
      gap: 8px;
    }

    .pt-check {
      width: 18px;
      height: 18px;
      border-radius: 999px;
      border: 2px solid var(--green);
      color: var(--green);
      display: grid;
      place-items: center;
      font-size: 12px;
      line-height: 1;
      font-weight: 900;
    }

    .pt-footer-scenic {
      margin-top: -6px;
      min-height: 210px;
      background-image:
        linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0.55) 24%, rgba(255,255,255,0.08) 60%),
        var(--footer-img);
      background-size: cover;
      background-position: center bottom;
      position: relative;
      display: flex;
      align-items: flex-end;
      justify-content: center;
      padding: 0 24px 23px;
    }

    .pt-footer-line {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      text-align: center;
      color: var(--navy);
      font-weight: 850;
      background: rgba(255,255,255,0.68);
      border: 1px solid rgba(255,255,255,0.8);
      /* backdrop-filter removed by PiTown */
      padding: 10px 18px;
      border-radius: 999px;
      box-shadow: 0 12px 30px rgba(7,25,54,0.12);
    }

    @media (max-width: 1080px) {
      .pt-hero {
        background-position: 80% top;
      }

      .pt-hero-inner {
        grid-template-columns: 1fr;
        padding-top: 46px;
      }

      .pt-dashboard-frame {
        min-height: 360px;
        justify-content: center;
      }

      .pt-dashboard-img {
        transform: none;
        width: min(650px, 100%);
      }

      .pt-use-grid {
        grid-template-columns: 1fr;
      }

      .pt-card-image {
        height: 260px;
      }

      .pt-feature-grid {
        grid-template-columns: repeat(3, 1fr);
      }

      .pt-trust-block {
        grid-template-columns: 1fr;
      }

      .pt-shield {
        width: 240px;
        height: 240px;
      }

      .pt-trust-copy {
        padding-right: 0;
      }
    }

    @media (max-width: 720px) {
      .pt-wrap {
        padding: 0 18px;
      }

      .pt-hero {
        min-height: auto;
        background-image:
          linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(255,255,255,0.93) 46%, rgba(255,255,255,0.44) 100%),
          var(--hero-bg);
        background-position: 78% top;
      }

      .pt-hero-inner {
        min-height: auto;
        padding: 38px 18px 34px;
      }

      .pt-title {
        font-size: 46px;
        letter-spacing: -2px;
      }

      .pt-title .green {
        font-size: 0.66em;
      }

      .pt-subtitle,
      .pt-short {
        font-size: 16px;
      }

      .pt-btn {
        width: 100%;
      }

      .pt-trust-mini {
        width: 100%;
      }

      .pt-dashboard-frame {
        min-height: 270px;
      }

      .pt-dashboard-img {
        width: min(100%, 620px);
        transform: none;
      }

      .pt-card-image {
        height: 210px;
      }

      .pt-feature-grid {
        grid-template-columns: repeat(2, 1fr);
      }

      .pt-trust-block {
        margin-top: 34px;
      }

      .pt-shield {
        width: 190px;
        height: 190px;
      }

      .pt-badges {
        align-items: flex-start;
        justify-content: flex-start;
        gap: 12px;
      }

      .pt-badge {
        width: 100%;
      }

      .pt-footer-line {
        border-radius: 18px;
        flex-wrap: wrap;
      }
    }

/* PiTown v18.6.101ce narrow PiBuilder rendering guard. */
main.pt-0{padding-top:0!important;overflow-x:hidden;background:#f5f8fc;color:#0f172a;}
main.pt-0 img,main.pt-0 video{max-width:100%;height:auto;}
main.pt-0 .pt-home{width:100%;max-width:none;margin:0;background:linear-gradient(180deg,#f8fbff 0%,#eef4fb 100%);}
main.pt-0 .pt-home-hero{padding-top:clamp(18px,2.4vw,34px)!important;padding-bottom:clamp(22px,3vw,38px)!important;}
main.pt-0 .pt-home-wrap{max-width:1180px;margin-left:auto;margin-right:auto;}
main.pt-0 .pt-home-hero-grid{align-items:start!important;}
main.pt-0 .pt-home-panel{overflow:visible!important;}
main.pt-0 .pt-home-side{max-height:none!important;overflow:visible!important;}
main.pt-0 .pt-home-stats{align-items:stretch!important;}
main.pt-0 .pt-home-section{padding-top:clamp(20px,2.5vw,30px)!important;}
@media(max-width:760px){main.pt-0 .pt-home-hero{padding-top:18px!important;padding-bottom:26px!important;}main.pt-0 .pt-home-main,main.pt-0 .pt-home-side{padding:20px!important;}}