/* Custom overrides for tesisat.vizyontech.io */

/* Theme color hooks (set via admin settings and injected as CSS variables in the layout). */
.tt-list__color01 {
  color: var(--site-primary) !important;
}
.tt-list__color02 li:before {
  color: var(--site-accent) !important;
}
.table-price tr td:last-child {
  color: var(--site-primary) !important;
}
.tt-form__control:focus {
  border-color: var(--site-primary) !important;
}
.custom-select:after {
  border-color: var(--site-primary) transparent transparent !important;
}
.mainslider__wrapper:before {
  background-color: var(--site-accent) !important;
}
.tt-back-to-top {
  color: var(--site-accent) !important;
}
.tt-back-to-top:hover {
  color: var(--site-primary) !important;
}
.tt-modal__close {
  background-color: var(--site-accent) !important;
}

/* Rich text rendering (TinyMCE content, seeded HTML, etc.)
   Theme resets all UL/OL styles globally, so we re-enable them inside
   a scoped container. */
.site-richtext {
  color: #2b3137;
  line-height: 1.75;
}

.site-richtext > :first-child {
  margin-top: 0;
}

.site-richtext > :last-child {
  margin-bottom: 0;
}

.site-richtext p {
  margin: 0 0 14px;
}

.site-richtext h2,
.site-richtext h3,
.site-richtext h4 {
  color: var(--site-primary);
  font-family: Mulish, Inter, system-ui, -apple-system, Segoe UI, Arial, sans-serif;
  font-weight: 800;
  line-height: 1.25;
  margin: 26px 0 12px;
}

.site-richtext h2 { font-size: 26px; }
.site-richtext h3 { font-size: 20px; }
.site-richtext h4 { font-size: 17px; }

.site-richtext a {
  color: var(--site-primary);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.site-richtext a:hover {
  color: var(--site-accent);
}

.site-richtext ul,
.site-richtext ol {
  padding-left: 22px;
  margin: 0 0 14px;
}

.site-richtext ul { list-style: disc; }
.site-richtext ol { list-style: decimal; }

.site-richtext li {
  margin: 6px 0;
}

.site-richtext strong {
  color: #101418;
}

.site-richtext blockquote {
  margin: 18px 0;
  padding: 14px 16px;
  border-left: 4px solid var(--site-accent);
  background: #f8f8fa;
}

.site-richtext img,
.site-richtext video,
.site-richtext iframe {
  max-width: 100%;
  height: auto;
}

.site-richtext table {
  width: 100%;
  border-collapse: collapse;
  margin: 18px 0;
  background: #fff;
}

.site-richtext th,
.site-richtext td {
  border: 1px solid #e7e9ee;
  padding: 10px 12px;
  vertical-align: top;
}

.site-richtext th {
  background: #f8f8fa;
  color: #101418;
  font-weight: 800;
}

/* Page title banners: ensure background image stretches full width on large screens. */
.tt-pagetitle__img {
  display: block;
  /* .tt-pagetitle has padding on all breakpoints; bleed the image into that padding
     so the banner looks full-bleed (no “small banner” effect on wide screens). */
  top: -40px;
  right: -40px;
  bottom: -40px;
  left: -40px;
  inset: -40px;
}
.tt-pagetitle__img img {
  object-position: center;
}

@media (max-width: 1024.98px) {
  .tt-pagetitle__img {
    top: -25px;
    right: -25px;
    bottom: -25px;
    left: -25px;
    inset: -25px;
  }
}

@media (max-width: 767.98px) {
  .tt-pagetitle__img {
    top: -15px;
    right: -15px;
    bottom: -15px;
    left: -15px;
    inset: -15px;
  }
}

/* The theme expects an SVG + text logo positioned absolutely.
   We switched to a single raster logo image, so we constrain size and
   let it participate in normal layout to avoid oversized rendering. */
.tt-obj-logo .tt-logo {
  position: static;
}

.tt-logo__img {
  display: block;
  height: 64px; /* default desktop header height is ~100px */
  width: auto;
  max-width: 360px;
}

.sticky-header .tt-logo__img {
  height: 54px;
}

@media (max-width: 1024.98px) {
  .tt-logo__img {
    height: 54px;
    max-width: 320px;
  }
  .sticky-header .tt-logo__img {
    height: 46px;
  }
}

@media (max-width: 767.98px) {
  .tt-logo__img {
    height: 42px;
    max-width: 260px;
  }
  .sticky-header .tt-logo__img {
    height: 40px;
  }
}
