/* Reagan Senior Moves - brand overrides */
img[src="/img/logo.svg"] { width: 300px !important; height: auto !important; }

/* buttons align to the text's left edge */
.elementor-button-wrapper { text-align: left !important; }

/* the organizers page: center the logo badge with the photo */
.elementor-element-9b6c8e1 .e-con-inner { align-items: center; }

/* the static contact form (looks-only) */
.rsm-form { max-width: 640px; margin: 0 auto; display: flex; flex-direction: column; gap: 14px; }
.rsm-form input, .rsm-form textarea { width: 100%; padding: 12px 16px; border: 1px solid #c9c2b4; border-radius: 6px; font-size: 16px; font-family: inherit; background: #fff; }
.rsm-form input:focus, .rsm-form textarea:focus { outline: 2px solid #1f4e79; }
.rsm-form button { padding: 14px 30px; background: #1f4e79; color: #fff; border: none; border-radius: 6px; font-size: 16px; cursor: pointer; }
.rsm-form button:hover { background: #16385a; }
.rsm-form-msg { display: none; max-width: 640px; margin: 0 auto 16px; padding: 14px 18px; border-radius: 6px; font-size: 16px; }
.rsm-form-msg.ok { display: block; background: #e8f4ea; color: #1e5b2a; border: 1px solid #b8dcc0; }
.rsm-form-msg.err { display: block; background: #fbeceb; color: #8a2420; border: 1px solid #eec4c1; }
.rsm-form label { font-size: 15px; font-weight: 600; color: #22303c; text-align: left; }
.rsm-form .rsm-field { display: flex; flex-direction: column; gap: 6px; }
.rsm-hp { position: absolute; left: -9999px; }
.rsm-page-h1 { max-width: 900px; margin: 48px auto 18px; padding: 0 20px; font-size: 42px; line-height: 1.15; color: #1f4e79; }
.rsm-legal-wrap { max-width: 860px; margin: 0 auto; padding: 0 20px 40px; }
.rsm-legal { font-size: 17px; line-height: 1.7; color: #33414d; }
.rsm-legal h2 { margin: 34px 0 10px; font-size: 24px; color: #1f4e79; }
.rsm-legal a { color: #1f4e79; }
.rsm-legal-date { color: #6b7680; font-size: 15px; }
.rsm-404 { text-align: center; padding-top: 60px; padding-bottom: 90px; }
.rsm-404-code { margin: 0; font-size: 96px; line-height: 1; color: #1f4e79; }
.rsm-404-btn { display: inline-block; margin: 8px; padding: 12px 24px; background: #1f4e79; color: #fff !important; border-radius: 6px; text-decoration: none; }
.rsm-404-btn-alt { background: #fff; color: #1f4e79 !important; border: 2px solid #1f4e79; }
h1.elementor-heading-title { margin-top: 0; }
/* full-bleed bands carried 16px side margins from the generated post CSS */
.elementor-element-08ec8a1, .elementor-element-27fa28c3, .elementor-element-72cd406,
.elementor-element-ade2f98, .elementor-element-2f78c9ab, .elementor-element-c5401f2 { margin-left: 0 !important; margin-right: 0 !important; }
.elementor-widget-image-carousel, .elementor-widget-testimonial-carousel { position: relative; padding-bottom: 48px; }
.rsm-pause { position: absolute; right: 12px; bottom: 6px; padding: 6px 14px; font-size: 13px; background: #fff; color: #1f4e79; border: 1px solid #1f4e79; border-radius: 4px; cursor: pointer; }
.rsm-pause:hover { background: #1f4e79; color: #fff; }
.elementor-widget-testimonial-carousel .swiper, .elementskit-testimonial-slider { overflow: hidden !important; }
.rsm-testimonial-note { max-width: 760px; margin: 18px auto 0; padding: 0 20px; text-align: center; font-size: 14px; color: #6b7680; }

@media (max-width: 640px) {
  .rsm-page-h1 { font-size: 32px; margin-top: 32px; }
  .elementor-widget-image-carousel, .elementor-widget-testimonial-carousel { padding-bottom: 40px; }
  .elementor-widget-image-carousel .swiper, .elementor-widget-testimonial-carousel .swiper { padding-bottom: 26px; }
  .rsm-pause { left: auto; right: 6px; transform: none; bottom: 0; }
}
