/* Approved emphasis: the underlying typography and layout stay unchanged. */
.sc-blue-emphasis { display: inline-block; transform-origin: center; }
.gbox__g.sc-blue-emphasis { background-image: var(--grad); -webkit-background-clip: text; background-clip: text; padding-bottom: .12em; margin-bottom: -.12em; }
html.sc-emphasis .sc-blue-emphasis { scale: 1; transition: none !important; }
html.sc-emphasis .sc-blue-emphasis.sc-blue-pulse { animation: sc-heading-pulse 1.25s ease-in-out !important; }
@keyframes sc-heading-pulse { 0%, 100% { scale: 1; } 42% { scale: 1.035; } }
html.sc-emphasis.sc-motion-off .sc-blue-emphasis { scale: 1; animation: none !important; transition: none !important; }
.sc-concept-note { display: block; position: static; color: var(--slate-600, #475569); font: 500 12px/1.5 var(--f-body, system-ui); margin: 5px 0 8px; }
html.sc-motion-off.sc-emphasis .btn--primary, html.sc-motion-off.sc-emphasis .svc-card { transition: none !important; }
/* Project stacks: preserve the theme's scaling, skew and pointer parallax. */
[data-sc-selectable] .sc-wrap, [data-sc-selectable] .bcard-wrap { z-index: 1; transition: margin-top .85s cubic-bezier(.45,0,.25,1), transform .7s var(--ease-out); }
[data-sc-selectable] .sc-card-front { z-index: 5; margin-top: -10px; }
[data-sc-selectable] .sc-card-front > a { opacity: 1; border-color: #69b8ff; box-shadow: 0 20px 44px #0009, 0 0 28px #2577ff55; }
[data-sc-selectable] .sc-attached-label { transform: none; }
.sc-motion-off [data-sc-selectable] .sc-card-front { margin-top: 0; }
@media (prefers-reduced-motion: reduce) { [data-sc-selectable] .sc-wrap, [data-sc-selectable] .bcard-wrap { transition: none; } }
/* Keep the original contact composition; let content grow instead of clipping. */
.chero { height: auto; min-height: 733px; }
.chero .chero__inner { height: auto; }
.chero .chero__copy, .chero .chero__aside { min-width: 0; }
.chero .chero__actions { max-width: 100%; }
.chero .cpills { max-width: calc(100% + 13px); height: auto; }
.chero .cpill h3 { white-space: normal; }
.chero .cquote { height: auto; min-height: 94.63px; }
.chero .cquote__words, .chero .cquote__owner span { white-space: normal; overflow-wrap: anywhere; }
@media (min-width: 1200px) { .chero .chero__inner { padding-bottom: 64px; } }
@media (min-width: 1259px) { .chero .cquote { padding-block: 14px; padding-right: 20px; } .chero .cquote__text, .chero .cquote__owner { flex: 1 1 0; min-width: 0; } }
.sc-email-group { display: flex; flex-direction: column; gap: 8px; max-width: 100%; min-width: 0; }
.chero .sc-email-group .btn--email { white-space: normal; overflow-wrap: anywhere; max-width: 100%; }
.sc-email-options { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 16px; }
.sc-email-options a, .sc-email-options button { font: 500 13px/1.5 var(--f-body, system-ui),sans-serif; color: #b9dcff; text-decoration: underline; text-underline-offset: 3px; }
.sc-email-options button { background: none; border: 0; padding: 0; cursor: pointer; }
.sc-email-options :focus-visible { outline: 2px solid #76c9ff; outline-offset: 4px; }
.sc-email-status { font: 12px/1.5 var(--f-body, system-ui),sans-serif; color: #d5e8ff; overflow-wrap: anywhere; }
.sc-email-status:empty { display: none; }
@media (max-width: 600px) { .chero { min-height: 0; } .chero .sc-email-group { width: 100%; } }

/* Give preview pans and their return journey the same soft acceleration. */
[data-sc-selectable] .bcard__screen img, [data-sc-selectable] .sc-art__in img { transition: transform 5.5s cubic-bezier(.45,0,.25,1) !important; }
/* Paint the mobile gradient on the words themselves, with room for y descenders. */
@media (max-width: 767px) {
  .shero .shero__title.gbox { background-image: none; }
  .shero__title.gbox .gbox__g { background-image: var(--grad); -webkit-background-clip: text; background-clip: text; padding-bottom: .14em; -webkit-box-decoration-break: clone; box-decoration-break: clone; }
}

html.sc-motion-off [data-sc-selectable] img { transition: none !important; }
.chero__title .chero__title-l2 { padding-bottom: .14em; margin-bottom: -.14em; }


[data-sc-selectable] a:focus-visible { outline: 2px solid #bce5ff; outline-offset: 4px; }

/* Project names are identities, not scroll-emphasis headings. */
.page-project .phero__title .grad-text,
.page-project .next__title .grad-text {
  background: none;
  -webkit-text-fill-color: currentColor;
  color: inherit;
  scale: 1;
  transform: none;
}

/* Animated gradient words own their paint; the parent must not duplicate it. */
html.sc-emphasis main h2.gbox { background-image: none; }
html.sc-emphasis main h2.gbox .gbox__g.sc-blue-emphasis { white-space: pre-wrap; }
.sc-keep-phrase { white-space: nowrap; }
