/* Public Jodfay identity. Deliberately opt-in; admin and governance never load it.
   Customer-built preview canvases and branded sample scenes keep their own styles. */
@font-face{font-family:'Jodfay Noto Sans';src:url("../fonts/jodfay-noto-sans-regular.01fd6ce3533c.woff2") format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'Jodfay Noto Sans';src:url("../fonts/jodfay-noto-sans-bold.d55ec7288ad7.woff2") format('woff2');font-weight:700;font-display:swap}
body.jf-unified{
 --ui-paper:#f5f2fa;--ui-ink:#1c1429;--ui-night:#08031a;--ui-purple:#6840bb;
 --ui-lavender:#c4b5fd;--ui-muted:#655a74;--ui-dim:#d8cfe6;--ui-line:#d8cfe6;
 --ui-gutter:clamp(20px,4vw,72px);--ui-width:1440px;--ui-radius:12px;
 --ui-h1:clamp(32px,3.7vw,56px);--ui-h2:clamp(27px,2.8vw,40px);--ui-h3:clamp(21px,1.8vw,26px);
 --ui-body:16px;--ui-small:14px;--ui-label:12px;
 --jf-purple:var(--ui-purple);--jf-muted:var(--ui-muted);
 font-size:var(--ui-body);line-height:1.9;
 -webkit-text-size-adjust:100%;text-size-adjust:100%;
}
html[lang=en] body.jf-unified,html[lang=fr] body.jf-unified{font-family:'Jodfay Noto Sans',Arial,sans-serif}
body.jf-unified [hidden]{display:none!important}
/* The paper reveal canvas must retain measurable height while offscreen.
   display:none collapses its buffer and hides the image when scrolling back. */
