/* TechTimeSols welcome loader. macOS-inspired, original site branding. */
.tts-welcome-boot{display:none}
html.tts-boot-on .tts-welcome-boot{
  display:flex!important;
  position:fixed!important;
  inset:0!important;
  z-index:2147482000!important;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  background-color:#081017;
  background-image:radial-gradient(ellipse 62% 43% at 50% 46%,rgba(0,213,232,.11),transparent 75%);
  color:#F4FBFF;
  font-family:"Plus Jakarta Sans",sans-serif !important;
  -webkit-font-smoothing:antialiased;
  text-align:center;
  overflow-y:auto;
  overscroll-behavior:contain;
  transition:opacity .58s ease,visibility .58s ease;
}
html.tts-boot-on.tts-boot-opening .tts-welcome-boot{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}
body.tts-welcome-locked{
  overflow:hidden!important;
  touch-action:none;
}
.tts-welcome-boot[hidden],.tts-welcome-audio-control[hidden],
.tts-welcome-boot .tts-boot-entry[hidden],.tts-welcome-boot .tts-boot-loading[hidden]{
  display:none!important;
}
.tts-welcome-boot *{box-sizing:border-box}
.tts-welcome-boot .tts-boot-grid{
  pointer-events:none;
  position:absolute;
  inset:0;
  opacity:.22;
  background:none;
}
.tts-welcome-boot .tts-boot-toolbar{
  position:absolute;
  top:0;left:0;right:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:22px clamp(20px,4vw,50px);
  color:#A9BDC7;
  font:600 10px/1.3 "Plus Jakarta Sans",sans-serif;
  letter-spacing:.15em;
}
.tts-welcome-boot .tts-boot-toolbar-dots{display:flex;gap:8px}
.tts-welcome-boot .tts-boot-toolbar-dots i{
  display:block;width:8px;height:8px;
  border-radius:50%;border:1px solid #29404A;
  background:#15212B;
}
.tts-welcome-boot .tts-boot-toolbar-dots i:first-child{background:#00D5E8;border-color:#00D5E8}
.tts-welcome-boot .tts-boot-shell{
  position:relative;
  z-index:1;
  width:min(500px,calc(100vw - 42px));
  margin:80px auto 76px;
  padding:clamp(29px,5vw,54px) clamp(22px,4vw,44px);
  border:1px solid #29404A;
  border-radius:20px;
  background:rgba(21,33,43,.73);
  -webkit-backdrop-filter:blur(22px);
  backdrop-filter:blur(22px);
  outline:none;
}
.tts-welcome-boot .tts-boot-shell::before{
  content:"";
  position:absolute;
  top:-1px;left:20%;right:20%;height:1px;
  background:#00D5E8;
  opacity:.78;
}
.tts-welcome-boot .tts-boot-avatar{
  display:grid;
  place-items:center;
  width:112px;height:112px;
  padding:18px;
  margin:0 auto 21px;
  border:1px solid #29404A;
  border-radius:24px;
  background:#081017;
  box-shadow:0 0 40px rgba(0,213,232,.09);
}
.tts-welcome-boot .tts-boot-avatar img{
  display:block;
  width:100%!important;height:100%!important;
  object-fit:contain;
  border-radius:14px;
}
.tts-welcome-boot .tts-boot-brand{
  margin:0 0 13px;
  font-size:12px;
  line-height:1.2;
  letter-spacing:.27em;
  font-weight:800;
  color:#00D5E8;
}
.tts-welcome-boot h2{
  color:#F4FBFF!important;
  font:800 clamp(26px,4.3vw,37px)/1.17 "Plus Jakarta Sans",sans-serif !important;
  letter-spacing:-.045em!important;
  margin:0 auto 14px!important;
  max-width:12ch;
}
.tts-welcome-boot #tts-welcome-description{
  font:400 14px/1.7 "Plus Jakarta Sans",sans-serif !important;
  color:#A9BDC7!important;
  margin:0!important;
}
.tts-welcome-boot .tts-boot-loading{
  margin:40px 0 5px;
  width:100%;
}
.tts-welcome-boot .tts-boot-progress{
  overflow:hidden;
  width:min(260px,100%);
  height:5px;
  border-radius:999px;
  background:#29404A;
  margin:0 auto 15px;
}
.tts-welcome-boot .tts-boot-progress>span{
  display:block;
  width:100%;
  height:100%;
  border-radius:999px;
  background:#00D5E8;
  transform:translateX(-100%);
  transform-origin:left center;
  animation:tts-boot-progress-bar 1.85s cubic-bezier(.19,.73,.24,1) forwards;
}
.tts-welcome-boot .tts-boot-loading p{
  margin:0!important;
  color:#A9BDC7!important;
  font:500 11px/1.5 "Plus Jakarta Sans",sans-serif !important;
  letter-spacing:.03em;
}
.tts-welcome-boot .tts-boot-ellipsis{letter-spacing:3px}
.tts-welcome-boot .tts-boot-entry{margin-top:30px}
.tts-welcome-boot .tts-boot-ready{
  display:flex;gap:9px;align-items:center;justify-content:center;
  font:700 10px/1.3 "Plus Jakarta Sans",sans-serif;
  color:#A9BDC7;
  letter-spacing:.16em;
  margin-bottom:20px;
}
.tts-welcome-boot .tts-boot-ready>span{
  width:7px;height:7px;border-radius:50%;
  background:#00D5E8;
}
.tts-welcome-boot .tts-boot-login{
  display:flex!important;align-items:center;justify-content:center;gap:20px;
  width:100%;min-height:54px;
  padding:15px 20px;
  border:1px solid #00D5E8!important;
  border-radius:999px!important;
  font:800 15px/1.3 "Plus Jakarta Sans",sans-serif !important;
  cursor:pointer;
  background:#00D5E8!important;
  color:#07121A!important;
  transition:transform .2s ease,background-color .2s ease;
}
.tts-welcome-boot .tts-boot-login:hover{transform:translateY(-2px);background:#F4FBFF!important}
.tts-welcome-boot .tts-boot-login:focus-visible,
.tts-welcome-boot .tts-boot-silent:focus-visible{
  outline:3px solid #F4FBFF!important;outline-offset:4px;
}
.tts-welcome-boot .tts-boot-arrow{font-size:23px;line-height:1}
.tts-welcome-boot .tts-boot-silent{
  display:inline-flex;
  justify-content:center;
  margin:16px auto 0;
  padding:6px 12px;
  border:0;
  background:transparent!important;
  color:#A9BDC7!important;
  font:600 12px/1.4 "Plus Jakarta Sans",sans-serif !important;
  text-decoration:underline;
  text-underline-offset:4px;
  cursor:pointer;
}
.tts-welcome-boot .tts-boot-silent:hover{color:#F4FBFF!important}
.tts-welcome-boot .tts-boot-hint{
  margin:18px auto 0!important;
  color:#A9BDC7!important;
  font:400 11px/1.5 "Plus Jakarta Sans",sans-serif !important;
}
.tts-welcome-boot .tts-boot-bottom{
  position:absolute;
  bottom:25px;left:20px;right:20px;
  color:#A9BDC7;
  font:500 11px/1.4 "Plus Jakarta Sans",sans-serif;
}
.tts-welcome-audio-control:not([hidden]){
  position:fixed!important;
  z-index:2147480!important;
  left:20px;bottom:22px;
  display:flex;align-items:center;
  padding:10px 17px!important;
  min-height:42px;
  border-radius:999px!important;
  border:1px solid #29404A!important;
  color:#F4FBFF!important;
  background:#15212B!important;
  font:700 12px/1.3 "Plus Jakarta Sans",sans-serif !important;
  cursor:pointer;
}
.tts-welcome-audio-control:hover{border-color:#00D5E8!important}
.tts-welcome-audio-control:focus-visible{outline:2px solid #00D5E8!important;outline-offset:3px}
@keyframes tts-boot-progress-bar{to{transform:translateX(0)}}
@media(max-width:767px){
  .tts-welcome-boot .tts-boot-toolbar{padding:17px 18px;font-size:9px}
  .tts-welcome-boot .tts-boot-toolbar-dots{gap:5px}
  .tts-welcome-boot .tts-boot-toolbar-dots i{width:7px;height:7px}
  .tts-welcome-boot .tts-boot-shell{
    margin:80px auto 62px;border-radius:20px;
    padding:32px 23px;
  }
  .tts-welcome-boot .tts-boot-avatar{width:90px;height:90px;padding:13px;margin-bottom:17px}
  .tts-welcome-boot .tts-boot-entry{margin-top:25px}
  .tts-welcome-boot .tts-boot-bottom{bottom:14px}
  .tts-welcome-audio-control:not([hidden]){left:12px;bottom:12px;font-size:11px}
}
@media(prefers-reduced-motion:reduce){
  .tts-welcome-boot *,
  .tts-welcome-boot::before,
  .tts-welcome-boot::after{animation:none!important;transition:none!important}
  html.tts-boot-on.tts-boot-opening .tts-welcome-boot{display:none!important}
  .tts-welcome-boot .tts-boot-progress>span{transform:none!important}
}
