@layer components{.case-study-hero_wrap{--_ink: var(--text);--_surface: var(--background);width:100%;display:flex;flex-direction:column;gap:var(--space-8);color:var(--_ink);background-color:var(--_surface);font-family:var(--primary-family);&.dark{--_ink: var(--background);--_surface: var(--text)}}.case-study-hero_title{margin:0 0 var(--display-margin-bottom);font-family:var(--display-font-family);font-size:var(--display);font-weight:var(--display-font-weight);line-height:var(--display-line-height);letter-spacing:var(--display-letter-spacing);text-transform:var(--display-text-transform);text-wrap:var(--display-text-wrap);--_trim-top: var(--display-trim-top);--_trim-bottom: var(--display-trim-bottom)}.case-study-hero_meta{>ul,>ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem;margin:0;padding:0;list-style:none;@media(width<64rem){grid-template-columns:repeat(2,minmax(0,1fr))}@media(width<30rem){grid-template-columns:minmax(0,1fr)}}& li{min-width:0;display:flex;flex-direction:column;align-items:start;overflow-wrap:anywhere}& li>:first-child{margin:0 0 var(--space-2);font-family:var(--h6-font-family);font-size:var(--h6);font-weight:var(--h6-font-weight);line-height:var(--h6-line-height);letter-spacing:var(--h6-letter-spacing);text-transform:var(--h6-text-transform);--_trim-top: var(--h6-trim-top);--_trim-bottom: var(--h6-trim-bottom)}& li>:not(:first-child){margin-block:0;color:var(--text-2)}& a{text-wrap:wrap}}.case-study-hero_wrap.ledger .case-study-hero_meta{padding-top:var(--space-5);border-top:var(--border-width) solid var(--border);@media(width>=64rem){>:is(ul,ol){grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--site-gutter)}& li:first-child{grid-column:1 / span 5}& li:not(:first-child){grid-column:span 2}}}.case-study-hero_media{aspect-ratio:var(--_ratio, auto);overflow:clip;border-radius:var(--radius-small);>:is(img,picture,video),>picture>img{display:block;width:100%;height:100%;object-fit:cover}}}@layer components{.case-study-section_wrap{position:relative;width:100%;display:flex;flex-direction:column;justify-content:center;padding-top:var(--section-space-medium);padding-bottom:var(--section-space-medium);color:var(--text);font-family:var(--primary-family);&.pad-top-none{padding-top:0}&.pad-top-small{padding-top:var(--section-space-small)}&.pad-top-large{padding-top:var(--section-space-large)}&.pad-bottom-none{padding-bottom:0}&.pad-bottom-small{padding-bottom:var(--section-space-small)}&.pad-bottom-large{padding-bottom:var(--section-space-large)}}.case-study-section_container{width:var(--site-width);max-width:var(--max-width-main);margin-inline:auto;display:flex;flex-direction:column;align-items:start;justify-content:center;gap:var(--space-8);.case-study-section_wrap.images &{width:100%;max-width:none}}.case-study-section_label{margin-block:0;font-family:var(--text-small-font-family);font-size:var(--text-small);font-weight:var(--text-small-font-weight);line-height:var(--text-small-line-height);letter-spacing:var(--text-small-letter-spacing);color:var(--text-2);text-transform:uppercase;--_trim-top: var(--text-small-trim-top);--_trim-bottom: var(--text-small-trim-bottom)}.case-study-section_body{margin-block:0;&:not(:has(p,h1,h2,h3,h4,h5,h6)){display:flow-root;&:before{content:"";display:table;margin-bottom:calc(-.5lh + var(--_trim-top))}&:after{content:"";display:table;margin-bottom:calc(-.5lh + var(--_trim-bottom))}}>*{margin-block:0}}.case-study-section_block{width:100%;display:flex;flex-direction:column;gap:var(--_gap)}.case-study-section_wrap.text .case-study-section_body{font-family:var(--text-large-font-family);font-size:var(--text-large);font-weight:var(--text-large-font-weight);line-height:var(--text-large-line-height);letter-spacing:var(--text-large-letter-spacing);text-transform:var(--text-large-text-transform);text-wrap:var(--text-large-text-wrap);--_trim-top: var(--text-large-trim-top);--_trim-bottom: var(--text-large-trim-bottom);&.unwrapped{--_trim-top: .5lh;--_trim-bottom: .5lh}}.case-study-section_question{width:100%;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--space-8);>.case-study-section_ask{grid-column:span 4;align-self:end;display:flex;flex-direction:column;gap:var(--space-5)}>:not(.case-study-section_ask){grid-column:span 8;aspect-ratio:var(--_ratio, auto);border-radius:var(--radius-small);overflow:clip}>:not(.case-study-section_ask) :is(img,video){display:block;width:100%;height:100%;object-fit:cover}@media(width<64rem){display:flex;flex-direction:column;gap:var(--space-7)}}.case-study-section_wrap.question .case-study-section_body{font-family:var(--text-main-font-family);font-size:var(--text-main);font-weight:var(--text-main-font-weight);line-height:var(--text-main-line-height);letter-spacing:var(--text-main-letter-spacing);text-transform:var(--text-main-text-transform);--_trim-top: var(--text-main-trim-top);--_trim-bottom: var(--text-main-trim-bottom)}.case-study-section_images{width:100%;display:flex;flex-direction:column;gap:var(--space-7);>*{width:100%;aspect-ratio:var(--_ratio, auto)}:is(img,video){display:block;width:100%;height:100%;object-fit:cover}}.case-study-section_gallery{width:100%;display:grid;grid-template-columns:repeat(var(--_columns, 2),minmax(0,1fr));gap:var(--space-7) var(--space-6);>*{min-width:0;margin:0;display:flex;flex-direction:column;gap:var(--space-4)}:is(img,video){display:block;width:100%;height:auto;aspect-ratio:var(--_ratio, auto);border-radius:var(--radius-small);object-fit:cover}& figcaption{font-family:var(--text-small-font-family);font-size:var(--text-small);font-weight:var(--text-small-font-weight);line-height:var(--text-small-line-height);letter-spacing:var(--text-small-letter-spacing);color:var(--text-2);text-wrap:pretty;>strong:first-child{display:block;font-weight:inherit;color:var(--text)}}@media(width<48rem){grid-template-columns:minmax(0,1fr)}}.case-study-section_wrap.gallery .case-study-section_body{max-width:40rem;font-family:var(--text-main-font-family);font-size:var(--text-main);font-weight:var(--text-main-font-weight);line-height:var(--text-main-line-height);letter-spacing:var(--text-main-letter-spacing);text-transform:var(--text-main-text-transform);--_trim-top: var(--text-main-trim-top);--_trim-bottom: var(--text-main-trim-bottom)}.case-study-section_slider{width:100%}.case-study-section_wrap.ledger:is(.text,.question){counter-increment:case-chapter;:is(.case-study-section_block,.case-study-section_ask){display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--site-gutter);row-gap:var(--space-5);align-items:start;padding-top:var(--space-5);border-top:var(--border-width) solid var(--border);&:before{content:counter(case-chapter,decimal-leading-zero);grid-column:1 / span 2;font-family:var(--text-small-font-family);font-size:var(--text-small);font-weight:var(--text-small-font-weight);line-height:var(--text-small-line-height);letter-spacing:var(--text-small-letter-spacing);color:var(--text-2);margin-top:calc(-.5lh + var(--text-small-trim-top))}>.case-study-section_label{grid-column:3 / span 3}>.case-study-section_body{grid-column:6 / -1;&.unwrapped{--_trim-top: var(--text-large-trim-top)}}@media(width<64rem){grid-template-columns:3rem minmax(0,1fr);&:before{grid-column:1}>.case-study-section_label{grid-column:2}>.case-study-section_body{grid-column:1 / -1}}}}.case-study-section_wrap.ledger.question{.case-study-section_question{display:flex;flex-direction:column;gap:var(--space-8)}.case-study-section_ask{width:100%;align-self:stretch}.case-study-section_question>:not(.case-study-section_ask){width:100%}.case-study-section_body{font-family:var(--text-large-font-family);font-size:var(--text-large);font-weight:var(--text-large-font-weight);line-height:var(--text-large-line-height);letter-spacing:var(--text-large-letter-spacing);text-transform:var(--text-large-text-transform);text-wrap:var(--text-large-text-wrap);--_trim-top: var(--text-large-trim-top);--_trim-bottom: var(--text-large-trim-bottom)}}}@layer components{.card-slider_wrap{--_ink: var(--text);--_surface: var(--background);--_gap: var(--space-5);--_ratio: 16 / 9;width:100%;container-type:inline-size;color:var(--_ink);background-color:var(--_surface);font-family:var(--primary-family);&.dark{--_ink: var(--background);--_surface: var(--text)}}.card-slider_track{--_view: var(--_per-view, 3);display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(var(--_gap) * -.5);scrollbar-width:none;cursor:grab;&::-webkit-scrollbar{display:none}&.is-dragging{scroll-snap-type:none;cursor:grabbing;user-select:none}@container (width < 50em){--_view: var(--_per-view-medium, 2.4)}@container (width < 35em){--_view: var(--_per-view-small, 2)}@container (width < 20em){--_view: var(--_per-view-tiny, 1)}}.card-slider_track>*{flex:0 0 calc(100% / var(--_view));min-width:0;padding-inline:calc(var(--_gap) / 2);scroll-snap-align:start;display:flex;flex-direction:column;gap:var(--space-3);color:inherit;text-decoration:none;transition:opacity var(--move-duration) var(--reveal-ease);@media(hover:hover){&:is(:hover,:focus-visible){opacity:.7}}}.card-slider_track>*>:first-child{aspect-ratio:var(--_ratio);min-height:0;border-radius:var(--radius-small);overflow:clip}.card-slider_track>*>:first-child :is(img,picture,video),.card-slider_track>*>:is(img,video):first-child{display:block;width:100%;height:100%;object-fit:cover}.card-slider_track>*>:not(:first-child){margin-top:0;margin-bottom:var(--space-4)}.card-slider_controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);margin-top:var(--space-4)}.card-slider_bullets{display:flex;align-items:center;gap:var(--space-1)}.card-slider_bullet{width:1rem;aspect-ratio:1;padding:0;border:var(--border-width) solid var(--border);border-radius:var(--radius-round);background-color:transparent;cursor:pointer;&.is-active{border-color:var(--_ink);background-color:var(--_ink)}}.card-slider_buttons{display:flex;align-items:center;gap:var(--space-2)}.card-slider_button{width:3rem;aspect-ratio:1;display:flex;align-items:center;justify-content:center;padding:0;border:var(--border-width) solid var(--border);border-radius:var(--radius-round);background-color:transparent;color:inherit;cursor:pointer;transition:background-color var(--hover-duration) var(--hover-ease),border-color var(--hover-duration) var(--hover-ease),color var(--hover-duration) var(--hover-ease);&:disabled{opacity:.5;pointer-events:none}@media(hover:hover){&:hover{border-color:var(--_ink);background-color:var(--_ink);color:var(--_surface)}}}.card-slider_icon{width:36%;.card-slider_button.previous &{transform:scaleX(-1)}}}
