.ld-perspectives { --ld-perspectives-top-space:65px; position:relative; isolation:isolate; overflow-x:clip; padding: 65px 0 70px; background: #F7F8FA; color: var(--ld-navy); }
.ld-perspectives__heading { position:relative; text-align: center; margin-bottom: 30px; }
.ld-perspectives__heading::before { content:''; position:absolute; z-index:-1; top:calc(-1 * var(--ld-perspectives-top-space)); bottom:-30px; left:calc((100% - 100vw) / 2); width:100vw; background:linear-gradient(to bottom,#E7EDF2,#F7F8FA); pointer-events:none; }
.ld-perspectives__eyebrow { display:flex; justify-content:center; align-items:center; gap:18px; color:var(--ld-accent); font:600 12px/1.5 var(--ld-sans); letter-spacing:.08em; margin-bottom:15px; }
.ld-perspectives__eyebrow::before, .ld-perspectives__eyebrow::after { content:''; width:45px; height:1px; background:currentColor; }
.ld-perspectives__heading h2 { font:400 clamp(29px,3vw,40px)/1.15 var(--ld-serif); letter-spacing:-.025em; margin-bottom:12px; }
.ld-perspectives__heading > p:last-child { font-size:15px; color:#52657b; }
.ld-perspectives__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.ld-perspectives__carousel { position:relative; }
.is-carousel .ld-perspectives__viewport { overflow:hidden; }
.is-carousel .ld-perspectives__grid { display:flex; gap:0; transition:transform 300ms ease; }
.ld-perspectives__group { flex:0 0 100%; min-width:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; align-content:start; }
.ld-perspectives__previous, .ld-perspectives__next { position:absolute; top:50%; transform:translateY(-50%); width:44px; height:44px; padding:10px; border:1px solid #bc914b66; border-radius:50%; background:#fffdf8; color:var(--ld-navy); box-shadow:0 2px 6px #0926410a; cursor:pointer; transition:color 200ms ease,border-color 200ms ease,box-shadow 200ms ease; }
.ld-perspectives__previous { left:-56px; --ld-arrow-shift:-3px; }
.ld-perspectives__next { right:-56px; --ld-arrow-shift:3px; }
.ld-perspectives__carousel button svg { display:block; width:100%; height:100%; transition:transform 200ms ease; }
.ld-perspectives__carousel button:not(:disabled):not([hidden]):not(:hover):not(:focus-visible) svg { animation:ld-perspectives-arrow-hint 4.8s ease-in-out infinite; }
.ld-perspectives__carousel button:hover, .ld-perspectives__carousel button:focus-visible { color:var(--ld-accent); border-color:var(--ld-accent); box-shadow:0 3px 8px #09264112; }
.ld-perspectives__carousel button:hover svg, .ld-perspectives__carousel button:focus-visible svg { transform:translateX(var(--ld-arrow-shift)); }
.ld-perspectives__carousel button:focus-visible { outline:2px solid var(--ld-accent); outline-offset:2px; }
.ld-perspectives__carousel button:disabled { visibility:hidden; }
.ld-perspectives__carousel button[hidden] { display:none; }
.ld-perspectives__card { display:grid; grid-template-columns:1fr; grid-template-rows:auto 1fr; gap:20px; padding:18px; border:1px solid #e7e4df; border-radius:4px; background:#fff; }
.ld-perspectives__image-link { display:block; min-width:0; }
.ld-perspectives__copy h3 a, .ld-perspectives__byline a { color:inherit; text-decoration:none; }
.ld-perspectives__copy h3 a:hover, .ld-perspectives__byline a:hover { color:var(--ld-accent); }
.ld-perspectives__copy h3 a:focus-visible, .ld-perspectives__byline a:focus-visible, .ld-perspectives__image-link:focus-visible { outline:2px solid var(--ld-accent); outline-offset:4px; }
.ld-perspectives__image { display:block; width:100%; height:160px; object-fit:cover; border-radius:2px; }
.ld-perspectives__copy { display:flex; flex-direction:column; min-width:0; }
.ld-perspectives__copy h3 { font:400 21px/1.15 var(--ld-serif); letter-spacing:-.02em; overflow-wrap:anywhere; }
.ld-perspectives__excerpt { font-size:14px; line-height:1.65; color:#52657b; margin:12px 0 12px; overflow-wrap:anywhere; }
.ld-perspectives__byline { font:italic 400 15px/1.5 var(--ld-serif); margin-top:0; }
.ld-perspectives__byline::before { content:''; display:block; width:28px; height:1px; background:var(--ld-accent); margin-bottom:12px; }
.ld-perspectives__byline span { color:#52657b; }
@media(min-width:1101px) {
 .ld-perspectives__byline { margin-bottom:0; }
 .ld-perspectives__excerpt { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:6; line-clamp:6; overflow:hidden; max-height:9.9em; }
}
@keyframes ld-perspectives-arrow-hint { 0%,80%,100% { transform:translateX(0); } 90% { transform:translateX(var(--ld-arrow-shift)); } }
@media(max-width:1240px) {
 .ld-perspectives__carousel.has-navigation { padding-bottom:60px; }
 .ld-perspectives__previous, .ld-perspectives__next { top:auto; bottom:0; transform:none; }
 .ld-perspectives__previous { left:calc(50% - 52px); }
 .ld-perspectives__next { right:calc(50% - 52px); }
}
@media(max-width:1100px) { .ld-perspectives__grid, .ld-perspectives__group { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .ld-perspectives { display:none; --ld-perspectives-top-space:45px; padding:45px 0; } .ld-perspectives__grid, .ld-perspectives__group { grid-template-columns:1fr; } .ld-perspectives__heading > p:last-child { font-size:14px; } }
@media(prefers-reduced-motion:reduce) {
 .is-carousel .ld-perspectives__grid, .ld-perspectives__carousel button, .ld-perspectives__carousel button svg { transition:none; }
 .ld-perspectives__carousel button:not(:disabled):not([hidden]):not(:hover):not(:focus-visible) svg { animation:none; }
 .ld-perspectives__carousel button:hover svg, .ld-perspectives__carousel button:focus-visible svg { transform:none; }
}
