
.sf[data-v-da5633fa] {
  display: block;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

/* ── Design tokens ── */
.scanner[data-v-03639ce9] {
  --bg:      #0e0900;
  --surface: #1f1500;
  --border:  #3d2e00;
  --accent:  #fecb02;
  --warm:    #ffdc4e;
  --cool:    #fecb02;
  --danger:  #ff4d00;
  --text:    #fff8d6;
  --muted:   #7a5c00;
  --panel-bg:   #fecb02;
  --panel-text: #1a1100;

  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  width: 100%;
  padding: 16px;
  font-family: 'DM Mono', 'Fira Mono', 'Courier New', monospace;
  color: var(--text);
  background: transparent;
  min-height: 100dvh;
  justify-content: center;
}

/* ── Viewport ── */
.viewport[data-v-03639ce9] {
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100dvh;
  overflow: hidden;
  background: #000;
  z-index: 0;
}
.feed[data-v-03639ce9] {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.feed--live[data-v-03639ce9]    { transform: scaleX(-1);
}
.feed--canvas[data-v-03639ce9]  { transform: scaleX(-1);
}
.feed--playback[data-v-03639ce9]{ display: none;
}
.feed--playback.visible[data-v-03639ce9] { display: block;
}
.hidden[data-v-03639ce9] { display: none !important;
}

/* ── Countdown ── */
.countdown[data-v-03639ce9] {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: rgba(8,8,14,0.72);
  pointer-events: none;
  z-index: 10;
}
.countdown__num[data-v-03639ce9] {
  font-family: 'Syne', sans-serif;
  font-weight: 800;
  font-size: clamp(5rem, 18vw, 8rem);
  color: var(--accent);
  line-height: 1;
  text-shadow: 0 0 60px rgba(232,244,32,0.4);
  animation: pop-in-03639ce9 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}
@keyframes pop-in-03639ce9 {
from { transform: scale(0.4); opacity: 0;
}
to   { transform: scale(1);   opacity: 1;
}
}
.countdown__label[data-v-03639ce9] {
  font-size: 0.6rem;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--text);
  opacity: 0.65;
}

/* Countdown transition */
.count-enter-active[data-v-03639ce9], .count-leave-active[data-v-03639ce9] { transition: opacity 0.2s;
}
.count-enter-from[data-v-03639ce9],  .count-leave-to[data-v-03639ce9]      { opacity: 0;
}

/* ── REC badge ── */
.rec-badge[data-v-03639ce9] {
  display: none;
  position: absolute;
  top: 10px; left: 10px;
  padding: 4px 10px;
  border-radius: 100px;
  font-size: 0.56rem;
  letter-spacing: 0.14em;
  font-weight: 700;
  background: rgba(255,77,0,0.15);
  border: 1px solid rgba(255,77,0,0.5);
  color: var(--danger);
  pointer-events: none;
  z-index: 8;
  align-items: center;
  gap: 6px;
}
.rec-badge--live[data-v-03639ce9] { display: flex;
}
.rec-badge__dot[data-v-03639ce9] {
  width: 6px; height: 6px;
  border-radius: 50%;
  background: var(--danger);
  animation: blink-03639ce9 1s step-start infinite;
}
@keyframes blink-03639ce9 {
50% { opacity: 0;
}
}

/* ── Panels ── */
.panel[data-v-03639ce9] {
  position: fixed;
  bottom: 10%;
  left: 50%;
  transform: translateX(-50%);
  width: calc(100% - 32px);
  max-width: 460px;
  background: var(--panel-bg);
  border: none;
  border-radius: 14px;
  padding: 16px 20px;
  color: var(--panel-text);
  z-index: 20;
}
.panel--actions[data-v-03639ce9] { display: flex; gap: 10px; padding: 14px 20px;
}
.panel--rec[data-v-03639ce9]     { display: flex; flex-direction: column; gap: 10px;
}

/* Panel transition */
.panel-enter-active[data-v-03639ce9],
.panel-leave-active[data-v-03639ce9] {
  transition: opacity 0.22s ease, transform 0.22s cubic-bezier(0.25,0.46,0.45,0.94);
}
.panel-enter-from[data-v-03639ce9],
.panel-leave-to[data-v-03639ce9] {
  opacity: 0;
  transform: translateX(-50%) translateY(8px);
}
.panel-enter-to[data-v-03639ce9],
.panel-leave-from[data-v-03639ce9] {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

/* ── Meter ── */
.meter[data-v-03639ce9] {
  display: flex;
  align-items: center;
  gap: 12px;
}
.meter__label[data-v-03639ce9] {
  font-size: 0.56rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--panel-text);
  width: 46px;
  flex-shrink: 0;
}
.meter__track[data-v-03639ce9] {
  position: relative;
  flex: 1;
  height: 6px;
  background: rgba(0,0,0,0.2);
  border-radius: 3px;
  overflow: visible;
}
.meter__fill[data-v-03639ce9] {
  height: 100%;
  border-radius: 3px;
  transition: width 0.1s ease-out, background 0.3s;
}
.meter__threshold[data-v-03639ce9] {
  position: absolute;
  top: -3px;
  width: 1px;
  height: 12px;
  background: var(--muted);
  opacity: 0.5;
  transform: translateX(-50%);
}
.meter__val[data-v-03639ce9] {
  font-size: 0.68rem;
  font-weight: 500;
  width: 34px;
  text-align: right;
  transition: color 0.3s;
  color: var(--panel-text);
}

/* Meter color states */
.meter--hot[data-v-03639ce9]  { background: #1a1100;  color: #1a1100;
}
.meter--warm[data-v-03639ce9] { background: #ff4d00;  color: #ff4d00;
}
.meter--cold[data-v-03639ce9] { background: rgba(0,0,0,0.3); color: rgba(255,255,255,0.8);
}

/* ── Stats ── */
.stats[data-v-03639ce9] {
  display: flex;
  gap: 8px;
  margin-top: 12px;
}
.stat[data-v-03639ce9] {
  flex: 1;
  background: rgba(0,0,0,0.15);
  border: 1px solid rgba(0,0,0,0.1);
  border-radius: 8px;
  padding: 8px 10px;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.stat__label[data-v-03639ce9] {
  font-size: 0.46rem;
  letter-spacing: 0.13em;
  text-transform: uppercase;
  color: rgba(26,17,0,0.55);
}
.stat__val[data-v-03639ce9] {
  font-size: 0.88rem;
  font-weight: 500;
  color: var(--panel-text);
  font-family: 'Syne', sans-serif;
}

/* ── Rec panel ── */
.rec-header[data-v-03639ce9] {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.rec-header__label[data-v-03639ce9] {
  font-size: 0.56rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(26,17,0,0.55);
}
.rec-header__timer[data-v-03639ce9] {
  font-family: 'Syne', sans-serif;
  font-weight: 800;
  font-size: 1.1rem;
  color: #1a1100;
  font-variant-numeric: tabular-nums;
}
.rec-track[data-v-03639ce9] {
  height: 4px;
  background: rgba(0,0,0,0.2);
  border-radius: 2px;
  overflow: hidden;
}
.rec-track__fill[data-v-03639ce9] {
  height: 100%;
  background: var(--danger);
  border-radius: 2px;
  transition: width 0.25s linear;
}

/* ── Buttons ── */
.btn[data-v-03639ce9] {
  flex: 1;
  padding: 12px 10px;
  border: none;
  border-radius: 8px;
  font-family: 'Syne', sans-serif;
  font-weight: 700;
  font-size: 0.78rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  cursor: pointer;
  transition: transform 0.1s, opacity 0.18s;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}
.btn[data-v-03639ce9]:hover  { opacity: 0.86;
}
.btn[data-v-03639ce9]:active { transform: scale(0.97);
}
.btn--primary[data-v-03639ce9] { background: #1a1100;  color: var(--panel-bg);
}
.btn--ghost[data-v-03639ce9]   { background: rgba(0,0,0,0.15); color: var(--panel-text);
}
.btn--stop[data-v-03639ce9]    { background: #1a1100; color: var(--panel-bg); width: 100%;
}

/* ── Camera loader ── */
.cam-loader[data-v-03639ce9] {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 20px;
  background: #fecb02;
  z-index: 15;
}
.cam-spinner[data-v-03639ce9] {
  width: 40px;
  height: 40px;
  border: 3px solid rgba(255,255,255,0.3);
  border-top-color: #ffffff;
  border-radius: 50%;
  animation: spin-03639ce9 0.8s linear infinite;
}
@keyframes spin-03639ce9 {
to { transform: rotate(360deg);
}
}
.cam-loader__text[data-v-03639ce9] {
  font-family: 'Syne', sans-serif;
  font-weight: 700;
  font-size: 1rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #ffffff;
}
.fade-enter-active[data-v-03639ce9], .fade-leave-active[data-v-03639ce9] { transition: opacity 0.4s ease;
}
.fade-enter-from[data-v-03639ce9], .fade-leave-to[data-v-03639ce9]       { opacity: 0;
}

/* ── Toast ── */
.toast[data-v-03639ce9] {
  position: fixed;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  background: var(--accent);
  color: #1a1100;
  font-family: 'Syne', sans-serif;
  font-weight: 700;
  font-size: 0.7rem;
  letter-spacing: 0.1em;
  padding: 10px 24px;
  border-radius: 100px;
  z-index: 999;
  pointer-events: none;
  white-space: nowrap;
}
.toast-enter-active[data-v-03639ce9] { animation: toast-up-03639ce9 0.35s cubic-bezier(0.34,1.56,0.64,1);
}
.toast-leave-active[data-v-03639ce9] { animation: toast-up-03639ce9 0.2s ease reverse;
}
@keyframes toast-up-03639ce9 {
from { transform: translateX(-50%) translateY(30px); opacity: 0;
}
to   { transform: translateX(-50%) translateY(0);    opacity: 1;
}
}
* {box-sizing: border-box;border-collapse:collapse;}
html,body {background:#fecb02;color:#ffffff;min-height:100vh;-webkit-font-smoothing:antialiased;-webkit-overflow-scrolling:touch;overflow:hidden}
@font-face {
    font-family: 'SignikaNegativeRegular';
    src: url('/src/signikanegative-regular-webfont-CDmbFJQA.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}
@media screen and (orientation:landscape) {
    body{}
 }
input::-webkit-outer-spin-button,
 input::-webkit-inner-spin-button {
   -webkit-appearance: none;
   margin: 0;
 }
*, *:before, *:after {
   margin:0;padding:0;
   -webkit-touch-callout: unset;
   -webkit-touch-callout: none;
   user-select: none;
   -webkit-tap-highlight-color: rgba(255, 255, 255, 0) !important;
   -webkit-focus-ring-color: rgba(255, 255, 255, 0) !important;
   border-collapse: collapse;
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
   -webkit-user-select: none;
   user-select: none;
   list-style-type: none;
   outline: none;
   border: 0;
 }
html,body {
     width:100%; height:100vh;
     /* -webkit-overflow-scrolling: touch; */
 }
/* 	
     // these do not seem to work
     // hide in native code 
 */
::-webkit-scrollbar {
     display: none;
     background-color: transparent;
 }
::-webkit-scrollbar-track {
     /* -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.1); */
     background-color: transparent;
 }
::-webkit-scrollbar-thumb {
     /* -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3); */
     background-color: transparent;
 }
body {
     -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
     box-sizing: border-box;
     position:relative;
     overflow:scroll;
     font-family:'SignikaNegativeRegular', sans-serif;
     text-rendering: optimizeLegibility;
     -webkit-font-smoothing: antialiased;
     -moz-osx-font-smoothing: grayscale;
     /* 
     -webkit-perspective: 1200px;
     -moz-perspective: 1200px;
     perspective: 1200px; 
     */
 
     /* force gpu */
     /* 
     transform: translate3d(0,0,0);
     webkit-transform: translateZ(0);
     transform: translateZ(0); 
     */
 }
article#app {
     position:absolute;
     top:0;left:0;
     width:100%;
     height:100vh;
     /* Status bar height on iOS 10 */
     /* Status bar height on iOS 11.0 */
     /* padding-top: constant(safe-area-inset-top); */
     /* Status bar height on iOS 11+ */
     /* padding-top: env(safe-area-inset-top); */
 
     /* -webkit-backface-visibility: hidden;
     -moz-backface-visibility: hidden;
     backface-visibility: hidden;
     -webkit-transform: translate3d(0, 0, 0);
     -moz-transform: translate3d(0, 0, 0);
     transform: translate3d(0, 0, 0);
     -webkit-transform-style: preserve-3d;
     -moz-transform-style: preserve-3d;
     transform-style: preserve-3d; */
     z-index:100;
 }
article#app section {

     position:relative;
     width:100%;
     height:100%;
     min-height:100%;
     padding:0px;

     /* pointer-events: none;
     display: -webkit-flex;
     display: flex;
     -webkit-justify-content: center;
     justify-content: center;
     -webkit-align-items: center;
     align-items: center;
     -webkit-flex-direction: column;
     flex-direction: column;
     position:relative;
     height:inherit;
     width:inherit; */
 
 }
h1#logo{
     font-family:'FrutigerBold', arial;
     font-style: italic;
     background:#005EB8;
     color:#ffffff;
     width:auto;
     padding:12px 24px 2px 8px;
     font-size:60px;
     display: inline-block
 }
h2#headline{
     font-family:'Frutiger', arial;
     line-height:30px;
     font-size:20px;
     background:#ffffff;
     color:#005EB8;
     padding:15px;
     display:block;
     width:40%;
     margin:0 0 40px 0;
 }
span#standfirst{
     font-family:'Frutiger', arial;
     background:#005EB8;
     color:#ffffff;
     font-size:14px;
     display: block;
     line-height:18px;
     padding:8px;
     margin:0 0 12px;
 }
h5#credits {
     font-family:'FrutigerBold', arial;
     background:#005EB8;
     color:#ffffff;
     width:auto;
     padding:12px 8px 8px 8px;
     font-size:14px;
     display: inline-block;
     position:fixed;
     bottom:20px;
     right:20px;
 }
