body.page-spark { background:#0f1112; color:#eeeef2; } .page-spark .nav,.page-spark .nav.scrolled,.page-spark .footer { background:#0f1112; } .apps-wrap { max-width:1200px; margin:auto; padding:0 32px; } .apps-hero { padding:160px 0 72px; background:#15181a; } .apps-hero h1 { font-size:clamp(48px,7vw,80px); margin:0 0 24px; line-height:1.1; color:#f8f8ff; } .apps-hero p { max-width:65ch; font-size:20px; color:#d0d0dc; } .apps-collection { padding-top:64px; padding-bottom:96px; } .apps-collection section+section { margin-top:64px; } .apps-wrap h2 { color:#f8f8ff; font-size:clamp(26px,3vw,36px); margin:0 0 28px; } .apps-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; } .app-tile { display:flex; flex-direction:column; padding:32px; border:1px solid #45484b; border-radius:12px; color:#eeeef2; text-decoration:none; background:#15181a; } .app-tile:hover { border-color:#ffac47; } .app-tile h3 { font-size:30px; color:#f8f8ff; margin:0 0 16px; } .app-tile p { margin:0 0 20px; max-width:65ch; } .app-status { color:#c8c8d8; font-size:14px!important; } .app-action { color:#ffac47; font-weight:600; margin-top:auto; padding-top:16px; } .apps-back { display:inline-block; color:#ffac47; margin-bottom:32px; } .app-tagline { font-family:Montserrat,sans-serif; font-weight:700; font-size:clamp(24px,4vw,40px)!important; } .app-detail { padding-top:64px; padding-bottom:96px; } .app-detail p { max-width:70ch; margin-bottom:40px; } .page-spark a:focus-visible { outline:3px solid #ffac47; outline-offset:5px; } .page-spark ::selection { background:#ffac47; color:#0f1112; } @media(max-width:700px) { .apps-wrap { padding-left:20px; padding-right:20px; } .apps-grid { grid-template-columns:1fr; } .apps-hero { padding-top:128px; padding-bottom:48px; } .app-tile { padding:24px; } }

.apps-wrap h1,.apps-wrap h2,.apps-wrap h3 { text-align:left; } .app-detail h2:not(:first-child) { margin-top:48px; }

.app-tile-top { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:28px; }
.app-logo { width:96px; height:96px; object-fit:contain; flex-shrink:0; }
.app-source-tag { display:inline-block; padding:5px 10px; border:1px solid #62666a; border-radius:4px; color:#d0d0dc; font-size:12px; line-height:1.5; white-space:nowrap; }
.app-tile h2 { font-size:30px; margin:0 0 16px; }
.app-product-heading { display:flex; gap:28px; align-items:center; margin-bottom:32px; }
.app-product-heading h1 { margin-bottom:16px; }
.app-product-logo { width:160px; height:160px; object-fit:contain; }
.app-steps,.app-feature-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; margin:48px 0 56px; }
.app-steps { padding-left:24px; }
.app-steps h3,.app-feature-list h3 { font-size:22px; margin-bottom:16px; }
.app-steps p,.app-feature-list p { margin-bottom:0; }
.app-feature-list section { border-top:1px solid #45484b; padding-top:24px; }
@media(max-width:700px) { .app-product-logo { width:100px; height:100px; } .app-product-heading { gap:20px; } .app-steps,.app-feature-list { grid-template-columns:1fr; } }

/* Low-opacity logo colours fade into the existing dark tile surface. */
.app-tile { background:linear-gradient(135deg,rgba(var(--app-tint),0.12),rgba(var(--app-tint),0.035) 48%,transparent 80%),#15181a; }
.app-tile--revori { --app-tint:78,125,246; }
.app-tile--spark { --app-tint:230,233,236; }
.app-tile--glass { --app-tint:160,166,174; }
.app-tile--vox { --app-tint:0,199,139; }
.app-tile--finch { --app-tint:255,133,16; }
