[data-krayr-retired-footer] {display:none!important;}
/* Keep the exported template shell out of the first paint. This does not
   remove layout or add a timer/loader: the same commit that applies current
   content reveals it, before paint. Native entrance animations stay intact. */
html[data-krayr-content-pending="true"] #main,
html[data-krayr-content-pending="true"] #main * {visibility:hidden!important;}
html[data-krayr-inner] footer {visibility:hidden;}
html[data-krayr-inner] [data-krayr-shared-footer][data-footer-ready="true"] footer {visibility:visible;}
[data-krayr-shared-footer] {width:100%;min-width:0;flex:none;}
/* Slightly larger copyright, shared by the homepage and inner-page footer. */
footer .framer-16bmhxr p {font-size:13px;white-space:pre-line;}
/* Horizontal texture tickers exported 1000% height as well as width. On
   phones that allocates huge filtered layers for pixels never shown.
   Keep their width, native horizontal motion and 16px pattern unchanged. */
@media (max-width:809px) {
 html[data-krayr-route="/"] .framer-obpvv7 > ul[style*="flex-direction: row"] > li:has(> .framer-sfdoz6) {height:100%!important;}
}
/* Framer marks long words as unset, allowing a character entrance to wrap
   mid-word. Keep Careers words intact without replacing animation nodes. */
html[data-krayr-route^="/careers"] .framer-text > span[style*="white-space: unset"] {white-space:nowrap!important;}
/* Native RichText also marks longer heading words as unset, even when the
   complete word fits the phone column. Retain its existing character nodes
   and entrance while wrapping headings between words rather than letters. */
:is(h1,h2,h3).framer-text > span[style*="white-space: unset"] {white-space:nowrap!important;}
html[data-krayr-route="/careers"] #listings {scroll-margin-top:80px;}
/* Moderate framing between the full-width photo and the original deep crop.
   Keep the approved photograph, native frame and gentle scroll movement. */
html[data-krayr-route="/careers"] [data-framer-name="Team Photo"] div[style*="background-image"] {
 background-image:url("/about-team/about-us-team-1672.webp"),url("/about-team/about-us-wall.webp")!important;
 background-size:120% auto,100% 100%!important;
 background-position:center bottom,center center!important;
 background-repeat:no-repeat!important;
}
html[data-krayr-route="/careers"] .framer-faejav > .framer-text {text-wrap:balance;}
@media (min-width:810px) {
 html[data-krayr-route="/careers"] .framer-faejav {width:100%!important;max-width:900px;}
}
@media(min-width:1200px) {
 html[data-krayr-route="/careers"] .framer-1mc0fd2 {width:360px!important;align-items:flex-start!important;}
 html[data-krayr-route="/careers"] .framer-67bvzj {width:100%!important;max-width:none!important;text-wrap:balance;}
 html[data-krayr-route="/careers"] .framer-e5xb9k {overflow:visible!important;}
 html[data-krayr-route="/careers"] .framer-m1rvai {width:330px!important;max-width:none!important;text-wrap:balance;}
 html[data-krayr-route="/careers"] .framer-1r9pce7 {justify-content:flex-start!important;}
 html[data-krayr-route="/careers"] .framer-faejav {width:min(1040px,calc(100vw - 80px))!important;max-width:1040px;flex:none!important;}
}
[data-krayr-reveal] {overflow-wrap:break-word;}
/* A native SVG fit-text title has one measured line at every breakpoint.
   Keep its added character reveal inside that line instead of letting it
   reflow into the SVG's fixed-height box during mobile font/size changes. */
.framer-fit-text [data-krayr-fit-text],
.framer-fit-text [data-krayr-fit-text] [data-krayr-native-copy] {
 white-space:nowrap!important;
 text-wrap:nowrap!important;
 -webkit-text-size-adjust:100%;
 text-size-adjust:100%;
}
/* The phone-only native HTML title replaces the scaled SVG foreignObject.
   Retain its exact original font/frame ratio (138.112771 / 1120.143383),
   10px page gutters and letter reveal, without relying on SVG paint scaling. */
