/* Editorial case library. Every selector is scoped to avoid storefront regressions. */
.lfc{--forest:#1a3c2a;--mint:#e9f1eb;--ink:#202b24;--muted:#526158;--line:#d4ded7;background:#fff;color:var(--ink);font-family:'Montserrat',sans-serif;line-height:1.65}
.lfc *{box-sizing:border-box}.lfc .lfc-wrap{width:min(1240px,100%);margin:auto;padding:0 28px 72px}.lfc a{color:var(--forest);text-decoration:underline;text-underline-offset:4px}.lfc a:focus-visible{outline:3px solid #387d52;outline-offset:5px}.lfc h1,.lfc h2,.lfc h3{font-family:inherit;color:var(--forest);text-transform:none;letter-spacing:-.025em;font-weight:650;line-height:1.17}.lfc h1{font-size:clamp(32px,4.4vw,58px);margin:0 0 24px}.lfc h2{font-size:clamp(23px,2.5vw,32px);margin:0 0 18px}.lfc h3{font-size:22px;margin:0 0 14px}.lfc p{margin:0 0 22px}.lfc .lfc-breadcrumbs{padding:28px 0;font-size:13px;color:var(--muted)}.lfc-breadcrumbs ol{display:flex;gap:10px;flex-wrap:wrap;list-style:none;margin:0;padding:0}.lfc-breadcrumbs li{margin:0}.lfc-breadcrumbs li+li:before{content:'/';margin-right:10px;color:#7b8b80}.lfc .lfc-hero{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(240px,1fr);gap:64px;align-items:center;padding:36px 0 58px}.lfc .lfc-lead{font-size:19px;line-height:1.7;max-width:720px;color:#44534a}.lfc .lfc-button{display:inline-block;padding:14px 22px;background:var(--forest);color:#fff;border-radius:6px;text-decoration:none;font-size:15px;font-weight:650;line-height:1.4}.lfc .lfc-button:hover{background:#28553c}.lfc .lfc-production{background:var(--mint);border-radius:8px;padding:32px 24px;text-align:center;color:var(--forest)}.lfc-production p{font-size:20px;font-weight:600}.lfc-production div{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.lfc-production span{background:#fff;border:1px solid var(--line);padding:8px 11px;border-radius:4px;font-size:12px}.lfc-production strong{display:block;margin:20px auto;padding:20px 0;border-top:1px solid #b5c9ba;border-bottom:1px solid #b5c9ba;max-width:270px;font-size:20px;line-height:1.4}.lfc .lfc-section{padding:45px 0}.lfc .lfc-areas{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0 32px}.lfc-areas a{padding:9px 16px;border:1px solid var(--line);border-radius:4px;text-decoration:none;font-size:14px}.lfc-areas a[aria-current]{background:var(--forest);color:#fff;border-color:var(--forest)}.lfc .lfc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.lfc .lfc-card{border:1px solid var(--line);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;background:#fff}.lfc .lfc-card__visual{position:relative;display:flex;align-items:center;min-height:175px;padding:28px 25px;background:var(--mint);color:var(--forest);text-decoration:none;overflow:hidden}.lfc-card__visual>span{font-size:27px;line-height:1.15;font-weight:700;max-width:280px;position:relative;z-index:1}.lfc-card:nth-child(3n+2) .lfc-card__visual{background:#e9eef5;color:#253b57}.lfc-card:nth-child(3n) .lfc-card__visual{background:#f3ede2;color:#58492d}.lfc-card__signal{position:absolute;right:12px;bottom:8px;display:flex;align-items:end;gap:5px;opacity:.13;height:75px;transform:rotate(-7deg)}.lfc-card__signal i{display:block;background:currentColor;width:9px;height:25%}.lfc-card__signal i:nth-child(2n){height:75%}.lfc-card__signal i:nth-child(3n){height:100%}.lfc-card__signal i:nth-child(4n){height:50%}.lfc .lfc-card__body{padding:25px;display:flex;flex-direction:column;flex:1}.lfc-card__body h3 a{text-decoration:none}.lfc-card__body h3 a:hover{text-decoration:underline}.lfc-card__body>p:not(.lfc-place){font-size:14px}.lfc .lfc-place{font-size:13px;color:var(--muted);margin-bottom:14px}.lfc .lfc-card__fact{margin:auto 0 0;padding-top:16px;border-top:1px solid var(--line)}.lfc .lfc-card__fact strong{font-size:19px;color:var(--forest);margin-right:5px}.lfc .lfc-story{max-width:760px;padding:30px 0;font-size:17px}.lfc-story section{margin-bottom:38px}.lfc .lfc-story h2{font-size:27px}.lfc .lfc-contact{margin-top:56px;background:var(--mint);border-radius:8px;padding:38px;display:flex;gap:50px;align-items:center}.lfc-contact>div:first-child{flex:1}.lfc-contact p{margin:0;max-width:660px}.lfc .lfc-actions{display:flex;flex-direction:column;gap:16px;align-items:center;flex-shrink:0}.lfc .lfc-contributor{display:flex;gap:20px;align-items:center;margin:36px 0;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px;max-width:760px}.lfc-contributor img{width:72px;height:72px;border-radius:50%;object-fit:cover;flex-shrink:0}.lfc .lfc-contributor p{margin:0 0 4px}.lfc-contributor small{color:var(--muted);font-size:12px}.lfc .lfc-case-facts{padding:28px;background:var(--forest);color:#fff;border-radius:8px}.lfc .lfc-case-facts h2{font-size:18px;color:#fff}.lfc-case-facts dl{margin:0}.lfc-case-facts dl>div{display:flex;flex-direction:column-reverse;padding:18px 0;border-bottom:1px solid #456251}.lfc-case-facts dl>div:last-child{border:0;padding-bottom:0}.lfc-case-facts dt{font-size:14px;font-weight:400}.lfc-case-facts dd{margin:0;font-size:35px;font-weight:650;line-height:1.4}.lfc .lfc-case-layout{display:grid;grid-template-columns:minmax(0,760px) minmax(220px,1fr);gap:65px;border-top:1px solid var(--line)}.lfc .lfc-details{padding:32px 0;font-size:14px}.lfc .lfc-details h2{font-size:20px}.lfc-details dt{font-weight:650;margin:20px 0 5px}.lfc-details dd{margin:0;color:var(--muted)}.lfc-details dl{margin-bottom:38px}.lfc-details ul{list-style:none;padding:0;margin:0 0 28px}.lfc-details li{margin:10px 0}.lfc .lfc-summary{padding:0 0 14px;border-bottom:1px solid var(--line)}.lfc .lfc-diagram{margin:0 0 40px;background:var(--mint);padding:24px;border-radius:6px}.lfc-diagram>div{display:flex;gap:14px;align-items:center}.lfc-diagram span{flex:1;text-align:center;font-size:13px;font-weight:600;line-height:1.45;padding:15px 8px;background:#fff;border:1px solid #adc4b4;border-radius:4px;position:relative}.lfc-diagram span+span:before{content:'';position:absolute;width:15px;border-top:2px solid #adc4b4;left:-16px;top:50%}.lfc-diagram figcaption{margin-top:14px;font-size:12px;color:var(--muted)}.lfc .lfc-source{font-size:13px;color:var(--muted)}.lfc .lfc-capabilities{list-style:none;background:var(--mint);border-radius:8px;padding:24px;margin:0}.lfc-capabilities li{padding:16px 0;margin:0;border-bottom:1px solid var(--line);font-weight:500}.lfc-capabilities li:last-child{border:0}.lfc .lfc-profile-role{font-size:20px;font-weight:600;color:var(--forest)}.lfc .lfc-portrait{width:100%;height:auto;max-width:380px;border-radius:8px;justify-self:end}.lfc .lfc-hero--case{align-items:start}.lfc .lfc-hero--profile{padding-bottom:40px}
@media(max-width:1000px){.lfc .lfc-hero{gap:32px}.lfc .lfc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lfc .lfc-case-layout{gap:35px}.lfc .lfc-contact{gap:25px;padding:28px}.lfc-card__visual>span{font-size:25px}}
@media(max-width:700px){.lfc .lfc-wrap{padding:0 20px 40px}.lfc .lfc-breadcrumbs{font-size:12px;padding:20px 0}.lfc .lfc-hero{grid-template-columns:1fr;gap:30px;padding:20px 0 30px}.lfc .lfc-lead{font-size:17px}.lfc .lfc-grid{grid-template-columns:1fr;gap:22px}.lfc .lfc-card__visual{min-height:140px}.lfc .lfc-production{padding:24px 18px}.lfc .lfc-section{padding:28px 0}.lfc .lfc-case-layout{grid-template-columns:1fr;gap:0}.lfc .lfc-details{border-top:1px solid var(--line)}.lfc .lfc-contact{display:block;padding:26px 22px;margin-top:30px}.lfc .lfc-actions{align-items:start;margin-top:22px}.lfc .lfc-story{font-size:16px}.lfc .lfc-story h2{font-size:25px}.lfc .lfc-portrait{justify-self:start;max-width:320px}.lfc .lfc-case-facts dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.lfc .lfc-case-facts dl>div{padding:8px 0;border:0;justify-content:end}.lfc-case-facts dd{font-size:23px}.lfc-case-facts dt{font-size:12px}.lfc .lfc-case-facts{padding:23px}.lfc .lfc-diagram{padding:16px}.lfc-diagram>div{flex-direction:column;gap:12px}.lfc-diagram span{width:100%}.lfc-diagram span+span:before{width:0;height:12px;border-left:2px solid #adc4b4;border-top:0;top:-13px;left:50%}.lfc .lfc-contributor{gap:14px;align-items:start}.lfc .lfc-areas{gap:8px}.lfc-areas a{font-size:13px;padding:8px 12px}}
