/* Site-wide layout refresh: rounded boxes and buttons, card widgets, softer sections.
   Colors and fonts are unchanged (red #c5260e, ink #222429, Lalezar + Titillium Web). */
:root { --jm-r: 16px; --jm-r-sm: 10px; --jm-shadow: 0 2px 10px rgba(17,18,20,.10); }

/* No V-shaped cuts anywhere */
.header-mask, .header-hero-border { display: none !important; }

/* Buttons */
body:not(.home) .button,
body:not(.home) .button-inner,
body:not(.home) a.button,
body:not(.home) .wpforms-submit,
body:not(.home) button.wpforms-submit,
body:not(.home) .wp-block-button__link,
body:not(.home) .header-button a,
body:not(.home) .nav-primary .header-button > a,
body:not(.home) .button-block-wrapper a { border-radius: var(--jm-r-sm) !important; }body:not(.home) .wpforms-submit,
body:not(.home) a.button { transition: transform .15s ease, background-color .15s ease; }body:not(.home) .wpforms-submit:hover,
body:not(.home) a.button:hover { transform: translateY(-1px); }/* Form fields */
body:not(.home) .wpforms-container input[type=text],
body:not(.home) .wpforms-container input[type=email],
body:not(.home) .wpforms-container input[type=tel],
body:not(.home) .wpforms-container input[type=number],
body:not(.home) .wpforms-container select,
body:not(.home) .wpforms-container textarea {
  border-radius: var(--jm-r-sm) !important; border: 1px solid #d3d5db !important; background: #fff !important; padding: 12px 14px !important; box-sizing: border-box; }body:not(.home) .wpforms-container input:focus,
body:not(.home) .wpforms-container textarea:focus,
body:not(.home) .wpforms-container select:focus {
  border-color: #c5260e !important; box-shadow: 0 0 0 3px rgba(197,38,14,.15) !important; outline: none; }/* Sidebar widgets become cards */
body:not(.home) .sidebar .widget { background: #fff; border-radius: var(--jm-r); box-shadow: var(--jm-shadow); padding: 22px 22px 18px; margin-bottom: 22px; border: 1px solid #ececef; }body:not(.home) .sidebar .widget-wrap { background: transparent; }body:not(.home) .sidebar .widget-title { margin-bottom: 14px; }body:not(.home) .sidebar .widget-sticky-contact-form { border-top: 4px solid #c5260e; }body:not(.home) .sidebar .widget:has(.hooked-reviews-badge) { padding: 0; border: 0; overflow: hidden; background: transparent; box-shadow: none; }body:not(.home) .hooked-reviews-badge { border-radius: var(--jm-r); overflow: hidden; }body:not(.home) .review-container { border-radius: var(--jm-r-sm); }/* Content */
body:not(.home) .entry-content img,
body:not(.home) .entry-content figure img,
body:not(.home) .wp-block-image img,
body:not(.home) .post-thumbnail img { border-radius: var(--jm-r); }body:not(.home) .entry-content > h2.wp-block-heading,
body:not(.home) .entry-content .wp-block-group > .wp-block-group__inner-container > h2 { margin-top: 1.6em; }body:not(.home) .entry-content ul.wp-block-list:not(.jm-badges) li::marker { color: #c5260e; }body:not(.home) .entry-content a:not(.button):not(.jm-svc-link):not(.jm-cta) { text-underline-offset: 3px; }/* Trust badges under the hero */
body:not(.home) .jm-badges { display: flex; flex-wrap: wrap; gap: 10px; list-style: none !important; margin: 0 0 32px !important; padding: 0 !important; }body:not(.home) .jm-badges li { margin: 0 !important; padding: 9px 16px 9px 38px !important; position: relative; background: #fff; border: 1px solid #e3e4e8; border-radius: 999px;
  box-shadow: var(--jm-shadow); font: 700 15px "Titillium Web", sans-serif; color: #222429; list-style: none !important; }body:not(.home) .jm-badges li::before { content: ""; position: absolute; left: 14px; top: 50%; width: 15px; height: 15px; transform: translateY(-50%); border-radius: 50%; background: #c5260e; }body:not(.home) .jm-badges li::after { content: ""; position: absolute; left: 19px; top: 50%; width: 4px; height: 8px; border: solid #fff; border-width: 0 2px 2px 0; transform: translateY(-62%) rotate(45deg); }/* Highlight groups and call-out bands */
body:not(.home) .wp-block-group.call-out-group { border-radius: var(--jm-r); overflow: hidden; }body:not(.home) .wp-block-group.has-background { border-radius: var(--jm-r); }body:not(.home) .wp-block-columns .wp-block-column .wp-block-group { border-radius: var(--jm-r); }/* Blog cards */
body:not(.home) .archive .entry-item,
body:not(.home) .blog .entry-item,
body:not(.home) article.entry-item { background: #fff; border-radius: var(--jm-r); box-shadow: var(--jm-shadow); border: 1px solid #ececef; padding: 18px; margin-bottom: 26px; }body:not(.home) .entry-archive-img-container,
body:not(.home) .entry-archive-img,
body:not(.home) .archive-image { border-radius: var(--jm-r); overflow: hidden; }body:not(.home) .entry-item .read-more { font-weight: 700; color: #c5260e; }

/* Footer call-to-action band and columns */
.cta-footer-inner { border-radius: var(--jm-r); }
.cta-footer .cta-footer-content h3 a { text-decoration: none; }
.footer-widgets .widget { border-radius: var(--jm-r); }
.footer-decoration { display: none !important; }
.site-footer, .cta-footer { border-radius: 28px 28px 0 0; }
.cta-footer { margin-top: 0; }
.site-footer .footer-widget-area .widget-title { letter-spacing: .08em; }

/* Reviews, contact boxes */
body:not(.home) .contact-info-box-contact-page { border-radius: var(--jm-r); overflow: hidden; }
body:not(.home) .wp-block-columns.contact-page-columns { gap: 28px; }
body:not(.home) .review-quote, body:not(.home) .wp-block-quote { border-radius: var(--jm-r); }

@media (max-width: 640px) { :root { --jm-r: 14px; } body:not(.home) .sidebar .widget { padding: 18px; } }

/* ---- Round 2: header, footer, full-width sections, images (all pages) ---- */
/* Header buttons: the red box is the inner span */
.header-button a, .header-button a span, .header-button > a > span, .nav-primary .header-button a span { border-radius: 10px !important; }
.header-button a span { display: inline-block; }
.site-header { border-radius: 0 0 22px 22px; box-shadow: 0 4px 18px rgba(17,18,20,.10); }
.site-header .nav-top a, .site-header .nav-primary > ul > li > a { border-radius: 10px; }

/* Dark / light full-width sections: flat top and bottom edges, rounded corners */
.fp-group::before, .fp-group::after { display: none !important; }
.wp-block-group.fp-group { border-radius: 28px; margin-left: 18px; margin-right: 18px; overflow: hidden; }
.wp-block-group.fp-group.bg-2 { overflow: visible; }

/* Footer */
.site-footer, .cta-footer { margin-left: 0; margin-right: 0; }
.google-map-embed-wrapper, .footer-widgets .google-map-embed-wrapper { border-radius: var(--jm-r); overflow: hidden; }
.google-map-embed-wrapper iframe, .footer-widgets iframe { border-radius: var(--jm-r); display: block; }
.jm-band-map iframe { border-radius: 0; }
.footer-widgets .widget img, .site-footer img { border-radius: var(--jm-r-sm); }

/* Images and image boxes everywhere */
figure.wp-block-image, .wp-block-image, .wp-block-image img, figure img, img.wp-post-image,
.ca-block-column img, .wp-block-column img, .wp-block-group img, .entry-content img,
.post-thumbnail, .featured-image img, .archive-image img { border-radius: var(--jm-r); }
.wp-block-image, figure.wp-block-image { overflow: hidden; }
.site-header img, .site-footer .site-title img, .jm-hero img, .custom-logo, img[src*="logo"], .nav-primary img, .review-container img, .nj-badge img, .wpforms-container img { border-radius: 0; }
img[src*="avatar"], .review-container img { border-radius: 50%; }

/* Background-image boxes (photo rows inside sections) and the diamond divider */
.row-image-wrapper, .row-image, .image-rows [class*="row-image"], [class*="img-container"], [class*="image-wrapper"] { border-radius: var(--jm-r); overflow: hidden; }
.section-decoration { display: none !important; }

/* Photo columns set as background images */
.balance-image-column, .balance-image-single, span.lazy[class*="image"], span.lazy[class*="img"] { border-radius: var(--jm-r); overflow: hidden; }
[class*="background-image"], .image-link, .hooked-light-box { border-radius: var(--jm-r); overflow: hidden; }
