/* Shared page language */
.uptime-eyebrow { margin: 0 0 var(--uptime-space-4); color: var(--uptime-color-brand); font-size: var(--uptime-text-xs); font-weight: 800; letter-spacing: 0.13em; text-transform: uppercase; }
.uptime-eyebrow span { display: inline-block; width: 1.75rem; height: 1px; margin: 0 var(--uptime-space-3) 0 0; background: currentColor; vertical-align: middle; }
.uptime-section-intro { max-width: 45rem; margin-bottom: clamp(var(--uptime-space-10), 5vw, var(--uptime-space-16)); }
.uptime-section-intro > p:last-child { max-width: 40rem; color: var(--uptime-color-muted); font-size: var(--uptime-text-lg); }
.uptime-body-large { font-size: var(--uptime-text-lg); }
.uptime-text-link { display: inline-flex; align-items: center; gap: var(--uptime-space-2); color: var(--uptime-color-ink); font-weight: 800; text-decoration: none; }
.uptime-text-link span { color: var(--uptime-color-brand); transition: transform var(--uptime-transition); }
.uptime-text-link:hover span { transform: translateX(0.25rem); }

/* Homepage hero */
.uptime-hero { position: relative; overflow: hidden; padding-block: clamp(5rem, 10vw, 8.5rem); background: linear-gradient(135deg, #f8fbff 0%, #fff 52%, #ecf8f7 100%); }
.uptime-hero::before { position: absolute; width: 34rem; height: 34rem; right: -12rem; top: -16rem; border-radius: 50%; background: radial-gradient(circle, rgba(35,182,165,.15), rgba(35,182,165,0) 68%); content: ""; }
.uptime-hero__grid { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(24rem, .92fr); align-items: center; gap: clamp(3rem, 7vw, 7rem); }
.uptime-hero__lead { max-width: 42rem; color: var(--uptime-color-text); font-size: clamp(1.125rem, 2vw, 1.35rem); }
.uptime-hero__actions { margin-top: var(--uptime-space-8); }
.uptime-trust-line { display: flex; flex-wrap: wrap; gap: var(--uptime-space-8); margin: var(--uptime-space-12) 0 0; padding: var(--uptime-space-8) 0 0; border-top: 1px solid var(--uptime-color-border); list-style: none; }
.uptime-trust-line li { display: grid; }
.uptime-trust-line strong { color: var(--uptime-color-ink); font-family: var(--uptime-font-display); font-size: var(--uptime-text-lg); }
.uptime-trust-line span { color: var(--uptime-color-muted); font-size: var(--uptime-text-sm); }
.uptime-hero__visual { position: relative; min-height: 29rem; }
.uptime-browser-card { position: absolute; inset: 1rem 0 2rem 2rem; overflow: hidden; border: 1px solid rgba(19,109,236,.16); border-radius: var(--uptime-radius-xl); background: #fff; box-shadow: var(--uptime-shadow-lg); transform: rotate(1.5deg); }
.uptime-browser-card__bar { display: flex; gap: .35rem; padding: 1rem; background: #eff4fa; }
.uptime-browser-card__bar i { width: .55rem; height: .55rem; border-radius: 50%; background: #b9c5d4; }
.uptime-browser-card__body { padding: clamp(1.5rem, 4vw, 3rem); }
.uptime-visual-kicker { color: var(--uptime-color-brand); font-size: var(--uptime-text-xs); font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.uptime-visual-title { width: 84%; height: 1.2rem; margin-top: var(--uptime-space-6); border-radius: var(--uptime-radius-pill); background: var(--uptime-color-ink); }
.uptime-visual-title--short { width: 57%; margin-top: .7rem; }
.uptime-visual-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--uptime-space-4); margin-top: var(--uptime-space-10); }
.uptime-visual-grid div { display: grid; gap: var(--uptime-space-2); min-height: 6.5rem; padding: var(--uptime-space-5); border: 1px solid var(--uptime-color-border); border-radius: var(--uptime-radius-md); background: var(--uptime-color-surface-soft); }
.uptime-visual-grid b { color: var(--uptime-color-ink); }
.uptime-visual-grid span { color: var(--uptime-color-muted); font-size: var(--uptime-text-sm); }
.uptime-floating-note { position: absolute; left: 0; bottom: 0; display: flex; align-items: center; gap: var(--uptime-space-3); padding: var(--uptime-space-4) var(--uptime-space-5); border: 1px solid var(--uptime-color-border); border-radius: var(--uptime-radius-md); background: #fff; box-shadow: var(--uptime-shadow-md); }
.uptime-floating-note div { display: grid; }.uptime-floating-note strong { color: var(--uptime-color-ink); }.uptime-floating-note small { color: var(--uptime-color-muted); }
.uptime-status-dot { width: .7rem; height: .7rem; border-radius: 50%; background: var(--uptime-color-accent); box-shadow: 0 0 0 .35rem rgba(35,182,165,.14); }

/* Credibility */
.uptime-proof { padding-block: var(--uptime-space-8); border-block: 1px solid var(--uptime-color-border); background: #fff; text-align: center; }
.uptime-proof p, .uptime-proof small { color: var(--uptime-color-muted); font-size: var(--uptime-text-xs); letter-spacing: .08em; text-transform: uppercase; }
.uptime-logo-row { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--uptime-space-6); align-items: center; margin-block: var(--uptime-space-6) var(--uptime-space-3); }
.uptime-logo-row span { color: #566477; font-family: var(--uptime-font-display); font-weight: 700; }

.uptime-split { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(3rem, 9vw, 8rem); }
.uptime-expertise-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--uptime-space-5); margin-top: var(--uptime-space-16); }
.uptime-expertise-grid > div { padding-top: var(--uptime-space-5); border-top: 2px solid var(--uptime-color-ink); }
.uptime-expertise-grid span { color: var(--uptime-color-brand); font-family: var(--uptime-font-mono); font-size: var(--uptime-text-sm); }
.uptime-expertise-grid h3 { margin-top: var(--uptime-space-8); font-size: var(--uptime-text-xl); }
.uptime-expertise-grid p { margin: 0; color: var(--uptime-color-muted); }

/* Services */
.uptime-service-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--uptime-space-5); }
.uptime-service-card { display: flex; min-height: 20rem; flex-direction: column; padding: clamp(1.5rem, 3vw, 2.25rem); border: 1px solid var(--uptime-color-border); border-radius: var(--uptime-radius-lg); background: #fff; color: var(--uptime-color-text); text-decoration: none; transition: border-color var(--uptime-transition), box-shadow var(--uptime-transition), transform var(--uptime-transition); }
.uptime-service-card:hover { border-color: rgba(19,109,236,.38); color: var(--uptime-color-text); box-shadow: var(--uptime-shadow-md); transform: translateY(-4px); }
.uptime-service-card > span { color: var(--uptime-color-brand); font-family: var(--uptime-font-mono); }
.uptime-service-card h3 { margin-top: auto; font-size: var(--uptime-text-2xl); }
.uptime-service-card p { color: var(--uptime-color-muted); }
.uptime-service-card b { color: var(--uptime-color-ink); font-size: var(--uptime-text-sm); }

/* Process and results */
.uptime-process { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; margin: 0; padding: 0; list-style: none; counter-reset: none; }
.uptime-process li { position: relative; padding: 0 var(--uptime-space-8) 0 0; }
.uptime-process li:not(:last-child)::after { position: absolute; top: .45rem; right: var(--uptime-space-4); width: calc(100% - 4rem); height: 1px; transform: translateX(50%); background: var(--uptime-color-border); content: ""; }
.uptime-process li > span { position: relative; z-index: 1; display: grid; width: 2.25rem; height: 2.25rem; place-items: center; border-radius: 50%; background: var(--uptime-color-ink); color: #fff; font-family: var(--uptime-font-mono); font-size: var(--uptime-text-xs); }
.uptime-process h3 { margin-top: var(--uptime-space-8); }
.uptime-process p { color: var(--uptime-color-muted); }
.uptime-results { background: #eef7f7; }
.uptime-results__grid { display: grid; grid-template-columns: .8fr 1.2fr; align-items: center; gap: clamp(3rem, 9vw, 8rem); }
.uptime-metric-board { padding: clamp(1.5rem, 4vw, 3rem); border-radius: var(--uptime-radius-xl); background: var(--uptime-color-ink); color: #c7d1df; box-shadow: var(--uptime-shadow-lg); }
.uptime-metric-board > p { display: flex; justify-content: space-between; border-bottom: 1px solid rgba(255,255,255,.13); padding-bottom: var(--uptime-space-5); }
.uptime-metric-board > p span { padding: .2rem .6rem; border-radius: var(--uptime-radius-pill); background: rgba(35,182,165,.18); color: #77e2d6; font-size: var(--uptime-text-xs); }
.uptime-metric-board > div { display: grid; grid-template-columns: 11rem 1fr; align-items: center; gap: var(--uptime-space-5); margin-top: var(--uptime-space-5); }
.uptime-metric-board strong { color: #fff; font-size: var(--uptime-text-sm); }.uptime-metric-board i { height: .5rem; border-radius: var(--uptime-radius-pill); background: linear-gradient(90deg, var(--uptime-color-accent) 64%, rgba(255,255,255,.1) 64%); }
.uptime-metric-board > div:nth-of-type(2) i { background: linear-gradient(90deg, #57a6ff 72%, rgba(255,255,255,.1) 72%); }.uptime-metric-board > div:nth-of-type(3) i { background: linear-gradient(90deg, var(--uptime-color-accent) 52%, rgba(255,255,255,.1) 52%); }.uptime-metric-board > div:nth-of-type(4) i { background: linear-gradient(90deg, #57a6ff 67%, rgba(255,255,255,.1) 67%); }.uptime-metric-board small { display: block; margin-top: var(--uptime-space-8); color: #93a2b5; }

.uptime-founder { display: grid; grid-template-columns: minmax(18rem, .8fr) minmax(0, 1.2fr); align-items: center; gap: clamp(3rem, 8vw, 7rem); }
.uptime-founder__portrait, .uptime-page-visual, .uptime-placeholder { display: grid; place-items: center; min-height: 27rem; overflow: hidden; border-radius: var(--uptime-radius-xl); background: linear-gradient(145deg, #dce9f7, #d4f0ec); color: var(--uptime-color-muted); font-size: var(--uptime-text-sm); }
.uptime-founder__portrait::before, .uptime-page-visual::before, .uptime-placeholder::before { position: absolute; width: 9rem; height: 9rem; border: 1px solid rgba(19,109,236,.25); border-radius: 50%; content: ""; }
.uptime-founder__portrait, .uptime-page-visual, .uptime-placeholder { position: relative; }

/* Interior pages */
.uptime-page-hero { padding-block: clamp(5rem, 10vw, 8rem); background: linear-gradient(135deg, #f6faff, #eef8f6); }
.uptime-page-hero--compact { text-align: center; }
.uptime-page-hero__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(22rem, .8fr); align-items: center; gap: clamp(3rem, 8vw, 7rem); }
.uptime-page-hero p:not(.uptime-eyebrow) { max-width: 43rem; color: var(--uptime-color-text); font-size: var(--uptime-text-lg); }
.uptime-page-hero .uptime-button { margin-top: var(--uptime-space-5); }
.uptime-page-visual { min-height: 23rem; }
.uptime-page-visual--image { margin: 0; background: #dce9f7; }
.uptime-page-visual--image::before { display: none; }
.uptime-page-visual--image img { width: 100%; height: 100%; min-height: 23rem; object-fit: cover; }
.uptime-detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--uptime-space-5); }
.uptime-detail-grid .uptime-card h2 { font-size: var(--uptime-text-2xl); }
.uptime-card__marker { display: block; width: 2.5rem; height: .2rem; margin-bottom: var(--uptime-space-8); background: var(--uptime-color-accent); }
.uptime-feature-panel { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(3rem, 8vw, 7rem); }
.uptime-feature-panel ul { display: grid; grid-template-columns: 1fr 1fr; gap: var(--uptime-space-4); margin: 0; padding: 0; list-style: none; }
.uptime-feature-panel li { display: flex; gap: var(--uptime-space-3); padding: var(--uptime-space-4); border-radius: var(--uptime-radius-md); background: #fff; color: var(--uptime-color-ink); font-weight: 700; box-shadow: var(--uptime-shadow-sm); }
.uptime-feature-panel li span { color: var(--uptime-color-success); }
.uptime-cta-band { background: linear-gradient(135deg, #0b1220, #122844); color: #c7d1df; }
.uptime-cta-band h2 { color: #fff; }
.uptime-cta-band__inner { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: var(--uptime-space-12); }
.uptime-cta-band__inner p:not(.uptime-eyebrow) { max-width: 48rem; }
.uptime-button--light { background: #fff; color: var(--uptime-color-ink); }.uptime-button--light:hover { background: #eaf1f8; color: var(--uptime-color-ink); }
.uptime-site a.uptime-button--light,
.uptime-site a.uptime-button--light:visited { color: var(--uptime-color-ink); }
.uptime-site a.uptime-button--light:hover { color: var(--uptime-color-ink); }

/* About and cases */
.uptime-story { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(3rem, 9vw, 8rem); }
.uptime-story > div:last-child { font-size: var(--uptime-text-lg); }
.uptime-quote { max-width: 58rem; text-align: center; }
.uptime-quote blockquote { color: var(--uptime-color-ink); font-family: var(--uptime-font-display); font-size: var(--uptime-text-3xl); font-weight: 700; letter-spacing: -.035em; line-height: var(--uptime-leading-heading); }
.uptime-case-grid { display: grid; gap: var(--uptime-space-8); }
.uptime-case-card { display: grid; grid-template-columns: .75fr 1.25fr; overflow: hidden; border: 1px solid var(--uptime-color-border); border-radius: var(--uptime-radius-xl); background: #fff; box-shadow: var(--uptime-shadow-sm); }
.uptime-case-card .uptime-placeholder { min-height: 100%; border-radius: 0; }
.uptime-case-card__image { min-height: 100%; margin: 0; overflow: hidden; background: var(--uptime-color-surface-soft); }
.uptime-case-card__image img { width: 100%; height: 100%; min-height: 22rem; object-fit: cover; }
.uptime-case-card__body { padding: clamp(1.5rem, 4vw, 3rem); }
.uptime-case-card__body h2 { font-size: var(--uptime-text-2xl); }
.uptime-case-card dl { display: grid; grid-template-columns: 1fr 1fr; gap: var(--uptime-space-4); }
.uptime-case-card dl div { padding-top: var(--uptime-space-3); border-top: 1px solid var(--uptime-color-border); }.uptime-case-card dt { color: var(--uptime-color-muted); font-size: var(--uptime-text-xs); font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }.uptime-case-card dd { margin: .3rem 0 0; }

/* URL assessment and report */
.uptime-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.uptime-form__privacy { margin: 0; color: var(--uptime-color-muted); font-size: var(--uptime-text-xs); }.uptime-alert { margin-bottom: var(--uptime-space-6); padding: var(--uptime-space-4); border-radius: var(--uptime-radius-md); }.uptime-alert--success { background: #e8f7f1; color: #0c6244; }.uptime-alert--error { background: #fff0ee; color: var(--uptime-color-error); }
.uptime-url-audit-card, .uptime-report-gate { padding: clamp(1.5rem, 5vw, 3.5rem); border: 1px solid var(--uptime-color-border); border-radius: var(--uptime-radius-xl); background: #fff; box-shadow: var(--uptime-shadow-md); }
.uptime-url-audit-form, .uptime-unlock-form { display: grid; gap: var(--uptime-space-3); margin-top: var(--uptime-space-8); }
.uptime-url-audit-form > label, .uptime-unlock-form > label { color: var(--uptime-color-ink); font-size: var(--uptime-text-sm); font-weight: 800; }
.uptime-url-audit-form__row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: var(--uptime-space-3); }
.uptime-report-heading { display: flex; align-items: end; justify-content: space-between; gap: var(--uptime-space-8); margin-bottom: var(--uptime-space-10); }
.uptime-report-screenshot { margin: 0 0 var(--uptime-space-10); }
.uptime-report-screenshot > div { aspect-ratio: 16 / 9; overflow: hidden; border: 1px solid var(--uptime-color-border); border-radius: var(--uptime-radius-xl); background: linear-gradient(135deg, #eaf1f8, #eef8f6); box-shadow: var(--uptime-shadow-md); }
.uptime-report-screenshot img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: top center; }
.uptime-report-screenshot figcaption { display: flex; justify-content: space-between; gap: var(--uptime-space-4); margin-top: var(--uptime-space-4); color: var(--uptime-color-ink); font-size: var(--uptime-text-sm); font-weight: 800; }
.uptime-report-screenshot figcaption a { text-decoration: none; }
.uptime-report-screenshot > p { margin: var(--uptime-space-2) 0 0; color: var(--uptime-color-muted); font-size: var(--uptime-text-xs); }
.uptime-audit-score { display: flex; align-items: baseline; gap: var(--uptime-space-2); margin-bottom: var(--uptime-space-6); color: var(--uptime-color-muted); }
.uptime-audit-score strong { color: var(--uptime-color-brand); font-family: var(--uptime-font-display); font-size: clamp(4rem, 10vw, 7rem); line-height: .9; }
.uptime-audit-score span { font-size: var(--uptime-text-xl); font-weight: 800; }
.uptime-report-grid { display: grid; gap: var(--uptime-space-4); }
.uptime-report-check { padding: var(--uptime-space-6); border: 1px solid var(--uptime-color-border); border-left: 4px solid var(--uptime-color-accent); border-radius: var(--uptime-radius-md); background: #fff; }
.uptime-report-check--improve { border-left-color: #f79009; }
.uptime-report-check__status { margin-bottom: var(--uptime-space-2); color: var(--uptime-color-success); font-size: var(--uptime-text-xs); font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.uptime-report-check--improve .uptime-report-check__status { color: #b54708; }
.uptime-report-check h3 { font-size: var(--uptime-text-xl); }
.uptime-report-check > div { margin-top: var(--uptime-space-5); padding-top: var(--uptime-space-4); border-top: 1px solid var(--uptime-color-border); }
.uptime-report-check > div p { margin: var(--uptime-space-2) 0 0; }
.uptime-report-gate { margin-top: var(--uptime-space-10); background: linear-gradient(135deg, #f8fbff, #eef8f6); }
.uptime-report-actions { display: flex; flex-wrap: wrap; gap: var(--uptime-space-3); margin-top: var(--uptime-space-8); }
.uptime-audit-disclaimer { margin-top: var(--uptime-space-8); color: var(--uptime-color-muted); font-size: var(--uptime-text-sm); }

@media (max-width: 74rem) {
	.uptime-nav__list { gap: var(--uptime-space-4); }
	.uptime-nav__list a { font-size: .78rem; }
}

@media (max-width: 63.999rem) {
	.uptime-hero__grid, .uptime-page-hero__grid, .uptime-results__grid, .uptime-founder, .uptime-split, .uptime-feature-panel, .uptime-story { grid-template-columns: 1fr; }
	.uptime-hero__visual { min-height: 25rem; max-width: 38rem; width: 100%; margin-inline: auto; }
	.uptime-service-grid { grid-template-columns: 1fr 1fr; }
	.uptime-expertise-grid, .uptime-process { grid-template-columns: 1fr 1fr; gap: var(--uptime-space-8); }
	.uptime-process li::after { display: none; }
	.uptime-logo-row { grid-template-columns: 1fr 1fr; }
	.uptime-case-card { grid-template-columns: 1fr; }.uptime-case-card .uptime-placeholder { min-height: 18rem; }
	.uptime-cta-band__inner { grid-template-columns: 1fr; }
	.uptime-header__cta { display: inline-flex; }
}

@media (max-width: 47.999rem) {
	.uptime-hero { padding-top: var(--uptime-space-16); }
	.uptime-trust-line, .uptime-logo-row, .uptime-service-grid, .uptime-expertise-grid, .uptime-process, .uptime-detail-grid, .uptime-feature-panel ul, .uptime-case-card dl { grid-template-columns: 1fr; }
	.uptime-trust-line { display: grid; gap: var(--uptime-space-4); }
	.uptime-browser-card { left: 0; }
	.uptime-hero__visual { min-height: 23rem; }
	.uptime-visual-grid { gap: var(--uptime-space-2); }.uptime-visual-grid div { min-height: 5.5rem; padding: var(--uptime-space-3); }
	.uptime-floating-note { left: var(--uptime-space-3); }
	.uptime-service-card { min-height: 16rem; }
	.uptime-metric-board > div { grid-template-columns: 8rem 1fr; }
	.uptime-url-audit-form__row { grid-template-columns: 1fr; }
	.uptime-report-heading { align-items: start; flex-direction: column; }
	.uptime-report-screenshot figcaption { align-items: flex-start; flex-direction: column; }
}

@media print {
	.uptime-header, .uptime-footer, .uptime-page-hero, .uptime-report-gate, .uptime-report-actions { display: none !important; }
}
