.rh-handyman-pro-page, .rh-handyman-pro-page * { box-sizing: border-box; }

    .rh-handyman-pro-page {

      font-family: Arial, sans-serif;

      background: #f8f7f5;

      color: #334155;

      overflow: hidden;

    }

    .rh-hm-wrap {

      max-width: 1180px;

      margin: 0 auto;

      padding: 0 20px;

    }

    .rh-hm-section {

      padding: 76px 0;

    }

    .rh-hm-label {

      display: inline-block;

      background: #fde7e0;

      color: #ef7f5a;

      padding: 8px 14px;

      border-radius: 999px;

      font-size: 13px;

      font-weight: 800;

      margin-bottom: 14px;

    }

    .rh-hm-title {

      margin: 0 0 16px;

      color: #123d6b;

      font-size: 42px;

      line-height: 1.06;

      font-weight: 900;

      letter-spacing: -0.03em;

    }

    .rh-hm-subtitle {

      margin: 0;

      color: #64748b;

      font-size: 16px;

      line-height: 1.85;

    }

    .rh-hm-btn,

    .rh-hm-btn-dark {

      display: inline-block;

      text-decoration: none;

      padding: 14px 24px;

      border-radius: 9px;

      font-size: 14px;

      font-weight: 800;

      transition: all .28s ease;

    }

    .rh-hm-btn {

      background: #ef7f5a;

      color: #ffffff;

      box-shadow: 0 12px 22px rgba(239,127,90,.25);

    }

    .rh-hm-btn:hover {

      transform: translateY(-2px);

      opacity: .95;

    }

    .rh-hm-btn-dark {

      background: #173f73;

      color: #ffffff;

    }

    .rh-hm-btn-dark:hover {

      background: #12345f;

      transform: translateY(-2px);

    }

    .rh-hm-hero {

      padding: 40px 0 56px;

      border-bottom: 1px solid rgba(18,61,107,.08);

      background:

        radial-gradient(circle at top left, rgba(239,127,90,.10), transparent 32%),

        radial-gradient(circle at bottom right, rgba(31,76,124,.10), transparent 32%),

        #f8f7f5;

    }

    .rh-hm-hero-grid {

      display: grid;

      grid-template-columns: 1.08fr .92fr;

      gap: 52px;

      align-items: center;

    }

    .rh-hm-actions {

      display: flex;

      gap: 14px;

      flex-wrap: wrap;

      margin-top: 26px;

    }

    .rh-hm-trust-row {

      display: grid;

      grid-template-columns: repeat(3, minmax(0, 1fr));

      gap: 12px;

      margin-top: 28px;

    }

    .rh-hm-trust {

      background: rgba(255,255,255,.82);

      border: 1px solid rgba(18,61,107,.10);

      border-radius: 10px;

      padding: 15px;

      box-shadow: 0 8px 22px rgba(15,23,42,.04);

    }

    .rh-hm-trust strong {

      display: block;

      color: #123d6b;

      font-size: 17px;

      margin-bottom: 4px;

    }

    .rh-hm-trust span {

      color: #64748b;

      font-size: 12.5px;

      line-height: 1.5;

    }

    .rh-hm-image-box {

      background: linear-gradient(135deg,#e9eef4 0%,#f7e4de 100%);

      border-radius: 12px;

      padding: 14px;

      min-height: 330px;

      display: flex;

      align-items: center;

      justify-content: center;

      box-shadow: 0 22px 44px rgba(15,23,42,.10);

    }

    .rh-hm-image-box img {

      width: 100%;

      height: 330px;

      object-fit: cover;

      border-radius: 9px;

      display: block;

    }

    .rh-hm-grid {

      display: grid;

      grid-template-columns: repeat(3,minmax(0,1fr));

      gap: 20px;

      margin-top: 30px;

    }

    .rh-hm-card {

      background: #ffffff;

      border: 1px solid rgba(18,61,107,.12);

      border-radius: 10px;

      padding: 24px 22px;

      box-shadow: 0 8px 24px rgba(15,23,42,.045);

      transition: all .28s ease;

      height: 100%;

    }

    .rh-hm-card:hover {

      transform: translateY(-5px);

      box-shadow: 0 18px 32px rgba(15,23,42,.09);

      border-color: rgba(239,127,90,.35);

    }

    .rh-hm-icon {

      width: 34px;

      height: 34px;

      border-radius: 8px;

      display: inline-flex;

      align-items: center;

      justify-content: center;

      background: #fde7e0;

      color: #ef7f5a;

      font-size: 17px;

      margin-bottom: 12px;

    }

    .rh-hm-card h3 {

      margin: 0 0 9px;

      font-size: 18px;

      color: #123d6b;

      line-height: 1.35;

      font-weight: 850;

    }

    .rh-hm-card p {

      margin: 0;

      font-size: 13.5px;

      line-height: 1.75;

      color: #64748b;

    }

    .rh-hm-split {

      display: grid;

      grid-template-columns: 1fr 420px;

      gap: 52px;

      align-items: center;

    }

    .rh-hm-list {

      list-style: none;

      padding: 0;

      margin: 24px 0 0;

    }

    .rh-hm-list li {

      position: relative;

      padding-left: 30px;

      margin-bottom: 15px;

      color: #334155;

      font-size: 14px;

      line-height: 1.75;

    }

    .rh-hm-list li::before {

      content: "✓";

      position: absolute;

      left: 0;

      top: 0;

      color: #ef7f5a;

      font-weight: 900;

    }

    .rh-hm-location-box {

      background: #ffffff;

      border: 1px solid rgba(18,61,107,.12);

      border-radius: 12px;

      padding: 28px;

      box-shadow: 0 12px 28px rgba(15,23,42,.055);

      margin-top: 28px;

    }

    .rh-hm-location-grid {

      display: grid;

      grid-template-columns: repeat(4, minmax(0, 1fr));

      gap: 12px;

      margin-top: 20px;

    }

    .rh-hm-area {

      background: #f3f1ed;

      border: 1px solid rgba(18,61,107,.08);

      color: #123d6b;

      padding: 12px 13px;

      border-radius: 8px;

      font-size: 13px;

      font-weight: 800;

      text-align: center;

    }

    .rh-hm-related {

      display: grid;

      grid-template-columns: repeat(3,minmax(0,1fr));

      gap: 18px;

      margin-top: 28px;

    }

    .rh-hm-related a {

      display: block;

      background: #ffffff;

      border: 1px solid rgba(18,61,107,.12);

      border-radius: 10px;

      padding: 20px;

      text-decoration: none;

      color: #123d6b;

      font-size: 14px;

      font-weight: 850;

      transition: all .28s ease;

      box-shadow: 0 8px 22px rgba(15,23,42,.04);

    }

    .rh-hm-related a span {

      display: block;

      margin-top: 7px;

      color: #64748b;

      font-size: 12.5px;

      line-height: 1.55;

      font-weight: 400;

    }

    .rh-hm-related a:hover {

      transform: translateY(-4px);

      color: #ef7f5a;

      border-color: rgba(239,127,90,.35);

    }

    .rh-hm-faq {

      display: grid;

      gap: 16px;

      margin-top: 28px;

    }

    .rh-hm-faq-item {

      background: #ffffff;

      border: 1px solid rgba(18,61,107,.12);

      border-radius: 10px;

      padding: 22px;

      box-shadow: 0 8px 24px rgba(15,23,42,.04);

    }

    .rh-hm-faq-item h3 {

      margin: 0 0 8px;

      font-size: 16px;

      color: #123d6b;

      font-weight: 850;

    }

    .rh-hm-faq-item p {

      margin: 0;

      font-size: 14px;

      color: #64748b;

      line-height: 1.75;

    }

    .rh-hm-cta {

      padding: 0 0 40px;

    }

    .rh-hm-cta-box {

      background:

        radial-gradient(circle at top left, rgba(255,255,255,.13), transparent 30%),

        linear-gradient(135deg,#1f4c7c 0%,#365d8e 100%);

      text-align: center;

      padding: 58px 24px;

      color: #ffffff;

    }

    .rh-hm-cta-box h2 {

      margin: 0 0 12px;

      font-size: 34px;

      line-height: 1.15;

      color: #ffffff;

      font-weight: 900;

    }

    .rh-hm-cta-box p {

      margin: 0 auto 22px;

      max-width: 760px;

      color: rgba(255,255,255,.88);

      font-size: 15px;

      line-height: 1.75;

    }

    .rh-hm-float-wa {

      position: fixed;

      right: 22px;

      bottom: 22px;

      z-index: 9999;

      display: inline-flex;

      align-items: center;

      gap: 9px;

      background: #22c55e;

      color: #ffffff;

      text-decoration: none;

      padding: 14px 18px;

      border-radius: 999px;

      font-size: 14px;

      font-weight: 900;

      box-shadow: 0 14px 28px rgba(34,197,94,.34);

      transition: all .28s ease;

    }

    .rh-hm-float-wa:hover {

      transform: translateY(-3px);

      box-shadow: 0 18px 34px rgba(34,197,94,.42);

    }

    @media (max-width:1024px) {

      .rh-hm-hero-grid,

      .rh-hm-split {

        grid-template-columns: 1fr;

      }

      .rh-hm-grid,

      .rh-hm-related {

        grid-template-columns: repeat(2,minmax(0,1fr));

      }

      .rh-hm-location-grid {

        grid-template-columns: repeat(3,minmax(0,1fr));

      }

    }

    @media (max-width:767px) {

      .rh-hm-wrap {

        padding: 0 16px;

      }

      .rh-hm-section {

        padding: 56px 0;

      }

      .rh-hm-title {

        font-size: 34px;

      }

      .rh-hm-grid,

      .rh-hm-related,

      .rh-hm-trust-row,

      .rh-hm-location-grid {

        grid-template-columns: 1fr;

      }

      .rh-hm-actions {

        flex-direction: column;

      }

      .rh-hm-btn,

      .rh-hm-btn-dark {

        width: 100%;

        text-align: center;

      }

      .rh-hm-image-box img {

        height: 250px;

      }

      .rh-hm-cta-box h2 {

        font-size: 28px;

      }

      .rh-hm-float-wa {

        left: 16px;

        right: 16px;

        justify-content: center;

        bottom: 16px;

      }

    }

/* WordPress Gutenberg compatibility adjustments */
.rh-handyman-pro-page .wp-block-group,
.rh-handyman-pro-page .wp-block-image,
.rh-handyman-pro-page .wp-block-buttons,
.rh-handyman-pro-page .wp-block-button,
.rh-handyman-pro-page p,
.rh-handyman-pro-page h1,
.rh-handyman-pro-page h2,
.rh-handyman-pro-page h3,
.rh-handyman-pro-page ul {
  box-sizing: border-box;
}
.rh-handyman-pro-page p.rh-hm-label,
.rh-handyman-pro-page p.rh-hm-icon,
.rh-handyman-pro-page p.rh-hm-area {
  margin-top: 0;
}
.rh-handyman-pro-page .rh-hm-section h2.rh-hm-title {
  font-size: 38px;
}
.rh-handyman-pro-page .rh-hm-location-box h3 {
  margin: 0;
  color: #123d6b;
  font-size: 22px;
  font-weight: 900;
}
.rh-handyman-pro-page .rh-hm-location-box p.rh-hm-subtitle {
  font-size: 14px;
  margin-top: 8px;
}
.rh-handyman-pro-page .rh-hm-image-box .wp-block-image {
  margin: 0;
  width: 100%;
}
.rh-handyman-pro-page .rh-hm-actions .wp-block-button {
  margin: 0;
}
.rh-handyman-pro-page .wp-block-button.rh-hm-btn,
.rh-handyman-pro-page .wp-block-button.rh-hm-btn-dark {
  padding: 0;
  background: transparent;
  box-shadow: none;
}
.rh-handyman-pro-page .wp-block-button.rh-hm-btn .wp-block-button__link {
  background: #ef7f5a;
  color: #ffffff;
  box-shadow: 0 12px 22px rgba(239,127,90,.25);
  padding: 14px 24px;
  border-radius: 9px;
  font-size: 14px;
  font-weight: 800;
  text-decoration: none;
}
.rh-handyman-pro-page .wp-block-button.rh-hm-btn-dark .wp-block-button__link {
  background: #173f73;
  color: #ffffff;
  padding: 14px 24px;
  border-radius: 9px;
  font-size: 14px;
  font-weight: 800;
  text-decoration: none;
}
.rh-handyman-pro-page .wp-block-button.rh-hm-btn .wp-block-button__link:hover,
.rh-handyman-pro-page .wp-block-button.rh-hm-btn-dark .wp-block-button__link:hover {
  transform: translateY(-2px);
}
.rh-handyman-pro-page .rh-hm-related p {
  margin: 0;
}
.rh-handyman-pro-page .rh-hm-cta-box .wp-block-button {
  display: inline-block;
}
.wp-block-button.rh-hm-float-wa {
  padding: 0;
  background: transparent;
  box-shadow: none;
}
.wp-block-button.rh-hm-float-wa .wp-block-button__link {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  background: #22c55e;
  color: #ffffff;
  text-decoration: none;
  padding: 14px 18px;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 900;
  box-shadow: 0 14px 28px rgba(34,197,94,.34);
}
.rh-handyman-pro-page .rh-hm-list.wp-block-list {
  list-style: none;
}
@media (max-width:767px) {
  .rh-handyman-pro-page .wp-block-button.rh-hm-btn,
  .rh-handyman-pro-page .wp-block-button.rh-hm-btn-dark,
  .rh-handyman-pro-page .wp-block-button.rh-hm-btn .wp-block-button__link,
  .rh-handyman-pro-page .wp-block-button.rh-hm-btn-dark .wp-block-button__link {
    width: 100%;
    text-align: center;
  }
}
