/* Maintenance Services: property manager dashboard */
.service-module--maintenance {
  --svc-accent: #16a34a;
  --svc-accent-2: #0f766e;
  --svc-accent-dark: #166534;
  --svc-bg: #f0fdf4;
}
.service-module--maintenance .svc-hero__copy { background: linear-gradient(135deg, rgba(255,255,255,.97), rgba(240,253,244,.94)); }
.maintenance-dashboard-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 13px; margin-top: 0; align-items: start; }
.maintenance-dashboard-grid article { padding: 17px; border-radius: 18px; border: 1px solid rgba(22,163,74,.17); background: #fff; box-shadow: var(--svc-shadow); }
.maintenance-dashboard-grid span { display: inline-flex; margin-bottom: 8px; color: var(--svc-accent-dark); font-size: .82rem; text-transform: uppercase; letter-spacing: .07em; font-weight: 650; }
.maintenance-dashboard-grid strong { display: block; font-size: 1.04rem; line-height: 1.35; font-weight: 650; }
.maintenance-service-fit .svc-card { background: linear-gradient(180deg, #fff, #f0fdf4); }
@media (max-width: 900px) { .maintenance-dashboard-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 560px) { .maintenance-dashboard-grid { grid-template-columns: 1fr; } }

/* Service V2+ capability and scope blocks */
.maintenance-v2-trust,
.maintenance-hub-v2 { margin-top:18px; }
.maintenance-v2-trust__metrics,
.maintenance-hub-v2__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.maintenance-v2-trust__metrics article,
.maintenance-hub-v2__grid article { padding:18px; border:1px solid rgba(22,163,74,.16); border-radius:18px; background:linear-gradient(180deg,#fff,#f0fdf4); box-shadow:0 10px 28px rgba(15,23,42,.05); }
.maintenance-v2-trust__metrics strong,
.maintenance-hub-v2__grid strong { display:block; font-size:1.15rem; color:#15803d; }
.maintenance-v2-trust__metrics span,
.maintenance-hub-v2__grid span { display:block; margin-top:3px; font-weight:700; color:#111827; }
.maintenance-v2-trust__metrics small,
.maintenance-hub-v2__grid small { display:block; margin-top:7px; color:#64748b; line-height:1.45; }
.maintenance-v2-trust__badges,
.maintenance-hub-v2__badges { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.maintenance-v2-trust__badges span,
.maintenance-hub-v2__badges span { padding:7px 11px; border-radius:999px; background:#dcfce7; color:#166534; font-size:.82rem; font-weight:700; }
.maintenance-v2-trust__note,
.maintenance-hub-v2__note { margin:12px 0 0; color:#475569; line-height:1.6; }
.maintenance-v2-trust__note--warranty { font-size:.92rem; }
.maintenance-v2-details { margin-top:22px; }
.maintenance-v2-details__head { max-width:900px; margin-bottom:16px; }
.maintenance-v2-details__head h2 { margin:.4rem 0 .55rem; }
.maintenance-v2-details__head p { color:#64748b; line-height:1.65; }
.maintenance-v2-details__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.maintenance-v2-detail-card { padding:18px; border:1px solid rgba(22,163,74,.13); border-radius:18px; background:#fff; }
.maintenance-v2-detail-card > span { display:block; color:#15803d; font-size:.78rem; text-transform:uppercase; letter-spacing:.06em; font-weight:800; }
.maintenance-v2-detail-card h3 { margin:.4rem 0 .7rem; font-size:1.08rem; }
.maintenance-v2-detail-card ul { margin:0; padding-left:1.1rem; color:#475569; line-height:1.55; }
.maintenance-v2-decision,
.maintenance-v2-boundaries,
.maintenance-v2-context { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:14px; }
.maintenance-v2-decision article,
.maintenance-v2-boundaries > div,
.maintenance-v2-context > div { padding:16px; border-radius:16px; border:1px solid rgba(15,23,42,.08); background:#f8fafc; }
.maintenance-v2-decision span { display:block; color:#15803d; font-size:.78rem; font-weight:800; text-transform:uppercase; }
.maintenance-v2-decision p,
.maintenance-v2-boundaries p,
.maintenance-v2-context p { margin:.35rem 0 0; color:#475569; line-height:1.55; }
@media (max-width:900px) {
  .maintenance-v2-trust__metrics,.maintenance-hub-v2__grid,.maintenance-v2-details__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:600px) {
  .maintenance-v2-trust__metrics,.maintenance-hub-v2__grid,.maintenance-v2-details__grid,.maintenance-v2-decision,.maintenance-v2-boundaries,.maintenance-v2-context { grid-template-columns:1fr; }
}

/* V2 trust UI cleanup: one claim per card, no repeated badges/paragraphs. */
.maintenance-v2-trust__metrics--compact { grid-template-columns:repeat(3,minmax(0,1fr)); }
.maintenance-v2-trust__metrics--compact article { padding:15px 17px; border-radius:16px; box-shadow:0 8px 22px rgba(15,23,42,.04); }
.maintenance-v2-trust__metrics--compact strong { font-size:1.02rem; }
.maintenance-v2-trust__metrics--compact span { font-size:.92rem; }
.maintenance-v2-trust__metrics--compact small { margin-top:5px; font-size:.86rem; line-height:1.4; }
.maintenance-hub-v2__extras { display:flex; flex-wrap:wrap; align-items:center; gap:7px 12px; margin-top:10px; color:#64748b; font-size:.86rem; }
.maintenance-hub-v2__extras strong { color:#334155; }
.maintenance-hub-v2__extras span + span::before { content:"·"; margin-right:12px; color:#94a3b8; }
.maintenance-hub-v2__grid article { padding:14px 16px; border-radius:16px; box-shadow:0 8px 22px rgba(15,23,42,.04); }
.maintenance-hub-v2__grid strong { font-size:1.02rem; }
.maintenance-hub-v2__grid span { font-size:.91rem; }
.maintenance-hub-v2__grid small { margin-top:5px; font-size:.84rem; line-height:1.4; }
@media (max-width:900px) { .maintenance-v2-trust__metrics--compact { grid-template-columns:1fr; } }

.maintenance-hub-v2__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