header {
    position:fixed;
    z-index:1005;
    height:70px;
    width: 100%;
    text-align:center;
    overflow:hidden;
    background:transparent;
    color:#ffffff;
  }
header label {
    height:80px;
    width:70px;
    position:fixed;
    top:0px;right:0;
    z-index:10016;
    width:60px;
    height:60px;
    cursor:pointer
  }
header label .menu {
    position: fixed;
    z-index:10015;
    right: -110px;
    top: -225px;
    width: 200px;
    height: 200px;
    background:#fecb02;
    color:#ffffff;
    border-radius: 50% 50% 50% 50%;
    /* -webkit-transition: .0s ease-in-out;
    transition: .0s ease-in-out; */
    box-shadow: 0 0 0 0 #336663, 0 0 0 0 #666;
    /* cursor: pointer;
    pointer-events:auto;
    transform: translate3d(0,0,0); */
    border-top:15px #666 solid;
  }
header label #hamburger {
    background-color:transparent;
    border-width:0;
  }
header label .hamburger {
    /* transform: translate3d(0,0,0); */
    position: absolute;
    z-index:10017;
    top: 238px;
    left: 45px;
    width: 30px;
    height: 2px;
    background:#ffffff;
    display: block;
    -webkit-transform-origin: center;
    transform-origin: center;
    /* -webkit-transition: .2s ease-in-out;
    transition: .2s ease-in-out; */
    pointer-events:none;
  }
