:root {
  --dms-green: #86c021;
  --dms-green-deep: #5f8716;
  --dms-red: #c31917;
  --dms-ink: #232323;
  --dms-muted: #5f5f5f;
  --dms-surface: rgba(255, 255, 255, 0.94);
  --dms-border: rgba(134, 192, 33, 0.16);
  --dms-shadow: 0 16px 36px rgba(37, 45, 22, 0.08);
  --dms-radius-lg: 24px;
  --dms-radius-md: 18px;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: "Open Sans", Arial, sans-serif;
  color: var(--dms-ink);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
li,
a,
label,
button,
input,
select,
textarea {
  font-family: "Open Sans", Arial, sans-serif;
}

a,
button,
input,
select,
textarea {
  transition: all 0.2s ease;
}

a:hover,
a:focus {
  text-decoration: none;
}

#ttr_page {
  padding-top: 14px;
}

#ttr_menu {
  position: sticky;
  top: 10px;
  z-index: 1040;
  margin: 0 auto 18px;
  border: 0;
  background: transparent;
  box-shadow: none;
}

#ttr_menu_inner_in {
  max-width: 1220px;
  margin: 0 auto;
  padding: 0 14px;
}

#navigationmenu {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 18px;
  padding: 14px 20px;
  background: var(--dms-surface);
  border: 1px solid rgba(195, 25, 23, 0.08);
  border-radius: 26px;
  box-shadow: var(--dms-shadow);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.menuforeground {
  display: none;
}

.navbar-header {
  display: flex;
  align-items: center;
  float: none !important;
  margin: 0;
  min-height: 0;
  flex: 0 0 auto;
}

.navbar-brand {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: auto;
  padding: 0;
  margin: 0 !important;
  float: none !important;
  line-height: 1;
  position: static;
}

.ttr_menu_logo {
  display: block;
  width: auto;
  height: 58px !important;
  max-height: 58px;
  max-width: 180px;
  object-fit: contain;
}

.menu-center {
  margin-left: auto;
}

.navbar-collapse {
  padding-left: 0;
  padding-right: 0;
  border-top: 0;
  box-shadow: none;
}

.navbar-default .navbar-nav > li > a {
  padding: 11px 16px;
  border-radius: 999px;
  color: #354135;
  font-family: "Open Sans", Arial, sans-serif;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.01em;
}

.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
  color: var(--dms-red);
  background: rgba(195, 25, 23, 0.08);
}

.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:hover,
.navbar-default .navbar-nav > .active > a:focus {
  color: #ffffff;
  background: linear-gradient(135deg, var(--dms-green), var(--dms-red));
  box-shadow: 0 10px 18px rgba(129, 108, 22, 0.18);
}

.navbar-toggle {
  margin: 0 0 0 10px;
  padding: 10px 11px;
  border: 1px solid rgba(134, 192, 33, 0.24);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.95);
}

.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
  background: rgba(134, 192, 33, 0.08);
}

.navbar-default .navbar-toggle .icon-bar {
  width: 20px;
  height: 2px;
  border-radius: 999px;
  background-color: #384038;
}

.container,
.container-fluid {
  padding-left: 18px;
  padding-right: 18px;
}

.btn,
button,
input[type="submit"],
input[type="button"] {
  border-radius: 999px;
}

.form-control,
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
input[type="search"],
select,
textarea {
  border-radius: 14px;
}

input:focus,
select:focus,
textarea:focus,
button:focus {
  outline: none;
}

.whatsapp-float {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 1050;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 152px;
  padding: 14px 18px;
  border-radius: 999px;
  background: linear-gradient(135deg, #2bc55b, #159d45);
  color: #ffffff;
  font-family: "Open Sans", Arial, sans-serif;
  font-size: 16px;
  font-weight: 700;
  box-shadow: 0 16px 30px rgba(25, 118, 54, 0.28);
}

.whatsapp-float:hover,
.whatsapp-float:focus {
  color: #ffffff;
  transform: translateY(-2px);
}

.back-to-top {
  right: 22px !important;
  bottom: 92px !important;
  z-index: 1030;
  padding: 0 !important;
}

.back-to-top img {
  display: block;
  width: 44px;
  height: 44px;
}

#ttr_footer {
  margin-top: 24px;
}

#ttr_footer .ttr_footer_bottom_footer {
  background: linear-gradient(180deg, rgba(248, 245, 238, 1), rgba(255, 255, 255, 1));
  border-top: 1px solid rgba(134, 192, 33, 0.12);
}

#ttr_footer .post_column > div {
  height: 100%;
}

@media (max-width: 991px) {
  #ttr_menu {
    top: 6px;
  }

  #navigationmenu {
    align-items: center;
    padding: 12px 16px;
    border-radius: 20px;
  }

  .navbar-header {
    width: 100%;
    justify-content: space-between;
  }

  .menu-center {
    width: 100%;
    margin-left: 0;
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px solid rgba(134, 192, 33, 0.12);
  }

  .menu-center.collapse {
    display: none !important;
  }

  .menu-center.collapse.in {
    display: block !important;
  }

  .navbar-toggle {
    display: block !important;
    margin-left: auto;
  }

  .navbar-default .navbar-nav {
    float: none !important;
    margin: 0;
  }

  .navbar-default .navbar-nav > li {
    float: none;
    margin-bottom: 6px;
  }

  .navbar-default .navbar-nav > li > a {
    display: block;
    text-align: center;
  }
}

@media (max-width: 767px) {
  html {
    font-size: 15px;
  }

  body {
    font-size: 15px;
    line-height: 1.75;
  }

  p,
  li,
  label,
  td,
  th,
  .html_content,
  .html_content p,
  .post_column p,
  .post_column .tt_link {
    font-size: 15px !important;
    line-height: 1.75;
  }

  [class*="_html_column"],
  [class*="_html_column"] p,
  [class*="_html_column"] .tt_link,
  [class*="_html_row"] p,
  [class*="_html_row"] li {
    font-size: 15px !important;
    line-height: 1.75 !important;
  }

  h1 {
    font-size: 1.95rem;
  }

  h2 {
    font-size: 1.7rem;
  }

  h3 {
    font-size: 1.35rem;
  }

  .home-section-title span,
  .home-streams-title span {
    font-size: 1.65rem !important;
  }

  .additional-solution-title {
    font-size: 1.18rem !important;
    line-height: 1.25 !important;
  }

  .additional-solution-desc {
    font-size: 0.94rem !important;
    line-height: 1.75 !important;
  }

  #ttr_page {
    padding-top: 8px;
  }

  #ttr_menu_inner_in {
    padding: 0 10px;
  }

  #navigationmenu {
    gap: 10px;
    padding: 10px 12px;
    border-radius: 18px;
  }

  .menu-center {
    margin-top: 10px;
    padding-top: 8px;
  }

  .navbar-default .navbar-nav > li {
    margin-bottom: 4px;
  }

  .navbar-default .navbar-nav > li > a {
    padding: 10px 12px;
    font-size: 15px;
  }

  .ttr_menu_logo {
    height: 48px !important;
    max-height: 48px;
    max-width: 150px;
  }

  .whatsapp-float {
    right: 12px;
    bottom: 12px;
    min-width: 136px;
    padding: 12px 16px;
    font-size: 15px;
  }

  .back-to-top {
    right: 14px !important;
    bottom: 78px !important;
  }

  .back-to-top img {
    width: 40px;
    height: 40px;
  }

  input,
  select,
  textarea,
  button,
  .btn,
  input[type="submit"],
  input[type="button"] {
    font-size: 15px !important;
  }
}
