/* Member voices: original photographs, readable stories and generous white space. */
.rotary-impact-site .ri-member-intro,.rotary-impact-site .ri-contact-intro,.rotary-impact-site .ri-member-story-header { background:#f3f7fa; padding:64px 0; border-bottom:1px solid #e0e7ed; }
.rotary-impact-site .ri-member-intro h1,.rotary-impact-site .ri-contact-intro h1,.rotary-impact-site .ri-member-story h1 { color:#10376f; font-size:clamp(38px,4.8vw,64px); line-height:1.12; max-width:880px; margin:12px 0 24px; }
.rotary-impact-site .ri-member-intro p:last-child,.rotary-impact-site .ri-contact-intro p:last-child { max-width:700px; font-size:18px; line-height:1.7; color:#4e6070; }
.rotary-impact-site .ri-contact-intro { padding:42px 0; }
.rotary-impact-site .ri-contact-intro h1 { font-size:clamp(34px,3.8vw,52px); max-width:1000px; margin-bottom:18px; }
.rotary-impact-site .ri-member-home { background:#f3f7fa; }
.rotary-impact-site .ri-member-section-heading { display:flex; gap:32px; align-items:flex-end; justify-content:space-between; margin-bottom:36px; }
.rotary-impact-site .ri-member-section-heading h2 { font-size:clamp(32px,3.5vw,46px); color:#10376f; margin:10px 0 18px; }
.rotary-impact-site .ri-member-section-heading p:not(.ri-section-kicker) { max-width:680px; color:#4e6070; font-size:17px; line-height:1.7; margin:0; }
.rotary-impact-site .ri-member-section-heading > a { flex-shrink:0; }
.rotary-impact-site .ri-member-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; align-items:stretch; }
.rotary-impact-site .ri-member-card { min-width:0; background:#fff; border:1px solid #dde6ec; display:flex; flex-direction:column; }
.rotary-impact-site .ri-member-card-photo { display:flex; height:330px; padding:16px; background:#edf1f4; align-items:center; justify-content:center; overflow:hidden; }
.rotary-impact-site .ri-member-card-photo img { max-width:100%; width:100%; height:100% !important; object-fit:contain; object-position:center; border-radius:0; transform:none; }
.rotary-impact-site .ri-member-photo-placeholder { color:#17458f; font-size:20px; text-align:center; padding:24px; }
.rotary-impact-site .ri-member-card-copy { padding:26px; display:flex; flex-direction:column; flex:1; }
.rotary-impact-site .ri-member-card h3 { font-size:27px; line-height:1.25; margin:10px 0 18px; }
.rotary-impact-site .ri-member-card h3 a { color:#10376f; text-decoration:none; }
.rotary-impact-site .ri-member-card-excerpt { color:#4e6070; font-size:15px; line-height:1.8; margin:0 0 24px; }
.rotary-impact-site .ri-member-card-copy > .ri-text-link { margin-top:auto; }
.rotary-impact-site .ri-member-index-footer { margin-top:48px; border-top:1px solid #dde6ec; padding-top:24px; display:flex; gap:26px; align-items:center; flex-wrap:wrap; }
.rotary-impact-site .ri-member-index-footer p { margin:0 auto 0 0; }
.rotary-impact-site .ri-member-story-intro { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.75fr); align-items:center; gap:64px; }
.rotary-impact-site .ri-member-story-intro:not(:has(.ri-member-portrait)) { grid-template-columns:1fr; }
.rotary-impact-site .ri-member-story-intro time { font-size:13px; color:#526372; }
.rotary-impact-site .ri-member-deck { color:#4e6070; font-size:18px; line-height:1.7; }
.rotary-impact-site .ri-member-portrait { margin:0; padding:18px; background:#e8eef3; }
.rotary-impact-site .ri-member-portrait a { display:block; }
.rotary-impact-site .ri-member-portrait img { width:100%; height:auto !important; max-height:520px; object-fit:contain; }
.rotary-impact-site .ri-member-prose { max-width:900px; padding-top:48px; padding-bottom:48px; }
.rotary-impact-site .ri-member-prose p { font-size:18px; line-height:1.85; color:#344c60; }
.rotary-impact-site .ri-member-prose .kc_column,.rotary-impact-site .ri-member-prose .kc-col-container { width:100% !important; float:none; max-width:100%; }
/* Editorial images retain their full proportions; photo grids handle multi-image paragraphs. */
.rotary-impact-site .ri-page-content .ri-content-photo,.rotary-impact-site .ri-article-content .ri-content-photo { display:block; float:none !important; margin:24px auto; width:auto !important; max-width:100%; height:auto !important; aspect-ratio:auto !important; object-fit:contain; }
.rotary-impact-site .ri-page-content .wp-caption,.rotary-impact-site .ri-article-content .wp-caption { width:auto !important; max-width:100%; margin:28px auto; float:none; }
.rotary-impact-site .ri-story-featured-image img { height:auto !important; max-height:720px; object-fit:contain !important; aspect-ratio:auto !important; background:#edf1f4; }
.rotary-impact-site .ri-page-content .ri-photo-grid,.rotary-impact-site .ri-article-content .ri-photo-grid { margin:32px 0; }
.rotary-impact-site .ri-photo-grid .ri-content-photo { width:100% !important; margin:0; }
/* Contact retains the plugin's form and submission behavior, with real labels. */
.rotary-impact-site .ri-contact-grid { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:72px; align-items:start; }
.rotary-impact-site .ri-contact-grid h2 { color:#10376f; font-size:32px; line-height:1.25; margin:0 0 18px; }
.rotary-impact-site .ri-contact-details > p { color:#4e6070; font-size:17px; line-height:1.75; max-width:430px; }
.rotary-impact-site .ri-contact-details dl { margin:32px 0; }
.rotary-impact-site .ri-contact-details dl > div { padding:22px 0; border-top:1px solid #dde6ec; }
.rotary-impact-site .ri-contact-details dt { text-transform:uppercase; font-size:12px; font-weight:700; letter-spacing:.1em; color:#526372; margin-bottom:10px; }
.rotary-impact-site .ri-contact-details dd { margin:0; font-size:18px; line-height:1.6; color:#10376f; overflow-wrap:anywhere; }
.rotary-impact-site .ri-contact-details dd a { color:#17458f; text-decoration:underline; text-underline-offset:3px; }
.rotary-impact-site .ri-contact-form-panel { background:#f4f7fa; padding:36px; border:1px solid #dde6ec; border-top:4px solid #f7a81b; }
.rotary-impact-site .ri-contact-form-note { font-size:14px; line-height:1.7; color:#526372; margin-bottom:28px; }
.rotary-impact-site .ri-contact-form-panel .home-2,.rotary-impact-site .ri-contact-form-panel .form-area,.rotary-impact-site .ri-contact-form-panel .form-inner,.rotary-impact-site .ri-contact-form-panel .form-controls,.rotary-impact-site .ri-contact-form-panel .form-field,.rotary-impact-site .ri-contact-form-panel .text_area,.rotary-impact-site .ri-contact-form-panel .buttons { margin:0 !important; padding:0 !important; background:transparent !important; width:100% !important; float:none !important; box-shadow:none !important; border:0 !important; }
.rotary-impact-site .ri-contact-form-panel .field { width:100% !important; margin:0 0 22px !important; padding:0 !important; float:none !important; }
.rotary-impact-site .ri-contact-form-panel .wpcf7-form p { margin:0 0 20px; }
.rotary-impact-site .ri-contact-form-panel .hidden-fields-container { display:none; }
.rotary-impact-site .ri-contact-form-panel .screen-reader-response { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.rotary-impact-site .ri-contact-form-panel .wpcf7-form label { display:block; font-size:15px; font-weight:600; line-height:1.5; color:#10376f; margin-bottom:8px; }
.rotary-impact-site .ri-contact-form-panel input:not([type=hidden]):not([type=submit]):not([type=checkbox]):not([type=radio]),.rotary-impact-site .ri-contact-form-panel textarea,.rotary-impact-site .ri-contact-form-panel select { width:100% !important; max-width:100%; box-sizing:border-box; border:1px solid #b7c7d5 !important; background:#fff !important; border-radius:3px; color:#10376f !important; padding:13px 14px !important; font:16px/1.6 var(--ri-font-sans); height:auto !important; box-shadow:none; }
.rotary-impact-site .ri-contact-form-panel textarea { min-height:170px; resize:vertical; }
.rotary-impact-site .ri-contact-form-panel input::placeholder,.rotary-impact-site .ri-contact-form-panel textarea::placeholder { color:#65788a; }
.rotary-impact-site .ri-contact-form-panel :is(input,textarea,select):focus-visible { outline:3px solid #17458f; outline-offset:3px; }
.rotary-impact-site .ri-contact-form-panel input[type=submit],.rotary-impact-site .ri-contact-form-panel button[type=submit] { display:inline-block; width:auto !important; border:0 !important; border-radius:3px; background:#17458f !important; color:#fff !important; padding:15px 24px !important; font:600 16px/1.5 var(--ri-font-sans); cursor:pointer; }
.rotary-impact-site .ri-contact-form-panel .wpcf7-not-valid-tip { font-size:14px; color:#a52626; padding-top:6px; }
.rotary-impact-site .ri-contact-form-panel .wpcf7-response-output { margin:24px 0 0; padding:16px; font-size:15px; line-height:1.6; background:#fff; }
.rotary-impact-site .ri-contact-additional { margin-top:40px; }
.rotary-impact-site .ri-contact-map { padding-bottom:64px; }
.rotary-impact-site .ri-contact-map h2 { font-size:30px; margin-bottom:24px; color:#10376f; }
.rotary-impact-site .ri-contact-map iframe { display:block; width:100% !important; height:380px !important; border:0; }
@media(max-width:1000px) { .rotary-impact-site .ri-member-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .rotary-impact-site .ri-member-section-heading { align-items:flex-start; flex-direction:column; gap:24px; } .rotary-impact-site .ri-contact-grid { gap:36px; } .rotary-impact-site .ri-member-story-intro { gap:32px; } }
@media(max-width:760px) { .rotary-impact-site .ri-contact-grid,.rotary-impact-site .ri-member-story-intro { grid-template-columns:1fr; } .rotary-impact-site .ri-contact-form-panel { padding:26px; } .rotary-impact-site .ri-member-portrait { max-width:480px; } }
@media(max-width:640px) { .rotary-impact-site .ri-member-grid { grid-template-columns:1fr; } .rotary-impact-site .ri-member-intro,.rotary-impact-site .ri-contact-intro,.rotary-impact-site .ri-member-story-header { padding:40px 0; } .rotary-impact-site .ri-member-card-photo { height:340px; } .rotary-impact-site .ri-contact-form-panel { padding:22px; } .rotary-impact-site .ri-member-prose p { font-size:17px; } .rotary-impact-site .ri-contact-map iframe { height:300px !important; } }
