/* Scoped additions only. Original branding, header and global styles are unchanged. */
.section_case-studies{position:relative;z-index:2;padding-top:5rem;padding-bottom:2rem;background:var(--dark-black,#1d1d1d)}
.case-studies_intro{font-size:1.1rem;font-weight:400;color:#999;max-width:42rem;margin:1rem 0 3rem;line-height:1.6}
.case-study{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:5%;align-items:start;padding:4rem 5%;border-top:1px solid #ffffff24}
.case-study_visual{position:sticky;top:2rem;padding-top:.3rem}.case-study_visual>a{display:block;overflow:hidden;border-radius:.5rem;background:#282828}.case-study_visual img{width:100%;height:auto;display:block;transition:transform .35s}.case-study_visual>a:hover img{transform:scale(1.025)}
.case-study_caption{display:flex;justify-content:space-between;gap:1rem;font-size:1rem;margin:1rem 0 0;color:#ddd}.case-study_caption span{font-size:.8rem;font-weight:400;color:#999;text-align:right}
.case-study_number{color:#b489fa;font-size:.85rem;margin:0 0 1.1rem}.case-study_content h3{font:inherit;font-size:clamp(2rem,3vw,3.5rem);line-height:1.04;letter-spacing:-.04em;font-weight:700;color:#eee;margin:0 0 1.3rem}.case-study_lead{font-size:1.12rem;font-weight:400;line-height:1.5;color:#aaa;margin:0 0 2rem}.case-study_content dl{margin:0}.case-study_content dl>div{margin-bottom:1.3rem}.case-study_content dt{font-size:.9rem;font-weight:700;color:#eee;margin-bottom:.3rem}.case-study_content dd{font-size:.95rem;line-height:1.65;font-weight:400;color:#aaa;margin:0}.case-study_stack{color:#888;font-size:.75rem;font-weight:400;padding-top:.6rem;margin-bottom:1.6rem}.case-study_links{display:flex;gap:1.5rem;flex-wrap:wrap}.case-study_links a{font-size:.875rem;font-weight:700;color:#c6a7ff;text-decoration:none;border-bottom:1px solid #775997;padding-bottom:.3rem}.case-study_links a:hover{color:white;border-color:white}.case-study a:focus-visible{outline:2px solid #c6a7ff;outline-offset:6px}.case-studies_credit{font-size:.8rem;color:#888;font-weight:400;padding-top:1rem}
@media(max-width:991px){.case-study{gap:4%;padding:3rem 5%}.case-study_content h3{font-size:2.2rem}.case-study_caption{flex-direction:column;gap:.2rem}.case-study_caption span{text-align:left}}
@media(max-width:767px){.section_case-studies{padding-top:3rem}.case-study{grid-template-columns:1fr;gap:2rem;padding:2.5rem 5%}.case-study_visual{position:static}.case-study_content h3{font-size:2.5rem}.case-study_caption{flex-direction:row}.case-study_caption span{text-align:right}.case-studies_intro{font-size:1rem;margin-bottom:2rem}.case-study_content dd{font-size:.95rem}}
@media(prefers-reduced-motion:reduce){.case-study_visual img{transition:none}}
.case-cover{aspect-ratio:16/10;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;position:relative}.case-cover_starters{background:#faf8f1;color:#1b1b1b;padding:12%}.case-cover_starters img{height:auto;width:100%;object-fit:contain}.case-cover_flow{display:flex;gap:1rem;width:100%;justify-content:space-between;margin-top:3rem;font-size:.8rem}.case-cover_flow span{border-top:1px solid #aaa;padding-top:.8rem;flex:1}.case-cover_lodgify{background:#ffefcc;padding:8% 8% 0;color:#183d32;justify-content:flex-start;gap:1rem}.case-cover_wordmark{font-size:2.8rem;line-height:1;letter-spacing:-.06em;align-self:flex-start}.case-cover_lodgify img{width:100%;height:65%;object-fit:contain;object-position:center;min-height:0}.case-cover_label{font-size:.8rem;position:absolute;bottom:6%;left:8%}.case-cover_minijams{background:#101714;color:#eaffdf;gap:.6rem}.case-cover_minijams img{width:18%;height:auto;border-radius:14%;margin-top:-2rem}.case-cover_minijams strong{font-size:2.6rem;line-height:1.1;letter-spacing:-.06em}.case-cover_minijams>span{color:#9eaf9a;font-size:.8rem;font-weight:400}.case-cover_keys{display:flex;gap:4px;position:absolute;bottom:0;left:10%;right:10%;height:19%;overflow:hidden}.case-cover_keys i{background:#eaffdf;flex:1;border-radius:3px 3px 0 0;position:relative}.case-cover_keys i:not(:nth-child(3n)):after{content:'';position:absolute;background:#17251d;width:55%;height:65%;right:-30%;z-index:2;border-radius:0 0 3px 3px}
.case-cover_starters{align-items:flex-start;padding:8%}.case-cover_starters img{width:170px;max-width:70%;height:24px;object-fit:contain;object-position:left}.case-cover_title{font-size:clamp(1.8rem,3.8vw,4.5rem);line-height:1.05;letter-spacing:-.05em;margin-top:8%}.case-cover_flow{margin-top:7%}.case-cover_lodgify .case-cover_wordmark{position:absolute;top:9%;left:8%;font-size:clamp(1.8rem,2.8vw,2.8rem)}.case-cover_lodgify img{position:absolute;left:8%;top:26%;height:53%;width:84%;object-fit:cover}.case-cover_lodgify .case-cover_label{bottom:6%;font-size:.75rem}@media(max-width:767px){.case-cover_starters img{width:120px;height:auto}.case-cover_title{font-size:2rem;margin-top:6%}.case-cover_flow{margin-top:5%;gap:.6rem;font-size:.6rem}.case-cover_flow span{padding-top:.4rem}.case-cover_minijams strong{font-size:2rem}.case-cover_minijams>span{font-size:.65rem}.case-cover_lodgify .case-cover_label{font-size:.65rem}}
.case-study_visual img.case-study_screenshot{display:block;width:100%;height:auto;aspect-ratio:3456/1884;object-fit:contain;transform:none}
.case-metrics{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;border-block:1px solid #ffffff24;padding:1.5rem 0;margin:0 0 1.5rem}.case-metric{display:flex;flex-direction:column;gap:.6rem;min-width:0}.case-metric strong{color:#c6a7ff;font-size:clamp(2rem,3vw,3rem);line-height:1.1;letter-spacing:-.04em}.case-metric strong.case-metric_words{font-size:clamp(1.4rem,2vw,2rem);max-width:12rem}.case-metric span{font-size:.8rem;font-weight:400;color:#aaa;line-height:1.4}.case-metrics_note{font-size:.7rem;font-weight:400;color:#888;line-height:1.5;margin:-.6rem 0 1.7rem}@media(max-width:767px){.case-metrics{gap:1rem}.case-metric strong{font-size:2.3rem}.case-metric strong.case-metric_words{font-size:1.5rem}}
.case-metrics_three{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.case-metrics_note a,.case-study_content dd a{color:#c6a7ff;text-decoration:underline;text-underline-offset:3px}.case-metrics_three .case-metric strong{font-size:clamp(1.7rem,2.7vw,2.8rem)}@media(max-width:767px){.case-metrics_three{gap:.7rem}.case-metrics_three .case-metric strong{font-size:1.8rem}.case-metrics_three .case-metric span{font-size:.75rem}}

.section_case-studies{padding-top:0}
.case-study_story{margin:1.8rem 0 2rem}.case-study_story p{font-size:clamp(1.05rem,1.55vw,1.5rem);line-height:1.6;font-weight:700;letter-spacing:-.015em;color:#888;margin:0 0 1.8rem}.case-study_story strong{color:#f5f5f5;font-weight:700}.case-study_story a{color:inherit;text-decoration:none;border-bottom:1px solid #ffffff55}.case-study_story a:hover{color:#c6a7ff}.case-study_story a:focus-visible{outline:2px solid #c6a7ff;outline-offset:4px}@media(max-width:767px){.case-study_story p{font-size:1.125rem;line-height:1.65;margin-bottom:1.6rem}}
/* Match the original works-services spacing and theme rules. */
.section_case-studies{padding:0;background:transparent}
.case-study{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:2rem;row-gap:1rem;padding:2.5rem 1rem;border:0;background:transparent;box-shadow:inset -1px 1px #b9b9b933,inset 1px -1px #8d8d8d2e}
.case-study_visual{padding-top:0;top:2rem}
.case-study_content h3{font-size:3rem;line-height:1.2;letter-spacing:-.02em;color:var(--white)}
.case-study_number,.case-metric strong,.case-study_links a,.case-metrics_note a{color:var(--purple)}
.case-study_lead,.case-study_story p{max-width:28rem;color:var(--grey-50);font-size:1.25rem;font-weight:700;line-height:1.6;letter-spacing:normal}
.case-study_story{margin:2rem 0}
.case-study_story p{margin-bottom:2rem}
.case-study_story p:last-child{margin-bottom:0}
.case-study_story strong,.case-study_story strong a{color:var(--white)}
.case-study_caption{color:var(--grey-75)}
.case-study_caption span,.case-study_stack,.case-metric span,.case-metrics_note{color:var(--grey-50)}
.case-metrics{max-width:28rem;gap:1rem;border-color:#ffffff20}
@media(max-width:767px){.case-study{grid-template-columns:minmax(0,1fr);gap:2rem;padding:2.5rem 1rem}.case-study_content h3{font-size:2.5rem}.case-study_visual{position:static}.case-study_lead,.case-study_story p{font-size:1.25rem}}

/* Keep the header role compact and on one line within the card. */
#header .works-intro_subtitle{font-size:5cqw;line-height:1.3;white-space:nowrap}

/* Keep the interactive library grid inside the viewport at every breakpoint. */
.section_fidgets{overflow:clip}
.fidgets_list{grid-template-columns:repeat(3,minmax(0,1fr));min-width:0}
.fidgets_item{min-width:0}
.fidgets_item.is-no-overflow{overflow:clip}
.fidgets_item canvas,.fidgets_item svg,.fidgets_item input,.fidgets_item select,.fidgets_item textarea{max-width:100%;min-width:0}
@media(max-width:991px){.fidgets_list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.fidgets_list{grid-template-columns:minmax(0,1fr)}}

/* Centered contact banner between the interactive work and full story. */
.section_mid-cta{padding:2.5rem 1rem;background:transparent}
.mid-cta_banner{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;padding:clamp(3rem,8vw,7rem) 1rem;text-align:center;box-shadow:inset -1px 1px #b9b9b933,inset 1px -1px #8d8d8d2e}
.mid-cta_banner:before{content:"";position:absolute;z-index:-1;inset:-50%;background:radial-gradient(circle,#b87bfb1f 0,transparent 58%);pointer-events:none}
.mid-cta_banner h2{max-width:18ch;margin:0;color:var(--white);font-size:clamp(2.5rem,6vw,5rem);line-height:1.05;letter-spacing:-.04em}
.mid-cta_banner p{max-width:43rem;margin:1.5rem 0 2rem;color:var(--grey-50);font-size:clamp(1rem,2vw,1.25rem);line-height:1.6}
.page-wrapper{position:relative;z-index:1}
.section_mid-cta--stars{position:relative}
.section_mid-cta--stars .mid-cta_banner{background:transparent}
.section_mid-cta--stars .mid-cta_banner:before{z-index:1;inset:0;background:linear-gradient(90deg,#050505cc,#05050533 30%,#0505054d 70%,#050505cc)}
.mid-cta_star-field{position:fixed;z-index:0;inset:0;width:100vw;height:100vh;pointer-events:none;opacity:0;visibility:hidden;will-change:opacity}
body{transition:none}
.mid-cta_banner>h2,.mid-cta_banner>p,.mid-cta_banner>.cta-actions{position:relative;z-index:2}
.cta-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;width:100%}
.cta-actions .button-work{width:auto;min-width:min(100%,12rem);margin:0;border:0;font-family:inherit;cursor:pointer}
.cta-actions .copy-email-button{color:var(--white);background:#ffffff12;box-shadow:inset 0 0 0 1px #ffffff30}
.cta-actions .copy-email-button:hover{background:#ffffff20}
.cta-actions .copy-email-button:disabled{cursor:default;opacity:.8}
.works-intro_content-wrapper-bottom .cta-actions{justify-content:flex-start}
@media(max-width:479px){.cta-actions{flex-direction:column}.cta-actions .button-work{width:100%;min-width:0}}
@media(prefers-reduced-motion:reduce){body,.mid-cta_star-field{transition:none}}
