.case-study{color:#0f172a;--case-accent:var(--primary-color);overflow-wrap:anywhere;background:#fff}.case-shell{width:100%;max-width:80rem;margin-inline:auto;padding-inline:1rem}.case-hero{padding-top:clamp(1rem,2vw,1.5rem);padding-bottom:2rem}.case-hero h1{letter-spacing:-.025em;text-wrap:balance;max-width:none;font-size:1.875rem;font-weight:700;line-height:1.05}.case-intro{color:#1e293b;max-width:none;margin-top:1.25rem;font-size:1.125rem;line-height:1.625}.case-facts{border-top:1px solid #e2e8f0;grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem;margin-top:2rem;padding-top:1.25rem;display:grid}.case-facts dt{color:#475569;text-transform:uppercase;letter-spacing:.18em;margin-bottom:.8rem;font-size:.7rem}.case-facts dd{max-width:none;font-size:.95rem;line-height:1.6}.case-banner{background:#f8fafc;width:100%;height:clamp(14rem,30vw,28rem);position:relative}.case-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:1.5rem;margin-top:1rem;margin-bottom:1rem;padding:clamp(1.25rem,2.5vw,2rem);scroll-margin-top:7rem;display:block}.case-section-heading{margin-bottom:1.25rem}.case-number{color:#0f172a;background:var(--case-accent);letter-spacing:.12em;border-radius:.25rem;width:fit-content;margin-bottom:1rem;padding:.35rem .6rem;font-size:.8rem;font-weight:900;display:block}.case-section h2,.case-summary h2{letter-spacing:-.025em;text-wrap:balance;max-width:100%;font-size:1.5rem;font-weight:700;line-height:1.25}.case-prose{color:#1e293b;max-width:none;font-size:1rem;line-height:1.75}.case-prose p{margin-bottom:1em}.case-prose strong{color:#0f172a;font-weight:600}.case-prose h3{color:#0f172a;margin:1.5rem 0 .75rem;font-size:1.125rem;font-weight:600;line-height:1.35}.case-prose ul,.case-prose ol{margin-block:1.5rem;padding-left:1.25rem}.case-prose ul{list-style:outside}.case-prose ol{list-style:decimal}.case-prose li{margin-block:.6rem;padding-left:.4rem}.case-prose li::marker{color:#475569}.case-prose blockquote{border-left:2px solid var(--case-accent);margin-block:2rem;padding-left:1.5rem}.case-study a{text-underline-offset:.25em}.case-prose a{color:#0f172a;text-decoration:underline}.case-prose hr{display:none}.case-prose img,.case-prose video{max-width:100%;height:auto}.case-prose figure.table,.case-prose pre{overflow-x:auto}.case-prose table{width:100%}.case-prose td,.case-prose th{border:1px solid #e2e8f0;padding:.75rem}.case-section-wide{display:block}.case-section-wide .case-section-heading{margin-bottom:1.25rem}.case-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.25rem;display:grid}.case-item{background:#fff;border:1px solid #e2e8f0;border-radius:1rem;padding:clamp(1rem,2vw,1.5rem)}.case-item h3{letter-spacing:-.025em;max-width:none;margin-bottom:1rem;font-size:1.0625rem;line-height:1.4}.case-results .case-items{gap:1rem}.case-results .case-item{background:#fff;border:1px solid #e2e8f0;border-radius:1rem;padding:clamp(1rem,2vw,1.5rem)}.case-results .case-item h3{color:#0f172a}.case-conclusion{margin-bottom:0}.case-conclusion .case-prose p:last-child{color:#0f172a;letter-spacing:-.03em;border-left:2px solid var(--case-accent);margin-top:1.25rem;padding-left:1.5rem;font-size:clamp(1.25rem,2vw,1.75rem);line-height:1.35}.case-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem;padding-bottom:5rem;line-height:1.8;display:grid}.case-summary h2{margin-bottom:1rem}.case-preface{padding-block:1rem}.case-contact-float{z-index:45;right:max(.5rem,env(safe-area-inset-right));bottom:max(1rem,env(safe-area-inset-bottom));color:#fff;background:#111315;border:1px solid #ffffff1a;border-radius:1rem;align-items:center;gap:.75rem;min-height:3.5rem;padding:.5rem .7rem .5rem .5rem;text-decoration:none;transition:transform .18s,box-shadow .18s;display:inline-flex;position:fixed;box-shadow:0 1rem 2.5rem #0f172a33}.case-contact-float:hover{transform:translateY(-3px);box-shadow:0 1rem 2rem #0f172a40}.case-contact-float:focus-visible{outline:3px solid var(--case-accent);outline-offset:4px}.case-contact-float-icon{background:var(--case-accent);color:#111315;border-radius:.75rem;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;display:inline-flex}.case-contact-float-label{flex-direction:column;font-size:.875rem;font-weight:800;line-height:1.1;display:flex}.case-contact-float-label small{color:#94a3b8;letter-spacing:.08em;text-transform:uppercase;margin-bottom:.2rem;font-size:.625rem;font-weight:700}.case-contact-float-arrow{color:var(--case-accent);transition:transform .18s}.case-contact-float:hover .case-contact-float-arrow{transform:translate(3px)}@media (max-width:900px){.case-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.case-items,.case-summary{grid-template-columns:1fr}.case-facts{gap:1.5rem 1rem}.case-contact-float{border-radius:1rem;min-height:3.5rem;padding:.375rem}.case-contact-float-icon{width:2.5rem;height:2.5rem}.case-contact-float-label,.case-contact-float-arrow{display:none}}.case-conclusion .case-prose p:has(>strong:only-child){letter-spacing:-.03em;font-size:clamp(1.25rem,2vw,1.75rem);line-height:1.35}.case-results .case-item .case-prose{color:#1e293b}.case-results .case-item .case-prose strong{color:#0f172a}.case-item h3{font-weight:700}@media (min-width:640px){.case-shell{padding-inline:1.5rem}}@media (min-width:768px){.case-hero h1{font-size:2.5rem}}@media (min-width:1024px){.case-shell{padding-inline:2rem}.case-hero h1{font-size:3rem}.case-section h2,.case-summary h2{font-size:1.875rem}}.case-study article.case-shell{padding-bottom:4rem}.case-section-nav{scrollbar-width:none;flex-wrap:nowrap;gap:.5rem;padding:1rem .25rem;display:flex;overflow-x:auto}.case-section-nav::-webkit-scrollbar{display:none}.case-section-nav a{white-space:nowrap;color:#334155;background:#fff;border:1px solid #e2e8f0;border-radius:999px;flex:none;align-items:center;min-height:40px;padding:.5rem .85rem;font-size:.8125rem;font-weight:600;line-height:1.4;text-decoration:none;display:inline-flex}.case-section-nav a:hover{background:var(--case-accent);border-color:var(--case-accent);color:#0f172a}.case-section-nav a:focus-visible{outline-offset:2px;outline:2px solid #0f172a}.case-item .case-prose{font-size:1rem}.case-prose>:last-child{margin-bottom:0}@media (max-width:600px){.case-section h2{font-size:1.5rem}.case-section{border-radius:1rem}}.case-number{color:#111315;margin-bottom:.75rem;padding:.25rem .5rem;font-size:.7rem}.case-banner-logo{background:#f1f3f5}
