/* Homepage carousel redesign; intentionally isolated from article templates. */
.cr-home{background:#fff}.cr-home [hidden]{display:none!important}.cr-home button{font:inherit}.cr-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.cr-campaign{background:#f0f5fa;padding:28px 0 10px}.cr-campaign-inner{max-width:1440px;margin:auto;padding:0 48px;position:relative}.cr-banners{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border-radius:12px;touch-action:pan-x pan-y}.cr-banners::-webkit-scrollbar,.cr-track::-webkit-scrollbar{display:none}.cr-slide{position:relative;flex:0 0 100%;min-width:0;scroll-snap-align:center;scroll-snap-stop:always;border-radius:12px;overflow:hidden;background:#fff}.cr-slide img{display:block;width:100%;height:auto;aspect-ratio:1983/793;object-fit:contain}.cr-pr{position:absolute;top:9px;right:12px;padding:0 7px;background:#fff;color:#214f75;border:1px solid #bbcad7;border-radius:3px;font-size:12px;pointer-events:none}.cr-arrow{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;border-radius:50%;border:1px solid #d7e1ea;background:#fff;color:#2c5f8d;cursor:pointer;font-size:28px!important;line-height:1;transition:background .2s,box-shadow .2s}.cr-arrow:hover{background:#ebf2f9;box-shadow:0 4px 14px #214f7515}.cr-arrow:disabled{opacity:.3;cursor:default;box-shadow:none}.cr-hero-prev,.cr-hero-next{position:absolute;top:calc(50% - 42px);box-shadow:0 3px 18px #214f7520}.cr-hero-prev{left:26px}.cr-hero-next{right:26px}.cr-dots{display:flex;justify-content:center;gap:3px;margin-top:5px}.cr-dots button{width:44px;height:36px;border:0;background:transparent;cursor:pointer;display:grid;place-items:center}.cr-dots span{width:7px;height:7px;border-radius:8px;background:#b9cbd9}.cr-dots [aria-pressed=true] span{width:25px;background:#2c5f8d}.cr-content{max-width:1380px;margin:auto;padding:0 48px 44px}.cr-shelf{padding-top:36px;min-width:0}.cr-shelf-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.cr-label{font-size:10px;letter-spacing:.14em;color:#53758f;font-weight:700}.cr-shelf h2{font-size:24px;line-height:1.5}.cr-shelf-actions{display:flex;align-items:center;gap:8px}.cr-all{font-size:13px;color:#2c5f8d;margin-right:12px}.cr-track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:4px 2px 15px}.cr-card{flex:0 0 calc((100% - 60px)/4);min-width:0;scroll-snap-align:start;display:block}.cr-thumbnail{aspect-ratio:16/9;background:#edf3f8;border-radius:7px;overflow:hidden;margin-bottom:10px}.cr-thumbnail img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.cr-card:hover .cr-thumbnail img{transform:scale(1.035)}.cr-card:hover h3{color:#2c5f8d}.cr-category{color:#2c5f8d;font-size:11px;font-weight:700}.cr-card h3{font-size:14px;font-weight:700;line-height:1.75;margin:4px 0 7px;overflow-wrap:anywhere}.cr-card time{font-size:11px;color:#657687}.cr-fallback{height:100%;padding:15px 18px;display:flex;flex-direction:column;justify-content:space-between;color:#214f75;background:linear-gradient(130deg,#edf4fa,#d5e5f2);gap:6px}.cr-card:nth-child(even) .cr-fallback{background:linear-gradient(130deg,#214f75,#376e99);color:#fff}.cr-fallback span,.cr-fallback small{font-size:10px}.cr-fallback strong{font-size:17px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.cr-browse{text-align:center;margin-top:32px}.cr-browse a{display:inline-block;padding:12px 28px;border:1px solid #b8cddd;border-radius:5px;color:#2c5f8d;font-size:14px}.cr-home :is(a,button):focus-visible{outline:3px solid #2c5f8d;outline-offset:3px}.cr-slide:focus-within{outline:3px solid #2c5f8d;outline-offset:-3px}
@media(min-width:1500px){.cr-content{max-width:1440px}}
@media(max-width:960px){.cr-card{flex-basis:calc((100% - 32px)/2.4)}.cr-content{padding:0 28px 32px}.cr-campaign-inner{padding:0 28px}.cr-hero-prev{left:8px}.cr-hero-next{right:8px}.cr-fallback strong{font-size:18px}}
@media(max-width:600px){.cr-campaign{padding-top:16px}.cr-campaign-inner{padding:0 12px}.cr-banners,.cr-slide{border-radius:6px}.cr-content{padding:0 20px 28px}.cr-shelf{padding-top:26px}.cr-shelf-heading{gap:8px;margin-bottom:12px}.cr-shelf h2{font-size:20px}.cr-shelf-actions{gap:4px}.cr-all{font-size:11px;margin-right:3px}.cr-arrow{width:44px;height:44px}.cr-hero-prev,.cr-hero-next{width:32px;height:44px;background:#ffffffed;top:calc(50% - 40px);border-radius:6px}.cr-hero-prev{left:0}.cr-hero-next{right:0}.cr-track{gap:15px}.cr-card{flex-basis:80%}.cr-card h3{font-size:14px}.cr-label{font-size:9px}.cr-pr{font-size:9px;top:4px;right:5px;padding:0 3px}.cr-dots button{height:32px}.cr-fallback{padding:16px}.cr-fallback strong{font-size:18px}}
@media(prefers-reduced-motion:reduce){.cr-home *{scroll-behavior:auto!important;transition:none!important}}

/* Center the actual icon independently of font baseline and button padding. */
.cr-home .cr-arrow{padding:0;box-sizing:border-box}.cr-arrow svg{display:block;width:24px;height:24px;flex:none;pointer-events:none}
