/* SG RSS Feed Cards 1.1.0 - equal-height cards + autoplay + arrows + mobile latest carousel */
.sgrfc{--sgrfc-title:#123db5;--sgrfc-accent:#f3cf27;--sgrfc-bg:#f3f6fc;--sgrfc-border:#dfe6f3;--sgrfc-excerpt:#777d89;--sgrfc-radius:16px;--sgrfc-padding:22px;--sgrfc-bottom-padding:28px;--sgrfc-gap:20px;--sgrfc-height:320px;--sgrfc-columns:4;box-sizing:border-box;width:100%;font-family:inherit;color:#333}
.sgrfc *{box-sizing:border-box}
.sgrfc-heading{display:flex;align-items:center;gap:8px;margin:0 0 18px;color:#666;font-size:20px;line-height:1.35;font-weight:500}
.sgrfc-heading:after{content:"";height:1px;flex:1;background:linear-gradient(90deg,#eee,transparent);margin-left:4px}
.sgrfc-rss-icon{display:inline-flex;width:18px;height:18px;flex:0 0 18px;color:#ef7f32}.sgrfc-rss-icon svg{width:100%;height:100%;fill:currentColor}
.sgrfc-shell{position:relative;min-width:0;padding:2px 0 4px}
.sgrfc-viewport{overflow:hidden;min-width:0;padding:2px 1px 12px}
.sgrfc-track{display:grid;grid-template-columns:repeat(var(--sgrfc-columns),minmax(0,1fr));gap:var(--sgrfc-gap);min-width:0;align-items:stretch}
.sgrfc-layout-fixed .sgrfc-track{grid-template-columns:repeat(var(--sgrfc-columns),minmax(0,1fr))}
.sgrfc-layout-scroll .sgrfc-viewport{overflow-x:auto;overflow-y:hidden;scrollbar-width:auto;padding-bottom:12px}
.sgrfc-layout-scroll .sgrfc-track{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:calc((100% - (var(--sgrfc-gap) * (var(--sgrfc-columns) - 1))) / var(--sgrfc-columns));width:max-content}
.sgrfc-layout-carousel .sgrfc-track{display:flex;align-items:stretch;transition:transform .45s cubic-bezier(.22,.61,.36,1);will-change:transform}
.sgrfc-layout-carousel .sgrfc-card{flex:0 0 calc((100% - (var(--sgrfc-gap) * (var(--sgrfc-columns) - 1))) / var(--sgrfc-columns))}
.sgrfc-card{min-width:0;height:var(--sgrfc-height);min-height:var(--sgrfc-height)}
.sgrfc-card-link{display:block;width:100%;height:100%;color:inherit;text-decoration:none}
.sgrfc-card-inner{width:100%;height:100%;min-height:0;background:var(--sgrfc-bg);border:1px solid var(--sgrfc-border);border-radius:var(--sgrfc-radius);padding:var(--sgrfc-padding) var(--sgrfc-padding) var(--sgrfc-bottom-padding);box-shadow:0 8px 24px rgba(32,58,110,.09),0 2px 6px rgba(32,58,110,.035);display:flex;flex-direction:column;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.sgrfc-card-link:hover .sgrfc-card-inner{transform:translateY(-2px);box-shadow:0 14px 32px rgba(32,58,110,.13),0 3px 8px rgba(32,58,110,.045);border-color:#cbd6ea}
.sgrfc-date{display:inline-flex;align-self:flex-start;align-items:center;min-height:35px;flex:0 0 auto;padding:6px 14px;border-radius:999px;background:color-mix(in srgb,var(--sgrfc-accent) 22%,white);color:#b78300;font-size:12px;line-height:1;font-weight:800;letter-spacing:.5px;text-transform:uppercase;margin:0 0 16px}
.sgrfc-title{margin:0 !important;padding:0 !important;color:var(--sgrfc-title);font-size:20px;line-height:1.3 !important;font-weight:500;letter-spacing:.1px;height:auto !important;min-height:0;max-height:104px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden;word-break:normal;overflow-wrap:anywhere;flex:0 0 auto}
.sgrfc-excerpt{margin:18px 0 0 !important;padding:0 !important;color:var(--sgrfc-excerpt);font-size:15px;line-height:1.7;font-weight:400;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden;flex:0 0 auto}
.sgrfc-arrow{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:40px;height:40px;border:1px solid #d8e0ee;border-radius:50%;background:#fff;color:#123db5;box-shadow:0 7px 20px rgba(25,49,92,.14);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;line-height:1;transition:all .18s ease}
.sgrfc-arrow:hover{background:#123db5;color:#fff;border-color:#123db5}.sgrfc-prev{left:-20px}.sgrfc-next{right:-20px}
.sgrfc-progress{height:7px;width:100%;margin:2px 0 0;border-radius:999px;background:#e5ebf5;overflow:hidden}.sgrfc-progress-bar{display:block;width:0;height:100%;border-radius:999px;background:#123db5;transition:width .3s ease}
.sgrfc-error,.sgrfc-empty{padding:16px;border:1px solid #ead7d7;border-radius:10px;background:#fff8f8;color:#7b3333}
@media (max-width:1100px){.sgrfc{--sgrfc-columns:min(3,var(--sgrfc-columns))}.sgrfc-track{grid-template-columns:repeat(3,minmax(0,1fr))}.sgrfc-layout-scroll .sgrfc-track{grid-auto-columns:calc((100% - (var(--sgrfc-gap) * 2)) / 3)}.sgrfc-layout-carousel .sgrfc-card{flex-basis:calc((100% - (var(--sgrfc-gap) * 2)) / 3)}}
@media (max-width:780px){.sgrfc{--sgrfc-columns:min(2,var(--sgrfc-columns))}.sgrfc-track{grid-template-columns:repeat(2,minmax(0,1fr))}.sgrfc-layout-scroll .sgrfc-track{grid-auto-columns:calc((100% - var(--sgrfc-gap)) / 2)}.sgrfc-layout-carousel .sgrfc-card{flex-basis:calc((100% - var(--sgrfc-gap)) / 2)}.sgrfc-layout-carousel .sgrfc-arrow{display:flex}.sgrfc-title{font-size:18px}.sgrfc-card-inner{padding:18px 18px 24px}}
@media (max-width:540px){.sgrfc{--sgrfc-columns:1}.sgrfc-track{grid-template-columns:1fr}.sgrfc-layout-scroll .sgrfc-track{grid-auto-columns:82vw}.sgrfc-layout-carousel .sgrfc-card{flex-basis:100%}.sgrfc-heading{font-size:18px}.sgrfc-card{height:300px;min-height:300px}.sgrfc-card-inner{height:100%;min-height:0}.sgrfc-title{-webkit-line-clamp:5;max-height:117px}.sgrfc-excerpt{-webkit-line-clamp:6}}

/* v1.0.5: homepage latest-news becomes a one-card-at-a-time carousel on phones */
.sgrfc-mobile-carousel .sgrfc-mobile-prev,
.sgrfc-mobile-carousel .sgrfc-mobile-next,
.sgrfc-mobile-carousel .sgrfc-mobile-progress{display:none}
@media (max-width:540px){
  .sgrfc.sgrfc-mobile-carousel .sgrfc-viewport{overflow:hidden;padding-left:1px;padding-right:1px}
  .sgrfc.sgrfc-mobile-carousel .sgrfc-track{display:flex;grid-template-columns:none;gap:var(--sgrfc-gap);width:auto;transition:transform .45s cubic-bezier(.22,.61,.36,1);will-change:transform}
  .sgrfc.sgrfc-mobile-carousel .sgrfc-card{flex:0 0 100%;width:100%;max-width:100%;height:300px;min-height:300px}
  .sgrfc.sgrfc-mobile-carousel .sgrfc-arrow{display:flex;width:36px;height:36px;font-size:16px;box-shadow:0 6px 18px rgba(25,49,92,.16)}
  .sgrfc.sgrfc-mobile-carousel .sgrfc-prev{left:-12px}
  .sgrfc.sgrfc-mobile-carousel .sgrfc-next{right:-12px}
  .sgrfc.sgrfc-mobile-carousel .sgrfc-progress{display:block;height:6px;margin:8px 2px 0}
  .sgrfc.sgrfc-mobile-carousel .sgrfc-progress .sgrfc-progress-bar{width:33.333%;transition:width .3s ease,transform .3s ease}
}

@media (min-width:541px){.sgrfc.sgrfc-latest .sgrfc-arrow{display:none}}
