/* CTI · Sound & Fullscreen · 20261017. Locally served; no fonts or remote assets. */
.cti-video-console{--vc-gold:#e0c38a;--vc-ink:#f7f4ed;--vc-muted:#c1d0d3;--vc-panel:#102932;--vc-line:#446069;position:relative;min-width:0;background:#051319;color:var(--vc-ink);font-family:Arial,Helvetica,sans-serif;box-sizing:border-box}
.cti-video-console *{box-sizing:border-box}.cti-video-console [hidden]{display:none!important}
.cti-video-console .cti-video-toolbar{position:relative;z-index:2;padding:13px 22px 12px;background:linear-gradient(120deg,#16333c,#10272f);border-top:1px solid #aa91544a;flex:none}
.cti-video-console .cti-video-toolbar-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 10px;min-height:16px}
.cti-video-console .cti-video-brand{font:700 9px/1.4 Arial,sans-serif;letter-spacing:.16em;color:var(--vc-gold)}
.cti-video-console .cti-video-state{display:flex;align-items:center;gap:7px;text-align:right;font:400 11px/1.4 Arial,sans-serif;color:var(--vc-muted)}
.cti-video-console .cti-video-state::before{content:'';width:6px;height:6px;flex:none;border-radius:50%;background:#b1bac0}
.cti-video-console .cti-video-state[data-state=playing]::before{background:#88d3b1;box-shadow:0 0 0 3px #88d3b118}
.cti-video-console .cti-video-buttons{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.cti-video-console button.cti-video-button{display:flex;align-items:center;justify-content:center;gap:11px;min-width:0;min-height:54px;padding:12px 18px;margin:0;border:1px solid var(--vc-line);border-radius:10px;background:#1c3b45;color:var(--vc-ink);font:600 15px/1.3 Arial,Helvetica,sans-serif;text-transform:none;letter-spacing:0;text-decoration:none;white-space:normal;box-shadow:none;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease}
.cti-video-console button.cti-video-button::before,.cti-video-console button.cti-video-button::after{content:none}
.cti-video-console .cti-video-button span{min-width:0;overflow-wrap:break-word;text-align:center}
.cti-video-console .cti-video-button svg{display:block;width:22px!important;height:22px!important;min-width:22px;flex:none;color:inherit;transform:none!important;pointer-events:none;filter:none}
.cti-video-console button.cti-video-full{border-color:var(--vc-gold);background:var(--vc-gold);color:#10252d}
.cti-video-console button.cti-video-sound[data-state=off]{border-color:#d0b57d;background:#d0b57d19;color:#f3deb4}
.cti-video-console button.cti-video-sound[data-state=on]{border-color:#5c9b8b;background:#21483f;color:#e4f9ef}
.cti-video-console button.cti-video-button:hover{border-color:#f1d8a8;background:#264952}
.cti-video-console button.cti-video-full:hover{background:#efd7aa;color:#10252d}
.cti-video-console button.cti-video-button:focus-visible{outline:3px solid #fff;outline-offset:3px;box-shadow:0 0 0 6px #07212d}
.cti-video-console button.cti-video-button[aria-busy=true]{border-style:dashed}
.cti-video-console button.cti-video-resume{width:100%;min-height:48px;margin-top:10px;border-color:#9bb7c1;background:#17363f;font-size:14px}
.cti-video-console .cti-video-hint{font:400 11px/1.55 Arial,Helvetica,sans-serif!important;color:var(--vc-muted)!important;margin:9px 0 0!important;max-width:none!important;text-align:center;text-wrap:pretty}
/* Keep the console in view without covering Vimeo's own transport or captions. */
dialog.cti-video-enhanced{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#668087 #102932;max-height:calc(100vh - 28px);max-height:calc(100dvh - 28px)}
dialog.cti-video-enhanced .cti-video-stage{border-radius:0;box-sizing:border-box}
dialog.cti-video-enhanced .cti-video-console.has-player .cti-video-stage{min-height:0;max-height:52vh;max-height:52dvh}
dialog.cti-video-enhanced .cti-video-console .vm-player-shell{margin:0}
dialog.cti-video-enhanced .cti-video-console .vm-consent{margin:0}
dialog.cti-video-enhanced :is(.vh-close,.vm-close,.pv-close,.ctiv-close){min-width:46px;min-height:46px;flex-shrink:0;touch-action:manipulation}
/* Fullscreen applies to a div containing BOTH the frame and these controls. */
.cti-video-console:fullscreen{display:flex;flex-direction:column;width:100vw;height:100vh;height:100dvh;min-height:0;padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);background:#02090d;overflow:hidden}
.cti-video-console:-webkit-full-screen{display:flex;flex-direction:column;width:100vw;height:100vh;min-height:0;background:#02090d;overflow:hidden}
.cti-video-console.is-expanded{position:fixed;inset:0;z-index:20;display:flex;flex-direction:column;width:100vw;height:100vh;height:100dvh;min-height:0;padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);background:#02090d;overflow:hidden}
dialog.cti-video-expanded{position:fixed!important;inset:0!important;width:100vw!important;max-width:none!important;height:100vh!important;height:100dvh!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;overflow:hidden!important}
dialog.cti-video-expanded> :not(.cti-video-console){display:none!important}
.cti-video-console.is-native-full .cti-video-stage,.cti-video-console.is-expanded .cti-video-stage{flex:1 1 0%!important;min-height:0!important;max-height:none!important;height:auto!important;max-width:none!important;width:100%!important;aspect-ratio:auto!important;position:relative!important}
.cti-video-console.is-native-full>.vm-consent,.cti-video-console.is-expanded>.vm-consent{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;justify-content:center}
.cti-video-console.is-native-full .cti-video-toolbar,.cti-video-console.is-expanded .cti-video-toolbar{flex:0 0 auto;padding-inline:max(20px,env(safe-area-inset-left,0px));padding-bottom:12px}
.cti-video-console.is-native-full .cti-video-buttons,.cti-video-console.is-expanded .cti-video-buttons{max-width:820px;margin:0 auto}
.cti-video-console.is-native-full .cti-video-toolbar-heading,.cti-video-console.is-expanded .cti-video-toolbar-heading{max-width:820px;margin:0 auto 10px}
.cti-video-console.is-native-full .cti-video-resume,.cti-video-console.is-expanded .cti-video-resume{max-width:820px;margin-inline:auto}
@media(max-width:760px){
 dialog.cti-video-enhanced{width:calc(100vw - 16px)!important;max-width:calc(100vw - 16px);max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px);border-radius:13px}
 dialog.cti-video-enhanced :is(.vh-dialog-head,.vm-dialog-head,.pv-dialog-head,.ctiv-dialog-head){padding:12px 14px;gap:12px}
 dialog.cti-video-enhanced :is(.vh-dialog-head h2,.vm-dialog-head h3,.pv-dialog-head h2,.ctiv-dialog-head h2){font-size:20px;line-height:1.2;margin-block:4px}
 .cti-video-console .cti-video-toolbar{padding:12px 13px 11px}
 .cti-video-console .cti-video-buttons{gap:9px}
 .cti-video-console button.cti-video-button{min-height:54px;padding:11px 10px;font-size:14px;gap:8px;border-radius:9px}
 .cti-video-console .cti-video-hint{font-size:11px!important;margin-top:9px!important}
 .cti-video-console .cti-video-state{font-size:10px}
 dialog.cti-video-enhanced .cti-video-console.has-player .cti-video-stage{height:auto;aspect-ratio:16/9;max-height:none;min-height:0}
 dialog.cti-video-expanded{width:100vw!important;max-width:none!important;border-radius:0}
}
@media(max-width:360px){
 .cti-video-console button.cti-video-button{font-size:13px;gap:7px;padding-inline:8px}
 .cti-video-console .cti-video-toolbar{padding-inline:11px}
 dialog.cti-video-enhanced :is(.vh-dialog-head h2,.vm-dialog-head h3,.pv-dialog-head h2,.ctiv-dialog-head h2){font-size:18px}
}
@media(max-height:520px) and (orientation:landscape){
 dialog.cti-video-enhanced{max-height:calc(100dvh - 12px);width:calc(100vw - 20px)!important}
 dialog.cti-video-enhanced :is(.vh-dialog-head,.vm-dialog-head,.pv-dialog-head,.ctiv-dialog-head){padding:7px 14px;align-items:center}
 dialog.cti-video-enhanced :is(.vh-dialog-head h2,.vm-dialog-head h3,.pv-dialog-head h2,.ctiv-dialog-head h2){font-size:18px;line-height:1.15;margin:0}
 dialog.cti-video-enhanced :is(.vh-dialog-head .vh-kicker,.pv-dialog-head .pv-eyebrow,.pv-dialog-product,.vm-dialog-head .vm-kicker,.vm-dialog-head [data-vm-source]){display:none}
 dialog.cti-video-enhanced .cti-video-console.has-player .cti-video-stage{height:max(110px,calc(100dvh - 215px));max-height:none;min-height:0;aspect-ratio:auto}
 .cti-video-console .cti-video-toolbar{padding:9px 14px}
 .cti-video-console .cti-video-toolbar-heading{display:none}
 .cti-video-console button.cti-video-button{min-height:46px;padding-block:9px}
 .cti-video-console .cti-video-hint{margin-top:6px!important;font-size:10px!important}
 .cti-video-console.is-native-full .cti-video-stage,.cti-video-console.is-expanded .cti-video-stage{height:auto!important}
 dialog.cti-video-expanded{width:100vw!important;max-height:none!important}
}
@media(prefers-reduced-motion:reduce){.cti-video-console *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media(forced-colors:active){.cti-video-console button.cti-video-button{border:2px solid ButtonText;background:ButtonFace;color:ButtonText}.cti-video-console .cti-video-state::before{background:CanvasText}.cti-video-console .cti-video-hint{color:CanvasText!important}}
@media print{.cti-video-toolbar,dialog.cti-video-enhanced{display:none!important}}
