/* Experience hub only. Shared site navigation, footer, typography and buttons are inherited. */
.rl-exp-main{background:#fff;color:var(--rl-black,#0a0a0a)}
.rl-exp-wrap{width:min(1280px,calc(100% - 96px));margin-inline:auto}
.rl-exp-intro{display:grid;grid-template-columns:1.3fr 1fr;gap:80px;align-items:end;padding:84px 0 54px}
.rl-exp-eyebrow{font:600 12px/1.4 var(--font-body);letter-spacing:1.6px;text-transform:uppercase;color:#007b8d;margin:0 0 20px}
.rl-exp-intro h1{font:700 clamp(46px,5.2vw,74px)/1.04 var(--font-display);letter-spacing:-2px;margin:0;max-width:700px}
.rl-exp-intro h1 span{color:var(--rl-teal,#008da2)}
.rl-exp-lede{max-width:450px;font-size:18px;line-height:1.65;color:#53585b;margin:0 0 4px}
.rl-exp-studies{scroll-margin-top:110px}
.rl-exp-card{background:#09141b;color:#fff;border-radius:12px;overflow:hidden;border:1px solid #223b46;display:flex;flex-direction:column;min-width:0}
.rl-exp-card--house{display:grid;grid-template-columns:.85fr 1.35fr;min-height:460px;background:#101c23}
.rl-exp-copy{padding:36px;display:flex;flex-direction:column;align-items:flex-start;flex:1}
.rl-exp-card--house .rl-exp-copy{padding:48px 40px;justify-content:center}
.rl-exp-number{color:#9eb4bf;font-size:11px;line-height:1.5;letter-spacing:1.6px;text-transform:uppercase;margin:0 0 22px}
.rl-exp-card h2{color:#fff;font:650 clamp(32px,3vw,42px)/1.08 var(--font-display);letter-spacing:-.7px;margin:0 0 18px}
.rl-exp-card .rl-exp-description{color:#bdcbd2;font-size:16px;line-height:1.65;margin:0 0 26px;max-width:490px}
.rl-exp-card--house .rl-exp-description{max-width:320px}
.rl-exp-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 24px;margin-top:auto}
.rl-exp-actions .button{font-size:14px;white-space:nowrap;padding:14px 20px}
.rl-exp-film-link{display:inline-flex;align-items:center;gap:9px;font-size:14px;font-weight:600;color:#e7f0f4;text-underline-offset:5px;padding-block:10px;text-decoration:none}
.rl-exp-film-link:hover{text-decoration:underline;color:#fff}
.rl-exp-film-link svg{width:15px;height:15px;flex:none}
.rl-exp-visual{display:block;position:relative;overflow:hidden;background:#071118;min-width:0;isolation:isolate}
.rl-exp-visual img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .65s ease}
.rl-exp-card:not(.rl-exp-card--house) .rl-exp-visual{aspect-ratio:16/9}
.rl-exp-card--house .rl-exp-visual{grid-column:2;grid-row:1}
.rl-exp-card--house .rl-exp-copy{grid-column:1;grid-row:1}
.rl-exp-visual:hover img{transform:scale(1.025)}
.rl-exp-badge{position:absolute;left:24px;bottom:22px;background:#061118de;border:1px solid #48616e;border-radius:4px;padding:8px 10px;font-size:10px;font-weight:500;letter-spacing:1px;color:#e0edf3;text-transform:uppercase;pointer-events:none}
.rl-exp-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:28px}
.rl-exp-context{padding:22px 0 0;margin:0;color:#626a6e;font-size:13px;line-height:1.6}
.rl-exp-next{display:flex;justify-content:space-between;align-items:center;gap:44px;border-top:1px solid #dfe3e5;margin-top:62px;padding:44px 0 70px}
.rl-exp-next h2{font:650 31px/1.18 var(--font-display);letter-spacing:-.4px;margin:0 0 12px}
.rl-exp-next p{font-size:16px;line-height:1.6;color:#5c6266;max-width:580px;margin:0}
.rl-exp-next .rl-exp-actions{flex-shrink:0;margin:0;gap:12px}
.rl-exp-main a:focus-visible,.rl-exp-dialog button:focus-visible,.rl-exp-dialog a:focus-visible{outline:3px solid #008da2;outline-offset:5px}
.rl-exp-visual:focus-visible{outline-offset:-5px!important;z-index:1}
.rl-exp-dialog{position:fixed;inset:0;margin:0;padding:0;border:0;width:100vw;height:100dvh;max-width:none;max-height:none;overflow:hidden;background:#071117;color:#fff;font-family:var(--font-body);overscroll-behavior:contain}
.rl-exp-dialog::backdrop{background:#071117}
.rl-exp-dialog[open]{display:flex;flex-direction:column}
.rl-exp-viewer-bar{flex:none;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:70px;padding:12px max(22px,env(safe-area-inset-right)) 12px max(22px,env(safe-area-inset-left));background:#0d1a22;border-bottom:1px solid #2b404b}
.rl-exp-viewer-heading{min-width:0;display:flex;align-items:center;gap:17px}
.rl-exp-viewer-kicker{font-size:10px;color:#a1b5bf;letter-spacing:1px;text-transform:uppercase;white-space:nowrap}
.rl-exp-viewer-heading h2{font:600 19px/1.2 var(--font-display);margin:0;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rl-exp-viewer-controls{display:flex;gap:12px;align-items:center;flex-shrink:0}
.rl-exp-modes{display:flex;background:#071117;border:1px solid #344b57;border-radius:5px;padding:3px;gap:3px}
.rl-exp-dialog button{font-family:var(--font-body);cursor:pointer}
.rl-exp-modes button{border:0;background:transparent;color:#b6c8d1;font-size:13px;line-height:1.4;padding:8px 13px;border-radius:3px}
.rl-exp-modes button[aria-pressed=true]{background:#008da2;color:#fff}
.rl-exp-close{display:flex;gap:8px;align-items:center;border:1px solid #48616f;color:#fff;background:#142631;border-radius:4px;padding:10px 13px;font-size:13px;line-height:1.4}
.rl-exp-close:hover{background:#25404d}
.rl-exp-close svg{width:15px;height:15px}
.rl-exp-viewport{position:relative;flex:1;min-height:0;isolation:isolate;padding-bottom:env(safe-area-inset-bottom)}
.rl-exp-stage{height:100%;width:100%}
.rl-exp-stage iframe,.rl-exp-stage video{display:block;width:100%;height:100%;border:0;background:#071117}
.rl-exp-stage video{object-fit:contain}
.rl-exp-loading{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px;text-align:center;padding:30px;pointer-events:none;background:#071117;color:#cbdce4;font-size:15px;z-index:2}
.rl-exp-loading[hidden]{display:none}
.rl-exp-loading:before{content:'';width:25px;height:25px;border:2px solid #344953;border-top-color:#008da2;border-radius:50%;animation:rl-exp-spin 1s linear infinite}
.rl-exp-loading.is-error:before{display:none}
.rl-exp-loading a{pointer-events:auto;color:#fff;text-underline-offset:5px}
.rl-exp-noscript{padding:16px 20px;border:1px solid #dfe3e5;border-radius:6px;margin-bottom:24px;font-size:14px;line-height:1.6}
@keyframes rl-exp-spin{to{transform:rotate(360deg)}}
@media(min-width:1600px){.rl-exp-intro{padding-top:98px}.rl-exp-card--house{min-height:490px}}
@media(max-width:1080px){.rl-exp-wrap{width:calc(100% - 56px)}.rl-exp-intro{gap:42px}.rl-exp-card--house{grid-template-columns:1fr 1.2fr;min-height:420px}.rl-exp-card--house .rl-exp-copy{padding:34px 30px}.rl-exp-copy{padding:30px}.rl-exp-card h2{font-size:34px}.rl-exp-next{align-items:flex-start;flex-direction:column;gap:26px}.rl-exp-viewer-kicker{display:none}}
@media(max-width:700px){.rl-exp-wrap{width:calc(100% - 40px)}.rl-exp-intro{display:block;padding:49px 0 35px}.rl-exp-eyebrow{font-size:11px;margin-bottom:16px}.rl-exp-intro h1{font-size:46px;letter-spacing:-1.4px}.rl-exp-lede{margin-top:23px;font-size:16px;max-width:480px}.rl-exp-card--house{display:flex;min-height:0}.rl-exp-card--house .rl-exp-visual{aspect-ratio:4/3;order:-1}.rl-exp-card--house .rl-exp-copy,.rl-exp-copy{padding:28px 25px 30px}.rl-exp-card h2{font-size:33px}.rl-exp-card .rl-exp-description{font-size:15px;max-width:none;margin-bottom:22px}.rl-exp-number{font-size:10px;margin-bottom:17px}.rl-exp-grid{grid-template-columns:1fr;gap:24px;margin-top:24px}.rl-exp-badge{left:18px;bottom:17px;font-size:9px}.rl-exp-actions{gap:12px 20px}.rl-exp-actions .button{font-size:13px;padding:13px 17px}.rl-exp-film-link{font-size:13px}.rl-exp-context{font-size:12px}.rl-exp-next{margin-top:38px;padding:34px 0 46px}.rl-exp-next h2{font-size:27px}.rl-exp-next p{font-size:15px}.rl-exp-viewer-bar{min-height:100px;gap:9px;padding:11px 14px;flex-wrap:wrap}.rl-exp-viewer-heading{width:calc(100% - 92px)}.rl-exp-viewer-heading h2{font-size:17px}.rl-exp-viewer-controls{display:contents}.rl-exp-close{order:1;position:absolute;right:14px;top:10px;padding:8px 10px;font-size:12px}.rl-exp-modes{order:2}.rl-exp-modes button{font-size:12px;padding:6px 14px}.rl-exp-loading{font-size:14px}}
@media(max-height:520px) and (orientation:landscape){.rl-exp-viewer-bar{min-height:51px;flex-wrap:nowrap;padding:7px 14px}.rl-exp-viewer-heading{width:auto}.rl-exp-viewer-controls{display:flex}.rl-exp-close{position:static;order:0}.rl-exp-modes{order:0}.rl-exp-modes button{padding:5px 12px}}
@media(prefers-reduced-motion:reduce){.rl-exp-visual img{transition:none}.rl-exp-visual:hover img{transform:none}.rl-exp-loading:before{animation:none}}

/* Experience viewport refinement 0.20.28 */
.rl-exp-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr)}
.rl-exp-viewer-bar,.rl-exp-viewport,.rl-exp-stage{box-sizing:border-box;min-width:0}
.rl-exp-viewport{min-height:0;padding:0;overflow:hidden}
.rl-exp-stage{position:absolute;inset:0 0 env(safe-area-inset-bottom,0px);width:auto;height:auto;min-height:0;overflow:hidden}
.rl-exp-stage iframe,.rl-exp-stage video{min-width:0;min-height:0}
@media(max-height:850px) and (min-width:701px){
 .rl-exp-viewer-bar{min-height:58px;padding-block:6px}
 .rl-exp-viewer-heading h2{font-size:17px}
 .rl-exp-viewer-kicker{display:none}
}
@media(max-width:700px) and (orientation:portrait){
 .rl-exp-viewer-bar{min-height:72px;padding:7px 12px;gap:4px 10px;align-content:center}
 .rl-exp-viewer-heading{width:calc(100% - 82px)}
 .rl-exp-viewer-heading h2{font-size:15px;line-height:1.2}
 .rl-exp-close{right:12px;top:7px;padding:7px 9px;font-size:11px;gap:6px}
 .rl-exp-modes{padding:2px;gap:2px}
 .rl-exp-modes button{font-size:11.5px;padding:5px 12px}
}
@media(max-height:520px) and (orientation:landscape){
 .rl-exp-viewer-bar{min-height:44px;padding:4px 12px;gap:12px}
 .rl-exp-viewer-heading h2{font-size:15px}
 .rl-exp-viewer-kicker{display:none}
 .rl-exp-close{padding:6px 9px;font-size:11px}
 .rl-exp-modes{padding:2px}
 .rl-exp-modes button{font-size:11px;padding:4px 10px}
}

/* RIDGELINE_MOBILE_HUB_V1 */
.rl-exp-dialog[open]{grid-template-columns:minmax(0,1fr)}
.rl-exp-dialog.rl-exp-mobile{inset:var(--rl-exp-mobile-top,0px) auto auto var(--rl-exp-mobile-left,0px);width:var(--rl-exp-mobile-width,100%);height:var(--rl-exp-mobile-height,100dvh)}
.rl-exp-mobile .rl-exp-viewer-bar{height:52px;min-height:52px;max-height:52px;padding:4px 8px 4px 14px;gap:8px;flex-wrap:nowrap;align-content:normal}
.rl-exp-mobile .rl-exp-viewer-heading{width:auto;flex:1;min-width:0;gap:0}
.rl-exp-mobile .rl-exp-viewer-heading h2{font-size:14px;line-height:1.2}
.rl-exp-mobile .rl-exp-viewer-kicker{display:none}
.rl-exp-mobile .rl-exp-viewer-controls{display:flex;gap:6px;align-items:center}
.rl-exp-mobile .rl-exp-modes{order:0;gap:0;padding:0;border:0;border-radius:5px;overflow:hidden}
.rl-exp-mobile .rl-exp-modes button{font-size:0;padding:0;width:44px;min-width:44px;height:44px;min-height:44px;border-radius:0;touch-action:manipulation}
.rl-exp-mobile .rl-exp-modes button::after{content:attr(data-mobile-label);font-size:12px;line-height:1;font-weight:500}
.rl-exp-mobile .rl-exp-close{position:static;order:0;padding:0;gap:0;width:44px;min-width:44px;height:44px;font-size:0;justify-content:center;border-color:#344b57;touch-action:manipulation}
.rl-exp-mobile .rl-exp-close svg{width:18px;height:18px}
.rl-exp-mobile button:focus-visible{outline-offset:-3px}
.rl-exp-mobile .rl-exp-stage iframe{max-width:100%;max-height:100%;overflow:hidden}
/* Contain the existing narrow-phone header and consent panel on this page only. */
@media(max-width:380px){
 .ridgeline-experience-body .site-header{padding-inline:12px!important;gap:8px!important}
 .ridgeline-experience-body .site-header .brand img{width:110px!important;height:auto!important}
 .ridgeline-experience-body .site-header .header-cta{font-size:11px;padding-inline:8px;min-height:44px}
}
@media(max-width:700px){
 .ridgeline-experience-body #fr-cookie-guard{width:calc(100% - 20px)!important;max-width:350px!important;box-sizing:border-box;max-height:calc(100dvh - 20px);overflow:auto}
}

/* RIDGELINE_RETAINED_FILM_FULLSCREEN_V1 */
.rl-exp-film-fullscreen{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:44px;height:44px;padding:0 12px;border:1px solid #344b57;border-radius:5px;background:#12252e;color:#d3e2e8;font:inherit;font-size:12px;touch-action:manipulation;flex-shrink:0}
.rl-exp-film-fullscreen[hidden]{display:none!important}
.rl-exp-film-fullscreen svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}
.rl-exp-film-fullscreen:disabled{opacity:.5;cursor:default}
.rl-exp-film-fullscreen:focus-visible{outline:2px solid #008DA2;outline-offset:-3px}
.rl-exp-mobile .rl-exp-film-fullscreen{width:44px;min-width:44px;padding:0}
.rl-exp-mobile .rl-exp-film-fullscreen span{display:none}
.rl-exp-stage video:fullscreen{width:100%;height:100%;object-fit:contain;background:#000}
.rl-exp-stage video:-webkit-full-screen{width:100%;height:100%;object-fit:contain;background:#000}

/* RIDGELINE_JOURNEY_RELEASE_02031 */
.rl-exp-modes[hidden],.rl-exp-modes button[hidden],.rl-exp-scene-fullscreen[hidden]{display:none!important}
.rl-exp-scene-fullscreen{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:44px;height:44px;padding:0 12px;border:1px solid #344b57;border-radius:5px;background:#12252e;color:#d3e2e8;font:inherit;font-size:12px;touch-action:manipulation;flex-shrink:0}
.rl-exp-scene-fullscreen svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}
.rl-exp-scene-fullscreen:focus-visible{outline:2px solid #008da2;outline-offset:-3px}
.rl-exp-mobile .rl-exp-scene-fullscreen{width:44px;min-width:44px;padding:0}
.rl-exp-mobile .rl-exp-scene-fullscreen span{display:none}
.rl-exp-dialog[open]{grid-template-rows:minmax(0,1fr)}
.rl-exp-scene-shell{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;width:100%;height:100%;overflow:hidden;background:#071117}
.rl-exp-immersive .rl-exp-scene-shell{grid-template-rows:minmax(0,1fr)}
.rl-exp-immersive .rl-exp-viewer-bar{position:absolute;z-index:5;inset:0 0 auto;height:52px;min-height:52px;max-height:52px;padding:4px max(8px,env(safe-area-inset-right)) 4px max(14px,env(safe-area-inset-left));border:0;background:linear-gradient(#071117c9,transparent);pointer-events:none;justify-content:flex-end}
.rl-exp-immersive .rl-exp-viewer-heading,.rl-exp-immersive .rl-exp-modes{display:none!important}
.rl-exp-immersive .rl-exp-viewer-controls{display:flex;pointer-events:auto;gap:6px}
.rl-exp-immersive .rl-exp-close{position:static;order:0;min-width:44px;min-height:44px}
.rl-exp-immersive .rl-exp-viewport{grid-row:1}
.rl-exp-immersive .rl-exp-stage{top:0}
.rl-exp-scene-shell:fullscreen,.rl-exp-scene-shell:-webkit-full-screen{width:100%;height:100%;inset:0}
/* Existing viewers own their top navigation. Reserve space even in fullscreen. */
.rl-exp-immersive:not([data-exp-active-study=journey]) .rl-exp-scene-shell{grid-template-rows:52px minmax(0,1fr)}
.rl-exp-immersive:not([data-exp-active-study=journey]) .rl-exp-viewer-bar{position:relative;inset:auto;grid-row:1;background:#0d1a22;pointer-events:auto;justify-content:space-between;border-bottom:1px solid #2b404b}
.rl-exp-immersive:not([data-exp-active-study=journey]) .rl-exp-viewer-heading{display:flex!important;min-width:0;flex:1}
.rl-exp-immersive:not([data-exp-active-study=journey]) .rl-exp-viewer-heading h2{font-size:14px}
.rl-exp-immersive:not([data-exp-active-study=journey]) .rl-exp-viewer-kicker{display:none}
.rl-exp-immersive:not([data-exp-active-study=journey]) .rl-exp-viewport{grid-row:2}
.rl-exp-card--journey{margin-top:28px;grid-template-columns:1.35fr .85fr}
.rl-exp-card--journey .rl-exp-visual{grid-column:1}
.rl-exp-card--journey .rl-exp-copy{grid-column:2}
.rl-exp-card--journey .rl-exp-visual img{object-fit:contain}
@media(max-width:1080px){.rl-exp-card--journey{grid-template-columns:1.2fr 1fr}}
@media(max-width:700px){.rl-exp-card--journey{margin-top:24px}.rl-exp-card--journey .rl-exp-visual{aspect-ratio:16/10}.rl-exp-card--journey .rl-exp-copy{padding:28px 25px 30px}}
