.case-study-footer-shell{width:calc(100% + 2*var(--site-inline-padding));min-height:100svh;margin-inline:calc(-1*var(--site-inline-padding))}.case-study-footer{box-sizing:border-box;background-color:var(--color-case-study-canvas);width:100%;height:100svh;min-height:100svh;color:var(--color-case-study-text-body);flex-direction:column;justify-content:flex-end;display:flex;position:relative;overflow:hidden}.case-study-footer__column{flex-direction:column;justify-content:flex-end;height:100%;display:flex}.case-study-footer__content{width:100%;padding-block:2.5rem;padding-inline:var(--site-inline-padding);box-sizing:border-box;flex-direction:column;gap:2.5rem;display:flex}.case-study-footer__nav{display:none}.case-study-footer__main{flex-direction:column;flex:1;justify-content:flex-end;gap:2.5rem;width:100%;display:flex}.case-study-footer__pre{color:var(--color-case-study-text-body);font-size:var(--font-size-xxsm);align-items:center;gap:.5rem;margin:0;display:flex}.case-study-footer__pre-sep{color:var(--color-case-study-text-label)}.case-study-footer__title{font-family:var(--font-general-sans),system-ui,sans-serif;color:var(--color-case-study-text-strong);align-items:center;gap:.75rem;margin:0;font-size:clamp(3rem,15cqw,10rem);font-weight:600;line-height:1;display:inline-flex}.case-study-footer__cta-block{border-bottom:1px solid var(--color-case-study-border);width:100%;color:inherit;flex-direction:column;gap:1.5rem;margin:0;padding-bottom:2.5rem;text-decoration:none;display:flex;container-type:inline-size}.case-study-footer__cta-block:hover .case-study-footer__pre,.case-study-footer__cta-block:hover .case-study-footer__index{color:var(--color-accent-primary)}.case-study-footer__cta-block:hover .case-study-footer__title{background-color:var(--color-accent-primary);color:var(--color-case-study-canvas)}.case-study-footer__cta-block:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}.case-study-footer__index{font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:var(--letter-spacing);text-transform:uppercase;color:var(--color-case-study-text-body);margin:0;font-weight:500}.case-study-footer__bottom{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;width:100%;display:flex}.case-study-footer__actions{color:var(--color-case-study-text-body);flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.case-study-footer__action{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:none}.case-study-footer__action:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}.case-study-footer__action-sep{color:var(--color-case-study-text-label);-webkit-user-select:none;user-select:none}.case-study-footer__email-action{align-items:center;display:inline-flex;position:relative}.case-study-footer__copy-tooltip{z-index:2;pointer-events:none;white-space:nowrap;font-size:var(--font-size-xxsm);color:var(--color-case-study-text-strong);background-color:color-mix(in srgb, var(--color-case-study-canvas) 45%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid color-mix(in srgb, var(--color-accent-primary) 45%, transparent);margin:0;padding:.5rem;font-weight:500;line-height:1.2;position:absolute;top:50%;left:calc(100% + .5rem);transform:translateY(-50%);box-shadow:0 8px 24px #00000059}.case-study-footer__legal{color:var(--color-case-study-text-body);white-space:nowrap;margin:0}@media (max-width:1000px){.case-study-footer{justify-content:flex-start}.case-study-footer__content{flex:1;justify-content:space-between;min-height:100%}.case-study-footer__nav{display:flex}}
.case-study-page{-moz-column-gap:10%;background-color:var(--color-case-study-canvas);grid-template-columns:minmax(30rem,30%) minmax(0,60%);align-items:flex-start;column-gap:10%;width:100%;min-height:100vh;display:grid}.case-study-page__card{align-self:stretch;min-width:0;height:100vh;position:sticky;top:0}.case-study-page__content{min-width:0;padding-inline:var(--site-inline-padding);flex-direction:column;display:flex}.case-study-page__content>.case-study-page__body{width:100%;max-width:var(--site-content-max-width);margin-inline:auto}.case-study-page .site-page__home--hero-card,.case-study-page .case-study-info-panel,.case-study-page .case-study-section__media{border-radius:0}@media (max-width:1000px){.case-study-page{grid-template-columns:1fr}.case-study-page__card{width:100%;height:auto;min-height:calc(100svh - 7.5rem);position:static;top:auto}.case-study-page__content{width:100%}}
.case-study-media-svg{width:100%;display:block}.case-study-media-svg svg{width:100%;height:auto;display:block}
.case-study-hero{width:100%;margin:2.5rem 0}.case-study-hero__img{width:100%;height:auto;display:block}
.case-study-section-compare{width:100%;margin:0}.case-study-section-compare__frame{border:1px solid var(--color-case-study-border);cursor:ew-resize;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:.75rem;width:100%;position:relative;overflow:hidden}.case-study-section-compare__img{pointer-events:none;width:100%;height:auto;display:block}.case-study-section-compare__img--after{z-index:0;position:relative}.case-study-section-compare__before-layer{z-index:1;position:absolute;inset:0}.case-study-section-compare__img--before{position:relative}.case-study-section-compare__handle{z-index:2;cursor:ew-resize;outline:none;justify-content:center;align-items:center;width:24px;margin-left:-12px;display:flex;position:absolute;top:0;bottom:0}.case-study-section-compare__handle:focus-visible .case-study-section-compare__handle-grip{border-color:var(--color-accent-primary);box-shadow:0 0 0 2px #ffffff1f}.case-study-section-compare__handle-line{background:linear-gradient(to bottom, transparent 0%, var(--color-accent-primary) 50%, transparent 100%);width:2px;margin-left:-1px;position:absolute;top:0;bottom:0;left:50%}.case-study-section-compare__handle-grip{z-index:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#171614d1;border:1px solid #fff3;border-radius:.5rem;flex-direction:row;justify-content:center;align-items:center;gap:.2rem;width:24px;height:24px;display:flex;position:relative;box-shadow:0 .35rem 1rem #00000047}.case-study-section-compare__handle-grip span{background:#ffffffe0;width:1px;height:.75rem;display:block}.case-study-section-compare__label{z-index:3;border:1px solid var(--color-accent-primary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:var(--font-size-xsm);letter-spacing:.04em;color:var(--color-case-study-text-primary);pointer-events:none;background:#171614b8;border-radius:.25rem;padding:.3rem .5rem;line-height:1;position:absolute;top:.75rem}.case-study-section-compare__label--before{left:.75rem}.case-study-section-compare__label--after{right:.75rem}
.case-study-section__code{flex-direction:column;width:100%;margin:0;display:flex}.case-study-section__code-block{border:1px solid var(--color-case-study-border);background-color:var(--color-case-study-media-surface);width:100%;font-family:var(--font-mono),ui-monospace,monospace;font-size:var(--font-size-xsm);letter-spacing:normal;text-transform:none;color:var(--color-case-study-text-strong);-webkit-user-select:none;user-select:none;cursor:default;border-radius:.375rem;margin:0;padding:1.25rem 1.5rem;font-weight:400;line-height:1.55;overflow:visible}.case-study-section__markdown-block{border:1px solid var(--color-case-study-border);background-color:var(--color-case-study-media-surface);width:100%;font-family:var(--font-general-sans),system-ui,sans-serif;font-size:var(--font-size-sm);color:var(--color-case-study-text-body);-webkit-user-select:none;user-select:none;cursor:default;border-radius:.75rem;margin:0;padding:1.25rem 1.5rem;font-weight:400;line-height:1.45;overflow:visible}.case-study-section__markdown-block table{flex-direction:column;width:100%;display:flex}.case-study-section__markdown-block thead{display:none}.case-study-section__markdown-block tbody{flex-direction:column;width:100%;display:flex}.case-study-section__markdown-block tr{border-bottom:1px solid var(--color-case-study-border);flex-direction:column;gap:.375rem;padding:.75rem 0;display:flex}.case-study-section__markdown-block tr:last-child{border-bottom:0}.case-study-section__markdown-block th,.case-study-section__markdown-block td{vertical-align:top;text-align:left;border-bottom:0;padding:0;display:block}@media (min-width:1024px){.case-study-section__markdown-block table{table-layout:fixed;border-collapse:collapse;display:table}.case-study-section__markdown-block thead{display:table-header-group}.case-study-section__markdown-block tbody{display:table-row-group}.case-study-section__markdown-block tr{border-bottom:0;gap:0;padding:0;display:table-row}.case-study-section__markdown-block th,.case-study-section__markdown-block td{border-bottom:1px solid var(--color-case-study-border);vertical-align:center;padding:.625rem .75rem;display:table-cell}.case-study-section__markdown-block th{font-family:var(--font-general-sans),system-ui,sans-serif;font-size:var(--font-size-xsm);color:var(--color-case-study-text-label);text-transform:uppercase;font-weight:600}.case-study-section__markdown-block tr:last-child th,.case-study-section__markdown-block tr:last-child td{border-bottom:0}}.case-study-section__shiki-pre{tab-size:2;white-space:pre-wrap;word-break:break-word;margin:0;padding:0;overflow:visible;background:0 0!important}.case-study-section__shiki-code{font:inherit;line-height:inherit;display:block}
.case-study-section{flex-direction:column;gap:1rem;width:100%;padding:2.5rem 0;display:flex}.case-study-section__media{flex-direction:column;justify-content:center;align-items:center;width:100%;margin:0 0 2.5rem;display:flex;overflow:hidden}.case-study-section__media:has(.case-study-section__code){min-height:auto;overflow:visible}.case-study-section__media:has(.case-study-section__media-video){min-height:auto}.case-study-section__media:has(.case-study-section-compare){min-height:auto}.case-study-section__media-frame{width:100%;position:relative;overflow:hidden}.case-study-section .case-study-media-svg{border:none}.case-study-section__media-img{-o-object-fit:cover;object-fit:cover;border:1px solid var(--color-case-study-border);border-radius:.75rem;width:100%;height:auto;display:block}.case-study-section__media-video{aspect-ratio:16/9;cursor:pointer;-o-object-fit:cover;object-fit:cover;border:1px solid var(--color-case-study-border);background:#00000059;border-radius:.75rem;width:100%;max-width:100%;height:auto;display:block}.case-study-section__media-video:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:-2px}.case-study-section__expand-btn{z-index:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:2.25rem;height:2.25rem;color:var(--color-case-study-text-primary);cursor:pointer;background:#171614b8;border:1px solid #ffffff24;border-radius:.25rem;justify-content:center;align-items:center;padding:0;transition:border-color .15s,background-color .15s,color .15s;display:inline-flex;position:absolute;bottom:.75rem;right:.75rem}.case-study-section__expand-btn:hover,.case-study-section__expand-btn:focus-visible{color:var(--color-case-study-text-strong);background:#171614e0;border-color:#ffffff47;outline:none}.case-study-section__expand-icon{display:block}.case-study-section__media-caption{max-width:40rem;font-family:var(--font-general-sans-italic),var(--font-general-sans),system-ui,sans-serif;font-style:italic;font-size:var(--font-size-xsm);text-align:center;color:var(--color-case-study-text-body);margin:0;line-height:1.24}.case-study-section__eyebrow{font-family:var(--font-general-sans),system-ui,sans-serif;font-size:var(--font-size-sm);text-transform:uppercase;color:var(--color-case-study-text-label);margin:0;font-weight:600;line-height:1.2}.case-study-section__tagline{font-family:var(--font-general-sans),system-ui,sans-serif;font-size:var(--font-size-md);color:var(--color-case-study-text-strong);margin:0;font-weight:600;line-height:1.35}.case-study-section__body{font-family:var(--font-general-sans),system-ui,sans-serif;font-size:var(--font-size-md);color:var(--color-case-study-text-body);margin:0;font-weight:400;line-height:1.45}.case-study-section__inline-code{border:1px solid var(--color-case-study-border);font-size:var(--font-size-xsm);vertical-align:baseline;color:var(--color-accent-primary);border-radius:.25rem;padding:.25rem;line-height:1;display:inline-block}.case-study-section__inline-code.ui-mono{text-transform:none}.case-study-section__body-grid{grid-template-columns:1fr;row-gap:1rem;width:100%;display:grid}@media (min-width:1024px){.case-study-section__body-grid{-moz-column-gap:clamp(1rem,20%,4rem);grid-template-columns:1fr 1fr;gap:1rem clamp(1rem,20%,4rem)}.case-study-section__body-cell--span{grid-column:1/-1}.case-study-section__media{min-height:32rem}.case-study-section__media:has(.case-study-section__media-video){min-height:auto}.case-study-section__media:has(.case-study-section-compare){min-height:auto}.case-study-section__expand-btn{bottom:1rem;right:1rem}}.case-study-lightbox{z-index:10000;pointer-events:none;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.case-study-lightbox__backdrop{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);cursor:pointer;pointer-events:auto;background:#080807c7;border:0;padding:0;position:absolute;inset:0}.case-study-lightbox__panel{z-index:1;pointer-events:auto;flex-grow:1;justify-content:center;align-items:center;height:100%;display:flex;position:relative}.case-study-lightbox__close{z-index:2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:2.25rem;height:2.25rem;color:var(--color-case-study-text-primary);cursor:pointer;background:#171614b8;border:1px solid #ffffff24;border-radius:.25rem;justify-content:center;align-items:center;padding:0;transition:border-color .15s,background-color .15s,color .15s;display:inline-flex;position:fixed;top:clamp(1rem,3vw,2.5rem);right:clamp(1rem,3vw,2.5rem)}.case-study-lightbox__close:hover,.case-study-lightbox__close:focus-visible{color:var(--color-case-study-text-strong);background:#171614e0;border-color:#ffffff47;outline:none}.case-study-lightbox__frame{box-sizing:border-box;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.case-study-lightbox__img,.case-study-lightbox__video{--ratio:calc(85vh * 16 / 9);width:min(90vw,var(--ratio));-o-object-fit:contain;object-fit:contain;border-radius:.75rem;height:auto;display:block}
