.uptime-hero { display: grid; grid-template-columns: 1.2fr 0.85fr; gap: 65px; align-items: center; padding-block: 70px 85px; }
.uptime-hero > div { min-width: 0; }
.uptime-hero h1 { font-size: clamp(62px, 7.5vw, 104px); margin-block: 25px; }
.uptime-hero h1 em { z-index: 0; }
.uptime-hero h1 em::after { width: 100%; }
.uptime-lede { max-width: 480px; color: #55504e; font-size: 17px; line-height: 1.75; }
.uptime-lede strong { color: var(--ink); }
.uptime-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 22px; margin-top: 28px; }
.text-link, .back-home { font-size: 12px; font-weight: 700; text-underline-offset: 5px; }
.editorial-note { max-width: 455px; margin-top: 20px; color: #68615c; font-size: 11px; line-height: 1.7; }
.uptime-ticket { min-width: 0; border: var(--line); border-radius: 10px; background: #ffcfb8; box-shadow: 9px 9px 0 var(--ink); }
.ticket-top, .ticket-bottom { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 18px 24px; font-size: 9px; font-weight: 700; letter-spacing: 1px; }
.ticket-top { border-bottom: var(--line); }
.ticket-top > span:last-child { font-size: 28px; line-height: 1; }
.ticket-body { padding: 32px 28px; }
.ticket-label { font-size: 8px; letter-spacing: 1.1px; font-weight: 700; }
.ticket-product { display: flex; justify-content: space-between; gap: 10px; font-size: clamp(35px, 4vw, 54px); font-weight: 900; letter-spacing: -3px; margin-top: 10px; }
.ticket-tagline { font-size: clamp(32px, 3.4vw, 47px); line-height: 1.05; font-weight: 900; letter-spacing: -2px; margin-block: 25px 20px; }
.ticket-body > p:last-child { max-width: 300px; font-size: 13px; line-height: 1.75; }
.ticket-bottom { border-top: 2px dashed #221f2070; font-size: 8px; }
.signal-art { display: flex; gap: 6px; height: 64px; margin-block: 25px; }
.signal-art span { flex: 1; border: var(--line); border-radius: 3px; background: var(--lime); }
.signal-art span:nth-child(3n) { background: var(--purple); }
.signal-art span:nth-child(4n) { background: var(--paper); }
.uptime-divider { border-block: var(--line); background: var(--lime); }
.uptime-divider > div { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px; padding-block: 20px; font-size: 11px; font-weight: 900; letter-spacing: 0.6px; }
.uptime-divider span:nth-child(2) { font-size: 24px; color: var(--purple); }
.uptime-comparison { padding-block: 80px 40px; }
.uptime-page .section-heading { margin-bottom: 25px; }
.uptime-page .section-heading h2 { font-size: clamp(40px, 5vw, 68px); }
.section-intro { max-width: 750px; font-size: 15px; line-height: 1.8; color: #55504e; margin-bottom: 30px; }
.table-hint { display: none; font-size: 11px; margin-bottom: 12px; color: #68615c; }
.comparison-scroll { overflow-x: auto; border: var(--line); border-radius: 9px; }
.comparison-table { width: 100%; min-width: 660px; border-collapse: collapse; table-layout: fixed; text-align: left; }
.comparison-table caption { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.criterion-column { width: 24%; }
.sandglass-column { width: 38%; background: #edf3cb; }
.comparison-table th, .comparison-table td { padding: 24px; vertical-align: top; border-bottom: var(--line); }
.comparison-table th + th, .comparison-table td { border-left: var(--line); }
.comparison-table thead th { vertical-align: bottom; font-size: 29px; letter-spacing: -1px; padding-block: 28px; }
.comparison-table thead th:first-child { font-size: 12px; letter-spacing: 0; }
.comparison-table thead th:nth-child(2) { background: var(--lime); }
.table-pick { display: block; margin-bottom: 14px; font-size: 9px; letter-spacing: 1.2px; }
.table-domain { display: block; font-size: 11px; letter-spacing: 0; font-weight: 400; margin-top: 7px; }
.comparison-table tbody th { font-size: 13px; line-height: 1.7; }
.comparison-table td { font-size: 13px; line-height: 1.75; }
.comparison-table tbody tr:last-child > * { border-bottom: 0; }
.row-verdict { display: block; margin-bottom: 12px; font-size: 9px; font-weight: 700; letter-spacing: 0.8px; color: #4e2db2; }
.comparison-table a, .workflow-list a, .fair-play a { color: #4e2db2; text-underline-offset: 3px; }
.comparison-fine-print { max-width: 860px; margin-top: 18px; font-size: 11px; line-height: 1.8; color: #68615c; }
.uptime-budget { display: grid; grid-template-columns: 1fr 0.9fr; align-items: center; gap: 70px; padding-block: 35px 80px; }
.uptime-budget h2 { font-size: clamp(42px, 5vw, 68px); line-height: 1.05; margin-block: 22px; }
.uptime-budget > div > p:not(.eyebrow) { max-width: 470px; font-size: 15px; line-height: 1.8; color: #55504e; }
.budget-receipt { border: var(--line); border-radius: 8px; padding: 32px; background: #fffdf4; box-shadow: 6px 6px 0 #221f2015; }
.budget-receipt dl { margin-block: 25px; }
.budget-receipt dl > div { display: flex; justify-content: space-between; align-items: baseline; gap: 15px; padding-block: 14px; font-size: 13px; line-height: 1.5; }
.budget-receipt dd { margin: 0; font-weight: 700; white-space: nowrap; }
.budget-receipt .receipt-total { border-top: 2px dashed #221f2070; margin-top: 15px; padding-top: 22px; }
.receipt-total dd { font-size: 35px; letter-spacing: -1.5px; }
.uptime-budget .budget-receipt > p:last-child { font-size: 11px; }
.uptime-workflow { border-block: var(--line); background: #ded0ff; padding-block: 70px; }
.workflow-list { margin-top: 35px; }
.workflow-list article { display: grid; grid-template-columns: 70px 1fr; gap: 24px; border-top: var(--line); padding-block: 28px; }
.workflow-list article:last-child { padding-bottom: 0; }
.workflow-list article > span { font-size: 36px; font-weight: 900; letter-spacing: -2px; color: #4e2db2; }
.workflow-list h3 { font-size: 28px; letter-spacing: -1px; margin-bottom: 12px; }
.workflow-list p { max-width: 740px; font-size: 14px; line-height: 1.8; }
.uptime-verdict { padding-block: 55px 65px; }
.fair-play { padding: 27px 30px; background: #f2eccf; border-left: 4px solid var(--purple); }
.fair-play > p:last-child { max-width: 860px; margin-top: 12px; font-size: 13px; line-height: 1.8; }
.final-copy { padding-top: 70px; }
.final-copy h2 { font-size: clamp(42px, 5.5vw, 76px); line-height: 1.1; margin-block: 24px; }
.final-copy h2 em { box-shadow: 0 8px 0 -2px var(--lime); }
.final-copy > p:not(.eyebrow):not(.tiny-note) { max-width: 590px; font-size: 16px; line-height: 1.8; margin-bottom: 26px; }
.final-copy .tiny-note { max-width: 550px; line-height: 1.8; }
.holyco-link { display: block; margin-bottom: 65px; padding: clamp(24px, 4vw, 48px); border: var(--line); border-radius: 10px; background: var(--lime); text-decoration: none; }
.holyco-link .eyebrow { display: block; margin-bottom: 24px; }
.holyco-title { display: flex; align-items: center; justify-content: space-between; gap: 16px; font-size: clamp(42px, 9vw, 112px); line-height: 1; letter-spacing: -0.065em; font-weight: 900; }
.holyco-link:hover .holyco-title { text-decoration: underline; text-decoration-thickness: 3px; text-underline-offset: 8px; }
.uptime-sources { border-top: var(--line); padding-block: 28px 45px; }
.uptime-sources h2 { font-size: 30px; letter-spacing: -1px; }
.uptime-sources > p { max-width: 800px; font-size: 11px; line-height: 1.8; color: #68615c; margin-top: 15px; }
.uptime-sources ol { padding-left: 20px; font-size: 12px; line-height: 1.8; }
.uptime-sources li { padding-block: 5px; }
.uptime-sources a { text-underline-offset: 4px; }

@media (max-width: 1100px) {
  .uptime-hero { gap: 40px; }
  .uptime-page .site-header nav { gap: 20px; }
  .uptime-page .site-header nav a:first-child { display: none; }
  .comparison-table th, .comparison-table td { padding: 20px; }
  .uptime-budget { gap: 40px; }
}

@media (max-width: 760px) {
  .uptime-page .site-header nav { gap: 0; }
  .uptime-hero { grid-template-columns: 1fr; gap: 45px; padding-block: 45px 65px; }
  .uptime-hero .eyebrow { font-size: 9px; letter-spacing: 0.7px; }
  .uptime-hero h1 { font-size: clamp(54px, 11.5vw, 88px); }
  .uptime-lede { font-size: 15px; }
  .uptime-ticket { width: calc(100% - 12px); max-width: 405px; justify-self: center; }
  .ticket-product { font-size: 42px; }
  .ticket-tagline { font-size: 36px; }
  .ticket-body { padding: 28px 24px; }
  .uptime-divider > div { justify-content: center; font-size: 9px; text-align: center; }
  .uptime-divider span:last-child { display: none; }
  .uptime-divider span:nth-child(2) { font-size: 20px; }
  .uptime-comparison { padding-block: 55px 25px; }
  .uptime-page .section-heading h2 { font-size: clamp(34px, 7.5vw, 52px); }
  .section-intro { font-size: 14px; }
  .table-hint { display: block; }
  .comparison-table th, .comparison-table td { padding: 18px; }
  .uptime-budget { grid-template-columns: 1fr; gap: 30px; padding-block: 25px 55px; }
  .uptime-budget h2 { font-size: clamp(38px, 8vw, 56px); }
  .budget-receipt { padding: 24px; }
  .budget-receipt dl > div { font-size: 12px; }
  .receipt-total dd { font-size: 30px; }
  .uptime-workflow { padding-block: 50px; }
  .workflow-list article { grid-template-columns: 38px 1fr; gap: 16px; }
  .workflow-list article > span { font-size: 28px; }
  .workflow-list h3 { font-size: 25px; }
  .workflow-list p { font-size: 13px; }
  .uptime-verdict { padding-block: 40px 45px; }
  .fair-play { padding: 22px; }
  .final-copy { padding-top: 50px; }
  .final-copy h2 { font-size: clamp(36px, 7vw, 52px); }
  .final-copy > p:not(.eyebrow):not(.tiny-note) { font-size: 14px; }
}
