/* Approved minimal affiliation and footer design — homepage only. */
.rg-approved-bottom,.rg-approved-bottom *{box-sizing:border-box}
.rg-approved-bottom{font-family:Arial,Helvetica,sans-serif}
.rg-approved-affiliations{background:#fff;padding:56px 24px 54px;text-align:center}
.rg-approved-affiliations h2{
 font:700 clamp(32px,3.2vw,51px)/1.2 Georgia,serif;
 color:#0b2548;letter-spacing:-.025em;margin:0 0 38px;
 display:flex;align-items:center;justify-content:center;gap:24px;
}
.rg-approved-affiliations h2::before,.rg-approved-affiliations h2::after{
 content:"";width:clamp(35px,8vw,135px);height:1px;background:#c99b3b;
}
.rg-approved-partners{
 max-width:1120px;margin:0 auto;display:grid;
 grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;
}
.rg-approved-partners a,.rg-approved-partners .rg-partner{
 min-width:0;display:flex;align-items:center;justify-content:center;
 padding:18px 20px;background:#fff;border:1px solid #bfc3ca;
 border-radius:10px;box-shadow:none;overflow:hidden;
 text-decoration:none;transition:border-color .18s ease;
}
.rg-approved-partners a:hover,.rg-approved-partners a:focus-visible{
 border-color:#ba9b5e;transform:none;box-shadow:none;
}
.rg-approved-partners img{
 display:block;width:100%;height:120px;object-fit:contain;aspect-ratio:auto;
}
.rg-approved-footer{
 background:#061d3d;color:#fff;border-top:2px solid #c89b3e;
 padding:38px 24px 26px;
}
.rg-approved-footer-grid{
 max-width:1120px;margin:0 auto;display:grid;
 grid-template-columns:1.1fr 1fr 1.13fr;gap:35px;
}
.rg-approved-footer-col{min-width:0;padding:0 24px 0 0}
.rg-approved-footer-col:not(:last-child){border-right:1px solid #a78645}
.rg-approved-brand{
 display:flex;align-items:center;gap:12px;margin-bottom:12px;
 text-decoration:none!important;
}
.rg-approved-brand img{width:53px;height:53px;object-fit:contain;flex-shrink:0}
.rg-approved-brand strong{
 display:block;font:700 clamp(22px,2vw,30px)/1.1 Georgia,serif;
 color:#fff;white-space:nowrap;
}
.rg-approved-brand span{
 display:block;font-size:10px;letter-spacing:.18em;
 color:#d7dfe9;margin-top:5px;
}
.rg-approved-footer p{font-size:14px;line-height:1.6;color:#dce3ed;margin:8px 0 12px}
.rg-approved-footer h3{
 font:700 clamp(21px,2vw,27px) Georgia,serif;
 color:#fff;margin:0 0 16px;
}
.rg-approved-footer a,.rg-approved-footer a:visited{
 color:#edf1f7;text-decoration:none!important;border-bottom:0!important;
}
.rg-approved-footer a:hover,.rg-approved-footer a:focus-visible{
 color:#f2d38b;text-decoration:none!important;
}
.rg-approved-support{font-weight:600}
.rg-approved-explore{
 display:grid;grid-template-columns:1fr 1fr;
 column-gap:18px;row-gap:9px;font-size:14px;
}
.rg-approved-subscribe{display:flex;gap:8px;margin-top:16px}
.rg-approved-subscribe input{
 flex:1;min-width:0;padding:11px 12px;border-radius:6px;
 border:1px solid #ccd2dc;background:#fff;color:#10213d;font-size:14px;
}
.rg-approved-subscribe button{
 padding:10px 14px;background:#e5b947;border:0;border-radius:6px;
 color:#0b2443;font-weight:700;font-size:14px;cursor:pointer;
}
.rg-approved-subscribe button:hover{background:#f0c95f}
.rg-approved-subscribe-note{font-size:11px!important;color:#bdc8d7!important}
.rg-approved-copyright{
 max-width:1120px;margin:30px auto 0;padding-top:18px;
 border-top:1px solid #9a773b;text-align:center;
 color:#dce3ed;font-size:12px;
}
@media(max-width:950px){
 .rg-approved-footer-grid{grid-template-columns:1fr 1fr;gap:28px}
 .rg-approved-footer-col:nth-child(2){border-right:0}
 .rg-approved-footer-col:last-child{
  grid-column:1/-1;border-top:1px solid #506079;padding-top:20px;
 }
 .rg-approved-partners{gap:12px}
 .rg-approved-partners a,.rg-approved-partners .rg-partner{padding:12px}
 .rg-approved-partners img{height:100px}
}
@media(max-width:650px){
 .rg-approved-affiliations{padding:44px 16px 48px}
 .rg-approved-affiliations h2{gap:12px;margin-bottom:28px}
 .rg-approved-affiliations h2::before,.rg-approved-affiliations h2::after{width:22px}
 .rg-approved-partners{grid-template-columns:1fr;max-width:440px;gap:14px}
 .rg-approved-partners img{height:125px}
 .rg-approved-footer{padding:34px 20px 24px}
 .rg-approved-footer-grid{grid-template-columns:1fr;gap:22px}
 .rg-approved-footer-col{padding:0 0 22px;border-right:0!important;border-bottom:1px solid #506079}
 .rg-approved-footer-col:last-child{grid-column:auto;border:0;padding:0}
 .rg-approved-brand strong{font-size:25px}
 .rg-approved-subscribe{flex-wrap:wrap}
 .rg-approved-subscribe input{flex-basis:100%}
}
@media(prefers-reduced-motion:reduce){.rg-approved-partners a{transition:none}}

/* Logo fidelity fixes: preserve the entire original artwork and its aspect ratio. */
.rg-approved-partners img {
 width:100% !important;height:auto !important;max-height:165px !important;
 object-fit:contain !important;object-position:center !important;
 display:block !important;filter:none !important;transform:none !important;
}
.rg-approved-partners > a,
.rg-approved-partners > .rg-partner {
 min-height:185px !important;padding:12px 16px !important;
 border:1px solid #c3c6cb !important;box-shadow:none !important;
 background:#fff !important;
}
.rg-approved-brand img {
 width:min(100%,340px) !important;height:auto !important;
 max-width:340px !important;max-height:none !important;
 object-fit:contain !important;object-position:left center !important;
 flex-shrink:1 !important;filter:none !important;transform:none !important;
}
.rg-approved-brand{display:block !important;margin-bottom:16px !important}
@media(max-width:650px){
 .rg-approved-partners > a,
 .rg-approved-partners > .rg-partner{min-height:155px !important}
 .rg-approved-brand img{width:min(100%,310px) !important}
}

/* Exact user-provided affiliation card artwork. Do not restyle or crop logos. */
.rg-approved-partners {
 max-width:1280px !important;
 grid-template-columns:repeat(3,minmax(0,1fr)) !important;
 gap:18px !important;
}
.rg-approved-partners > a,
.rg-approved-partners > .rg-partner {
 padding:0 !important;
 min-height:0 !important;
 border:0 !important;
 background:transparent !important;
 border-radius:0 !important;
 box-shadow:none !important;
 overflow:visible !important;
}
.rg-approved-partners img {
 width:100% !important;
 height:auto !important;
 max-height:none !important;
 display:block !important;
 object-fit:contain !important;
 border:0 !important;
 border-radius:0 !important;
}
@media(max-width:650px) {
 .rg-approved-partners {
  grid-template-columns:1fr !important;
  max-width:520px !important;
  gap:16px !important;
 }
}
/* Keep complete footer brand lockup visible without squeezing or clipping. */
.rg-approved-brand img {
 width:min(100%,390px) !important;
 max-width:390px !important;
 height:auto !important;
 max-height:none !important;
 object-fit:contain !important;
}

/* Sitewide footer: ensure it is not restyled by legacy .site-footer rules */
footer.rg-approved-footer{width:100%;clear:both}
footer.rg-approved-footer .rg-approved-brand img{width:min(100%,390px)!important;max-width:390px!important;height:auto!important;max-height:none!important;object-fit:contain!important}


/* Mobile-only affiliation heading: one line, without side ornaments. */
@media screen and (max-width: 650px) {
  .rg-approved-bottom .rg-approved-affiliations h2 {
    display: block !important;
    width: 100% !important;
    margin: 0 auto 28px !important;
    padding: 0 !important;
    font-size: clamp(19px, 5.1vw, 27px) !important;
    line-height: 1.25 !important;
    letter-spacing: -0.025em !important;
    white-space: nowrap !important;
    text-align: center !important;
  }
  .rg-approved-bottom .rg-approved-affiliations h2::before,
  .rg-approved-bottom .rg-approved-affiliations h2::after {
    content: none !important;
    display: none !important;
  }
}

/* Mobile: affiliations heading must fit one line, without side rules. */
@media only screen and (max-width:767px){
.rg-approved-bottom .rg-approved-affiliations h2{display:block!important;white-space:nowrap!important;text-align:center!important;width:100%!important;max-width:none!important;font-size:clamp(18px,5.1vw,27px)!important;letter-spacing:-.035em!important;gap:0!important}
.rg-approved-bottom .rg-approved-affiliations h2::before,.rg-approved-bottom .rg-approved-affiliations h2::after{content:none!important;display:none!important}
}

/* Affiliation title mobile correction v5 — direct non-flex layout. */
@media screen and (max-width: 767px) {
  html body .rg-approved-bottom .rg-approved-affiliations h2.rg-affiliations-heading-fixed {
    display: block !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 auto 28px !important;
    border: 0 !important;
    background: transparent !important;
    text-align: center !important;
    font-family: Georgia, 'Times New Roman', serif !important;
    font-size: clamp(18px, 5.1vw, 26px) !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: -0.035em !important;
    white-space: nowrap !important;
    overflow: visible !important;
  }
  html body .rg-approved-bottom .rg-approved-affiliations h2.rg-affiliations-heading-fixed span {
    display: inline !important;
    white-space: nowrap !important;
    word-break: keep-all !important;
  }
  html body .rg-approved-bottom .rg-approved-affiliations h2.rg-affiliations-heading-fixed::before,
  html body .rg-approved-bottom .rg-approved-affiliations h2.rg-affiliations-heading-fixed::after {
    content: none !important;
    display: none !important;
    width: 0 !important;
    height: 0 !important;
  }
}
