/* Case previews use XM's orange and white logo palette. */
.case-carousel{width:100%;max-width:480px;justify-self:end}
.case-slide[hidden]{display:none}
.case-preview{min-height:390px;border-radius:var(--r);padding:34px;display:flex;flex-direction:column;align-items:flex-start}
.case-preview--xm{background:var(--ink);border-top:4px solid #FF5200;color:#fff}
.case-preview--xm>img{width:115px;height:auto;margin-bottom:24px}
.case-kicker{display:block;font:600 .7rem/1.5 var(--display);letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px}
.case-preview--xm .case-kicker{color:#FF8B54}
.case-preview h3{font:600 1.45rem/1.25 var(--display);letter-spacing:-.02em;margin:0 0 14px;color:inherit}
.case-preview--xm p{color:#D1D3CA;font-size:.91rem;margin:0 0 24px}
.case-read{background:none;border:0;padding:0;color:#FF8B54;font:600 .88rem/1.5 var(--body);cursor:pointer;margin-top:auto}
.case-read:hover{text-decoration:underline}
.case-preview--next{border:1px dashed #9DA28F;background:#fff}
.case-preview--next .case-kicker{color:var(--muted)}
.case-next-symbol{font:500 2.4rem var(--display);color:var(--violet);margin-bottom:16px}
.case-preview--next p{color:var(--muted);font-size:.91rem;margin:0 0 24px}
.case-preview--next .btn{margin-top:auto;font-size:.85rem}
.case-controls{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:18px}
.case-arrow{height:36px;width:36px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:1.15rem;cursor:pointer}
.case-dots{display:flex;gap:8px}
.case-dots button{width:28px;height:28px;padding:8px;border:0;background:none;cursor:pointer;display:grid;place-items:center}
.case-dots button::after{content:"";display:block;width:8px;height:8px;border-radius:50%;background:#ADB19F}
.case-dots button[aria-current="true"]::after{background:var(--violet)}
.case-status{position:absolute;width:1px;height:1px;padding:0;margin:0!important;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.case-modal[hidden]{display:none}
.case-modal{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;padding:20px;background:rgba(26,25,23,.7)}
.case-modal .demo-modal__close{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;border:0;border-radius:50%;background:var(--mist);color:var(--ink);font-size:1.5rem;cursor:pointer}
.case-modal .demo-modal__dialog{background:#fff;border-radius:var(--r-lg);box-shadow:var(--shadow-floating);width:min(100%,820px);max-height:calc(100dvh - 40px);overflow:auto;overscroll-behavior:contain}
.case-modal-header{position:sticky;top:0;z-index:1;background:var(--ink);border-bottom:3px solid #FF5200;display:flex;align-items:center;justify-content:space-between;padding:20px 30px}
.case-modal-header img{width:100px;height:auto}
.case-modal-content{padding:32px 40px 40px}
.case-modal-content>.case-kicker{color:var(--muted)}
.case-modal-content h2{font:700 clamp(1.7rem,3vw,2.1rem)/1.2 var(--display);letter-spacing:-.02em;margin-bottom:18px}
.case-modal-content p,.case-modal-content li{color:var(--muted);font-size:.95rem;line-height:1.75}
.case-modal-content .case-intro{color:var(--ink)}
.case-modal-content section{margin-top:28px}
.case-modal-content h3{font:600 1rem var(--display);text-transform:uppercase;letter-spacing:.04em;color:var(--ink);border-left:3px solid #FF5200;padding-left:12px;margin-bottom:14px}
.case-modal-content p+p{margin-top:14px}
.case-modal-content ul{padding-left:22px}
.case-modal-content li+li{margin-top:14px}
.case-modal-content strong{color:var(--ink)}
@media(max-width:980px){.case-carousel{justify-self:start;max-width:600px}}
@media(max-width:560px){.case-preview{padding:28px;min-height:410px}.case-modal{padding:12px}.case-modal .demo-modal__dialog{max-height:calc(100dvh - 24px)}.case-modal-header{padding:16px 22px}.case-modal-content{padding:26px 24px 32px}}


.energy-alliance-cases{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.energy-alliance-cases .case-preview p{font-size:.94rem;line-height:1.7;margin:0 0 24px}
@media(max-width:560px){.energy-alliance-cases{grid-template-columns:1fr}}

/* Coca-Cola Andina case preview and full story. */
.bo-case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.bo-case-preview{border-radius:var(--r);padding:34px;display:flex;flex-direction:column;align-items:flex-start;min-height:430px;background:#fff}
.bo-case-preview--andina{border:1px solid var(--line);border-top:4px solid #E21D16}
.bo-andina-logo{width:260px;height:auto;margin-bottom:22px}
.bo-case-kicker{display:block;font:600 .7rem/1.5 var(--display);letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px;color:var(--muted)}
.bo-case-preview--andina .bo-case-kicker{color:#A61914}
.bo-case-preview h3{font:600 1.45rem/1.25 var(--display);letter-spacing:-.02em;margin:0 0 14px}
.bo-case-preview p{color:var(--muted);font-size:.94rem;line-height:1.7;margin:0 0 24px}
.bo-case-preview-metrics{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.bo-case-preview-metrics span{background:#FBEDEA;color:#8F211B;border-radius:var(--r-pill);padding:7px 12px;font:600 .75rem/1.4 var(--display)}
.bo-case-read{background:none;border:0;padding:0;color:#A61914;font:600 .88rem/1.5 var(--body);cursor:pointer;margin-top:auto}
.bo-case-read:hover{text-decoration:underline}
.bo-case-preview--next{border:1px dashed #9DA28F}
.bo-case-next-symbol{font:500 2.4rem var(--display);color:var(--violet);margin-bottom:16px}
.bo-case-preview--next .btn{margin-top:auto;font-size:.85rem}
.bo-case-modal[hidden]{display:none}
.bo-case-modal{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;padding:20px;background:rgba(26,25,23,.7)}
.bo-case-modal .demo-modal__dialog{background:#fff;border-radius:var(--r-lg);box-shadow:var(--shadow-floating);width:min(100%,820px);max-height:calc(100dvh - 40px);overflow:auto;overscroll-behavior:contain}
.bo-case-modal-header{position:sticky;top:0;z-index:1;background:#fff;border-bottom:3px solid #E21D16;display:flex;align-items:center;justify-content:space-between;padding:12px 30px}
.bo-case-modal-header img{width:230px;height:auto}
.bo-case-modal .demo-modal__close{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;border:0;border-radius:50%;background:var(--mist);color:var(--ink);font-size:1.5rem;cursor:pointer}
.bo-case-modal-content{padding:32px 40px 40px}
.bo-case-modal-content h2{font:700 clamp(1.7rem,3vw,2.1rem)/1.2 var(--display);letter-spacing:-.02em;margin-bottom:18px}
.bo-case-modal-content p,.bo-case-modal-content li{color:var(--muted);font-size:.95rem;line-height:1.75}
.bo-case-modal-content .bo-case-intro{color:var(--ink)}
.bo-case-modal-content section{margin-top:28px}
.bo-case-modal-content h3{font:600 1rem var(--display);text-transform:uppercase;letter-spacing:.04em;color:var(--ink);border-left:3px solid #E21D16;padding-left:12px;margin-bottom:14px}
.bo-case-modal-content p+p{margin-top:14px}
.bo-case-modal-content ul{padding-left:22px;margin-top:16px}
.bo-case-modal-content li+li{margin-top:12px}
.bo-case-modal-content strong{color:var(--ink)}
.bo-case-modal-content .bo-case-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;list-style:none;padding:0;margin-top:26px}
.bo-case-metrics li{display:flex;flex-direction:column;justify-content:center;text-align:center;gap:5px;border:1px solid #EBD5D1;background:#FBEDEA;border-radius:var(--r-pill);padding:18px 24px;min-height:100px}
.bo-case-metrics li+li{margin-top:0}
.bo-case-metrics li:last-child{grid-column:1 / -1}
.bo-case-metrics strong{font:600 1.2rem/1.3 var(--display);color:#8F211B}
.bo-case-metrics span{font-size:.8rem;line-height:1.5;color:var(--ink)}
.bo-case-modal-content .bo-case-footnote{font-size:.75rem;margin-top:16px}
@media(max-width:560px){.bo-case-grid{grid-template-columns:1fr}.bo-case-preview{padding:28px;min-height:390px}.bo-case-modal{padding:12px}.bo-case-modal .demo-modal__dialog{max-height:calc(100dvh - 24px)}.bo-case-modal-header{padding:10px 22px}.bo-case-modal-header img{width:195px}.bo-case-modal-content{padding:26px 24px 32px}.bo-case-modal-content .bo-case-metrics{grid-template-columns:1fr}.bo-case-metrics li:last-child{grid-column:auto}}

.testi{display:flex;flex-direction:column}
.testi .who.testimonial-attribution{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,1fr);gap:16px;align-items:center;margin-top:auto}
.testimonial-author{display:flex;align-items:center;gap:12px;min-width:0}
.testimonial-author>div{min-width:0;overflow-wrap:break-word}
.testi .testimonial-author>img{width:44px;height:44px;flex:0 0 44px}
.testi .who .testimonial-company-logo{width:100%;max-width:84px;height:40px;object-fit:cover;object-position:center;justify-self:end;margin:0;border:0;border-radius:0;background:#fff}
@media(max-width:560px){.testi .who.testimonial-attribution{gap:12px}.testimonial-author{gap:10px}}
