.tm-overview-hero .tm-title span { display: block; }
.tm-overview-page #template-value .tm-pillar-label { margin-bottom: 36px; }
.tm-overview-page #template-value .tm-pillar { min-height: auto; padding-bottom: 32px; }
.tm-overview-page .tm-order-layout { grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr); }
.tm-overview-page .tm-order-copy { grid-column: 1; grid-row: 1; }
.tm-overview-page .tm-order-graphic { grid-column: 2; grid-row: 1; }
@media (max-width: 980px) {
  .tm-overview-page .tm-order-layout { grid-template-columns: 1fr; }
  .tm-overview-page .tm-order-graphic { grid-column: 1; grid-row: 2; }
}
.tm-overview-effect { grid-template-columns: 1fr; gap: 40px; }
.tm-overview-effect > .tm-complexity-card { order: 1; width: min(100%, 560px); margin: 0 auto; }
.ov-lifecycle-diagram { display: block; width: 100%; height: auto; overflow: visible; }
.tm-overview-hero-grid:has(.ov-correspondence-ring) { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.tm-overview-hero-grid:has(.ov-correspondence-ring) { row-gap: 24px; }
.ov-hero-copy { grid-column: 1; grid-row: 1; }
.tm-overview-hero-grid > .tm-actions { grid-column: 1; grid-row: 2; margin-top: 0; }
.tm-overview-hero-grid > .ov-correspondence-ring { grid-column: 2; grid-row: 1 / 3; }
@media (min-width: 981px) {
  .tm-overview-hero-grid:has(.ov-correspondence-ring) { row-gap: 28px; }
  .ov-hero-copy { align-self: end; }
  .tm-overview-hero-grid > .tm-actions { align-self: start; }
}
.ov-correspondence-ring { padding: 12px; border-radius: 28px; min-width: 0; }
.ov-correspondence-ring svg { width: 100%; height: auto; display: block; color: var(--tm-blue-bright); }
.ov-ring-arc { fill: none; stroke: var(--tm-blue-bright); stroke-width: 3; stroke-linecap: round; }
.ov-ring-label { fill: #eef6ff; text-anchor: middle; font-family: "Urbanist", sans-serif; font-size: 19px; font-weight: 600; }
.ov-ring-letter > rect:first-child { fill: #f4f7fc; stroke: #cbd8e6; }
.ov-ring-brand { fill: none; stroke: var(--tm-blue); stroke-width: 4; }
.ov-ring-letter text { fill: #34465c; font-family: "Urbanist", sans-serif; font-size: 10px; font-weight: 700; }
.ov-ring-lines { fill: none; stroke: #b9c9da; stroke-width: 5; stroke-linecap: round; }
.ov-ring-reference { fill: rgba(var(--tm-primary-rgb), .12); stroke: rgba(var(--tm-primary-rgb), .3); }
.ov-ring-signature { fill: none; stroke: #859bb2; stroke-width: 2; }
.ov-ring-check { fill: #159957; stroke: #fff; stroke-width: 3; }
.ov-ring-checkmark { fill: none; stroke: #fff; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
.ov-correspondence-ring p { margin: 0 0 12px; text-align: center; color: var(--tm-muted); font-size: 13px; }
@media (max-width: 980px) {
  .tm-overview-hero-grid:has(.ov-correspondence-ring) { grid-template-columns: 1fr; }
  .ov-correspondence-ring { width: min(100%, 560px); margin: 0 auto; }
  .tm-overview-hero-grid > .tm-actions { grid-column: 1; grid-row: 2; }
  .tm-overview-hero-grid > .ov-correspondence-ring { grid-column: 1; grid-row: 3; }
}
.ov-lifecycle { width: 100%; max-width: 1040px; margin: 0 auto; }
.ov-cycle-letter rect { fill: #f3f7fc; stroke: rgba(var(--tm-primary-rgb), .6); }
.ov-cycle-letter path { fill: none; stroke: #8fa8c1; stroke-width: 3; stroke-linecap: round; }
.ov-cycle-letter-label { fill: var(--tm-muted); font-family: "Urbanist", sans-serif; font-size: 14px; }
.ov-letter-platform use { fill: #f3f7fc; stroke: #93aec8; stroke-width: 2; }
.ov-platform-top { fill: rgba(var(--tm-primary-rgb), .25); stroke: var(--tm-blue-bright); stroke-width: 1.5; }
.ov-platform-front { fill: rgba(var(--tm-primary-rgb), .12); stroke: var(--tm-blue-bright); stroke-width: 1.5; }
.ov-letter-platform text { fill: #eef6ff; font-family: "Urbanist", sans-serif; font-size: 17px; font-weight: 600; text-anchor: middle; }
.ov-letter-platform .ov-platform-note { fill: var(--tm-muted); font-size: 13px; font-weight: 400; }
.ov-letter-platform--optional .ov-platform-top, .ov-letter-platform--optional .ov-platform-front { stroke-dasharray: 5 4; }
.ov-cycle-paths path { fill: none; stroke: var(--tm-blue-bright); stroke-width: 2.5; stroke-linecap: round; }
#ov-cycle-arrow path { fill: var(--tm-blue-bright); }
.ov-cycle-paths .ov-cycle-bypass { stroke-dasharray: 6 7; opacity: .6; }
.ov-cycle-node rect { fill: rgba(255, 255, 255, .055); stroke: rgba(var(--tm-primary-rgb), .45); stroke-width: 1.5; }
.ov-cycle-node--optional rect { stroke-dasharray: 6 5; }
.ov-cycle-node use { fill: none; stroke: var(--tm-blue-bright); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.ov-cycle-node text, .ov-cycle-center text { fill: #eef6ff; font-family: "Urbanist", sans-serif; font-size: 18px; font-weight: 600; text-anchor: middle; }
.ov-cycle-center rect { fill: rgba(var(--tm-primary-rgb), .14); stroke: rgba(var(--tm-primary-rgb), .55); }
.ov-cycle-center text { font-size: 22px; font-weight: 700; }
.ov-cycle-node .ov-cycle-note, .ov-cycle-center .ov-cycle-note { fill: var(--tm-muted); font-size: 13px; font-weight: 400; }
.ov-lifecycle-caption { margin: 12px 0 0; color: var(--tm-muted); font-size: 13px; line-height: 1.5; text-align: center; }
.ov-chaos-funnel { position: relative; height: 230px; overflow: hidden; }
.ov-chaos-orbit { position: absolute; left: 50%; transform: translateX(-50%) rotate(-8deg); border: 2px solid rgba(var(--tm-primary-rgb), .28); border-radius: 50%; }
.ov-chaos-orbit--one { width: 92%; height: 130px; top: 24px; }
.ov-chaos-orbit--two { width: 68%; height: 90px; top: 106px; transform: translateX(-50%) rotate(9deg); }
.ov-chaos-orbit--three { width: 32%; height: 50px; top: 174px; }
.ov-chaos-chip { position: absolute; padding: 9px 12px; border: 1px solid rgba(var(--tm-primary-rgb), .35); border-radius: 9px; background: rgba(30, 39, 59, .9); color: #eef6ff; font-size: 11px; box-shadow: 0 5px 14px rgba(0, 0, 0, .2); }
.ov-chaos-chip:nth-of-type(1) { top: 5px; left: 3%; transform: rotate(-7deg); }
.ov-chaos-chip:nth-of-type(2) { top: 12px; right: 5%; transform: rotate(7deg); }
.ov-chaos-chip:nth-of-type(3) { top: 66px; left: 12%; transform: rotate(4deg); }
.ov-chaos-chip:nth-of-type(4) { top: 112px; right: 2%; transform: rotate(-6deg); }
.ov-chaos-chip:nth-of-type(5) { top: 139px; left: 2%; transform: rotate(-5deg); }
.ov-chaos-chip:nth-of-type(6) { top: 178px; left: 39%; transform: rotate(5deg); }
.ov-chaos-engine { position: relative; width: fit-content; margin: 0 auto; padding: 10px 24px; border: 1px solid var(--tm-blue); border-radius: 999px; background: rgba(var(--tm-primary-rgb), .18); color: #fff; font-weight: 700; font-size: 16px; }
.ov-chaos-engine sup { font-size: .6em; }
.ov-chaos-arrow { text-align: center; color: var(--tm-blue-bright); font-size: 26px; line-height: 34px; }
.ov-chaos-letter { position: relative; width: 185px; margin: 0 auto; padding: 20px; border-radius: 6px; background: linear-gradient(145deg, #fff, #e7eef7); color: #25364a; box-shadow: 0 14px 32px rgba(0, 0, 0, .25); }
.ov-chaos-letter-brand { width: 22px; height: 18px; border: 4px solid var(--tm-blue); border-radius: 4px; margin-bottom: 9px; }
.ov-chaos-letter strong { font-size: 11px; }
.ov-chaos-letter-meta { width: 65%; height: 18px; margin: 12px 0; background: repeating-linear-gradient(to bottom, #bfccdc 0 3px, transparent 3px 8px); }
.ov-chaos-letter-reference { height: 24px; margin-bottom: 12px; border-left: 3px solid var(--tm-blue); background: rgba(var(--tm-primary-rgb), .1); }
.ov-chaos-letter-lines { height: 28px; margin-bottom: 9px; background: repeating-linear-gradient(to bottom, #bfccdc 0 3px, transparent 3px 8px); }
.ov-chaos-letter-signature { width: 40px; height: 10px; border-bottom: 2px solid #8599af; border-radius: 50%; }
.ov-chaos-letter-check { position: absolute; right: -10px; bottom: -10px; width: 30px; height: 30px; display: grid; place-items: center; border: 2px solid #fff; border-radius: 50%; background: #159957; color: white; font-weight: 700; }
.ov-workflow-pillars { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.ov-workflow-pillars > div { display: flex; flex-direction: column; align-items: center; justify-content: flex-start; gap: 12px; padding: 18px 8px; border: 1px solid rgba(var(--tm-primary-rgb), .3); border-radius: 14px; background: rgba(255, 255, 255, .05); text-align: center; }
.ov-pillar-mark { color: var(--tm-blue-bright); font-size: 12px; letter-spacing: .1em; }
.ov-workflow-pillars strong { color: #eef6ff; font-size: 13px; line-height: 1.4; }
.ov-workflow-converge { display: grid; grid-template-columns: repeat(3, 1fr); height: 36px; position: relative; margin: 0 16%; }
.ov-workflow-converge i { position: relative; height: 18px; border-left: 2px solid rgba(var(--tm-primary-rgb), .5); justify-self: center; }
.ov-workflow-converge i:first-child { justify-self: start; }
.ov-workflow-converge i:last-child { justify-self: end; }
.ov-workflow-converge::before { content: ""; position: absolute; left: 0; right: 0; top: 16px; border-top: 2px solid rgba(var(--tm-primary-rgb), .5); }
.ov-workflow-converge::after { content: ""; position: absolute; left: 50%; top: 16px; height: 20px; border-left: 2px solid rgba(var(--tm-primary-rgb), .5); }
.ov-workflow-curves { display: block; width: 100%; height: 60px; overflow: visible; }
.ov-workflow-curves path { fill: none; stroke: var(--tm-blue-bright); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
.ov-distribution-label { text-align: center; margin: 4px 0 12px; color: var(--tm-faint); font-size: 11px; text-transform: uppercase; letter-spacing: .12em; }
.ov-chaos-outcomes { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.ov-chaos-outcomes > span { padding: 12px 6px; border: 1px solid rgba(var(--tm-primary-rgb), .35); border-radius: 12px; background: rgba(var(--tm-primary-rgb), .08); color: var(--tm-blue-bright); text-align: center; font-size: 12px; }
.ov-chaos-outcomes strong { margin-left: 6px; color: #fff; }
.tm-overview-hero-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(380px, 1fr); gap: 56px; align-items: center; }
.ov-workflow { padding: 24px; border-radius: 28px; }
.ov-workflow-top { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 24px; color: var(--tm-faint); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.ov-workflow-dots { color: rgba(255, 255, 255, .3); letter-spacing: 3px; white-space: nowrap; }
.ov-workflow-inputs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.ov-workflow-inputs span { display: grid; place-items: center; padding: 12px 6px; border: 1px solid rgba(var(--tm-primary-rgb), .3); border-radius: 10px; background: rgba(var(--tm-primary-rgb), .08); text-align: center; color: #eef6ff; font-size: 12px; font-weight: 600; }
.ov-workflow-feed { text-align: center; color: var(--tm-blue-bright); font-size: 28px; padding: 8px 0; }
.ov-workflow-stages { display: grid; gap: 24px; margin: 0; padding: 0; list-style: none; }
.ov-workflow-stages li { position: relative; display: flex; align-items: center; gap: 16px; padding: 16px; border: 1px solid var(--tm-border); border-radius: 14px; background: rgba(255, 255, 255, .045); }
.ov-workflow-stages li:not(:last-child)::after { content: "↓"; position: absolute; left: 36px; top: 100%; color: var(--tm-blue-bright); font-size: 20px; line-height: 24px; }
.ov-workflow-icon { display: grid; place-items: center; flex-shrink: 0; width: 42px; height: 42px; border-radius: 11px; background: rgba(var(--tm-primary-rgb), .18); color: var(--tm-blue-bright); font-size: 24px; }
.ov-workflow-stages strong { display: block; margin-bottom: 5px; color: #fff; font-size: 17px; }
.ov-workflow-stages div > span { display: block; color: var(--tm-muted); font-size: 13px; line-height: 1.4; }
.ov-workflow-footer { margin-top: 24px; color: var(--tm-muted); font-size: 12px; line-height: 1.5; text-align: center; }
.ov-workflow-footer > span { color: #52d694; margin-right: 6px; }
@media (max-width: 980px) {
  .tm-overview-hero-grid { grid-template-columns: 1fr; gap: 32px; }
  .ov-workflow { width: min(100%, 560px); margin: 0 auto; }
}
@media (max-width: 520px) {
  .ov-workflow { padding: 18px; }
  .ov-workflow-top { font-size: 10px; letter-spacing: .03em; }
}
.tm-overview-row { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 56px; align-items: center; }
.tm-overview-row--reverse .tm-overview-copy { grid-column: 2; grid-row: 1; }
.tm-overview-row--reverse .tm-overview-image { grid-column: 1; grid-row: 1; }
.tm-overview-image { padding: 32px; border-radius: var(--tm-radius-lg); }
.tm-overview-image img { display: block; width: 100%; max-height: 320px; object-fit: contain; }
.tm-overview-page .gold { color: var(--tm-blue-bright); }
.tm-overview-features > .content, .tm-overview-contact > .container { width: min(1180px, calc(100% - 48px)); margin: 0 auto; padding: 0; max-width: none; }
.tm-overview-features .container, .tm-overview-features .content-items-container { width: 100%; max-width: none; padding: 0; margin: 0; display: block; }
.tm-overview-features .features-lists-container { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: 32px; }
.tm-overview-features .features-lists-columns { width: 100%; max-width: none; padding: 28px; border-radius: 20px; border-color: var(--tm-border); align-items: stretch; }
.tm-overview-features .column-title h2 { text-align: left; color: var(--tm-blue-bright); font-size: 22px; }
.tm-overview-features .features-lists { width: 100%; }
.tm-overview-features .features-lists li { font-size: 15px; line-height: 1.6; margin-bottom: 16px; }
.tm-overview-features .features-lists li::before { color: var(--tm-blue-bright); }
.tm-overview-contact .content-CalendlyWiget { margin: 0 0 28px; padding: 0; width: 100%; }
.tm-overview-contact .calendlyContainer { padding: 16px; border: 1px solid var(--tm-border); border-radius: 24px; background: var(--tm-glass); backdrop-filter: blur(18px); }
@media (max-width: 980px) {
  .tm-overview-row { grid-template-columns: 1fr; gap: 28px; }
  .tm-overview-row--reverse .tm-overview-copy, .tm-overview-row--reverse .tm-overview-image { grid-column: auto; grid-row: auto; }
  .tm-overview-image { width: min(100%, 520px); margin: 0 auto; }
  .tm-overview-features .features-lists-container { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  .tm-overview-features > .content, .tm-overview-contact > .container { width: calc(100% - 32px); }
  .tm-overview-image { padding: 24px; }
  .tm-overview-contact .calendlyContainer { padding: 0; overflow: hidden; }
  .tm-overview-contact .calendly-inline-widget { min-width: 0 !important; }
}