@media(max-width:809.98px) {
 html[data-krayr-route="/about"] .framer-aactnv h1 {
  --framer-font-size:calc((100vw - 20px) * 0.12329918926980085)!important;
 }
 html[data-krayr-route="/about"] .framer-aactnv h1,
 html[data-krayr-route="/about"] .framer-aactnv [data-krayr-native-copy] {
  white-space:nowrap!important;
  text-wrap:nowrap!important;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
 }
}
[data-krayr-founder-quote] {text-wrap:balance;max-width:42ch;}
/* Only this requested sentence: keep its explicit two-line reading order,
   retaining the existing font, colour, alignment and surrounding frame. */
[data-krayr-portfolio-welcome] {white-space:pre-line;}
.framer-m1rvai:has([data-krayr-portfolio-welcome]) {width:100%!important;min-width:min(260px,calc(100vw - 20px))!important;max-width:330px!important;}
.framer-e5xb9k:has([data-krayr-portfolio-welcome]),
.framer-wmz1a:has([data-krayr-portfolio-welcome]) {overflow:visible!important;}
/* Give only the founder sentence room for three balanced desktop lines.
   Keep the author card at its existing width and left position. */
@media(min-width:1200px) {
 .framer-7jvywl:has([data-krayr-founder-quote]) {width:420px!important;align-items:flex-start!important;}
 .framer-rpqhcn:has([data-krayr-founder-quote]) {width:100%!important;max-width:none!important;}
}
[data-krayr-founder-role] {color:#c8c8c2!important;--framer-text-color:#c8c8c2!important;}
[data-krayr-scramble] {max-width:100%;}
[data-krayr-scramble] > div {max-width:100%;min-width:0!important;width:fit-content!important;}
[data-krayr-scramble] > div > span {white-space:pre-wrap!important;}
/* Section eyebrows: the native animated label defaults to 125%, while its
   adjacent number and underscore use 120%. Match their existing line box
   without moving the row or changing the native scramble animation. */
.framer-IvjrH .framer-1ypdmxm .framer-bt1uo7-container p {line-height:120%!important;}
/* Longer, approved career metadata must wrap rather than disappear behind
   the template's clipped single-line mobile row. Desktop stays unchanged. */
@media(max-width:809.98px) {
 html[data-krayr-route^="/careers"] [data-framer-name="Employment Info"] {
  flex-wrap:wrap!important;
  row-gap:8px!important;
 }
}
/* At the narrow tablet breakpoint the menu occupies the end of column four.
   Keep hiring in that column, with APPLY below it instead of under the menu. */
@media(min-width:810px) and (max-width:959.98px) {
 html[data-krayr-route^="/careers"] [data-framer-name="Top Bar"] [data-framer-name="BOOKINGS"]:has([data-header-apply-pill]) {
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  height:36px!important;
  gap:3px!important;
 }
 html[data-krayr-route^="/careers"] [data-header-apply-pill] {margin-left:0;}
}
/* Align the information glyph with the first line, not the whole paragraph. */
[data-framer-name="Response time"] {align-items:flex-start!important;}
[data-framer-name="Response time"] > svg {flex:none!important;margin-top:1px;}
html[data-krayr-route="/contact"] .framer-5f79wu p {white-space:pre-line;}
html[data-krayr-route="/contact"] .framer-5f79wu {width:100%!important;max-width:100%!important;}
@media(min-width:1200px) {
 html[data-krayr-route="/about"] .framer-140wm79 {width:680px!important;max-width:100%;}
 html[data-krayr-route="/about"] .framer-140wm79 p {white-space:pre-line;}
}
/* The three approved desktop lines should wrap naturally on phones, without
   stranding "and" on its own line. Preserve the paragraph and its native frame. */
@media(max-width:809.98px) {
 html[data-krayr-route="/about"] .framer-140wm79 p {white-space:normal;text-wrap:balance;}
}
/* The outer About marquee track still clips its animation. Allow the inner
   vertical glyph box to retain its strokes at the tablet font size. */
@media(min-width:810px) and (max-width:1199.98px) {
 html[data-krayr-inner] :is(.framer-hqcxam-container,.framer-hkftpe-container)[data-code-component-plugin-id="84d4c1"] > div {overflow:visible!important;}
}
/* Remove only the rejected rotating logos; keep the adjacent heading intact. */
html[data-krayr-route="/case-studies"] .framer-1i6e2jo > .framer-1n5s4kl-container {display:none!important;}
@media(min-width:810px) {
 html[data-krayr-route="/case-studies"] .framer-1i6e2jo > .framer-14bkzr9 {flex:0 0 50%!important;max-width:50%!important;margin-right:auto!important;}
}