body.jf-unified.jf-reference-home .portfolio-surface[hidden]{display:block!important;visibility:hidden}
body.jf-unified :focus-visible{outline:3px solid var(--ui-purple);outline-offset:4px}
body.jf-unified :is(.sj-header,.sj-footer,.site-end,.visual-stage,.jf-services-cinema,.contact-scene) :focus-visible{outline-color:var(--ui-lavender)}
body.jf-unified ::selection{background:var(--ui-purple);color:#fff}
/* One quiet, readable navigation across the public site. */
body.jf-unified.jf-studio #sj-header .sj-nav-shell{
 margin:0;border:0;border-bottom:1px solid #c4b5fd30;border-radius:0;
 padding-inline:var(--ui-gutter);height:88px;background:#08031af5;color:#f5f2fa;box-shadow:none
}
body.jf-unified.jf-studio #sj-header :is(.sj-navigation,.sj-navigation>a,.sj-dropdown>summary,.sj-menu-toggle){font-size:14px;line-height:1.6;color:#f5f2fa}
body.jf-unified.jf-studio #sj-header .sj-navigation{gap:26px}
body.jf-unified.jf-studio #sj-header .sj-navigation>a,body.jf-unified.jf-studio #sj-header summary{min-height:44px}
body.jf-unified.jf-studio #sj-header .sj-brand{width:136px;flex-basis:136px}
body.jf-unified.jf-studio #sj-header .sj-mega{background:var(--ui-night);border:1px solid #c4b5fd50;border-radius:12px;max-height:calc(100dvh - 110px);overflow:auto;box-shadow:0 18px 60px #08031a44}
body.jf-unified.jf-studio #sj-header .sj-mega-intro h2{font-size:25px;line-height:1.7;color:#fff}
body.jf-unified.jf-studio #sj-header .sj-mega-intro .sj-eyebrow{font-size:12px;color:var(--ui-lavender)}
body.jf-unified.jf-studio #sj-header .sj-mega-links b{font-size:15px;color:#fff}
body.jf-unified.jf-studio #sj-header .sj-mega-links small{font-size:13px;line-height:1.8;color:var(--ui-dim)}
body.jf-unified.jf-studio #sj-header .ej-innovations :is(p,span,a){font-size:14px;color:var(--ui-dim)}
body.jf-unified .jf-language-panel{background:#171027;color:#f5f2fa;border-color:#c4b5fd66}
body.jf-unified .jf-language-panel a{font-size:14px;min-height:44px;color:#f5f2fa}
/* The footer uses the same editorial rhythm, with legible supporting information. */
body.jf-brand-2026.jf-unified.jf-studio .sj-footer{background:var(--ui-night);color:#f5f2fa;padding-block:64px 20px}
body.jf-brand-2026.jf-unified.jf-studio .sj-footer .sj-container{width:calc(100% - var(--ui-gutter)*2);max-width:var(--ui-width);margin-inline:auto;padding-inline:0}
body.jf-brand-2026.jf-unified.jf-studio .sj-footer .jf-footer-statement{padding:0 0 48px;margin-bottom:40px;border-bottom:1px solid #c4b5fd40}
body.jf-brand-2026.jf-unified.jf-studio .sj-footer .jf-footer-statement h2{font-size:var(--ui-h1);line-height:1.6;letter-spacing:0;font-weight:700}
body.jf-brand-2026.jf-unified.jf-studio .sj-footer .jf-footer-statement em{color:var(--ui-lavender);font-style:normal}
body.jf-brand-2026.jf-unified.jf-studio .sj-footer :is(.jf-kicker,.jf-line-link){font-size:14px;line-height:1.9;color:var(--ui-dim)}
body.jf-brand-2026.jf-unified.jf-studio .sj-footer .jf-footer-brand h2{font-size:22px;line-height:1.7}
body.jf-brand-2026.jf-unified.jf-studio .sj-footer :is(.jf-footer-brand p,.ej-text-link,.ej-footer-nav a,.ej-footer-contact a,.ej-footer-apps a){font-size:14px;line-height:1.9;color:var(--ui-dim)}
body.jf-brand-2026.jf-unified.jf-studio .sj-footer :is(.ej-footer-column h3,.tr-final__accreditations-head h3){font-size:16px;line-height:1.8;color:#f5f2fa;font-weight:700}
body.jf-brand-2026.jf-unified.jf-studio .sj-footer :is(.ej-footer-nav a,.ej-footer-apps a){min-height:40px;display:flex;align-items:center}
body.jf-unified :is(.sj-footer,.site-end) .tr-registry-owner{font-size:14px;color:var(--ui-dim)}
body.jf-unified :is(.sj-footer,.site-end) .tr-registry-cluster strong{font-size:13px;line-height:1.8;color:#f5f2fa}
body.jf-unified :is(.sj-footer,.site-end) :is(.tr-commerce-reg__body>span,.tr-business-license__body>span){font-size:13px;line-height:1.7;color:var(--ui-dim)}
body.jf-brand-2026.jf-unified.jf-studio .sj-footer-legal{font-size:12px;line-height:1.9;color:var(--ui-dim);gap:20px;padding-top:28px;margin-top:32px;border-color:#c4b5fd40}
body.jf-brand-2026.jf-unified.jf-studio .sj-footer-legal a{font-size:12px;color:var(--ui-dim);min-height:40px;display:inline-flex;align-items:center}
body.jf-unified :is(.ej-contact-hub>summary,.ej-whatsapp-fallback){background:var(--ui-night);color:#fff;border-color:var(--ui-lavender)}
body.jf-unified :is(.ej-contact-hub>summary>span,.ej-whatsapp-fallback>span){font-size:12px}
body.jf-unified .jbot-privacy{font-size:12px;opacity:1;line-height:1.8}
/* Measured typography on the cinematic homepage; animation geometry is unchanged. */
body.jf-unified.jf-reference-home{--gutter:var(--ui-gutter);--paper:var(--ui-paper);--ink:var(--ui-ink)}
body.jf-unified.jf-reference-home .passage-nav{padding-inline:var(--ui-gutter);background:linear-gradient(#08031a80,transparent);color:#f5f2fa}
body.jf-unified.jf-reference-home .passage-nav :is(nav a,.menu-toggle){font-size:14px;min-height:44px;line-height:1.6}
body.jf-unified.jf-reference-home .passage-nav.on-paper{background:#08031af5;color:#f5f2fa;text-shadow:none}
body.jf-unified.jf-reference-home .scene-copy :is(h1,h2){font-size:var(--ui-h1);line-height:1.55;letter-spacing:0;font-weight:700}
/* A continuous lavender sheen; the reveal runtime keeps ownership of transforms. */
body.jf-unified.jf-reference-home #hero-title > .line > span{color:var(--ui-lavender)}
@supports ((background-clip:text) or (-webkit-background-clip:text)){
 body.jf-unified.jf-reference-home #hero-title > .line > span{
  background-image:linear-gradient(110deg,#c4a5fa 0%,#d4b6ff 36%,#fefaff 48%,#efe2ff 53%,#d4b6ff 65%,#c4a5fa 100%);
  background-size:240% 100%;background-position:100% 50%;
  background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;
  animation:jf-hero-title-sheen 5s ease-in-out infinite alternate
 }
}
@keyframes jf-hero-title-sheen{from{background-position:100% 50%}to{background-position:0% 50%}}
body.jf-unified.jf-reference-home:has(.motion-toggle[aria-pressed="true"]) #hero-title > .line > span{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){
 body.jf-unified.jf-reference-home #hero-title > .line > span{animation:none;background-position:50% 50%}
}
@media(forced-colors:active){
 body.jf-unified.jf-reference-home #hero-title > .line > span{animation:none;background:none;color:CanvasText;-webkit-text-fill-color:CanvasText}
}
body.jf-unified.jf-reference-home .scene-copy .scene-lead{font-size:16px;line-height:1.95;color:#f5f2fa;text-shadow:0 2px 14px #08031a}
/* Lift the opening copy as a group; scene opacity and transforms remain runtime-owned. */
body.jf-unified.jf-reference-home .scene-copy--hero{justify-content:center;padding:180px var(--ui-gutter) 120px}
body.jf-unified.jf-reference-home .jf-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:24px;max-inline-size:min(650px,100%);pointer-events:auto}
body.jf-unified.jf-reference-home .jf-hero-action{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:10px 17px;border:1px solid #c4b5fd80;border-radius:30px;background:#171027d9;color:#f5f2fa;font-size:14px;font-weight:700;line-height:1.7;text-decoration:none;white-space:nowrap;transition:background .2s,border-color .2s,transform .2s}
body.jf-unified.jf-reference-home .jf-hero-action--preview{background:var(--ui-purple);border-color:var(--ui-purple)}
body.jf-unified.jf-reference-home .jf-hero-action svg{width:21px;height:21px;flex:0 0 21px}
body.jf-unified.jf-reference-home .jf-hero-action:hover{background:#4d2b8f;border-color:var(--ui-lavender);transform:translateY(-2px)}
body.jf-unified.jf-reference-home .scene-copy--hero .hero-explore{margin-top:16px}
@media(max-width:760px){
 body.jf-unified.jf-reference-home .scene-copy--hero{justify-content:flex-end;padding-block:120px 110px;isolation:isolate}
 /* Protect the moving title and copy from bright device screens. This layer
    belongs to the hero, so it fades out with it instead of covering later scenes. */
 body.jf-unified.jf-reference-home .scene-copy--hero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,#08031a00 10%,#08031a40 20%,#08031ad6 32%,#08031aeb 63%,#08031af2 100%)}
 .passage-static body.jf-unified.jf-reference-home .scene-copy--hero{position:relative}
 body.jf-unified.jf-reference-home #hero-title{filter:drop-shadow(0 2px 5px #08031ab3)}
 body.jf-unified.jf-reference-home .jf-hero-actions{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:8px;margin-top:22px}
 body.jf-unified.jf-reference-home .jf-hero-action{flex-direction:column;gap:5px;padding:10px 5px;min-height:68px;border-radius:14px;font-size:11px;white-space:normal;text-align:center}
 body.jf-unified.jf-reference-home .scene-copy--hero .hero-explore{display:none}
}
@media(max-height:650px){
 body.jf-unified.jf-reference-home .scene-copy--hero{padding-block:100px 100px}
 body.jf-unified.jf-reference-home .scene-copy--hero .scene-lead{margin-top:16px}
 body.jf-unified.jf-reference-home .jf-hero-actions{margin-top:16px}
}
@media(prefers-reduced-motion:reduce){body.jf-unified.jf-reference-home .jf-hero-action{transition:none}}
body.jf-unified.jf-reference-home .scene-copy--connection .scene-lead{color:var(--ui-ink);text-shadow:none}
body.jf-unified.jf-reference-home :is(.chapter-label,.scene-topline,.journey-bottom,.chapter-nav a,.motion-toggle){font-size:12px;color:var(--ui-dim);line-height:1.7}
body.jf-unified.jf-reference-home :is(.text-link,.scroll-invite){font-size:14px;line-height:1.7;min-height:44px}
body.jf-unified.jf-reference-home .journey-bottom .chapter-nav a{padding-block:10px}
body.jf-unified.jf-reference-home .visual-stage.in-world :is(.journey-bottom,.chapter-nav a,.motion-toggle,.scroll-invite){color:var(--ui-ink)}
body.jf-unified.jf-reference-home .scene-copy--connection .chapter-label{color:var(--ui-muted)}
body.jf-unified.jf-reference-home :is(.work-heading h2,.practice-heading h2,.contact-copy h2,.jf-reference-start__head h2,.jf-reference-immersive h2,.site-end .footer-intro h2){font-size:var(--ui-h2);line-height:1.6;letter-spacing:0;font-weight:700}
body.jf-unified.jf-reference-home :is(.project-caption h3,.cap-title,.working-note h3){font-size:var(--ui-h3);line-height:1.7;letter-spacing:0}
body.jf-unified.jf-reference-home :is(.practice-aside,.work-body,.project-caption p,.cap-body>p,.contact-copy>p:not(.chapter-label),.jf-reference-start__head p,.jf-reference-immersive .ej-heading p){font-size:16px;line-height:1.95}
body.jf-unified.jf-reference-home :is(.cap-body>p,.project-caption p,.practice-aside,.work-body,.jf-reference-start__head p,.jf-reference-immersive .ej-heading p){color:var(--ui-muted)}
/* Selected work uses equal cards, with no featured or staggered item. */
body.jf-unified.jf-reference-home #selected-work .project-grid{align-items:stretch;grid-auto-rows:1fr}
body.jf-unified.jf-reference-home #selected-work .project{margin-top:0;height:100%}
body.jf-unified.jf-reference-home #selected-work .project-image{aspect-ratio:1.6}
body.jf-unified.jf-reference-home :is(.section-rail,.work-meta,.work-disclosure,.cap-study__label,.cap-study figcaption,.cap-tags,.cap-aside,.working-note li,.jf-reference-immersive .ej-text-link,.jf-reference-immersive .sj-eyebrow){font-size:14px;line-height:1.85}
body.jf-unified.jf-reference-home .contact-copy>p:not(.chapter-label){color:var(--ui-dim)}
body.jf-unified.jf-reference-home :is(.contact-cta,.contact-email){font-size:16px;min-height:48px}
body.jf-unified.jf-reference-home .jf-project-choice{border-radius:12px;min-height:96px;padding:20px;gap:16px}
body.jf-unified.jf-reference-home .jf-project-choice--preview{background:var(--ui-purple);border-color:var(--ui-purple)}
body.jf-unified.jf-reference-home .jf-project-choice h2{font-size:20px;font-weight:700;line-height:1.7}
body.jf-unified.jf-reference-home :is(.jf-project-choice__action,.jf-hero-work-link){font-size:14px;line-height:1.7}
body.jf-unified.jf-reference-home .jf-hero-features strong{font-size:32px;color:var(--ui-purple)}
body.jf-unified.jf-reference-home :is(.jf-hero-features span,.jf-hero-summary){font-size:14px;line-height:1.8}
body.jf-unified.jf-reference-home .jf-reference-immersive .jf-immersive-copy h3{font-size:20px;line-height:1.7;font-weight:700}
body.jf-unified.jf-reference-home .jf-reference-immersive :is(.jf-immersive-copy p,.jf-immersive-copy>span,.jf-immersive-action,.jf-immersive-disclosure){font-size:14px;line-height:1.9}
body.jf-unified.jf-reference-home .jf-reference-partners h3{font-size:20px;color:var(--ui-ink)}
body.jf-unified.jf-reference-home .ej-partner-name{font-size:14px}
body.jf-unified.jf-reference-home .site-end .footer-top :is(p,a){font-size:14px;line-height:1.9;color:var(--ui-dim)}
body.jf-unified.jf-reference-home .site-end :is(.footer-kicker,.footer-label,.footer-bottom){font-size:12px;line-height:1.9;color:var(--ui-dim)}
body.jf-unified.jf-reference-home .site-end .footer-intro h2 em{color:var(--ui-lavender)}
body.jf-unified.jf-reference-home #passage-menu{color:var(--ui-ink);background:var(--ui-paper)}
body.jf-unified.jf-reference-home #passage-menu nav>a{font-size:clamp(22px,2.5vw,34px);line-height:1.7}
body.jf-unified.jf-reference-home #passage-menu :is(.menu-close,.menu-email,.ej-client-menu a){font-size:14px}
body.jf-unified.jf-reference-home #study-dialog{background:var(--ui-paper);color:var(--ui-ink);border-radius:12px}
body.jf-unified.jf-reference-home #study-dialog h2{font-size:var(--ui-h2);line-height:1.6}
body.jf-unified.jf-reference-home #study-dialog :is(p,a){font-size:16px;line-height:1.9}
/* Cinema cards retain impact without an oversized title / microcopy mismatch. */
body.jf-unified .jf-cinema-heading h2{font-size:var(--ui-h2);line-height:1.5}
body.jf-unified .jf-cinema-card h3{font-size:clamp(25px,2.6vw,38px);line-height:1.6}
body.jf-unified :is(.jf-cinema-card__promise,.jf-cinema-card__description){font-size:15px;line-height:1.85;color:#f5f2fa}
body.jf-unified :is(.jf-cinema-card__links a,.jf-cinema-heading>a,.jf-cinema-footer){font-size:14px;line-height:1.7}
body.jf-unified .jf-cinema-thumb span{font-size:12px;line-height:1.8}
body.jf-unified .jf-cinema-thumb{min-width:110px}
body.jf-unified .jf-cinema-navigation button{min-width:44px;min-height:44px}
body.jf-unified .jf-cinema-navigation .jf-cinema-pause{font-size:12px}
/* Draw controls as vectors so mobile platforms cannot substitute emoji glyphs. */
body.jf-unified :is(.jf-cinema-heading>a,.jf-cinema-card__links a,.jf-cinema-footer>a,.jf-cinema-navigation button) .sj-icon{display:block;width:20px;height:20px;flex-shrink:0}
body.jf-unified .jf-cinema-pause .sj-icon{width:16px;height:16px}
html[dir=ltr] body.jf-unified :is([data-cinema-prev],[data-cinema-next]) .sj-icon{transform:rotate(180deg)}
body.jf-unified :is(.contact-cta-signal,.mvp-journey-bottom,.lv-start,.lv-notes,.jf-public-error__action) .sj-icon{display:inline-block;width:24px;height:24px;vertical-align:middle;flex-shrink:0}
body.jf-unified .jf-cinema-count span{color:var(--ui-dim)}
body.jf-unified .jf-cinema-card::after{background:linear-gradient(0deg,#08031afa,#08031ad9 28%,#08031a20 75%)}
@media(max-width:1100px){
 body.jf-unified.jf-studio #sj-header .sj-navigation{background:var(--ui-night);color:#f5f2fa;inset-block-start:88px;max-height:calc(100dvh - 88px);overflow-y:auto;padding:24px var(--ui-gutter)}
 body.jf-unified.jf-studio #sj-header .sj-navigation>a,body.jf-unified.jf-studio #sj-header .sj-dropdown>summary{font-size:18px;min-height:48px}
}
@media(max-width:760px){
 body.jf-unified{--ui-h1:32px;--ui-h2:28px;--ui-h3:22px;--ui-gutter:20px}
 body.jf-unified.jf-studio #sj-header .sj-nav-shell{height:76px;padding-block:10px;gap:16px}
 body.jf-unified.jf-studio #sj-header .sj-brand{width:110px;flex-basis:110px}
 body.jf-unified.jf-studio #sj-header .sj-navigation{inset-block-start:76px;max-height:calc(100dvh - 76px)}
 body.jf-unified.jf-reference-home .scene-copy--hero h1{font-size:32px!important;line-height:1.65}
 html[dir=ltr] body.jf-unified.jf-reference-home .scene-copy--hero h1{line-height:1.35}
 body.jf-unified.jf-reference-home .scene-copy--hero .scene-lead{font-size:15px!important;line-height:1.95!important}
 body.jf-unified.jf-reference-home :is(.scene-copy--inside h2,.scene-copy--connection h2){font-size:32px!important;line-height:1.65}
 body.jf-unified.jf-reference-home .scene-copy .scene-lead{font-size:15px}
 body.jf-unified.jf-reference-home .scene-topline{font-size:12px;top:100px}
 body.jf-unified.jf-reference-home .journey-bottom{gap:12px;flex-wrap:wrap;padding-inline:20px}
 body.jf-unified.jf-reference-home .chapter-nav{gap:14px}
 body.jf-unified.jf-reference-home .chapter-nav a{font-size:12px}
 body.jf-unified.jf-reference-home .jf-hero-choices{gap:12px}
 body.jf-unified.jf-reference-home .jf-project-choice{padding:14px;min-height:100px}
 body.jf-unified.jf-reference-home .jf-project-choice h2{font-size:15px;line-height:1.7}
 body.jf-unified.jf-reference-home .jf-project-choice__action{font-size:12px;white-space:normal}
 body.jf-unified.jf-reference-home .jf-project-choice__head{align-items:start;gap:6px}
 body.jf-unified.jf-reference-home .jf-project-choice__visual{width:25px;height:25px;flex-shrink:0}
 body.jf-unified.jf-reference-home .jf-hero-features strong{font-size:28px}
 body.jf-unified.jf-reference-home .jf-hero-features span{font-size:12px;text-align:center}
 body.jf-unified.jf-reference-home .jf-hero-summary{font-size:12px}
 body.jf-unified.jf-reference-home .site-end .footer-top{gap:28px}
 body.jf-unified .jf-cinema-heading{align-items:start;gap:16px}
 body.jf-unified .jf-cinema-heading__eyebrow{font-size:12px}
 body.jf-unified .jf-cinema-heading>a{font-size:12px}
 body.jf-unified .jf-cinema-heading h2{font-size:27px}
 body.jf-unified .jf-cinema-stage{height:max(440px,57svh)}
 body.jf-unified .jf-cinema-card__promise{font-size:13px}
 body.jf-unified .jf-cinema-card__description{font-size:14px}
 body.jf-unified .jf-cinema-card__links a{font-size:13px;min-height:44px}
 body.jf-unified .jf-cinema-footer{font-size:12px;flex-wrap:wrap}
 body.jf-unified .jf-cinema-thumb{flex-basis:112px}
 body.jf-brand-2026.jf-unified.jf-studio .sj-footer .jf-footer-statement{padding-bottom:32px;margin-bottom:32px}
 body.jf-brand-2026.jf-unified.jf-studio .sj-footer .jf-footer-statement h2{font-size:32px}
}
@media(prefers-reduced-motion:reduce){body.jf-unified :is(.sj-header,.sj-footer,.site-end,.jf-project-choice){scroll-behavior:auto;transition:none}}
/* Explicit colours for controls whose legacy mobile rules used light surfaces. */
body.jf-unified.jf-studio #sj-header .sj-menu-toggle{background:transparent;border:1px solid #c4b5fd80;color:#f5f2fa;border-radius:28px;padding:9px 16px;min-height:44px}
body.jf-unified :is(.ej-contact-label small,.jf-language-option-code,.jf-language-label){font-size:12px!important;opacity:1}
body.jf-unified.jf-studio #sj-header .jf-language-panel{inset-inline-end:0;inset-inline-start:auto;min-width:200px}
/* Surface-specific text colours, including the cinematic sections. */
body.jf-unified.jf-reference-home .jf-reference-immersive h2{color:var(--ui-ink)}
body.jf-unified.jf-reference-home .jf-reference-immersive :is(.ej-text-link,.sj-eyebrow,.jf-immersive-action,.jf-immersive-copy>span){color:var(--ui-purple)}
body.jf-unified.jf-reference-home .jf-immersive-disclosure strong{color:var(--ui-ink)}
body.jf-unified.jf-reference-home .practice :is(.cap-body>p,.practice-aside,.cap-aside,.cap-study__label,.cap-study figcaption){color:var(--ui-dim)}
body.jf-unified.jf-reference-home .contact-stage{background:var(--ui-paper);color:var(--ui-ink)}
body.jf-unified.jf-reference-home .contact-stage :is(.chapter-label,.contact-copy>p:not(.chapter-label),.contact-character__word,.contact-greeting,.contact-character__aside){color:var(--ui-muted)}
body.jf-unified.jf-reference-home .contact-stage .contact-copy h2{color:var(--ui-ink)}
body.jf-unified.jf-reference-home .contact-stage .contact-copy h2 em{color:var(--ui-purple)}
body.jf-unified.jf-reference-home .contact-stage :is(.contact-cta,.contact-email){color:var(--ui-ink);border-color:#655a7499}
body.jf-unified.jf-reference-home :is(.editorial-eyebrow,.project-caption__category,.output-badge,.project-tag,.entry-loader__meta,.entry-loader__percent,.entry-loader__footer,.loading-skip,.signal-terms,.cap-study__label,.contact-character__aside){font-size:12px;line-height:1.8}
body.jf-unified.jf-reference-home .entry-loader :is(.entry-loader__status,.loading-count){font-size:12px}
body.jf-unified.jf-reference-home .entry-loader{background:var(--ui-night)}
/* Keep passage copy inside the same gutters as the page, including its exit scale.
   The nested .line spans retain the original staggered cinematic reveal. */
body.jf-unified.jf-reference-home .scene-copy--inside .passage-beat{
 padding:100px var(--ui-gutter) 120px;box-sizing:border-box;
 align-items:flex-start;justify-content:center;text-align:start;
 transform-origin:var(--ui-gutter) 50%;
}
body.jf-unified.jf-reference-home .scene-copy--inside .passage-beat>*{
 inline-size:min(100%,580px);max-inline-size:100%;min-inline-size:0;
 white-space:normal;overflow-wrap:break-word;
}
body.jf-unified.jf-reference-home .scene-copy--inside .passage-beat h2{
 font-size:var(--ui-h1)!important;line-height:1.5;letter-spacing:0;font-weight:700;
}
body.jf-unified.jf-reference-home .scene-copy--inside .passage-beat h2 .line:last-child{color:var(--ui-lavender);font-weight:700}
body.jf-unified.jf-reference-home .scene-copy--inside .passage-beat .chapter-label{
 font-size:12px;line-height:1.8;letter-spacing:0;justify-content:flex-start;gap:12px;margin-bottom:20px;color:var(--ui-dim);
}
body.jf-unified.jf-reference-home .scene-copy--inside .passage-beat .chapter-label>span{
 flex-shrink:0;border:0;border-inline-end:1px solid #d8cfe680;padding:0;padding-inline-end:12px;opacity:1;
}
body.jf-unified.jf-reference-home .scene-copy--inside .passage-note{margin-top:24px;font-size:16px;line-height:1.9;color:var(--ui-paper)}
body.jf-unified.jf-reference-home .scene-copy--inside .passage-beat[data-passage-beat=automate]{align-items:flex-end;transform-origin:calc(100% - var(--ui-gutter)) 50%}
html[dir=rtl] body.jf-unified.jf-reference-home .scene-copy--inside .passage-beat{transform-origin:calc(100% - var(--ui-gutter)) 50%}
html[dir=rtl] body.jf-unified.jf-reference-home .scene-copy--inside .passage-beat[data-passage-beat=automate]{transform-origin:var(--ui-gutter) 50%}
@media(max-width:760px){
 body.jf-unified.jf-reference-home .scene-copy--inside .passage-beat{padding-block:100px 110px;justify-content:center}
 body.jf-unified.jf-reference-home .scene-copy--inside .passage-beat[data-passage-beat=automate]{align-items:flex-start;transform-origin:var(--ui-gutter) 50%}
 html[dir=rtl] body.jf-unified.jf-reference-home .scene-copy--inside .passage-beat[data-passage-beat=automate]{transform-origin:calc(100% - var(--ui-gutter)) 50%}
 body.jf-unified.jf-reference-home .scene-copy--inside .passage-note{font-size:15px;margin-top:20px}
}
@media(max-height:650px){
 body.jf-unified.jf-reference-home .scene-copy--inside .passage-beat{padding-block:90px}
 body.jf-unified.jf-reference-home .scene-copy--inside .passage-beat h2{font-size:clamp(26px,4vw,38px)!important;line-height:1.4}
 body.jf-unified.jf-reference-home .scene-copy--inside .passage-beat .chapter-label{margin-bottom:12px}
 body.jf-unified.jf-reference-home .scene-copy--inside .passage-note{font-size:14px;line-height:1.7;margin-top:16px}
}
body.jf-unified.jf-reference-home :is(.entry-loader__meta,.entry-loader__footer,.entry-loader .loading-skip){color:var(--ui-dim)}
body.jf-unified.jf-reference-home .passage-nav.on-paper .nav-contact{border-color:#c4b5fd88}
body.jf-unified.jf-reference-home .contact-stage .contact-cta{background:var(--ui-purple);border-color:var(--ui-purple);color:#fff}
body.jf-unified.jf-reference-home :is(.jf-immersive-number,.practice-heading>p>span,.working-note li>span,.cap-tags span,.cap-study__label span){font-size:12px;line-height:1.8}
body.jf-unified.jf-reference-home :is(.entry-loader__footer>span,.passage-note,.jf-cinema-card__number){font-size:12px;line-height:1.8}
