

html, body { margin: 0; padding: 0; background: #ffffff;
  font-family: Vitesse, 'Roboto Slab', Georgia, serif; -webkit-font-smoothing: antialiased; }
.page--tpl *, .page--tpl *::before, .page--tpl *::after { box-sizing: border-box; }
.page--tpl summary { list-style: none; cursor: pointer; }
.page--tpl summary::-webkit-details-marker { display: none; }
.page--tpl ::selection { background: #31302d; color: #fff; }
.page--tpl :focus-visible { outline: 2px solid #827f70; outline-offset: 2px; }
.page--tpl img { max-width: 100%; }

.page--tpl .tb-d:hover { background: #000000 !important; }
.page--tpl .tb-b:hover { background: #262523 !important; }
.page--tpl .tb-l:hover { color: #262523 !important; border-bottom-color: #262523 !important; }

.page--tpl details[open] > summary > span:last-child { transform: rotate(45deg); }
.page--tpl details > summary > span:last-child { transition: transform 180ms ease; display: inline-block; }

.page--tpl section[id] { scroll-margin-top: 90px; }


@media (max-width: 1023px) {

  .page--moh.page--tpl .t-topbar { padding: 9px 16px !important; font-size: 10.5px !important; gap: 14px !important; }

  
  .page--moh.page--tpl .t-hero > div:first-child { padding: 40px 16px 36px !important; gap: 22px !important; }
  .page--moh.page--tpl .t-hero-photo { min-height: 340px; margin-right: 0 !important; order: -1; }
  .page--moh.page--tpl .t-hero-fade { background: linear-gradient(0deg, #ffffff 0%, rgba(255,255,255,0) 30%) !important; }
  .page--moh.page--tpl .t-hero-product { width: 46% !important; max-width: 220px; left: 16px !important; bottom: 18px !important; }
  .page--moh.page--tpl .t-hero p { font-size: 17.5px !important; }

  
  .page--moh.page--tpl .t-tiles.t-tiles,
  .page--moh.page--tpl .t-keep2.t-keep2 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .page--moh.page--tpl .t-tiles > div { padding: 18px 12px 18px 0 !important; }

  .page--moh.page--tpl .t-trio { padding-left: 16px !important; padding-right: 16px !important; }
  .page--moh.page--tpl .t-trio-lead { padding: 48px 0 32px !important; }
  .page--moh.page--tpl div[style*="max-width:62%"] { max-width: none !important; }

  
  .page--moh.page--tpl .t-col { border-left: 0 !important; padding-left: 0 !important; padding-right: 0 !important;
    padding-top: 0 !important; padding-bottom: 40px !important; }
  .page--moh.page--tpl .t-approach-pic { min-height: 300px !important; flex: 1 1 100% !important; }

  .page--moh.page--tpl .t-step { padding: 26px 18px 28px !important; gap: 16px !important; }
  .page--moh.page--tpl .t-step p { font-size: 16.5px !important; }

  .page--moh.page--tpl .t-plan-art { position: relative !important; top: auto !important; right: auto !important;
    width: 100% !important; height: 150px !important; margin: 20px 0 -8px; }
  .page--moh.page--tpl .t-plan-art img { object-position: center !important; }
  .page--moh.page--tpl h3[style*="max-width:62%"],
  .page--moh.page--tpl p[style*="max-width:62%"],
  .page--moh.page--tpl span[style*="max-width:62%"] { max-width: none !important; }

  
  .page--moh.page--tpl .t-table .t-row > div { padding: 14px 16px !important; border-left: 0 !important; }
  .page--moh.page--tpl .t-table .t-row > div:first-child:empty { display: none; }

  .page--moh.page--tpl .t-price-row { flex-direction: column !important; align-items: flex-start !important; gap: 6px !important; }
  .page--moh.page--tpl .t-price-row > div:last-child { text-align: left !important; }

  .page--moh.page--tpl #faq h2 { font-size: clamp(28px, 7.2vw, 40px) !important; }
}

@media (min-width: 640px) and (max-width: 1023px) {
  .page--moh.page--tpl .t-g3.t-g3, .page--moh.page--tpl .t-g4.t-g4,
  .page--moh.page--tpl .t-g2.t-g2 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}


@media (min-width: 1024px) and (max-width: 1240px) {
  .page--tpl .t-g4 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}


@media (min-width: 1024px) and (max-width: 1280px) {
  .page--tpl .t-g5 { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}
@media (min-width: 640px) and (max-width: 1023px) {
  .page--moh.page--tpl .t-g5.t-g5 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}


#assess-modal, .overlay { font-family: Archivo, system-ui, -apple-system, "Segoe UI", sans-serif; }


@media (min-width: 1024px) and (max-width: 1359px) {
  .page--tpl .t-tiles[style*="repeat(5"] { grid-template-columns: repeat(3, 1fr) !important; }
  .page--tpl .t-tiles[style*="repeat(4"] { grid-template-columns: repeat(2, 1fr) !important; }
  .page--tpl .t-hero > div:first-child { padding-right: 28px !important; }
}
.page--tpl .t-tiles span { overflow-wrap: anywhere; }