header label .hamburger:after,
  header label .hamburger:before {
    /* transform: translate3d(0,0,0); */
    /* -webkit-transition: .2s ease-in-out;
    transition: .2s ease-in-out; */
    content: "";
    position: absolute;
    z-index:10017;
    display: block;
    width: 100%;
    height: 100%;
    background:#ffffff;
  }
header label .hamburger:before { top: -10px; }
header label .hamburger:after { bottom: -10px; }
header label input {display:none}
header label input:focus {border-width:0!important;--tw-ring-offset-width:0!important}
header label input:checked + .menu {
    box-shadow: 0 0 0 110vw #fecb02, 0 0 0 110vh #fecb02;
    pointer-events:none;
    border-radius: 0;
  }
header label input:checked + .menu .hamburger {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
header label input:checked + .menu .hamburger:after {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    bottom: 0;
  }
header label input:checked + .menu .hamburger:before {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    top: 0;
  }
header label input:checked + .menu { background:#666;pointer-events:none}
header label input:checked + .menu + ul {
    opacity:1;
    top:50%;
    left:50%;
    -webkit-transition: .0s .0s linear;
    transition: .0s .0s linear;
    /* display:block; */
    visibility: visible
  }
header label input:checked + .menu + ul + .MenuMask {opacity:1;bottom:-80px;left:0px}
header label ul {
    z-index:10016;
    position: fixed;
    left:50%;
    top:50%;

    /* transform: translate3d(0,0,0); */
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    /* opacity: 0; */
    /* -webkit-transition: .0s .0s linear;
    transition: .0s .0s linear; */
    /* pointer-events:none; */

    -webkit-transition: .0s .0s linear;
    transition: .0s .0s linear;
/* 
    -webkit-transition: .9s ease-in-out;
    transition: .9s ease-in-out; */
    opacity : 0;
    visibility: hidden;
    /* display:none; */
  }
header label ul {font-size:26px;line-height:33px}
header label ul li{margin:0 0 3px 0}
header label ul li p{text-align:center}
header label ul li p a{
      display:block;
      color:#ffffff;
      font-size:25px;
      text-decoration:none;
      line-height:32px;
  }
header .MenuMask {
    opacity:0;
    position:fixed;z-index:10015;bottom:-80px;left:-10000px;
    width:100%;height:100%;
    background:transparent;
    cursor:default
  }
body#home{overflow:hidden}
body#home section {
    padding:80px 0 0;
    height:auto;
}
body#home section h1 {
    font-size:66px;
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
}
@media screen and (max-width: 768px) {
    body#home section h1 {font-size:33px}
}
body#clients ul#mutuals {
  padding:0 0 160px
}
