
.vjs-svg-icon{display:inline-block;background-repeat:no-repeat;background-position:center;fill:currentColor;height:1.8em;width:1.8em}.vjs-svg-icon:before{content:none!important}.vjs-control:focus .vjs-svg-icon,.vjs-svg-icon:hover{filter:drop-shadow(0 0 .25em #fff)}.video-js .vjs-big-play-button .vjs-icon-placeholder:before,.video-js .vjs-modal-dialog,.vjs-button>.vjs-icon-placeholder:before,.vjs-modal-dialog .vjs-modal-dialog-content{position:absolute;top:0;left:0;width:100%;height:100%}.video-js .vjs-big-play-button .vjs-icon-placeholder:before,.vjs-button>.vjs-icon-placeholder:before{text-align:center}@font-face{font-family:VideoJS;src:url(data:application/font-woff;charset=utf-8;base64,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) format("woff");font-weight:400;font-style:normal}.video-js .vjs-big-play-button .vjs-icon-placeholder:before,.video-js .vjs-play-control .vjs-icon-placeholder,.vjs-icon-play{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-big-play-button .vjs-icon-placeholder:before,.video-js .vjs-play-control .vjs-icon-placeholder:before,.vjs-icon-play:before{content:"\f101"}.vjs-icon-play-circle{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-play-circle:before{content:"\f102"}.video-js .vjs-play-control.vjs-playing .vjs-icon-placeholder,.vjs-icon-pause{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-play-control.vjs-playing .vjs-icon-placeholder:before,.vjs-icon-pause:before{content:"\f103"}.video-js .vjs-mute-control.vjs-vol-0 .vjs-icon-placeholder,.vjs-icon-volume-mute{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-mute-control.vjs-vol-0 .vjs-icon-placeholder:before,.vjs-icon-volume-mute:before{content:"\f104"}.video-js .vjs-mute-control.vjs-vol-1 .vjs-icon-placeholder,.vjs-icon-volume-low{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-mute-control.vjs-vol-1 .vjs-icon-placeholder:before,.vjs-icon-volume-low:before{content:"\f105"}.video-js .vjs-mute-control.vjs-vol-2 .vjs-icon-placeholder,.vjs-icon-volume-mid{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-mute-control.vjs-vol-2 .vjs-icon-placeholder:before,.vjs-icon-volume-mid:before{content:"\f106"}.video-js .vjs-mute-control .vjs-icon-placeholder,.vjs-icon-volume-high{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-mute-control .vjs-icon-placeholder:before,.vjs-icon-volume-high:before{content:"\f107"}.video-js .vjs-fullscreen-control .vjs-icon-placeholder,.vjs-icon-fullscreen-enter{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-fullscreen-control .vjs-icon-placeholder:before,.vjs-icon-fullscreen-enter:before{content:"\f108"}.video-js.vjs-fullscreen .vjs-fullscreen-control .vjs-icon-placeholder,.vjs-icon-fullscreen-exit{font-family:VideoJS;font-weight:400;font-style:normal}.video-js.vjs-fullscreen .vjs-fullscreen-control .vjs-icon-placeholder:before,.vjs-icon-fullscreen-exit:before{content:"\f109"}.vjs-icon-spinner{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-spinner:before{content:"\f10a"}.video-js .vjs-subs-caps-button .vjs-icon-placeholder,.video-js .vjs-subtitles-button .vjs-icon-placeholder,.video-js.video-js:lang(en-AU) .vjs-subs-caps-button .vjs-icon-placeholder,.video-js.video-js:lang(en-GB) .vjs-subs-caps-button .vjs-icon-placeholder,.video-js.video-js:lang(en-IE) .vjs-subs-caps-button .vjs-icon-placeholder,.video-js.video-js:lang(en-NZ) .vjs-subs-caps-button .vjs-icon-placeholder,.vjs-icon-subtitles{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-subs-caps-button .vjs-icon-placeholder:before,.video-js .vjs-subtitles-button .vjs-icon-placeholder:before,.video-js.video-js:lang(en-AU) .vjs-subs-caps-button .vjs-icon-placeholder:before,.video-js.video-js:lang(en-GB) .vjs-subs-caps-button .vjs-icon-placeholder:before,.video-js.video-js:lang(en-IE) .vjs-subs-caps-button .vjs-icon-placeholder:before,.video-js.video-js:lang(en-NZ) .vjs-subs-caps-button .vjs-icon-placeholder:before,.vjs-icon-subtitles:before{content:"\f10b"}.video-js .vjs-captions-button .vjs-icon-placeholder,.video-js:lang(en) .vjs-subs-caps-button .vjs-icon-placeholder,.video-js:lang(fr-CA) .vjs-subs-caps-button .vjs-icon-placeholder,.vjs-icon-captions{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-captions-button .vjs-icon-placeholder:before,.video-js:lang(en) .vjs-subs-caps-button .vjs-icon-placeholder:before,.video-js:lang(fr-CA) .vjs-subs-caps-button .vjs-icon-placeholder:before,.vjs-icon-captions:before{content:"\f10c"}.vjs-icon-hd{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-hd:before{content:"\f10d"}.video-js .vjs-chapters-button .vjs-icon-placeholder,.vjs-icon-chapters{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-chapters-button .vjs-icon-placeholder:before,.vjs-icon-chapters:before{content:"\f10e"}.vjs-icon-downloading{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-downloading:before{content:"\f10f"}.vjs-icon-file-download{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-file-download:before{content:"\f110"}.vjs-icon-file-download-done{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-file-download-done:before{content:"\f111"}.vjs-icon-file-download-off{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-file-download-off:before{content:"\f112"}.vjs-icon-share{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-share:before{content:"\f113"}.vjs-icon-cog{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-cog:before{content:"\f114"}.vjs-icon-square{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-square:before{content:"\f115"}.video-js .vjs-play-progress,.video-js .vjs-volume-level,.vjs-icon-circle,.vjs-seek-to-live-control .vjs-icon-placeholder{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-play-progress:before,.video-js .vjs-volume-level:before,.vjs-icon-circle:before,.vjs-seek-to-live-control .vjs-icon-placeholder:before{content:"\f116"}.vjs-icon-circle-outline{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-circle-outline:before{content:"\f117"}.vjs-icon-circle-inner-circle{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-circle-inner-circle:before{content:"\f118"}.video-js .vjs-control.vjs-close-button .vjs-icon-placeholder,.vjs-icon-cancel{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-control.vjs-close-button .vjs-icon-placeholder:before,.vjs-icon-cancel:before{content:"\f119"}.vjs-icon-repeat{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-repeat:before{content:"\f11a"}.video-js .vjs-play-control.vjs-ended .vjs-icon-placeholder,.vjs-icon-replay{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-play-control.vjs-ended .vjs-icon-placeholder:before,.vjs-icon-replay:before{content:"\f11b"}.video-js .vjs-skip-backward-5 .vjs-icon-placeholder,.vjs-icon-replay-5{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-skip-backward-5 .vjs-icon-placeholder:before,.vjs-icon-replay-5:before{content:"\f11c"}.video-js .vjs-skip-backward-10 .vjs-icon-placeholder,.vjs-icon-replay-10{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-skip-backward-10 .vjs-icon-placeholder:before,.vjs-icon-replay-10:before{content:"\f11d"}.video-js .vjs-skip-backward-30 .vjs-icon-placeholder,.vjs-icon-replay-30{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-skip-backward-30 .vjs-icon-placeholder:before,.vjs-icon-replay-30:before{content:"\f11e"}.video-js .vjs-skip-forward-5 .vjs-icon-placeholder,.vjs-icon-forward-5{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-skip-forward-5 .vjs-icon-placeholder:before,.vjs-icon-forward-5:before{content:"\f11f"}.video-js .vjs-skip-forward-10 .vjs-icon-placeholder,.vjs-icon-forward-10{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-skip-forward-10 .vjs-icon-placeholder:before,.vjs-icon-forward-10:before{content:"\f120"}.video-js .vjs-skip-forward-30 .vjs-icon-placeholder,.vjs-icon-forward-30{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-skip-forward-30 .vjs-icon-placeholder:before,.vjs-icon-forward-30:before{content:"\f121"}.video-js .vjs-audio-button .vjs-icon-placeholder,.vjs-icon-audio{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-audio-button .vjs-icon-placeholder:before,.vjs-icon-audio:before{content:"\f122"}.vjs-icon-next-item{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-next-item:before{content:"\f123"}.vjs-icon-previous-item{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-previous-item:before{content:"\f124"}.vjs-icon-shuffle{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-shuffle:before{content:"\f125"}.vjs-icon-cast{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-cast:before{content:"\f126"}.video-js .vjs-picture-in-picture-control .vjs-icon-placeholder,.vjs-icon-picture-in-picture-enter{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-picture-in-picture-control .vjs-icon-placeholder:before,.vjs-icon-picture-in-picture-enter:before{content:"\f127"}.video-js.vjs-picture-in-picture .vjs-picture-in-picture-control .vjs-icon-placeholder,.vjs-icon-picture-in-picture-exit{font-family:VideoJS;font-weight:400;font-style:normal}.video-js.vjs-picture-in-picture .vjs-picture-in-picture-control .vjs-icon-placeholder:before,.vjs-icon-picture-in-picture-exit:before{content:"\f128"}.vjs-icon-facebook{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-facebook:before{content:"\f129"}.vjs-icon-linkedin{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-linkedin:before{content:"\f12a"}.vjs-icon-twitter{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-twitter:before{content:"\f12b"}.vjs-icon-tumblr{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-tumblr:before{content:"\f12c"}.vjs-icon-pinterest{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-pinterest:before{content:"\f12d"}.video-js .vjs-descriptions-button .vjs-icon-placeholder,.vjs-icon-audio-description{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-descriptions-button .vjs-icon-placeholder:before,.vjs-icon-audio-description:before{content:"\f12e"}.video-js{display:inline-block;vertical-align:top;box-sizing:border-box;color:#fff;background-color:#000;position:relative;padding:0;font-size:10px;line-height:1;font-weight:400;font-style:normal;font-family:Arial,Helvetica,sans-serif;word-break:initial}.video-js:-moz-full-screen{position:absolute}.video-js:-webkit-full-screen{width:100%!important;height:100%!important}.video-js[tabindex="-1"]{outline:0}.video-js *,.video-js :after,.video-js :before{box-sizing:inherit}.video-js ul{font-family:inherit;font-size:inherit;line-height:inherit;list-style-position:outside;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}.video-js.vjs-1-1,.video-js.vjs-16-9,.video-js.vjs-4-3,.video-js.vjs-9-16,.video-js.vjs-fluid{width:100%;max-width:100%}.video-js.vjs-1-1:not(.vjs-audio-only-mode),.video-js.vjs-16-9:not(.vjs-audio-only-mode),.video-js.vjs-4-3:not(.vjs-audio-only-mode),.video-js.vjs-9-16:not(.vjs-audio-only-mode),.video-js.vjs-fluid:not(.vjs-audio-only-mode){height:0}.video-js.vjs-16-9:not(.vjs-audio-only-mode){padding-top:56.25%}.video-js.vjs-4-3:not(.vjs-audio-only-mode){padding-top:75%}.video-js.vjs-9-16:not(.vjs-audio-only-mode){padding-top:177.7777777778%}.video-js.vjs-1-1:not(.vjs-audio-only-mode){padding-top:100%}.video-js.vjs-fill:not(.vjs-audio-only-mode){width:100%;height:100%}.video-js .vjs-tech{position:absolute;top:0;left:0;width:100%;height:100%}.video-js.vjs-audio-only-mode .vjs-tech{display:none}body.vjs-full-window,body.vjs-pip-window{padding:0;margin:0;height:100%}.vjs-full-window .video-js.vjs-fullscreen,body.vjs-pip-window .video-js{position:fixed;overflow:hidden;z-index:1000;left:0;top:0;bottom:0;right:0}.video-js.vjs-fullscreen:not(.vjs-ios-native-fs),body.vjs-pip-window .video-js{width:100%!important;height:100%!important;padding-top:0!important;display:block}.video-js.vjs-fullscreen.vjs-user-inactive{cursor:none}.vjs-pip-container .vjs-pip-text{position:absolute;bottom:10%;font-size:2em;background-color:rgba(0,0,0,.7);padding:.5em;text-align:center;width:100%}.vjs-layout-small.vjs-pip-container .vjs-pip-text,.vjs-layout-tiny.vjs-pip-container .vjs-pip-text,.vjs-layout-x-small.vjs-pip-container .vjs-pip-text{bottom:0;font-size:1.4em}.vjs-hidden{display:none!important}.vjs-disabled{opacity:.5;cursor:default}.video-js .vjs-offscreen{height:1px;left:-9999px;position:absolute;top:0;width:1px}.vjs-lock-showing{display:block!important;opacity:1!important;visibility:visible!important}.vjs-no-js{padding:20px;color:#fff;background-color:#000;font-size:18px;font-family:Arial,Helvetica,sans-serif;text-align:center;width:300px;height:150px;margin:0 auto}.vjs-no-js a,.vjs-no-js a:visited{color:#66a8cc}.video-js .vjs-big-play-button{font-size:3em;line-height:1.5em;height:1.63332em;width:3em;display:block;position:absolute;top:50%;left:50%;padding:0;margin-top:-.81666em;margin-left:-1.5em;cursor:pointer;opacity:1;border:.06666em solid #fff;background-color:#2b333f;background-color:rgba(43,51,63,.7);border-radius:.3em;transition:all .4s}.vjs-big-play-button .vjs-svg-icon{width:1em;height:1em;position:absolute;top:50%;left:50%;line-height:1;transform:translate(-50%,-50%)}.video-js .vjs-big-play-button:focus,.video-js:hover .vjs-big-play-button{border-color:#fff;background-color:rgb(114.9141509434,132.7028301887,159.3858490566);background-color:rgba(114.9141509434,132.7028301887,159.3858490566,.5);transition:all 0s}.vjs-controls-disabled .vjs-big-play-button,.vjs-error .vjs-big-play-button,.vjs-has-started .vjs-big-play-button,.vjs-using-native-controls .vjs-big-play-button{display:none}.vjs-has-started.vjs-paused.vjs-show-big-play-button-on-pause:not(.vjs-seeking,.vjs-scrubbing,.vjs-error) .vjs-big-play-button{display:block}.video-js button{background:0 0;border:none;color:inherit;display:inline-block;font-size:inherit;line-height:inherit;text-transform:none;text-decoration:none;transition:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.video-js.vjs-spatial-navigation-enabled .vjs-button:focus{outline:.0625em solid #fff;box-shadow:none}.vjs-control .vjs-button{width:100%;height:100%}.video-js .vjs-control.vjs-close-button{cursor:pointer;height:3em;position:absolute;right:0;top:.5em;z-index:2}.video-js .vjs-modal-dialog{background:rgba(0,0,0,.8);background:linear-gradient(180deg,rgba(0,0,0,.8),rgba(255,255,255,0));overflow:auto}.video-js .vjs-modal-dialog>*{box-sizing:border-box}.vjs-modal-dialog .vjs-modal-dialog-content{font-size:1.2em;line-height:1.5;padding:20px 24px;z-index:1}.vjs-menu-button{cursor:pointer}.vjs-menu-button.vjs-disabled{cursor:default}.vjs-workinghover .vjs-menu-button.vjs-disabled:hover .vjs-menu{display:none}.vjs-menu .vjs-menu-content{display:block;padding:0;margin:0;font-family:Arial,Helvetica,sans-serif;overflow:auto}.vjs-menu .vjs-menu-content>*{box-sizing:border-box}.vjs-scrubbing .vjs-control.vjs-menu-button:hover .vjs-menu{display:none}.vjs-menu li{display:flex;justify-content:center;list-style:none;margin:0;padding:.2em 0;line-height:1.4em;font-size:1.2em;text-align:center;text-transform:lowercase}.js-focus-visible .vjs-menu li.vjs-menu-item:hover,.vjs-menu li.vjs-menu-item:focus,.vjs-menu li.vjs-menu-item:hover{background-color:rgb(114.9141509434,132.7028301887,159.3858490566);background-color:rgba(114.9141509434,132.7028301887,159.3858490566,.5)}.js-focus-visible .vjs-menu li.vjs-selected:hover,.vjs-menu li.vjs-selected,.vjs-menu li.vjs-selected:focus,.vjs-menu li.vjs-selected:hover{background-color:#fff;color:#2b333f}.js-focus-visible .vjs-menu li.vjs-selected:hover .vjs-svg-icon,.vjs-menu li.vjs-selected .vjs-svg-icon,.vjs-menu li.vjs-selected:focus .vjs-svg-icon,.vjs-menu li.vjs-selected:hover .vjs-svg-icon{fill:#000}.js-focus-visible .vjs-menu :not(.vjs-selected):focus:not(.focus-visible),.video-js .vjs-menu :not(.vjs-selected):focus:not(:focus-visible){background:0 0}.vjs-menu li.vjs-menu-title{text-align:center;text-transform:uppercase;font-size:1em;line-height:2em;padding:0;margin:0 0 .3em 0;font-weight:700;cursor:default}.vjs-menu-button-popup .vjs-menu{display:none;position:absolute;bottom:0;width:10em;left:-3em;height:0;margin-bottom:1.5em;border-top-color:rgba(43,51,63,.7)}.vjs-pip-window .vjs-menu-button-popup .vjs-menu{left:unset;right:1em}.vjs-menu-button-popup .vjs-menu .vjs-menu-content{background-color:#2b333f;background-color:rgba(43,51,63,.7);position:absolute;width:100%;bottom:1.5em;max-height:15em}.vjs-layout-tiny .vjs-menu-button-popup .vjs-menu .vjs-menu-content,.vjs-layout-x-small .vjs-menu-button-popup .vjs-menu .vjs-menu-content{max-height:5em}.vjs-layout-small .vjs-menu-button-popup .vjs-menu .vjs-menu-content{max-height:10em}.vjs-layout-medium .vjs-menu-button-popup .vjs-menu .vjs-menu-content{max-height:14em}.vjs-layout-huge .vjs-menu-button-popup .vjs-menu .vjs-menu-content,.vjs-layout-large .vjs-menu-button-popup .vjs-menu .vjs-menu-content,.vjs-layout-x-large .vjs-menu-button-popup .vjs-menu .vjs-menu-content{max-height:25em}.vjs-menu-button-popup .vjs-menu.vjs-lock-showing,.vjs-workinghover .vjs-menu-button-popup.vjs-hover .vjs-menu{display:block}.video-js .vjs-menu-button-inline{transition:all .4s;overflow:hidden}.video-js .vjs-menu-button-inline:before{width:2.222222222em}.video-js .vjs-menu-button-inline.vjs-slider-active,.video-js .vjs-menu-button-inline:focus,.video-js .vjs-menu-button-inline:hover{width:12em}.vjs-menu-button-inline .vjs-menu{opacity:0;height:100%;width:auto;position:absolute;left:4em;top:0;padding:0;margin:0;transition:all .4s}.vjs-menu-button-inline.vjs-slider-active .vjs-menu,.vjs-menu-button-inline:focus .vjs-menu,.vjs-menu-button-inline:hover .vjs-menu{display:block;opacity:1}.vjs-menu-button-inline .vjs-menu-content{width:auto;height:100%;margin:0;overflow:hidden}.video-js .vjs-control-bar{display:none;width:100%;position:absolute;bottom:0;left:0;right:0;height:3em;background-color:#2b333f;background-color:rgba(43,51,63,.7)}.video-js.vjs-spatial-navigation-enabled .vjs-control-bar{gap:1px}.video-js:not(.vjs-controls-disabled,.vjs-using-native-controls,.vjs-error) .vjs-control-bar.vjs-lock-showing{display:flex!important}.vjs-audio-only-mode .vjs-control-bar,.vjs-has-started .vjs-control-bar{display:flex;visibility:visible;opacity:1;transition:visibility .1s,opacity .1s}.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar{visibility:visible;opacity:0;pointer-events:none;transition:visibility 1s,opacity 1s}.vjs-controls-disabled .vjs-control-bar,.vjs-error .vjs-control-bar,.vjs-using-native-controls .vjs-control-bar{display:none!important}.vjs-audio-only-mode.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar,.vjs-audio.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar{opacity:1;visibility:visible;pointer-events:auto}.video-js .vjs-control{position:relative;text-align:center;margin:0;padding:0;height:100%;width:4em;flex:none}.video-js .vjs-control.vjs-visible-text{width:auto;padding-left:1em;padding-right:1em}.vjs-button>.vjs-icon-placeholder:before{font-size:1.8em;line-height:1.67}.vjs-button>.vjs-icon-placeholder{display:block}.vjs-button>.vjs-svg-icon{display:inline-block}.video-js .vjs-control:focus,.video-js .vjs-control:focus:before,.video-js .vjs-control:hover:before{text-shadow:0 0 1em #fff}.video-js :not(.vjs-visible-text)>.vjs-control-text{border:0;clip:rect(0 0 0 0);height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.video-js .vjs-custom-control-spacer{display:none}.video-js .vjs-progress-control{cursor:pointer;flex:auto;display:flex;align-items:center;min-width:4em;touch-action:none}.video-js .vjs-progress-control.disabled{cursor:default}.vjs-live .vjs-progress-control{display:none}.vjs-liveui .vjs-progress-control{display:flex;align-items:center}.video-js .vjs-progress-holder{flex:auto;transition:all .2s;height:.3em}.video-js .vjs-progress-control .vjs-progress-holder{margin:0 10px}.video-js .vjs-progress-control:hover .vjs-progress-holder,.video-js.vjs-scrubbing.vjs-touch-enabled .vjs-progress-control .vjs-progress-holder{font-size:1.6666666667em}.video-js .vjs-progress-control:hover .vjs-progress-holder.disabled{font-size:1em}.video-js .vjs-progress-holder .vjs-load-progress,.video-js .vjs-progress-holder .vjs-load-progress div,.video-js .vjs-progress-holder .vjs-play-progress{position:absolute;display:block;height:100%;margin:0;padding:0;width:0}.video-js .vjs-play-progress{background-color:#fff}.video-js .vjs-play-progress:before{font-size:.9em;position:absolute;right:-.5em;line-height:.35em;z-index:1}.vjs-svg-icons-enabled .vjs-play-progress:before{content:none!important}.vjs-play-progress .vjs-svg-icon{position:absolute;top:-.35em;right:-.4em;width:.9em;height:.9em;pointer-events:none;line-height:.15em;z-index:1}.video-js .vjs-load-progress{background:rgba(114.9141509434,132.7028301887,159.3858490566,.5)}.video-js .vjs-load-progress div{background:rgba(114.9141509434,132.7028301887,159.3858490566,.75)}.video-js .vjs-time-tooltip{background-color:#fff;background-color:rgba(255,255,255,.8);border-radius:.3em;color:#000;float:right;font-family:Arial,Helvetica,sans-serif;font-size:1em;padding:6px 8px 8px 8px;pointer-events:none;position:absolute;top:-3.4em;visibility:hidden;z-index:1}.video-js .vjs-progress-holder:focus .vjs-time-tooltip{display:none}.video-js .vjs-progress-control:hover .vjs-progress-holder:focus .vjs-time-tooltip,.video-js .vjs-progress-control:hover .vjs-time-tooltip,.video-js.vjs-scrubbing.vjs-touch-enabled .vjs-progress-control .vjs-time-tooltip{display:block;font-size:.6em;visibility:visible}.video-js .vjs-progress-control.disabled:hover .vjs-time-tooltip{font-size:1em}.video-js .vjs-progress-control .vjs-mouse-display{display:none;position:absolute;width:1px;height:100%;background-color:#000;z-index:1}.video-js .vjs-progress-control:hover .vjs-mouse-display{display:block}.video-js.vjs-scrubbing.vjs-touch-enabled .vjs-progress-control .vjs-mouse-display{display:block}.video-js.vjs-touch-enabled:not(.vjs-scrubbing) .vjs-progress-control .vjs-mouse-display,.video-js.vjs-user-inactive .vjs-progress-control .vjs-mouse-display{visibility:hidden;opacity:0;transition:visibility 1s,opacity 1s}.vjs-mouse-display .vjs-time-tooltip{color:#fff;background-color:#000;background-color:rgba(0,0,0,.8)}.video-js .vjs-slider{position:relative;cursor:pointer;padding:0;margin:0 .45em 0 .45em;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;background-color:rgb(114.9141509434,132.7028301887,159.3858490566);background-color:rgba(114.9141509434,132.7028301887,159.3858490566,.5)}.video-js .vjs-slider.disabled{cursor:default}.video-js .vjs-slider:focus{text-shadow:0 0 1em #fff;box-shadow:0 0 1em #fff}.video-js.vjs-spatial-navigation-enabled .vjs-slider:focus{outline:.0625em solid #fff}.video-js .vjs-mute-control{cursor:pointer;flex:none}.video-js .vjs-volume-control{cursor:pointer;margin-right:1em;display:flex}.video-js .vjs-volume-control.vjs-volume-horizontal{width:5em}.video-js .vjs-volume-panel .vjs-volume-control{visibility:visible;opacity:0;width:1px;height:1px;margin-left:-1px}.video-js .vjs-volume-panel{transition:width 1s}.video-js .vjs-volume-panel .vjs-volume-control.vjs-slider-active,.video-js .vjs-volume-panel .vjs-volume-control:active,.video-js .vjs-volume-panel.vjs-hover .vjs-mute-control~.vjs-volume-control,.video-js .vjs-volume-panel.vjs-hover .vjs-volume-control,.video-js .vjs-volume-panel:active .vjs-volume-control,.video-js .vjs-volume-panel:focus .vjs-volume-control{visibility:visible;opacity:1;position:relative;transition:visibility .1s,opacity .1s,height .1s,width .1s,left 0s,top 0s}.video-js .vjs-volume-panel .vjs-volume-control.vjs-slider-active.vjs-volume-horizontal,.video-js .vjs-volume-panel .vjs-volume-control:active.vjs-volume-horizontal,.video-js .vjs-volume-panel.vjs-hover .vjs-mute-control~.vjs-volume-control.vjs-volume-horizontal,.video-js .vjs-volume-panel.vjs-hover .vjs-volume-control.vjs-volume-horizontal,.video-js .vjs-volume-panel:active .vjs-volume-control.vjs-volume-horizontal,.video-js .vjs-volume-panel:focus .vjs-volume-control.vjs-volume-horizontal{width:5em;height:3em;margin-right:0}.video-js .vjs-volume-panel .vjs-volume-control.vjs-slider-active.vjs-volume-vertical,.video-js .vjs-volume-panel .vjs-volume-control:active.vjs-volume-vertical,.video-js .vjs-volume-panel.vjs-hover .vjs-mute-control~.vjs-volume-control.vjs-volume-vertical,.video-js .vjs-volume-panel.vjs-hover .vjs-volume-control.vjs-volume-vertical,.video-js .vjs-volume-panel:active .vjs-volume-control.vjs-volume-vertical,.video-js .vjs-volume-panel:focus .vjs-volume-control.vjs-volume-vertical{left:-3.5em;transition:left 0s}.video-js .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-hover,.video-js .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active,.video-js .vjs-volume-panel.vjs-volume-panel-horizontal:active{width:10em;transition:width .1s}.video-js .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-mute-toggle-only{width:4em}.video-js .vjs-volume-panel .vjs-volume-control.vjs-volume-vertical{height:8em;width:3em;left:-3000em;transition:visibility 1s,opacity 1s,height 1s 1s,width 1s 1s,left 1s 1s,top 1s 1s}.video-js .vjs-volume-panel .vjs-volume-control.vjs-volume-horizontal{transition:visibility 1s,opacity 1s,height 1s 1s,width 1s,left 1s 1s,top 1s 1s}.video-js .vjs-volume-panel{display:flex}.video-js .vjs-volume-bar{margin:1.35em .45em}.vjs-volume-bar.vjs-slider-horizontal{width:5em;height:.3em}.vjs-volume-bar.vjs-slider-vertical{width:.3em;height:5em;margin:1.35em auto}.video-js .vjs-volume-level{position:absolute;bottom:0;left:0;background-color:#fff}.video-js .vjs-volume-level:before{position:absolute;font-size:.9em;z-index:1}.vjs-slider-vertical .vjs-volume-level{width:.3em}.vjs-slider-vertical .vjs-volume-level:before{top:-.5em;left:-.3em;z-index:1}.vjs-svg-icons-enabled .vjs-volume-level:before{content:none}.vjs-volume-level .vjs-svg-icon{position:absolute;width:.9em;height:.9em;pointer-events:none;z-index:1}.vjs-slider-horizontal .vjs-volume-level{height:.3em}.vjs-slider-horizontal .vjs-volume-level:before{line-height:.35em;right:-.5em}.vjs-slider-horizontal .vjs-volume-level .vjs-svg-icon{right:-.3em;transform:translateY(-50%)}.vjs-slider-vertical .vjs-volume-level .vjs-svg-icon{top:-.55em;transform:translateX(-50%)}.video-js .vjs-volume-panel.vjs-volume-panel-vertical{width:4em}.vjs-volume-bar.vjs-slider-vertical .vjs-volume-level{height:100%}.vjs-volume-bar.vjs-slider-horizontal .vjs-volume-level{width:100%}.video-js .vjs-volume-vertical{width:3em;height:8em;bottom:8em;background-color:#2b333f;background-color:rgba(43,51,63,.7)}.video-js .vjs-volume-horizontal .vjs-menu{left:-2em}.video-js .vjs-volume-tooltip{background-color:#fff;background-color:rgba(255,255,255,.8);border-radius:.3em;color:#000;float:right;font-family:Arial,Helvetica,sans-serif;font-size:1em;padding:6px 8px 8px 8px;pointer-events:none;position:absolute;top:-3.4em;visibility:hidden;z-index:1}.video-js .vjs-volume-control:hover .vjs-progress-holder:focus .vjs-volume-tooltip,.video-js .vjs-volume-control:hover .vjs-volume-tooltip{display:block;font-size:1em;visibility:visible}.video-js .vjs-volume-vertical:hover .vjs-progress-holder:focus .vjs-volume-tooltip,.video-js .vjs-volume-vertical:hover .vjs-volume-tooltip{left:1em;top:-12px}.video-js .vjs-volume-control.disabled:hover .vjs-volume-tooltip{font-size:1em}.video-js .vjs-volume-control .vjs-mouse-display{display:none;position:absolute;width:100%;height:1px;background-color:#000;z-index:1}.video-js .vjs-volume-horizontal .vjs-mouse-display{width:1px;height:100%}.video-js .vjs-volume-control:hover .vjs-mouse-display{display:block}.video-js.vjs-user-inactive .vjs-volume-control .vjs-mouse-display{visibility:hidden;opacity:0;transition:visibility 1s,opacity 1s}.vjs-mouse-display .vjs-volume-tooltip{color:#fff;background-color:#000;background-color:rgba(0,0,0,.8)}.vjs-poster{display:inline-block;vertical-align:middle;cursor:pointer;margin:0;padding:0;position:absolute;top:0;right:0;bottom:0;left:0;height:100%}.vjs-has-started .vjs-poster,.vjs-using-native-controls .vjs-poster{display:none}.vjs-audio.vjs-has-started .vjs-poster,.vjs-has-started.vjs-audio-poster-mode .vjs-poster,.vjs-pip-container.vjs-has-started .vjs-poster{display:block}.vjs-poster img{width:100%;height:100%;object-fit:contain}.video-js .vjs-live-control{display:flex;align-items:flex-start;flex:auto;font-size:1em;line-height:3em}.video-js.vjs-liveui .vjs-live-control,.video-js:not(.vjs-live) .vjs-live-control{display:none}.video-js .vjs-seek-to-live-control{align-items:center;cursor:pointer;flex:none;display:inline-flex;height:100%;padding-left:.5em;padding-right:.5em;font-size:1em;line-height:3em;width:auto;min-width:4em}.video-js.vjs-live:not(.vjs-liveui) .vjs-seek-to-live-control,.video-js:not(.vjs-live) .vjs-seek-to-live-control{display:none}.vjs-seek-to-live-control.vjs-control.vjs-at-live-edge{cursor:auto}.vjs-seek-to-live-control .vjs-icon-placeholder{margin-right:.5em;color:#888}.vjs-svg-icons-enabled .vjs-seek-to-live-control{line-height:0}.vjs-seek-to-live-control .vjs-svg-icon{width:1em;height:1em;pointer-events:none;fill:#888}.vjs-seek-to-live-control.vjs-control.vjs-at-live-edge .vjs-icon-placeholder{color:red}.vjs-seek-to-live-control.vjs-control.vjs-at-live-edge .vjs-svg-icon{fill:red}.video-js .vjs-time-control{flex:none;font-size:1em;line-height:3em;min-width:2em;width:auto;padding-left:1em;padding-right:1em}.video-js .vjs-current-time,.video-js .vjs-duration,.vjs-live .vjs-time-control,.vjs-live .vjs-time-divider{display:none}.vjs-time-divider{display:none;line-height:3em}.vjs-normalise-time-controls:not(.vjs-live) .vjs-time-control{display:flex}.video-js .vjs-play-control{cursor:pointer}.video-js .vjs-play-control .vjs-icon-placeholder{flex:none}.vjs-text-track-display{position:absolute;bottom:3em;left:0;right:0;top:0;pointer-events:none}.vjs-error .vjs-text-track-display{display:none}.video-js.vjs-controls-disabled .vjs-text-track-display,.video-js.vjs-user-inactive.vjs-playing .vjs-text-track-display{bottom:1em}.video-js .vjs-text-track{font-size:1.4em;text-align:center;margin-bottom:.1em}.vjs-subtitles{color:#fff}.vjs-captions{color:#fc6}.vjs-tt-cue{display:block}video::-webkit-media-text-track-display{transform:translateY(-3em)}.video-js.vjs-controls-disabled video::-webkit-media-text-track-display,.video-js.vjs-user-inactive.vjs-playing video::-webkit-media-text-track-display{transform:translateY(-1.5em)}.video-js.vjs-force-center-align-cues .vjs-text-track-cue{text-align:center!important;width:80%!important}@supports not (inset:10px){.video-js .vjs-text-track-display>div{top:0;right:0;bottom:0;left:0}}.video-js .vjs-picture-in-picture-control{cursor:pointer;flex:none}.video-js.vjs-audio-only-mode .vjs-picture-in-picture-control,.vjs-pip-window .vjs-picture-in-picture-control{display:none}.video-js .vjs-fullscreen-control{cursor:pointer;flex:none}.video-js.vjs-audio-only-mode .vjs-fullscreen-control,.vjs-pip-window .vjs-fullscreen-control{display:none}.vjs-playback-rate .vjs-playback-rate-value,.vjs-playback-rate>.vjs-menu-button{position:absolute;top:0;left:0;width:100%;height:100%}.vjs-playback-rate .vjs-playback-rate-value{pointer-events:none;font-size:1.5em;line-height:2;text-align:center}.vjs-playback-rate .vjs-menu{width:4em;left:0}.vjs-error .vjs-error-display .vjs-modal-dialog-content{font-size:1.4em;text-align:center}.vjs-loading-spinner{display:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);opacity:.85;text-align:left;border:.6em solid rgba(43,51,63,.7);box-sizing:border-box;background-clip:padding-box;width:5em;height:5em;border-radius:50%;visibility:hidden}.vjs-seeking .vjs-loading-spinner,.vjs-waiting .vjs-loading-spinner{display:flex;justify-content:center;align-items:center;animation:vjs-spinner-show 0s linear .3s forwards}.vjs-error .vjs-loading-spinner{display:none}.vjs-loading-spinner:after,.vjs-loading-spinner:before{content:"";position:absolute;box-sizing:inherit;width:inherit;height:inherit;border-radius:inherit;opacity:1;border:inherit;border-color:transparent;border-top-color:#fff}.vjs-seeking .vjs-loading-spinner:after,.vjs-seeking .vjs-loading-spinner:before,.vjs-waiting .vjs-loading-spinner:after,.vjs-waiting .vjs-loading-spinner:before{animation:vjs-spinner-spin 1.1s cubic-bezier(.6,.2,0,.8) infinite,vjs-spinner-fade 1.1s linear infinite}.vjs-seeking .vjs-loading-spinner:before,.vjs-waiting .vjs-loading-spinner:before{border-top-color:#fff}.vjs-seeking .vjs-loading-spinner:after,.vjs-waiting .vjs-loading-spinner:after{border-top-color:#fff;animation-delay:.44s}@keyframes vjs-spinner-show{to{visibility:visible}}@keyframes vjs-spinner-spin{100%{transform:rotate(360deg)}}@keyframes vjs-spinner-fade{0%{border-top-color:rgb(114.9141509434,132.7028301887,159.3858490566)}20%{border-top-color:rgb(114.9141509434,132.7028301887,159.3858490566)}35%{border-top-color:#fff}60%{border-top-color:rgb(114.9141509434,132.7028301887,159.3858490566)}100%{border-top-color:rgb(114.9141509434,132.7028301887,159.3858490566)}}.video-js.vjs-audio-only-mode .vjs-captions-button{display:none}.vjs-chapters-button .vjs-menu ul{width:24em}.video-js.vjs-audio-only-mode .vjs-descriptions-button{display:none}.vjs-subs-caps-button+.vjs-menu .vjs-captions-menu-item .vjs-svg-icon{width:1.5em;height:1.5em}.video-js .vjs-subs-caps-button+.vjs-menu .vjs-captions-menu-item .vjs-menu-item-text .vjs-icon-placeholder{vertical-align:middle;display:inline-block;margin-bottom:-.1em}.video-js .vjs-subs-caps-button+.vjs-menu .vjs-captions-menu-item .vjs-menu-item-text .vjs-icon-placeholder:before{font-family:VideoJS;content:"\f10c";font-size:1.5em;line-height:inherit}.video-js.vjs-audio-only-mode .vjs-subs-caps-button{display:none}.video-js .vjs-audio-button+.vjs-menu .vjs-descriptions-menu-item .vjs-menu-item-text .vjs-icon-placeholder,.video-js .vjs-audio-button+.vjs-menu .vjs-main-desc-menu-item .vjs-menu-item-text .vjs-icon-placeholder{vertical-align:middle;display:inline-block;margin-bottom:-.1em}.video-js .vjs-audio-button+.vjs-menu .vjs-descriptions-menu-item .vjs-menu-item-text .vjs-icon-placeholder:before,.video-js .vjs-audio-button+.vjs-menu .vjs-main-desc-menu-item .vjs-menu-item-text .vjs-icon-placeholder:before{font-family:VideoJS;content:" \f12e";font-size:1.5em;line-height:inherit}.video-js.vjs-layout-small .vjs-current-time,.video-js.vjs-layout-small .vjs-duration,.video-js.vjs-layout-small .vjs-playback-rate,.video-js.vjs-layout-small .vjs-remaining-time,.video-js.vjs-layout-small .vjs-time-divider,.video-js.vjs-layout-small .vjs-volume-control,.video-js.vjs-layout-tiny .vjs-current-time,.video-js.vjs-layout-tiny .vjs-duration,.video-js.vjs-layout-tiny .vjs-playback-rate,.video-js.vjs-layout-tiny .vjs-remaining-time,.video-js.vjs-layout-tiny .vjs-time-divider,.video-js.vjs-layout-tiny .vjs-volume-control,.video-js.vjs-layout-x-small .vjs-current-time,.video-js.vjs-layout-x-small .vjs-duration,.video-js.vjs-layout-x-small .vjs-playback-rate,.video-js.vjs-layout-x-small .vjs-remaining-time,.video-js.vjs-layout-x-small .vjs-time-divider,.video-js.vjs-layout-x-small .vjs-volume-control{display:none}.video-js.vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-hover,.video-js.vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active,.video-js.vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal:active,.video-js.vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal:hover,.video-js.vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-hover,.video-js.vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active,.video-js.vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal:active,.video-js.vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal:hover,.video-js.vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-hover,.video-js.vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active,.video-js.vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal:active,.video-js.vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal:hover{width:auto;width:initial}.video-js.vjs-layout-tiny .vjs-progress-control,.video-js.vjs-layout-x-small .vjs-progress-control{display:none}.video-js.vjs-layout-x-small .vjs-custom-control-spacer{flex:auto;display:block}.vjs-modal-dialog.vjs-text-track-settings{background-color:#2b333f;background-color:rgba(43,51,63,.75);color:#fff;height:70%}.vjs-spatial-navigation-enabled .vjs-modal-dialog.vjs-text-track-settings{height:80%}.vjs-error .vjs-text-track-settings{display:none}.vjs-text-track-settings .vjs-modal-dialog-content{display:table}.vjs-text-track-settings .vjs-track-settings-colors,.vjs-text-track-settings .vjs-track-settings-controls,.vjs-text-track-settings .vjs-track-settings-font{display:table-cell}.vjs-text-track-settings .vjs-track-settings-controls{text-align:right;vertical-align:bottom}@supports (display:grid){.vjs-text-track-settings .vjs-modal-dialog-content{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr;padding:20px 24px 0 24px}.vjs-track-settings-controls .vjs-default-button{margin-bottom:20px}.vjs-text-track-settings .vjs-track-settings-controls{grid-column:1/-1}.vjs-layout-small .vjs-text-track-settings .vjs-modal-dialog-content,.vjs-layout-tiny .vjs-text-track-settings .vjs-modal-dialog-content,.vjs-layout-x-small .vjs-text-track-settings .vjs-modal-dialog-content{grid-template-columns:1fr}}.vjs-text-track-settings select{font-size:inherit}.vjs-track-setting>select{margin-right:1em;margin-bottom:.5em}.vjs-text-track-settings fieldset{margin:10px;border:none}.vjs-text-track-settings fieldset span{display:inline-block;padding:0 .6em .8em}.vjs-text-track-settings fieldset span>select{max-width:7.3em}.vjs-text-track-settings legend{color:#fff;font-weight:700;font-size:1.2em}.vjs-text-track-settings .vjs-label{margin:0 .5em .5em 0}.vjs-track-settings-controls button:active,.vjs-track-settings-controls button:focus{outline-style:solid;outline-width:medium;background-image:linear-gradient(0deg,#fff 88%,rgb(114.9141509434,132.7028301887,159.3858490566) 100%)}.vjs-track-settings-controls button:hover{color:rgba(43,51,63,.75)}.vjs-track-settings-controls button{background-color:#fff;background-image:linear-gradient(-180deg,#fff 88%,rgb(114.9141509434,132.7028301887,159.3858490566) 100%);color:#2b333f;cursor:pointer;border-radius:2px}.vjs-track-settings-controls .vjs-default-button{margin-right:1em}.vjs-title-bar{background:rgba(0,0,0,.9);background:linear-gradient(180deg,rgba(0,0,0,.9) 0,rgba(0,0,0,.7) 60%,rgba(0,0,0,0) 100%);font-size:1.2em;line-height:1.5;transition:opacity .1s;padding:.666em 1.333em 4em;pointer-events:none;position:absolute;top:0;width:100%}.vjs-error .vjs-title-bar{display:none}.vjs-title-bar-description,.vjs-title-bar-title{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vjs-title-bar-title{font-weight:700;margin-bottom:.333em}.vjs-playing.vjs-user-inactive .vjs-title-bar{opacity:0;transition:opacity 1s}.video-js .vjs-skip-forward-5{cursor:pointer}.video-js .vjs-skip-forward-10{cursor:pointer}.video-js .vjs-skip-forward-30{cursor:pointer}.video-js .vjs-skip-backward-5{cursor:pointer}.video-js .vjs-skip-backward-10{cursor:pointer}.video-js .vjs-skip-backward-30{cursor:pointer}.video-js .vjs-transient-button{position:absolute;height:3em;display:flex;align-items:center;justify-content:center;background-color:rgba(50,50,50,.5);cursor:pointer;opacity:1;transition:opacity 1s}.video-js:not(.vjs-has-started) .vjs-transient-button{display:none}.video-js.not-hover .vjs-transient-button:not(.force-display),.video-js.vjs-user-inactive .vjs-transient-button:not(.force-display){opacity:0}.video-js .vjs-transient-button span{padding:0 .5em}.video-js .vjs-transient-button.vjs-left{left:1em}.video-js .vjs-transient-button.vjs-right{right:1em}.video-js .vjs-transient-button.vjs-top{top:1em}.video-js .vjs-transient-button.vjs-near-top{top:4em}.video-js .vjs-transient-button.vjs-bottom{bottom:4em}.video-js .vjs-transient-button:hover{background-color:rgba(50,50,50,.9)}@media print{.video-js>:not(.vjs-tech):not(.vjs-poster){visibility:hidden}}.vjs-resize-manager{position:absolute;top:0;left:0;width:100%;height:100%;border:none;z-index:-1000}.js-focus-visible .video-js :focus:not(.focus-visible){outline:0}.video-js :focus:not(:focus-visible){outline:0}
:root {

    --bg-color: #f8f8f8; 
    --fg-color: #111111; 

    --fg-color-grey: #dedede;

    --logo-color-base: #0080ff;
    --logo-color-high: color-mix(in srgb, #000 10%, var(--logo-color-base) 90%); 
    --logo-color:      color-mix(in srgb, #000 47%, var(--logo-color-base) 53%); 
    --logo-color-low:  color-mix(in srgb, #000 79%, var(--logo-color-base) 21%); 

    
    --masthead-height: 95px;

    --title-font-family: Raleway, sans-serif;
    --body-font-family: "Work Sans", sans-serif;

    --main-max-width: 1080px;
    --mobile-max-width: 750px;

    
    --blue:    #0d6efd;
    --indigo:  #6610f2;
    --purple:  #6f42c1;
    --pink:    #d63384;
    --red:     #dc3545;
    --orange:  #fd7e14;
    --yellow:  #ffc107;
    --green:   #198754;
    --teal:    #20c997;
    --cyan:    #0dcaf0;

    --white:    #fff;
    --gray-100: #f8f9fa;
    --gray-200: #e9ecef;
    --gray-300: #dee2e6;
    --gray-400: #ced4da;
    --gray-500: #adb5bd;
    --gray-600: #6c757d;
    --gray-700: #495057;
    --gray-800: #343a40;
    --gray-900: #212529;
    --black:    #000;

    --state-primary-color: var(--blue);
    --state-secondary-color: var(--gray-600);
    --state-success-color: var(--green);
    --state-danger-color: var(--red);
    --state-warning-color: var(--yellow);
    --state-info-color: var(--cyan);
    --state-light-color: var(--gray-100);
    --state-dark-color: var(--gray-900);
}




.state-primary {
    --state-color: var(--state-primary-color);
    --state-color-dark: hsl(from var(--state-primary-color) h s calc(l - 20));
    --state-color-light: hsl(from var(--state-primary-color) h s calc(l + 20));
    --state-color-lightest: hsl(from var(--state-primary-color) h s calc(l + 40));
}

.state-secondary {
    --state-color: var(--state-secondary-color);
    --state-color-dark: hsl(from var(--state-secondary-color) h s calc(l - 20));
    --state-color-light: hsl(from var(--state-secondary-color) h s calc(l + 20));
    --state-color-lightest: hsl(from var(--state-secondary-color) h s calc(l + 40));
}

.state-success {
    --state-color: var(--state-success-color);
    --state-color-dark: hsl(from var(--state-success-color) h s calc(l - 20));
    --state-color-light: hsl(from var(--state-success-color) h s calc(l + 20));
    --state-color-lightest: hsl(from var(--state-success-color) h s calc(l + 55));
}

.state-danger {
    --state-color: var(--state-danger-color);
    --state-color-dark: hsl(from var(--state-danger-color) h s calc(l - 20));
    --state-color-light: hsl(from var(--state-danger-color) h s calc(l + 20));
    --state-color-lightest: hsl(from var(--state-danger-color) h s calc(l + 40));
}

.state-warning {
    --state-color: var(--state-warning-color);
    --state-color-dark: hsl(from var(--state-warning-color) h s calc(l - 20));
    --state-color-light: hsl(from var(--state-warning-color) h s calc(l + 20));
    --state-color-lightest: hsl(from var(--state-warning-color) h s calc(l + 40));
}

.state-info {
    --state-color: var(--state-info-color);
    --state-color-dark: hsl(from var(--state-info-color) h s calc(l - 20));
    --state-color-light: hsl(from var(--state-info-color) h s calc(l + 20));
    --state-color-lightest: hsl(from var(--state-info-color) h s calc(l + 40));
}


body.status {

    #error-report {
        font-family: monospace;
        white-space: pre;
    }

}


@media (prefers-reduced-motion: no-preference) {
    html {
        scroll-behavior: smooth;
    }
}


html {
    scroll-padding-top: calc(var(--masthead-height) + 1rem);
}

.media-mobile {
    --masthead-height: 76px;
}


a {
    color: rgb(6, 6, 51);
}

a:hover {
    text-decoration: underline;
}

h1, h2, h3 {
    font-family: var(--title-font-family);
}


.media-mobile main > :is(h1, h2, h3) {
    margin-bottom: 1.3rem;
}

.media-mobile main > :is(h1, h2, h3) + * {
    margin-top: 0;
}

h1 {
    font-size: 72px;
    font-weight: 200;
    text-transform: uppercase;
}

h2 {
    font-weight: 200;
}

p, li {
    line-height: 1.3em;
}

input, button, textarea {
    .media-mobile & {
        font-size: 1rem;
    }
}


.todo {
    background-color: #ffa;
}



.admonition {

    padding: 1rem;
    margin: 1rem 0;

    .admonition-title {
        font-weight: 400;
        color: var(--state-color-dark);
    }
    
    background: linear-gradient(to right, var(--state-color-lightest), rgba(0, 0, 0, 0));
    border-left: 2px solid var(--state-color-light);

    & p:first-child {
        margin-top: 0;
    }
    
    & p:last-child {
        margin-bottom: 0;
    }

}


.button {

    
    font-size: 1rem;
    font-weight: 400;
    font-family: var(--body-font-family);

    
    display: inline-block;
    text-decoration: none;
    &:hover {
        text-decoration: none;
    }

    padding: 0.4em 0.6em;
    margin: 1em 0.5em 1em 0;
    border-radius: 0.3em;

    cursor: pointer;

    color: white; 

    --top-color: color-mix(in srgb, var(--state-color) 90%, white 20%);
    --bottom-color: color-mix(in srgb, var(--state-color) 90%, black 20%);

    
    background-image: linear-gradient(to bottom, var(--top-color), var(--bottom-color));
    background-repeat: no-repeat;
    background-origin: border-box;
    background-size: 100% 100%;

    
    border: none;

}


.breadcrumbs {


    :is(main) > &:first-child {
        position: absolute;
        margin: -1.5em auto 0;
    }
    
    margin: 0;
    padding: 0;

    list-style: none;

    text-transform: uppercase;

    & a { 
        color: #888;
        text-decoration: none;
    }

    & a:hover {
        text-decoration: underline;;
    }

}


details {

    padding-left: 1.5ex;
    
    border-left: 2px solid rgba(0, 0, 0, 0); 
    &[open] {
        border-left: 2px solid #ccc;
    }

}


.cta-trailer {

    width: 60%;

    
    border-radius: 0.5rem;
    background-color: white;
    filter: drop-shadow(1rem 1rem 1rem rgba(0,0,0,0.25));

    margin: 1rem 0 2rem;
    padding: 1rem 2rem;

    text-align: center;

    
    & p {
        text-wrap: balance;
    }

    
    .media-mobile & {

        width: 100vw; 
        margin: 2rem 0;
        padding: 0 1rem;

        background-color: transparent;
        border-radius: 0;
        filter: none;

    }

    & > :first-child {
        margin-top: 0;
    }

    & > .button {
        font-size: 1.5rem;
        margin: 0 auto;
    }

}



body {
    --footer-contact: block;
    --footer-subscribe: none;
}

body:has(.cta-trailer),
body:has(.address-list) {
    --footer-contact: none;
    --footer-subscribe: block;
}


body:has(#newsletter-form) {
    --footer-subscribe: none;
}


footer .contact {
    display: var(--footer-contact);
}

footer .subscribe {
    display: var(--footer-subscribe);
}



sup, sub {
    line-height: 0;
}

* {
    box-sizing: border-box;
}


html, body {

  margin: 0;
  padding:0;
  height: 100%;
  width: 100%;

  @media only screen and (max-width: 750px) {
      width: min-content;
  }

}


html {

    font-family: var(--body-font-family);
    font-weight: 300;
    font-size: 16px;

}


body {

    background-color: var(--bg-color);
    color: var(--fg-color);

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;

    
    min-height: 100vh;
    height: auto;

    width: 100vw;
}


main {

    display: flex;
    flex-direction: column;
    align-items: center;

    min-width: 30rem;
    max-width: var(--main-max-width);
    margin: 0 auto 1em;
    padding: 0;

    & > * {
        margin-left: 2rem;
        margin-right: 2rem;
    }

    .media-mobile & {

        
        margin: 0 0 1em;
        max-width: 100%;
        min-width: 0;

        & > * {
            margin-left: 1rem;
            margin-right: 1rem;
        }

    }

    & h1 {

        text-align: center;
        font-size: 2.8rem;

    }

    & > h1:first-child {
        margin-top: 0;
    }

    & p {
        
    }

}


header {

    width: 100vw;

    
    
    margin: 16px 0;

    
    position: sticky;
    top: 0;
    z-index: 30;

    

    
    box-shadow: 0 0 0 rgba(0, 0, 0, 0);
    transition: box-shadow 150ms ease;

    &.is-stuck {
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.16);
    }

    @media (prefers-reduced-motion: reduce) {
        transition: none;
    }

    background-color: var(--bg-color);


    display: flex;
    flex-direction: row;
    justify-content: space-evenly; 
    align-items: center;
    gap: 2rem;

    
    .media-not-mobile & .logo img {
        display: block;
        height: 100px;
        width: auto;
        margin-bottom: -21px;
    }

}


nav ul {
    list-style-type: none;
}

nav > ul {

    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 0; 

    height: min-content;
    min-width: fit-content;

    
    margin: 0 1rem;
    padding: 0;

    & > li {

        margin: 0;
        padding: 0.25rem 0.5rem;

        font-weight: 500;

        & a, .menu-title {

            display: inline-block;

            color: var(--fg-color);
            text-decoration: none;

            &:hover {

                color: var(--logo-color-high);

                
                text-decoration: none;

            }

            &.active {
                font-weight: 400;
                border-bottom: 2px solid #aaa;

                .media-mobile & {
                    border: none;
                }
            }


        }


    }

    .media-mobile & {
        font-size: 0.6rem;

        & li {
            & a {
                padding: 0.25em 0.6em;
            }
        }
    }

    &.primary {
        & li {
            & a {
            }
        }
    }

    &.secondary {

        margin-top: -1em;

        & li {
            & a {
                background: none;
                padding: 0.25em 0.4em;
            }
        }
    }
}






.nav-toggle {
    display: none; 
}

.nav-button {

    display: none;
    .media-mobile & {
        display: flex;
    }

    position: absolute;
    top: 0;
    right: 2rem;

    height: 80px;

    flex-direction: column;
    justify-content: center;
    align-items: center;

    cursor: pointer;

}


.nav-line,
.nav-line::before,
.nav-line::after {

    display: block;
    background-color: hsl(from var(--fg-color) h s calc(l + 15));

    position: absolute;

    height: 4px;
    width: 30px;
    border-radius: 2px;

    transition: transform 400ms cubic-bezier(0.23, 1, 0.32, 1);

}

.nav-line::before {
    content: '';
    margin-top: -0.5rem;
}

.nav-line::after {
    content: '';
    margin-top: 0.5rem;
}


.nav-toggle:checked ~ .nav-button .nav-line::before {
    margin-top: 0px;
    transform: rotate(45deg);
}

.nav-toggle:checked ~ .nav-button .nav-line {
    background-color: var(--bg-color);
}

.nav-toggle:checked ~ .nav-button .nav-line::after {
    margin-top: 0px;
    transform: rotate(-45deg);
}


.media-mobile {

    & header {

        flex-direction: column;
        justify-content: start;
        align-items: flex-start;
        gap: 0;

        .logo img {

            width: 150px;    
            height: 56.25px; 

            margin-left: 1rem;

        }

    }

    & header nav > ul {

        flex-direction: column !important;

        margin: 0;
        width: 100vw;
        height: 0;

        overflow: hidden;

        line-height: 2rem;
        font-size: 1.5rem;

        transition: height 400ms cubic-bezier(0.23, 1, 0.32, 1);

        
        --nav-indent: 1rem;
        --nav-indent-step: 1.5rem;

        
        --nav-marker: 1.25rem;

        & > li {

            margin: 0;
            padding: 0;

            & > a, & > label {

                width: 100vw;

                margin: 0;
                padding: 0.5rem var(--nav-indent) 0.5rem
                    calc(var(--nav-indent) + var(--nav-marker));

                
                text-align: left;
                vertical-align: middle;

                border: none;

            }

        }

        
        .menu-title:before {
            display: inline-block;
            width: var(--nav-marker);
            margin: 0 0 0 calc(-1 * var(--nav-marker));
        }

        
        & > li.contact-button > a {
            padding-left: var(--nav-indent);
            text-align: center;
        }

    }

    
    .nav-toggle:checked ~ nav > ul {

        height: auto;
        margin-top: 1rem;

        --border-color: hsl(from var(--fg-color) h s calc(l + 75));

        border-top: 1px solid var(--border-color);
        border-bottom: 1px solid var(--border-color);

        box-shadow: 0 10px 10px 0 var(--border-color);

    }

}



.menu {

    position: relative; 

    border-radius: 0.2rem 0.2rem 0 0;
    z-index: 10; 

    
    .menu-title:before {
        content: "\25B8"; 
        display: inline-block;
        color: #666;
        margin: 0 0.5ex 0 0;
    }

    .media-not-mobile &:hover, .media-mobile .menu-toggle:checked + & {

        .menu-title:before {
            transform: rotate(90deg);
        }
    }

    
    .media-not-mobile &:hover {
        z-index: 20;
    }

    

}




.menu-content {

    
    display: none;

    position: absolute;
    .media-mobile & { position: static; }

    left: 0;
    top: 100%;

    z-index: 9;

    margin: 0;
    padding: 0;

    width: max-content; 

    
    .media-mobile & {
        width: auto;
        margin-left: var(--nav-indent-step);
    }

    
    .media-not-mobile & {

        border-radius: 0.9rem;
        outline: 1px solid #e3e3e3;
        background: linear-gradient(to bottom, #fcfcfc, #e8e8e8);
        box-shadow: none;

        isolation: isolate;

    }

    
    .media-mobile & {

        margin-top: 0;
        background: none;
        outline: none;
        border-radius: 0;
        box-shadow: none;

        
        & li.menuitem .title {
            color: #666;
        }

    }


    & li.menuinfo {
        & p {
            margin: 0.3rem 0.5rem;
            padding: 0;
            color:#666;
            font-size: 0.8em;
        }
    }

    & li.menuitem {

        
        border: none;
        margin: 0.15rem 0.4rem;
        padding: 0;

        > a {

            display: block;
            position: relative;

            padding: 0.55rem 0.75rem 0.55rem 2.9rem;
            border-radius: 0.6rem;

            
            text-decoration: none;

            transition:
                background-color 120ms ease,
                color 120ms ease;

            
            &:hover, &:focus-visible {

                background-color: color-mix(in srgb, var(--logo-color-base) 14%, white);
                text-decoration: none;

                .title {
                    color: var(--logo-color-base);
                }

                
                .icon {
                    color: var(--logo-color-base);
                }

            }

            
            &:focus-visible {
                outline: 2px solid var(--logo-color-base);
                outline-offset: -2px;
            }

        }

        .icon {

            position: absolute;
            top: 50%;
            left: 0.55rem;

            margin-top: -0.9rem;
            width: 1.8rem;
            height: 1.8rem;

            color: var(--logo-color);
            transition: color 120ms ease;

            transition: color 120ms ease;

        }

        .subtitle {
            color: #666;
            font-size: 0.8em;
            font-weight: 400;
        }

    }

}

.menu-toggle {
    display: none; 
}



.menu-content {

    opacity: 0;
    transform: translateY(-0.3rem);
    transform-origin: top center;

    transition:
        opacity 150ms ease,
        transform 150ms ease,
        display 150ms allow-discrete;

    & li.menuitem {
        opacity: 0;
        transform: translateY(-0.2rem);
        transition:
            opacity 160ms ease,
            transform 160ms ease,
            background-color 120ms ease;
    }

}


.media-not-mobile .menu:hover .menu-content,

.media-mobile .menu-toggle:checked + .menu .menu-content {

    display: block;

    opacity: 1;
    transform: translateY(0);

    @starting-style {
        opacity: 0;
        transform: translateY(-0.3rem);
    }

    & li.menuitem {

        opacity: 1;
        transform: translateY(0);

        
        &:nth-child(1) { transition-delay: 50ms; }
        &:nth-child(2) { transition-delay: 90ms; }
        &:nth-child(3) { transition-delay: 130ms; }
        &:nth-child(n+4) { transition-delay: 170ms; }

    }

}


@media (prefers-reduced-motion: reduce) {

    .menu-content,
    .menu-content li.menuitem {
        transition: none;
        transform: none;
        opacity: 1;
    }

    .media-not-mobile .menu:hover .menu-content li.menuitem,
    .media-mobile .menu-toggle:checked + .menu .menu-content li.menuitem {
        transition-delay: 0ms;
    }

}




nav .contact-button, .menu.admin-menu {

    margin-left: 0.5rem;
    background-image: linear-gradient(to bottom,
        color-mix(in srgb, var(--menu-color) 90%, white 10%),
        color-mix(in srgb, var(--menu-color) 90%, black 10%)
    );
    border-radius: 0.2rem;

    > a {
        border-bottom: none !important;
    }

    > a, & label, & label:before {
        color: white !important;
    }

}

nav .contact-button {
    --menu-color: var(--logo-color-base);
}

.menu.admin-menu {
    --menu-color: var(--state-success-color);
    .edit_mode-on & {
        --menu-color: var(--state-warning-color);
    }
}




footer {

    position: relative;
    width: 100vw;

    
    padding: 2em 2em 0.75em;

    
    .footer-sections {

        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 1.5rem 3rem;

        margin: 0 auto 2.5rem;
        max-width: var(--main-max-width);
        text-align: center;

        
        .media-mobile & {
            display: none;
        }

        & h2 {
            font-family: var(--title-font-family);
            
            font-weight: 700;
            font-size: 0.8rem;
            letter-spacing: 0.08em;
            text-transform: uppercase;
            margin: 0 0 0.6rem;

            
            & a {
                font-size: inherit;
                line-height: inherit;
            }
        }

        & ul {
            list-style: none;
            margin: 0;
            padding: 0;
        }

        & li + li {
            margin-top: 0.35rem;
        }

        & a {
            font-size: 0.92rem;
            line-height: 1.35;
        }

    }

    background-color: var(--fg-color);
    color: var(--bg-color);

    margin-top: auto;

    text-align: center;

    & p {
        margin: 0 0 0.5rem;
    }

    & a {
        color: var(--bg-color);
        text-decoration: none;

        &:hover {
            text-decoration: underline;
        }

    }

    & p strong {
        font-weight: 600;
    }

    
    .contact,
    .subscribe {
        font-size: 1rem;
    }

    .tagline {

    

    
    
    
    
    

            
            font-size: 0.75em;
            

    }

    .social-media {

        font-size: 2em;
        margin: 0.5em 0;
        padding: 0;

        list-style-type: none;

        display: flex;
        justify-content: center;

        .media-mobile & {
            
            font-size: 1.5em;
        }


        & address {

            display: inline-block;
            margin: 0 1rem;
            padding: 0;

            .media-mobile & {
                margin: 0 0.5rem;
            }

        }

        .icon {
            width: 1em;
            height: 1em;
        }

    }

    .copyright {
        font-size: 0.8rem;
    }


    
    .back-to-top {

        display: inline-flex;
        margin-top: 1em;
        align-items: center;
        gap: 0.4em;

        font-size: 0.75em;
        padding: 0.5em 0.8em;
        border-radius: 0.3em;

        
        border: 1px solid rgba(255, 255, 255, 0.25);
        color: rgba(255, 255, 255, 0.65);

        transition: color 150ms ease, border-color 150ms ease;

        
        &:hover {
            text-decoration: none;
        }

        &:hover,
        &:focus-visible {
            color: var(--bg-color);
            border-color: rgba(255, 255, 255, 0.65);
        }

        &:focus-visible {
            outline: 2px solid var(--logo-color);
            outline-offset: 2px;
        }

        
        .chevron {
            display: block;
            width: 0.5em;
            height: 0.5em;
            border-top: 1.5px solid currentColor;
            border-right: 1.5px solid currentColor;
            transform: rotate(-45deg);

            
            margin-top: 0.15em;
        }

        @media (prefers-reduced-motion: reduce) {
            transition: none;
        }

        .media-not-mobile & {
            display: none;
        }

    }

}


.badge {
    border-radius: 3px;
    background-color: #bbb;
    padding: 0.1em 0.5ex;
    text-transform: uppercase;
    font-size: 0.8em;
    font-weight: bold;
}

.badge-warning {
    color: white;
    background-color: orange;
}

.badge-note {
    color: white;
    background-color: skyblue;
}


.cardpair {

    width: 100%;

    margin: 0 auto;

    display: flex;
    flex-direction: row;
    
    align-items: stretch;
    
    --text-align: left;

    .text {
        color: var(--fg-color);
        padding: 0rem 1rem;
        width: 45%;
        margin: 1rem 0 1rem auto;
        text-align: var(--text-align);

        
        align-self: center;
    }

    & h2 {
        text-transform: uppercase;
        font-size: 1.8rem !important;
        font-weight: 600;
        margin: 0 0 0.5rem;
        text-align: var(--text-align);
    }

    & figure {
        margin: 0;
        padding: 0;

        
        width: 100%;
    }

    
    .image,
    .image:hover {
        text-decoration: none;
    }

    & figcaption {
        
        color: var(--fg-color);
        text-align: center;
        font-size: 0.9em;
        font-style: italic;
        margin: 0.7em 0 0;
    }

    --corner-size: 2em;

    .image {
        
        width: 55%;
        min-height: inherit;
        margin: 1rem;
        overflow: hidden;
        display: block;
        background-size: 100%;
        background-repeat: no-repeat;
        background-position: left top;

        & img {
            width: 100%;
            height: fit-content;
        }

    }

    & img, .video-container {
        border-radius: var(--corner-size) 0;
        overflow: clip;
    }

    
    .image .video-container {
        width: 100%;
        padding: 0;
        aspect-ratio: var(--divider-image-aspect);

        
        .video-js {
            width: 100%;
            height: 100%;
            padding-top: 0;
        }

        & video {
            width: 100%;
            height: 100%;
            box-shadow: none;
        }
    }

    &.textfirst {

        .media-not-mobile & {
            --text-align: right;
        }

        .text {
            order: -1;
            margin-right: auto;
            margin-left: 0px;
        }
    
        .image {
            background-position: left;
        }

        & img, .video-container {
            border-radius: 0 var(--corner-size);
        }

    }

    .learnmore {
        font-weight: 400;
        color: rgb(0, 9, 92);
        font-size: 1.1rem !important;
    }

    & hr {
        display: none;
    }

    .media-mobile & { 

        width: 100vw;
        margin: 0;
        padding: 1rem;

        flex-direction: column;
        justify-content: space-evenly;
        align-items: center;

        padding-bottom: 1em;

        & h2 {
            text-align: center;
        }
        
        
        --divider-grey: #ddd;

        
        --divider-ramp:
            var(--divider-grey) 0%,
            color-mix(in srgb, var(--divider-grey) 93%, transparent) 17%,
            color-mix(in srgb, var(--divider-grey) 74%, transparent) 33%,
            color-mix(in srgb, var(--divider-grey) 50%, transparent) 50%,
            color-mix(in srgb, var(--divider-grey) 26%, transparent) 67%,
            color-mix(in srgb, var(--divider-grey) 7%, transparent) 83%,
            transparent 100%;

        
        --divider-image-aspect: 1.6;
        --divider-image-height: calc((100vw - 2rem) / var(--divider-image-aspect));

        
        --divider-above: 30px;
        --divider-below: 64px;

        

        .image {
            order: 1;
            width: 100%;
            display: flex;
            object-fit: cover;
            background-repeat: no-repeat;
            background-position: center;

            position: relative;
            overflow: visible;

            
            & figure {
                position: relative;
                z-index: 1;
            }

            &::before {
                content: '';
                position: absolute;

                
                left: -1rem;
                right: -1rem;

                top: calc(-1 * var(--divider-above));
                height: calc(var(--divider-above)
                    + var(--divider-image-height)
                    + var(--divider-below));

                background-image:
                    
                    linear-gradient(to top, var(--divider-ramp)),
                    
                    linear-gradient(var(--divider-grey), var(--divider-grey)),
                    
                    linear-gradient(to bottom, var(--divider-ramp));
                background-repeat: no-repeat;
                background-size:
                    100% var(--divider-above),
                    100% var(--divider-image-height),
                    100% var(--divider-below);
                background-position:
                    left 0 top 0,
                    left 0 top var(--divider-above),
                    left 0 bottom 0;
            }
        }

        .text {
            order: 0;
            width: 100%;
        }
        
    }

}

.logos {

    width: 100vw;

    margin: 0 0 2rem;
    padding: 0;

    
    .media-mobile & {
        margin-bottom: 0;
    }

    .slider {
        
        --slide-time: 90s;
    }

    .logo {

        display: flex;
        align-items: center;
        justify-content: center;

        
        margin: 0.8rem 1.25rem;
        padding: 0;

        & img {
            .media-mobile & {
                width: 60px;
                height: 30px;
            }
        }

    }

}



.slider {

    --slide-time: 30s;

    overflow: hidden;

    & img {
        
        transform: rotate(0.1deg);
    }

}

.slider-track {

    
    display: flex;
    width: max-content;

    animation: slider-scroll var(--slide-time) linear infinite;

    & > * {
        flex: 0 0 auto;
    }

    &.slide-right {
        animation-direction: reverse;
    }

}

@keyframes slider-scroll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}

@media (prefers-reduced-motion: reduce) {
    .slider-track {
        animation: none;
    }
}


.codehilite {




& pre { line-height: 125%; }
& td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
& span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
& td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
& span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
.hll { background-color: #ffffcc }
.c { color: #3D7B7B; font-style: italic } 
.err { border: 1px solid #FF0000 } 
.k { color: #008000; font-weight: bold } 
.o { color: #666666 } 
.ch { color: #3D7B7B; font-style: italic } 
.cm { color: #3D7B7B; font-style: italic } 
.cp { color: #9C6500 } 
.cpf { color: #3D7B7B; font-style: italic } 
.c1 { color: #3D7B7B; font-style: italic } 
.cs { color: #3D7B7B; font-style: italic } 
.gd { color: #A00000 } 
.ge { font-style: italic } 
.ges { font-weight: bold; font-style: italic } 
.gr { color: #E40000 } 
.gh { color: #000080; font-weight: bold } 
.gi { color: #008400 } 
.go { color: #717171 } 
.gp { color: #000080; font-weight: bold } 
.gs { font-weight: bold } 
.gu { color: #800080; font-weight: bold } 
.gt { color: #0044DD } 
.kc { color: #008000; font-weight: bold } 
.kd { color: #008000; font-weight: bold } 
.kn { color: #008000; font-weight: bold } 
.kp { color: #008000 } 
.kr { color: #008000; font-weight: bold } 
.kt { color: #B00040 } 
.m { color: #666666 } 
.s { color: #BA2121 } 
.na { color: #687822 } 
.nb { color: #008000 } 
.nc { color: #0000FF; font-weight: bold } 
.no { color: #880000 } 
.nd { color: #AA22FF } 
.ni { color: #717171; font-weight: bold } 
.ne { color: #CB3F38; font-weight: bold } 
.nf { color: #0000FF } 
.nl { color: #767600 } 
.nn { color: #0000FF; font-weight: bold } 
.nt { color: #008000; font-weight: bold } 
.nv { color: #19177C } 
.ow { color: #AA22FF; font-weight: bold } 
.w { color: #bbbbbb } 
.mb { color: #666666 } 
.mf { color: #666666 } 
.mh { color: #666666 } 
.mi { color: #666666 } 
.mo { color: #666666 } 
.sa { color: #BA2121 } 
.sb { color: #BA2121 } 
.sc { color: #BA2121 } 
.dl { color: #BA2121 } 
.sd { color: #BA2121; font-style: italic } 
.s2 { color: #BA2121 } 
.se { color: #AA5D1F; font-weight: bold } 
.sh { color: #BA2121 } 
.si { color: #A45A77; font-weight: bold } 
.sx { color: #008000 } 
.sr { color: #A45A77 } 
.s1 { color: #BA2121 } 
.ss { color: #19177C } 
.bp { color: #008000 } 
.fm { color: #0000FF } 
.vc { color: #19177C } 
.vg { color: #19177C } 
.vi { color: #19177C } 
.vm { color: #19177C } 
.il { color: #666666 } 



}

.reveal {
    transition: opacity 250ms cubic-bezier(0.33, 1, 0.68, 1),
                transform 250ms cubic-bezier(0.33, 1, 0.68, 1);
}

.has-reveal .reveal:not(.is-revealed) {
    opacity: 0;
    transform: translateY(2em);
}


.reveal.is-revealed {
    opacity: 1;
    transform: none;
    transition-delay: calc(var(--reveal-step, 0) * 90ms);
}


@media (prefers-reduced-motion: reduce) {

    .reveal,
    .has-reveal .reveal:not(.is-revealed) {
        opacity: 1;
        transform: none;
        transition: none;
    }
}

.video-container {
    
    width: min(1080px, 100vw);
    padding: 0 2rem;

    .video-js {
        
    }

    & video {
        box-shadow: 1rem 1rem 1rem 0 rgba(0, 0, 0, 0.25);
    }

    
    .vjs-play-progress {
        background-color: var(--logo-color-base);
    }

}





.route-reel main,
.route-production main {
    width: 100%;

    & > * {
        align-self: stretch;
    }
}


.media-stage-layout {

    display: grid;
    grid-template-columns: minmax(0, 2.2fr) minmax(260px, 1fr);
    gap: 1.5rem;
    align-items: start;

    margin-bottom: 2rem;

    
    .media-mobile & {
        grid-template-columns: minmax(0, 1fr);
        gap: 1rem;
    }

    .media-carousel {
        width: 100%;
        margin: 0;
    }

    
    .media-stage {
        aspect-ratio: 16 / 9;
        overflow: hidden;
        border-radius: 0.4rem;
        background: #000;
    }

    .media-video,
    .media-video video,
    .media-embed {
        width: 100%;
        height: 100%;
        max-height: none;
        border-radius: 0;
    }

    .media-stage img {
        max-height: 100%;
        border-radius: 0;
    }

}



.media-stage-layout .media-carousel {

    --strip-gap: 0.5rem;

    
    --thumb-wash: color-mix(in srgb, var(--logo-color-base) 25%, #808080);

    .media-thumbs {
        flex-wrap: nowrap;
        justify-content: flex-start;
        gap: var(--strip-gap);
        margin-top: 0.6rem;

        overflow-x: auto;
        scroll-behavior: smooth;
        scrollbar-width: none;

        &::-webkit-scrollbar {
            display: none;
        }
    }

    .media-thumb {

        position: relative;
        isolation: isolate;

        flex: 0 0 calc((100% - 3 * var(--strip-gap)) / 4);
        min-width: 0;

        border: 2px solid transparent;
        border-radius: 0.3rem;
        overflow: hidden;
        line-height: 0;

        & a {
            display: block;
            position: relative;
        }

        & img {
            width: 100%;
            height: auto;
            border-radius: 0.2rem;
            opacity: 1;
            box-shadow: none;
        }

        
        &:not(.active) a::after {
            content: '';
            position: absolute;
            inset: 0;
            border-radius: 0.2rem;

            background: var(--thumb-wash);
            mix-blend-mode: color;
            pointer-events: none;

            transition: opacity 150ms ease;
        }

        
        &:hover a::after,
        &:focus-within a::after {
            opacity: 0;
        }

        &.active {
            border-color: var(--logo-color);
        }

        & a:focus-visible {
            outline: 2px solid var(--logo-color);
            outline-offset: -2px;
        }

        
        .media-thumb-title {
            display: none;
        }

    }

    @media (prefers-reduced-motion: reduce) {
        .media-thumbs {
            scroll-behavior: auto;
        }
        .media-thumb a::after {
            transition: none;
        }
    }

}



.stage-info {

    
    .stage-title {
        margin: 0 0 0.3rem;
        font-size: 2rem;
        line-height: 1.1;
        text-align: left;

        & a {
            color: inherit;
            text-decoration: none;
        }
    }

    
    .slide-meta {
        list-style: none;
        margin: 0 0 0.9rem;
        padding: 0;

        > li {
            display: none;
        }

        > li.is-active {
            display: block;
        }
    }

    .slide-meta-title {
        font-weight: 500;
    }

    
    &:not(:has(.stage-title)) .slide-meta-title {
        margin: 0 0 0.9rem;
        font-size: 1.2rem;
        font-weight: 500;
        line-height: 1.2;
    }

    .slide-meta-description {
        margin-top: 0.4rem;
        font-size: 0.95rem;

        > :first-child {
            margin-top: 0;
        }

        > :last-child {
            margin-bottom: 0;
        }
    }

    
    .slide-meta-description.is-clamped {

        
        position: relative;

        --read-more-lines: 5;
        --read-more-line-height: 1.5;

        
        .read-more-toggle {
            position: absolute;
            width: 1px;
            height: 1px;
            margin: -1px;
            padding: 0;
            border: 0;
            overflow: hidden;
            clip-path: inset(50%);
        }

        .read-more-body {
            line-height: var(--read-more-line-height);
            max-height: calc(var(--read-more-lines) * var(--read-more-line-height) * 1em);
            overflow: hidden;
            mask-image: linear-gradient(to bottom, #000 55%, transparent 100%);

            
            > :first-child {
                margin-top: 0;
            }

            > :last-child {
                margin-bottom: 0;
            }
        }

        .read-more-toggle:checked ~ .read-more-body {
            max-height: none;
            mask-image: none;
        }

        .read-more-label {
            display: inline-block;
            margin-top: 0.5rem;
            font-size: 0.95rem;
            font-weight: 500;
            color: rgb(6, 6, 51); 
            cursor: pointer;

            &:hover {
                text-decoration: underline;
            }
        }

        
        .read-more-toggle:focus-visible ~ .read-more-label {
            outline: 2px solid currentColor;
            outline-offset: 3px;
        }

        
        .read-more-close,
        .read-more-toggle:checked ~ .read-more-label .read-more-open {
            display: none;
        }

        .read-more-toggle:checked ~ .read-more-label .read-more-close {
            display: inline;
        }

    }

    .stage-blurb {
        font-size: 0.95rem;

        > :first-child {
            margin-top: 0;
        }
    }

}


.headline-video {

    margin: 0 0 3em;

    .video-container {
        padding: 0;
    }

    & video {
        width: 100%;
        aspect-ratio: 16 / 9;
    }

}

.diff {
    background-color: rgb(255 214 0 / 0.35);
    outline: 2px dashed rgb(214 160 0);
    outline-offset: 2px;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
}


.review-badge {
    position: fixed;
    left: 1rem;
    bottom: 1rem;
    z-index: 1000;

    padding: 0.4em 0.8em;
    border-radius: 0.3em;
    font-size: 0.8rem;

    background-color: rgb(255 214 0);
    color: black;
    box-shadow: 0 2px 8px rgb(0 0 0 / 0.3);

    & a {
        color: inherit;
        text-decoration: underline;
        margin-left: 0.5em;
    }
}


.route-axiom {

    
    --axiom-ground:   #0F141A;
    --axiom-panel:    #171F28;
    --axiom-rule:     #2A3541;
    --axiom-ink:      #E6ECF3;
    --axiom-ink-soft: #9AA8B6;

    
    --axiom-accent: color-mix(in srgb, var(--logo-color-base) 78%, #fff 22%);

    background-color: var(--axiom-ground);

    
    & header::before {
        content: '';
        position: absolute;
        left: 0;
        right: 0;
        bottom: 100%;
        height: 16px;
        background-color: inherit;
    }

    & main {

        color: var(--axiom-ink);

        
        & a:not(.button) {
            color: var(--axiom-accent);
        }

        
        & h1 {
            font-weight: 300;
            color: var(--axiom-ink);
        }

        & h2, & h3 {
            color: var(--axiom-ink);
        }

        
        .cardpair .text {
            color: var(--axiom-ink);
        }

        
        .admonition {
            background: var(--axiom-panel);
            border: 1px solid var(--axiom-rule);
            border-left: 2px solid var(--axiom-accent);
            border-radius: 0.2rem;

            .admonition-title {
                color: var(--axiom-accent);
            }
        }

        
        .cta-trailer {
            background-color: var(--axiom-panel);
            border: 1px solid var(--axiom-rule);
            filter: none;

            
            .media-mobile & {
                background-color: transparent;
                border: 0;
            }
        }

    }

}


html:has(.route-axiom) {
    overflow-x: clip;
}

.route-axiom {

    
    & main > p {
        align-self: stretch;
    }

    
    .v2-glide {

        
        --glide-h: calc(100vw / 2.122);

        align-self: stretch;
        position: relative;

        margin-block: 0 3.5rem;

        .media-not-mobile & {
            width: 100vw;
            margin-inline: calc(50% - 50vw);

            
            padding-bottom: 0;
        }
    }

    .v2-glide-media {

        
        position: sticky;
        top: var(--masthead-height);

        
        height: var(--glide-h);


        overflow: hidden;

        & img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
        }

        
        .media-mobile & {
            position: static;

            
            aspect-ratio: auto;
            height: auto;
            max-height: none;

            & img {
                height: auto;
                object-fit: fill;
            }
        }
    }

    .v2-glide-panel {

        
        position: relative;
        z-index: 1;

        
        background-color: #fff;
        color: var(--fg-color);
        border-radius: 0.9rem;
        padding: 2rem 2.25rem;
        box-shadow: 0 1.2rem 2.4rem rgba(0, 0, 0, 0.45);

        .v2-lede-title {
            color: var(--fg-color);
        }

        
        .media-not-mobile & {
            position: absolute;
            top: calc(var(--glide-h) * 0.32);
            right: max(2rem, calc((100vw - 96rem) / 2));
            width: min(38rem, calc(100% - 4rem));
            margin: 0;
        }

        
        .media-mobile & {
            margin-top: -1.25rem;
        }

        & p {
            color: color-mix(in srgb, var(--fg-color) 78%, #fff);
            margin-bottom: 0;
        }
    }

    
    .v2-split {

        align-self: stretch;

        display: grid;
        grid-template-columns: 1fr 2fr;
        gap: 3.5rem;

        margin-block: 2.5rem 3.5rem;

        
        .media-not-mobile & {
            width: 100vw;
            margin-inline: calc(50% - 50vw);
            padding-inline: max(2rem, calc((100vw - 96rem) / 2));
        }

        
        .media-mobile & {
            display: block;
        }

    }

    
    .v2-split-lede {

        
        .media-not-mobile & {
            text-align: right;

            position: sticky;
            top: calc(var(--masthead-height) + 2rem);
            align-self: start;
        }

        
        .media-mobile & {

            position: sticky;

            
            top: calc(var(--masthead-height) - 1.25rem);

            
            z-index: 1;

            
            --tail: 2.75rem;

            background-image: linear-gradient(to bottom,
                var(--axiom-ground) 0,
                var(--axiom-ground) calc(100% - var(--tail)),
                color-mix(in srgb, var(--axiom-ground) 72%, transparent) calc(100% - var(--tail) * 0.62),
                color-mix(in srgb, var(--axiom-ground) 30%, transparent) calc(100% - var(--tail) * 0.28),
                transparent 100%
            );

            
            padding-block: 0.75rem calc(var(--tail) + 0.6rem);
            margin-bottom: 0;

            .v2-lede-title {
                font-size: 2rem;
                margin-bottom: 0.6rem;
            }

            & p {
                font-size: 0.95rem;
                line-height: 1.5;
                margin: 0;
            }

        }

        
        & p {
            color: var(--axiom-ink-soft);

            
            font-size: 1rem;
            line-height: 1.65;
        }
    }

    .v2-lede-title {
        
        font-size: clamp(2.6rem, 3.2vw, 4rem);
        line-height: 1.05;
        letter-spacing: -0.015em;
        text-wrap: balance;
        margin: 0 0 1.2rem;

        
        text-align: inherit;

        
        text-transform: none;
        font-weight: 300;
    }

    
    .v2-caps {
        text-transform: uppercase;
        letter-spacing: 0.01em;
    }

    .v2-points {

        list-style: none;
        margin: 0;
        padding: 0;

        display: grid;

        
        grid-template-columns: 1fr;
        gap: 2.25rem;

        align-items: start;

        .media-mobile & {
            gap: 1.75rem;
        }
    }

    
    .v2-point {
        --point-width: 60%;

        .media-not-mobile & {
            width: var(--point-width);
        }
    }

    .v2-point:nth-child(even) {

        .media-not-mobile & {
            margin-left: calc(100% - var(--point-width));
        }
    }

    
    .v2-point {
        display: grid;
        grid-template-columns: auto 1fr;
        gap: 0 1rem;
        align-items: start;
    }


    
    .icon-coin            { --icon-factor: 1.16; }
    .icon-recycle         { --icon-factor: 1.16; }
    .icon-film-reel-movie { --icon-factor: 1.1175; }
    .icon-team            { --icon-factor: 1.095; }
    .icon-chemistry       { --icon-factor: 1.035; }

    .v2-icon {

        
        --icon-base: 3.1rem;
        width: calc(var(--icon-base) * var(--icon-factor, 1));
        height: calc(var(--icon-base) * var(--icon-factor, 1));

        color: var(--axiom-accent);
        flex: none;

        
        margin-top: 0.15rem;
    }

    .v2-point-title {
        font-family: var(--title-font-family);
        font-weight: 600;
        font-size: 1.12rem;
        line-height: 1.25;
        color: var(--axiom-ink);
        margin: 0 0 0.4rem;
        text-align: left;
    }

    .v2-point p {
        margin: 0;
        color: var(--axiom-ink-soft);
        line-height: 1.55;
    }


    
}

.route-about {

    
    .media-mobile & h1 .h1-brand {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip-path: inset(50%);
        white-space: nowrap;
        border: 0;
    }

    & h2 {
        font-size: 2rem;
        text-transform: uppercase;
        text-align: center;
    }

    .principals {

        text-align: center;
        font-size: 1.5em;

        
        .media-mobile & {

            & strong {
                display: block;
            }

            & strong:not(:first-of-type) {
                margin-top: 0.6em;
            }

            & br {
                display: none;
            }

        }

    }

    #people {

        width: 90%;
        margin: 0 auto 0;
        padding: 0;

        list-style: none;
        
        display: grid;
        grid-template-columns: repeat(2, 1fr);

        & li {
            padding: 1rem;
        }

        & h3 {
            margin: 0;
        }

        .pronouns {
            margin: 0 0 0.3em;
        }

        .title {

            margin: 0 0 0.3rem;
            text-align: left;
            font-size: 0.9em;

            & strong {
                font-size: 1.1em;
            }

        }

        .avatar {

            border-radius: 7px;
            box-shadow: 2.5px 2.5px 7.5px rgba(0, 0, 0, 0.3);
            float: left;
            
            position: relative;
            margin: 0 1rem 0.5rem 0;

            width: 120px;
            height: 120px;
            overflow: clip;

            
            --staff-saturation: 0;
            --staff-light: 74;
            --staff-dark: 58;

            background-image: linear-gradient(to bottom,
                hsl(var(--staff-hue) var(--staff-saturation) var(--staff-light)),
                hsl(var(--staff-hue) var(--staff-saturation) var(--staff-dark))
            );

            & img {
                width: 100%;
                height: 100%;
            }

        }

        .tenure {
            font-size: 0.8em;
        }

        
        .media-not-mobile & .reveal:not(.is-revealed) {
            opacity: 1;
            transform: none;
        }

        
        .media-mobile & {

            

            width: auto;
            margin-left: 1rem;
            margin-right: 1rem;

            grid-template-columns: minmax(0, 1fr);
            row-gap: 1.6rem;

            & li {

                padding: 0;

                display: flex;
                gap: 1rem;
                align-items: flex-start;

                &:nth-child(even) {

                    flex-direction: row-reverse;
                    text-align: right;

                    
                    .title {
                        text-align: right;
                    }

                }

            }

            .avatar {

                
                float: none;
                margin: 0;

                
                flex: none;

                width: 116px;
                height: 116px;

            }

            .person-text {
                
                min-width: 0;
            }

            .pronouns {
                font-size: 0.9em;
            }

        }

    }


}.blog-calendar {
    margin-top: 1em;

    & tr:nth-child(even) {
        background-color: #f4f4f4;
    }

    & thead {
        
   
    }

    .year, .month {
        color: #888;
        font-size: 12px;
    }

    & td {
        
        width: 8%;
        text-align: center;
        padding: 0.5em;
    }

    & a {
        font-size: 18px;
    }
}

.blog-categories {
    margin: 0;
    padding: 0;

    & li {
        line-height: 1.2;
        display: inline-block;
        margin: 6px;
    }

    & li.tag-count-1 a {
        color: #888;
    }
}

.small-blog-posts {
    list-style: none;
    margin: 0;

    & > li {
        margin: 1em 0;
    }

    & ul {
        list-style: none;
        margin: 0;
        display: inline-block;

        & li {
            display: inline-block;
        }
    }
}

.small-blog-post {
    .title {
        font-weight: bold;
        line-height: 1em;
    }

    .subtitle {
        margin-left: 12px;
        font-size: 0.9em;
    }

    .meta {
        margin-left: 12px;
        font-size: 0.8em;
        color: #888;
    }
}

.path-blog {

    & main {
        width: 100%;
    }

    #next-link {
        font-size: 1.5em;
    }

}

.path-blog, .path-blog_index {
    & hr {
        border: none;
        border-top: 1px dashed #CCC;
        width: 100%;
    }
}

.path-blog_index h2 {
    font-size: 24px;
}

.blog-post {
    
    width: 100%;
    
    margin: 1em 0;
    padding: 1em 0;

    border-top: 1px dashed #ddd;

    .title {
        margin: 0 0 5px;
        font-size: 40px;
    }

    .subtitle {
        margin: 10px 0 5px;
        font-size: 1em;
        font-weight: bold;
    }

    .flag {
        font-size: 0.85em;

        &:before {
            content: "[ ";
        }

        &:after {
            content: " ]";
        }

        color: #A33;
        font-weight: bold;
    }

    .content {
        margin: 2em 0;
    }

    .the-fold {
        border: none;
        border-top: 1px dashed #ccc;
        margin: 2em 0;
        width: 100%;
    }

    .comment-link {
        display: block;
        margin-top: 5px;
    }

    .meta {
        font-size: 0.85em;
        font-style: italic;
        color: #aaa;
    }

    .permalink {
        font-size: 0.85em;
    }

    .tags {
        margin: 1em 0;

        & ul {
            display: inline-block;
            list-style: none;
            padding: 0;
            margin: 0;
        }

        & li {
            display: inline-block;
        }
    }

    .social img {
        margin: 0 0 0 2px;
        position: relative;
        top: 2px;
    }

}

#blog-index-link {
    float: right;
    margin-top: 1em;
}

#related-title, #comment-title {
    font-size: 1.5em;
    margin: 1em 0;
}

#comment-form-title {
    font-size: 1.25em;
    margin: 1em 0;
}

.comment-form {
    & p.error {
        font-size: 125%;
    }

    border-top: 1px dashed #BBB;
    padding-top: 1em;

    .required {
        display: none;
    }

    & label, .optional {
        text-transform: lowercase;
        margin: 0;
        font-size: 0.75em;
        font-style: italic;
        color: #555;
    }

    & input {
        width: 30% !important;
    }

    & textarea {
        width: 50% !important;
        height: 6em;
    }

    & button {
        font-size: 0.85em;
        margin: 1em 0 0;
    }

    & ol.errors li {
        font-weight: bold;
        font-style: normal;
    }

    
    .field-lastname {
        display: none;
    }
}

.blog-post.preview {
    .title {
        font-size: 2em;

        & a {
            text-decoration: none;
            color: #000;

            &:hover {
                text-decoration: underline;
            }
        }
    }

    .content {
        margin: 1em 0;
    }
}

ol#comments {
    margin: 0;
}

.comment {
    --avatar-size: 45px;
    --avatar-padding: 3px;
    --avatar-border: 1px;

    --padding: 10px;
    --content-left: calc(var(--avatar-size) + 2 * (var(--avatar-padding) + var(--avatar-border)) + 2 * var(--padding));

    position: relative;
    display: block;
    width: 600px;
    margin: 1em 0;
    padding: var(--padding);
    padding-left: var(--content-left);

    &.comment-child {
        margin-left: calc(var(--content-left) - var(--padding));
    }

    .avatar {
        position: absolute;
        left: var(--padding);
        border: 1px solid #BBB;
        padding: 3px;
        width: var(--avatar-size);
        height: var(--avatar-size);
        box-sizing: content-box;
    }

    .body p {
        margin-bottom: 0.4em;
        line-height: 1.25em;
        font-size: 0.8em;
    }

    .body :last-child {
        margin: 0;
    }

    .name {
        font-weight: bold;

        & a {
            font-weight: normal;
            font-style: italic;
            font-size: 0.85em;
        }
    }

    .parent-name {
        font-size: 0.8em;
        color: #555;
    }

    .flag {
        font-size: 0.85em;

        &:before {
            content: "[ ";
        }

        &:after {
            content: " ]";
        }

        color: #A33;
        font-weight: bold;
    }

    &.comment-admin {
        background-color: #FFF8DA;

        .flag {
            color: #DAAE00;
        }
    }

    .attribution {
        font-size: 0.7em;
        font-style: italic;
        color: #AAA;

        & img {
            position: relative;
            top: 3px;
        }

        & a {
            color: #BBB;

            &.comment-reply-button {
                font-weight: bold;
                color: #2a6496;
            }
        }
    }
}





.path-contact {
    
    padding: 0 2em;

    .media-mobile & {
        padding: 0;
    }

    background-color: var(--bg-color);
    color: var(--fg-color);

    margin-top: auto;

    & h2 {

        font-size: 2.5rem;

        text-align: center;
        & strong {
            font-weight: 800;
        }

        margin: 2rem 0 1rem;

    }

    
    .media-mobile & {

        & h2:has(+ .cardpair) {
            margin-bottom: 0;
        }

        & h2 + .cardpair {
            padding-top: 0;
        }

    }

    & p {
        text-align: center;
    }

    
    .media-not-mobile & .cardpair p {
        text-align: var(--text-align);
    }

    
    .tour-cta .button {
        margin-right: 0;
    }

    .dialog {

        
        text-align: left;
        --text-align: left;

        border: 0;
        border-radius: 1em;
        filter: drop-shadow(1em 1em 1em rgba(0,0,0,0.25));

        margin: 1em auto;
        
        &::backdrop {
            backdrop-filter: blur(0.1em);
        }

        & h2 {
            margin-top: 0;
        }

        .close-button {
            border: 0;
            background: none;
            position: absolute;
            top: 1rem;
            right: 1rem;
            font-size: 1.5rem;
        }
    
    }
}



.cardpair .location-map {

    width: 100%;
    max-width: none;
    margin: 0;

    border-radius: var(--corner-size) 0;

    
    overflow: hidden;

    & iframe {
        display: block;
        width: 100%;

        
        aspect-ratio: 16 / 9;
        border: 0;

        
        .media-mobile & {
            aspect-ratio: 4 / 3;
        }
    }

}


.cardpair.textfirst .location-map {
    border-radius: 0 var(--corner-size);
}


.address-list {

    color: var(--fg-color);

    

    text-align: left;
    
    & ul {
        margin: 0;
        padding: 0;
        display: inline-block;
        list-style: none;
        text-align: left;
    }

    & a {
        font-weight: 400;
        text-decoration: none;

        &:hover {
            text-decoration: underline;
        }
        
    }
    
    & p strong {
        font-weight: 300;
    }

    & address {
        font-style: normal;
        margin: 0.7rem 0;
        padding-left: 1.7rem;
        position: relative;
    }

    & svg.icon {
        position: absolute;
        left: 0;
        top: 0.2em;
        width: 1em;
        height: 1em;
    }

    & address.addr {
        margin-bottom: 1.5em;
    }

}





.contact-form {

    width: 500px;
    margin: 0 auto;

    .media-mobile & {
        width: auto;
    }

    .form-line {
        margin: 1rem 0;
    }

    & label, & input, & textarea, & button {
        display: block;
        width: 100%;
    }

    & label.checkbox {
        width: auto;
    }

    & input[type=checkbox] {
        width: auto;
        display: inline;
    }

    & label span.required {
        color: red;
    }

    & input, & textarea {

        margin: 0.4rem 0;
        padding: 0.3rem;

        border: 1px solid #ccc;
        border-radius: 2px;
        box-shadow: 2px 2px 4px 0 #ccc;
    }

    & textarea {
        height: 5rem;
    }

    & label {
        font-weight: 400;
    }

    & label.desc {
        font-weight: 300;
    }

    .field-website {
        
        display: none;
    }

}



.route-contact_submit {

    & h1, & h2, & p {
        text-align: center;
    }

}

.route-env_capture {

    .cardpair {

        align-items: center;

        
        --divider-image-aspect: 1.7778;

        .image {
            

            .video-container {

                width: 100%;
                aspect-ratio: 16 / 9;

                padding: 0;

                & video {
                    width: 100%;
                    box-shadow: none;
                }
                
            }

        }
    
    }

}


.route-events_primetime {

    & h2 {
        font-size: 2rem;
    }

    .headline {
        font-size: 1.5rem;
    }

    & main {

        width: 600px;

        .media-mobile & {
            width: auto;
        }
        
        & p, & ol {
            
        }
    }

    .contact-form {
        width: 100%;
    }
    
    & ol {
        margin: 1em auto;

        & li {
            margin: 0.5rem 0;
        }
    }
}.route-guide {

    
    & main > * {
        align-self: stretch;
    }

    
    .guide-layout {

        display: grid;
        grid-template-columns: 14rem 1fr;
        gap: 0 3rem;
        align-items: start;

        

        .media-mobile & {
            display: flex;
            flex-direction: column;

            
            align-items: stretch;
        }

    }

    
    .guide-page-title {

        text-align: left;
        font-size: 2rem;
        font-weight: 300;

        margin-top: 0.2em;
        margin-bottom: 0.8em;
        padding-bottom: 0.3em;
        border-bottom: 1px solid var(--gray-300);

    }

    .guide-content {
        
        min-width: 0;
    }

    .guide-nav {

        position: sticky;

        
        top: calc(var(--masthead-height) + 1rem);

        padding-right: 1rem;
        border-right: 1px solid var(--gray-300);

        font-size: 0.95rem;

        
        & > ul {
            display: block;
            min-width: 0;
            height: auto;
            margin: 0;
        }

        .guide-nav-section {
            font-size: 0.8rem;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.06em;
            color: var(--gray-600);
            margin: 1.4em 0 0.5em;
        }

        & > .guide-nav-section:first-child {
            margin-top: 0;
        }

        & ul {
            list-style: none;
            padding-left: 0;
            margin: 0;
        }

        & li {
            margin: 0.15em 0;
        }

        & a {
            display: block;
            padding: 0.3em 0.6em;
            border-left: 2px solid transparent;
            border-radius: 0.2em;
            text-decoration: none;

            &:hover {
                background: var(--gray-100);
                text-decoration: none;
            }
        }

        .is-current {
            font-weight: 600;
            border-left-color: var(--state-primary-color);
            background: var(--gray-100);
        }

        
        .media-mobile & {
            order: 2;

            position: static;
            padding-right: 0;
            padding-top: 1.5rem;
            border-right: none;
            border-top: 1px solid var(--gray-300);
            margin-top: 2.5rem;
        }

    }

    .media-mobile & .guide-content {
        order: 1;
    }

    .footnote {
        & hr {
            border-top: 1px dashed #ccc;
            border-bottom: none;
        }
    }

    .guide-contents {

        & ul {
            list-style: none;
            padding-left: 0;
        }

        & li {
            margin: 0.7em 0;
        }

    }

    
    .guide-pager {

        display: flex;
        gap: 1rem;

        margin-top: 3rem;
        padding-top: 1.5rem;
        border-top: 1px solid var(--gray-300);

        .is-next {
            margin-left: auto;
            text-align: right;
        }

    }

    .guide-pager-link {

        display: flex;
        flex-direction: column;
        gap: 0.2em;
        max-width: 45%;

        padding: 0.7em 1em;
        border: 1px solid var(--gray-300);
        border-radius: 0.3em;

        text-decoration: none;

        &:hover {
            border-color: var(--state-primary-color);
            text-decoration: none;
        }

    }

    .guide-pager-label {
        font-size: 0.8rem;
        text-transform: uppercase;
        letter-spacing: 0.06em;
        color: var(--gray-600);
    }

    .guide-pager-title {
        font-weight: 600;
    }

}

.route-home {


    
    & header {
        margin-bottom: 0;
    }

    .splash1 {

        position: relative;
        color: white;
        background-color: black;
        height: 750px;
        width: 100vw;
        overflow: hidden;

        box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.25);

        
        border-bottom: 1px solid #999;

        & video {
            position: absolute;
            left: 50%;
            transform: translateX(-50%);
            width: 2140px;
            top: 0;
            z-index: 0;

        }

        .tagline {

            position: relative;
            top: 50%;
            transform: translateY(-50%);

            margin: 0;

            & p {

                font-size: 3.5rem;
                text-align: center;
                    
                color: white;
                filter: drop-shadow(4px 4px 4px #000) drop-shadow(10px 10px 10px #000);
                
                & strong {
                    text-transform: uppercase;
                }

                .media-mobile & {
                    font-size: 1.5rem;
                }

            }

            .cta {
                text-align: center;
            }

            .button {
                color: white;
                text-transform: none;

                
                filter: drop-shadow(0 0 1rem #000A);
            }
        
        }

        
        .media-mobile & {

            height: 60vh;

            & video {
                width: auto;
                height: 60vh;
            }

        }

    }
       
    .intro {

        margin: 0 0 2rem -50px;
        padding: 2rem 0 0;
        
        width: 100%; 

        .media-mobile & {
            margin: 0 0 2rem;
        }

        background-color: var(--bg-color);
        color: var(--fg-color);

        
        
        

        & a {
            color: var(--fg-color);
        }

        & h2 {
            width: 100%;
            text-align: center;
            font-weight: 600;
            text-transform: uppercase;
            font-size: 1.8rem;
        }

        & p {

            width: 60%;
            margin: 1rem auto;

            .media-mobile & {
                width: 100vw;
                padding: 0 1rem;
            }

            text-align: center;

        }

        .logos {
            width: 100%;
        }
    
    }

    
    .intro.logos-heading {

        padding-top: 0;

        & h2 {
            margin-top: 0;
        }

        .media-mobile & {
            margin-bottom: 0;
        }

    }

    .splash2 {

        width: 100vw;
        margin: 2rem 0;

        

        .media-mobile & {
            margin-top: 1.5rem;
        }

        background-color: black;

        display: flex;
        justify-content: center;

        overflow: hidden;

        .media-mobile & img {
            width: 200vw;
            height: auto;
        }
    
    }

}


.route-login {

    & form {

        & label {
            display: inline-block;
            width: 10ex;
            margin: 0 1em;
            text-align: right;
        }

        & input.button {

            display: block;
            margin: 1em auto;
        }
    }
}

.productions-grid {

    display: grid;

    grid-auto-flow: row dense;

    --grid-cols: 6;
    --grid-col-width: 100px;
    --grid-gap: 20px;

    grid-template-columns: repeat(var(--grid-cols), minmax(var(--grid-col-width), 1fr));
    gap: var(--grid-gap);

    margin: 0;

    .production-create {
        grid-column: 1 / -1;
        justify-self: start;
    }

    
    .media-mobile & {

        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.6rem;

        .production-poster {
            grid-column: auto;
            grid-row: auto;
        }

        & img {
            width: 100%;
            height: auto;
            aspect-ratio: 1;
            object-fit: cover;
        }

        
        .title {
            font-size: 0.8rem;
            line-height: 1.2;
            right: 0.5em;
        }

    }

}

.production-poster {

    position: relative;

    --cols: 1;
    --rows: 1;

    grid-column: span var(--cols);
    grid-row: span var(--rows);

    & a {
        display: block;
        text-decoration: none;
    }

    & img {
        display: block;
        
        
        border-radius: 0.5em;
    }

    

    .flags {
        position: absolute;
        top: 0.5em;
        left: 0.5em;

        .flag {
            display: inline-block;
            margin-right: 0.25em;
            padding: 2px 6px;
            font-size: 0.75em;
            background: rgba(0, 0, 0, 0.7);
            color: #fff;
            border-radius: 3px;
        }
    }
}



.production-poster .title,
.production-neighbour .title {
    position: absolute;
    bottom: 0.3em;
    left: 0.5em;
    color: white;
    font-weight: 600;
    text-shadow: 0 0 0.25em #000;
}







.media-embed {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    border-radius: 4px;
    overflow: hidden;
}
.media-embed iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.media-video,
.media-video video {
    display: block;
    width: 100%;
}
.media-video video {
    max-height: 75vh;
    border-radius: 4px;
}

.media-stage img,
.media-single img {
    display: block;
    max-width: 100%;
    max-height: 75vh;
    width: auto;
    height: auto;
    margin: 0 auto;
    border-radius: 4px;
}


.media-caption {
    width: 75%;
    margin-top: 0.75rem;
    color: #666;
    font-style: italic;
    text-align: center;
}
.media-caption .media-title {
    font-weight: 600;
}
.media-caption .media-description {
    margin-top: 0.25rem;
}
.media-caption .media-description > :first-child {
    margin-top: 0;
}
.media-caption .media-description > :last-child {
    margin-bottom: 0;
}




.media-carousel {

    
    & template {
        display: none;
    }

    
    .media-viewport {
        position: relative;
    }

    .media-stage {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    
    .media-nav {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        z-index: 2;

        width: 2.75rem;
        height: 2.75rem;
        border-radius: 50%;

        background: #000;
        color: #fff;
        opacity: 0;

        font-size: 1.75rem;
        font-weight: bold;
        line-height: 1;
        text-decoration: none;
        cursor: pointer;

        display: flex;
        align-items: center;
        justify-content: center;

        transition: opacity 0.2s ease;
    }

    .media-viewport:hover .media-nav {
        opacity: 0.75;
    }
    .media-prev {
        left: 0.75rem;
    }
    .media-next {
        right: 0.75rem;
    }
    .media-prev::before {
        margin-top: -0.2rem;
        content: '\2039'; 
    }
    .media-next::before {
        margin-top: -0.2rem;
        content: '\203A'; 
    }

    
    .media-thumbs {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 1rem;
        margin-top: 1rem;
    }

    .media-thumb a {
        text-decoration: none;
    }

    .media-thumb img {
        display: block;
        border-radius: 0.5rem;
        opacity: 0.5;
        transition: opacity 0.2s ease, outline-color 0.2s ease;
    }
    
    .media-thumb.active img {
        opacity: 1;
        box-shadow: 0.2em 0.25em 0.2em #0008;
    }

    .media-thumb:hover img {
        opacity: 0.85;
    }

    .media-thumb.not-visible img {
        opacity: 0.25;
    }

    
    .media-thumb .crud-buttons {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 3;
        display: flex;
        gap: 2px;
        padding: 2px;
        background: rgba(0, 0, 0, 0.6);
    }

    .media-thumb .crud-buttons .button {
        flex: 1;
        min-width: 0;
        padding: 2px 4px;
        font-size: 0.6rem;
        line-height: 1.3;
        text-align: center;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .media-thumb-title {
        display: block;
        margin: 0.5em auto 0;
        text-align: center;
    }

}




.media-create {
    margin: 0.5rem 0 1.5rem;
    text-align: center;
}




.production-explore {

    
    margin-top: 2.5em;
    margin-bottom: 1.5em;

    
    text-align: left;
}

.production-explore h2 {
    margin-bottom: 0.75em;

    
    & a {
        color: inherit;
        text-decoration: none;

        &:hover, &:focus-visible {
            text-decoration: underline;
        }
    }
}


.production-neighbours {

    list-style: none;
    padding: 0;
    margin: 0;

    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;

    
    .media-mobile & {
        grid-template-columns: minmax(0, 1fr);
    }
}

.production-neighbour {

    
    position: relative;

    & a {
        display: block;
        position: relative;
        text-decoration: none;
    }

    & img {
        display: block;
        width: 100%;
        height: auto;
        border-radius: 0.5em;
    }
}



.posters {

    width: 100vw;

    margin: 0;
    padding: 0;

    
    --slide-time: 88s;

    & img {
        margin: 0.8rem 0.4rem;
        border-radius: 0.5rem;
    }

}


.route-productions {

    
    .intro {

        width: 100%;

        & h2 {
            width: 100%;
            text-align: center;
            font-weight: 600;
            text-transform: uppercase;
            font-size: 1.8rem;
        }

        & p {

            width: 60%;
            margin: 1rem auto;

            text-align: center;

            .media-mobile & {
                width: 100vw;
                padding: 0 1rem;
            }

        }

    }

}




.reels-kicker {
    margin: 0 0 -0.75rem;
    font-size: 0.85rem;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    text-align: center;
    color: var(--gray-600);
}


.route-reel .media-carousel .media-thumb .media-thumb-title {
    display: block;
    margin: 0;
    padding: 0.4rem 0.25rem 0.3rem;
    font-size: 0.85rem;
    line-height: 1.2;
    text-align: center;
    color: var(--fg-color);

    
    position: relative;
    z-index: 1;
    background: var(--bg-color);
}


.route-reel .media-carousel .media-thumb.active {
    border-color: transparent;
}

.route-reel .media-carousel .media-thumb.active img {
    outline: 2px solid var(--logo-color);
    outline-offset: -2px;
}

.route-reel .media-carousel .media-thumb.active .media-thumb-title {
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 0.25em;
}

.route-services {

    & h2 {
        font-size: 2.5rem;
        font-weight: 700;
        text-align: center;
        text-transform: uppercase;
    }

    .studio-image {
        
        .media-mobile & {
            overflow: hidden;
            width: 100vw;
        }

        & img {
            .media-mobile & {
                width: 200vw;
                height: auto;
                margin-left: -50vw;
            }
        }
    }

}




.tier-grid-scroll,
.tier-grid-after {

    
    --tier-label-width: 14.5rem;
    
    --tier-table-width: 80.5rem;

    
    --tier-spacing: 2px;

    
    --tier-slack: max(0px, calc(100% - var(--tier-table-width)));
    --tier-shift: min(calc(var(--tier-label-width) / 4), calc(var(--tier-slack) / 4));
    --tier-indent: max(0px, calc(var(--tier-slack) / 2 - var(--tier-shift)));

    
    --tier-gutter: 4rem;

    align-self: center;
    width: calc(100vw - var(--tier-gutter));
    margin-left: 0;
    margin-right: 0;

}

.tier-grid-scroll {

    
    margin-top: 0.75rem;
    margin-bottom: 0.5rem;

    
    overflow-x: auto;
    overscroll-behavior-x: contain;

}


.tier-grid-after > .tier-grid-legend,
.tier-grid-after > .tier-grid-notes {
    
    margin-left: calc(var(--tier-indent) + var(--tier-label-width) + 2 * var(--tier-spacing));
    width: min(
        calc(var(--tier-table-width) - var(--tier-label-width) + 5 * var(--tier-spacing)),
        calc(100% - var(--tier-indent) - var(--tier-label-width) - 2 * var(--tier-spacing))
    );
    box-sizing: border-box;
}

.tier-grid-hint {

    
    width: var(--tier-table-width);
    max-width: 100%;
    margin: 0 0 0.35rem var(--tier-indent);

    
    position: sticky;
    left: 0;

    font-size: 0.8rem;
    color: var(--gray-600);
    text-align: center;

    
    display: none;

    
    @media (max-width: 1352px) {
        display: block;
    }

}

.tier-grid {

    
    --tier-selected: color-mix(in srgb, var(--logo-color-base) 13%, transparent);
    --tier-selected-alt: color-mix(in srgb, var(--logo-color-base) 22%, transparent);

    
    width: var(--tier-table-width);
    margin-left: var(--tier-indent);
    margin-right: auto;

    
    table-layout: fixed;

    border-collapse: separate;
    border-spacing: var(--tier-spacing);

    font-family: var(--body-font-family);
    font-size: 0.95rem;
    text-align: center;

    
    font-variant-numeric: tabular-nums;

    & th, & td {
        padding: 0.6rem 0.5rem;
        vertical-align: middle;
    }

    
    & thead th {
        padding: 0;

        
        vertical-align: middle;
    }

    
    & tbody th[scope="row"] {
        position: sticky;
        left: 0;
        z-index: 1;

        
        padding-block: 0;

        padding-right: 1rem;

        background: var(--bg-color);
        text-align: right;
        font-family: var(--body-font-family);
        font-weight: 500;

        
        @media (max-width: 1000px) {
            box-shadow: 1px 0 0 var(--gray-300);
        }
    }

    & tbody tr:nth-child(even of :not(.tier-grid-label-row)) td {
        background: color-mix(in srgb, var(--logo-color-base) 4%, transparent);
    }

    
    & tbody td[data-tier] {
        background: var(--tier-selected);
    }

    & tbody tr:nth-child(even of :not(.tier-grid-label-row)) td[data-tier] {
        background: var(--tier-selected-alt);
    }

    
    & tbody tr:last-child td[data-tier] {
        border-radius: 0 0 0.5rem 0.5rem;
    }

}


.tier-grid-label-row {
    display: none;
}

.tier-grid-corner {

    
    width: var(--tier-label-width);

    
    position: sticky;
    left: 0;
    z-index: 2;
    background: var(--bg-color);

}

.tier-grid-head {

    
    width: 11rem;

    
    background: var(--tier-card-bg);
    border-radius: 0.5rem 0.5rem 0 0;
    box-shadow: 0 var(--tier-spacing) 0 var(--tier-card-bg);

    
    --tier-card-bg: var(--logo-color);

    font-family: var(--title-font-family);
    font-weight: 400;

    .tier-head-inner {
        padding: 0.75rem 0.5rem;
        color: #fff;
    }

    & a {
        
        color: inherit;
    }

    .tier-names {
        display: block;
    }

    
    .tier-name {
        font-size: 1.05rem;
        line-height: 1.2;
        text-wrap: balance;
        font-weight: 600;
    }

    .tier-blurb {
        display: block;

        font-family: var(--body-font-family);
        font-size: 0.75rem;
        font-weight: 300;
        line-height: 1.35;
        text-wrap: pretty;

        
        color: color-mix(in srgb, #fff 80%, var(--logo-color));

        padding-top: 0.35rem;

        
        & a {
            color: inherit;
            text-decoration: underline;
            text-underline-offset: 0.15em;

            &:hover, &:focus-visible {
                color: #fff;
            }
        }
    }

    
    &.is-addon {
        --tier-card-bg: color-mix(in srgb, var(--logo-color-base) 40%, #fff);

        .tier-head-inner {
            color: var(--logo-color);
        }

        .tier-blurb {
            color: var(--logo-color);
        }
    }

}

.tier-grid-price-row {

    
    & td {
        padding-top: 0.9rem;
        padding-bottom: 0.9rem;
    }

    .tier-price {
        font-family: var(--title-font-family);
        font-size: 1.5rem;
        font-weight: 400;
    }

    .tier-price-unit {
        
        display: block;

        font-size: 0.85rem;
        font-weight: 300;
        color: var(--gray-600);
    }

}


.tier-grid tbody th.has-caption {
    padding-top: 0.6em;
    padding-bottom: 0.6em;
}

.tier-grid-caption {
    display: block;
    margin-top: 0.2em;
    font-size: 0.75em;
    font-weight: normal;
    line-height: 1.3;
    opacity: 0.75;
}

.tier-grid-note-ref {
    font-size: 0.7rem;
    text-decoration: none;
}


.tier-grid tbody th > sup,
.tier-grid-label-row-text > sup {
    margin-left: 0.2em;
}


.tier-head-inner .tier-grid-note-ref {
    color: inherit;
}


.tier-grid tbody td {
    position: relative;

}

.tier-grid-cell-note {
    position: absolute;
    left: calc(50% + 0.8rem);
    top: calc(50% - 0.8rem);
}



.tier-grid sup:has(.tier-grid-note-ref) {
    line-height: 0;
}




.tier-mark {

    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 1.4rem;
    height: 1.4rem;

    
    vertical-align: middle;

    border: 1px solid var(--gray-400);
    border-radius: 0.25rem;

    color: #fff;
    font-size: 0.95rem;
    line-height: 1;

    
    &.is-yes {
        background: var(--gray-600);
        border-color: var(--gray-600);
    }

    
    &.is-carte {
        background: var(--gray-600);
        border-color: var(--gray-600);
    }

    &.is-no {
        background: transparent;
    }

    
    &.is-maybe {
        background: transparent;
        border-style: dashed;
        border-color: var(--gray-600);
        color: var(--gray-700);
    }

    &.is-ask {
        background: transparent;
        border-style: dashed;
        border-color: var(--gray-600);
        color: var(--gray-700);
        font-weight: 500;
        text-decoration: none;

        &:hover {
            background: var(--gray-200);
            text-decoration: none;
        }
    }

}


.tier-grid tbody td[data-tier].is-targeted {
    background: color-mix(in srgb, var(--logo-color-base) 30%, transparent);
}

.tier-grid tbody tr:nth-child(even of :not(.tier-grid-label-row)) td[data-tier].is-targeted {
    background: color-mix(in srgb, var(--logo-color-base) 40%, transparent);
}

.tier-grid thead th.is-targeted {
    box-shadow: 0 var(--tier-spacing) 0 var(--tier-card-bg), 0 0 0 3px var(--state-warning-color, #f5b301);
}


.tier-grid tbody .tier-mark.is-yes {
    background: var(--logo-color);
    border-color: var(--logo-color);
}

.tier-grid tbody .tier-mark.is-carte {
    background: var(--state-success-color);
    border-color: var(--state-success-color);
}

.tier-grid tbody .tier-mark.is-no {
    border-color: color-mix(in srgb, var(--logo-color) 45%, transparent);
}

.tier-mark-glyph {
    
    display: block;
    margin-top: -0.05em;
}


.tier-grid-legend {

    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.5rem 1.5rem;

    
    margin: 0.5rem 0 1rem;
    padding: 0;
    list-style: none;

    font-size: 0.9rem;

    & li {
        display: flex;
        align-items: center;
        gap: 0.4rem;
        margin: 0;
    }

    
    .tier-mark.is-carte {
        background: var(--state-success-color);
        border-color: var(--state-success-color);
    }

}

.tier-grid-notes {

    margin: 1rem 0;
    padding-left: 1.5rem;

    
    list-style-type: decimal;

    font-size: 0.85rem;
    color: var(--gray-700);

    & li {
        margin: 0.25rem 0;
    }

    
    .tier-grid-note-plain {
        list-style: none;
        padding-left: 0;
        margin: 0;
    }

}



.tier-grid-sr {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
}



.media-mobile .tier-grid-scroll {
    --tier-label-width: 0rem;
    --tier-table-width: 49.5rem;

    
    --tier-gutter: 0rem;

    
    padding-bottom: 0.6rem;
}


.media-mobile .tier-grid-after {
    align-self: stretch;
    width: auto;
    margin-left: 1rem;
    margin-right: 1rem;

    > .tier-grid-notes {
        margin-left: 0;
        width: auto;
    }

    
    > .tier-grid-legend {
        flex-direction: column;
        align-items: flex-start;
        width: fit-content;
        margin-left: auto;
        margin-right: auto;
    }
}

.media-mobile .tier-grid {

    font-size: 0.85rem;

    
    .tier-grid-head {
        width: 8.25rem;
    }

    
    .tier-grid-corner,
    & tbody th[scope="row"] {
        display: none;
    }

    .tier-grid-label-row {
        display: table-row;
    }

    
    .tier-grid-label-row th {
        
        padding: 0.45rem 0 calc(0.1rem - 1px);
        text-align: left;
        font-weight: 500;
        background: none;
    }

    & td:has(> .tier-mark) {
        padding-block: calc(0.6rem - 1px);
    }

    
    .tier-price-unit {
        display: inline;
    }

    
    .tier-grid-label-row-text {
        position: sticky;
        left: 0;
        display: inline-block;
        padding: 0 1rem;
    }

}


.media-mobile .section-title-tail {
    display: none;
}





.route-services .studio-image {

    width: 100vw;
    max-width: 100vw;
    margin-left: 0;
    margin-right: 0;

    & img {
        display: block;
        width: 100%;

        
        height: auto;
    }
}


.route-services .admonition {
    padding-top: 0.4rem;
}



.route-services .button:hover,
.route-services .button:focus-visible {

    background-image: linear-gradient(to top, var(--top-color), var(--bottom-color));

    
    box-shadow:
        inset 0 2px 4px rgba(0, 0, 0, 0.35),
        inset 0 -1px 0 rgba(255, 255, 255, 0.28);

    
    transform: translateY(1px);
}


.route-studio {

    
    & main a:not([class]) {
        color: inherit;
    }

    .studiodetails {
        display: block;
        flex-direction: column;
        width: 100%;
        margin: 1rem auto;
    }

    .floorplan {

        margin: 1rem auto;

        display: flex;
        justify-content: center;

        .media-mobile & {
            & img {
                width: 100vw;
                height: auto;
            }
        }

        
        position: relative;

    }

    
    .section-title {
        text-align: center;
        font-size: 2.8rem;
        font-weight: 200;
        text-transform: uppercase;
        margin-top: 2.5rem;
    }

    
    .stagedetails {
        width: 100%;
        margin: 1rem auto;
    }

    
    .stagephoto {

        --stagephoto-width: min(1267px, 100vw);
        width: var(--stagephoto-width);
        margin: 1rem calc((100% - var(--stagephoto-width)) / 2);

        & img {
            display: block;
            width: 100%;
            height: auto;
        }

    }

    .stagedetails h2 {
        margin: 0;
        font-weight: 400;
        text-align: center;
        font-size: 1rem;
    }

    
    .stage-specs {

        display: flex;
        justify-content: center;
        padding: 1rem 0;
        font-size: 0.85em;

        & ul {
            width: fit-content;
            max-width: 100%;
            margin: 0;
            padding-left: 1.1rem;
        }

        & li + li {
            margin-top: 0.3rem;
        }

        .media-mobile & {
            margin: 0 1rem;

            & ul {
                width: 100%;
            }
        }

    }

    
    .floorplan-lens {

        position: absolute;
        pointer-events: none;

        width: 200px;
        height: 200px;
        border-radius: 50%;

        background-repeat: no-repeat;
        background-color: var(--bg-color);

        
        border: 2px solid var(--state-primary-color);
        box-shadow:
            0 0 0 1px hsl(from var(--state-primary-color) h s calc(l - 18)),
            0 0.5rem 1.5rem rgba(0, 0, 0, 0.28);

        opacity: 0;
        transition: opacity 120ms ease-out;

        &.is-open {
            opacity: 1;
        }

        
        @media (prefers-reduced-motion: reduce) {
            transition: none;
        }

    }

    .studiodetails h2 {
        margin: 0;
        font-weight: 400;
        text-align: center;
        font-size: 1rem;
    }

    .featurelists {

        display: flex;
        margin: 0 1rem;
        padding: 1rem 0;
        font-size: 0.85em;
        
        & ul {
            width: 50%;
            margin: 0;
        }
    
        .media-mobile & {

            flex-direction: column;
    
            & ul {
                width: 100%;
                padding: 0 0 0 1rem;
            }

        }

    }

}
.route-tech {

    
    & main a:not([class]) {
        color: inherit;
    }

    
    .caps {
        text-transform: uppercase;
    }

    & h2 {
        font-size: 2.5rem;
        font-weight: 700;
        
        text-transform: uppercase;
        

        text-wrap: balance;
    }

}
