nav.navbar { background: var(--hd-bg-canvas); box-shadow: 0 0px 3px 0 var(--hd-accent); border-bottom: 1px solid var(--hd-accent); z-index: 1024; transition: background 1s linear; } nav.navbar.beginscroll { background: linear-gradient(90deg, var(--hd-accent-subtle) 0%, white 100%), var(--hd-accent-subtle); box-shadow: none; border-bottom: none; } nav.navbar.scrolled { background: var(--hd-bg-canvas); box-shadow: 0 0px 3px 0 var(--hd-accent); border-bottom: 1px solid var(--hd-accent); } a.card { background: var(--hd-bg-subtle); transition: transform 250ms; } a.card:hover { background: var(--hd-bg-inset); transform: scale(1.14); } .section-title::after { content: ""; width: 120px; height: 4px; background: linear-gradient( 90deg, var(--hd-accent) 0%, var(--hd-brand-dark) 100% ); display: block; margin: 10px auto 0; border-radius: 2px; } .link-rounded, .circle-head { display: inline-flex; justify-content: center; align-items: center; height: 1.8em; line-height: 1em; width: 1.8em; background: var(--hd-accent); border-radius: 100%; color: var(--hd-accent-fg); font-size: 1.5rem; } .link-rounded:hover { background-color: var(--hd-green-800); } .link-rounded:hover > div { color: var(--hd-accent-fg); } .anchor { margin-top: -60px; height: 60px; } .carousel { background-color: var(--hd-plum-700); } .text-hilight { background-color: yellow; } #voxppl { display: none; } #voxppl a { position: fixed; bottom: 5vh; right: 5vw; border-radius: 5px; background-color: color-mix(in srgb, var(--hd-plum-400) 93%, transparent); z-index: 1023; max-width: 98%; } #voxppl a:hover { text-decoration: none; background-color: var(--hd-plum-400); } img { max-width: 100%; } #discover .steps { display: flex; justify-content: space-between; flex-wrap: wrap; margin-top: 60px; position: relative; } #discover .steps::before { content: ""; position: absolute; top: 25px; left: 10%; width: 80%; height: 2px; background: linear-gradient( to right, var(--hd-accent) 0%, var(--hd-brand-dark) 100% ); z-index: 1; } #discover .step { flex-basis: 30%; text-align: center; position: relative; z-index: 2; } #discover .step-number { background: linear-gradient( 135deg, var(--hd-accent) 0%, var(--hd-brand-dark) 100% ); color: white; width: 50px; height: 50px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 24px; font-weight: bold; margin: 0 auto 20px; } #discover .step h3 { margin-bottom: 15px; font-size: 22px; } #discover .step p { color: var(--hd-fg-3); } #cta { padding: 100px 0; background: linear-gradient( 135deg, var(--hd-brand-dark) 0%, var(--hd-accent) 100% ); color: white; text-align: center; position: relative; overflow: hidden; } #cta::before, #cta::after { content: ""; position: absolute; width: 300px; height: 300px; border-radius: 50%; background: rgba(255, 255, 255, 0.1); } #cta::before { top: -150px; left: -100px; } #cta::after { bottom: -150px; right: -100px; width: 350px; height: 350px; } .cta-content { position: relative; z-index: 2; } #cta p { max-width: 700px; } footer { border-top: 3px solid var(--hd-plum-400); } .footer-tagline { font-size: 0.8rem; color: rgba(255, 255, 255, 0.5); line-height: 1.55; max-width: 260px; margin-bottom: 0; } .footer-heading { font-size: 0.7rem; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; color: rgba(255, 255, 255, 0.45); margin-bottom: 1rem; } .footer-links { list-style: none; padding: 0; display: flex; flex-direction: column; gap: 8px; margin: 0; } .footer-links a { color: rgba(255, 255, 255, 0.7); font-size: 0.875rem; text-decoration: none; transition: color 0.2s; } .footer-links a:hover { color: white; } .footer-social a { display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 6px; color: rgba(255, 255, 255, 0.6); text-decoration: none; font-size: 0.9rem; transition: color 0.2s, border-color 0.2s, background-color 0.2s; } .footer-social a:hover { color: white; border-color: rgba(255, 255, 255, 0.5); background-color: rgba(255, 255, 255, 0.08); } .footer-bottom { border-top: 1px solid rgba(255, 255, 255, 0.12); } .footer-bottom-text { font-size: 0.75rem; color: rgba(255, 255, 255, 0.4); } .footer-git-link { font-size: 0.75rem; color: rgba(255, 255, 255, 0.4); text-decoration: none; transition: color 0.2s; } .footer-git-link:hover { color: rgba(255, 255, 255, 0.8); } #download-house { animation: floatinghouse 6s linear infinite; } @keyframes floatinghouse { 0% { top: 0; left: 0; } 10% { top: -2px; } 20% { top: -4px; } 30% { top: -6px; } 40% { top: -2px; } 50% { top: 0px; } 60% { top: 4px; } 70% { top: 6px; } 80% { top: 8px; } 90% { top: 4px; } 100% { top: 0; } } /* ── Trust strip ── */ .trust { padding: 20px 0; border-top: 1px solid var(--bs-border-color); border-bottom: 1px solid var(--bs-border-color); background: var(--hd-bg-canvas); } .trust-grid { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; } .trust-tag { display: flex; align-items: center; gap: 8px; font-size: 0.75rem; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--hd-accent); white-space: nowrap; } .trust-tag .dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--hd-accent); animation: pulse-dot 2s ease-in-out infinite; } @keyframes pulse-dot { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: 0.5; transform: scale(0.75); } } .trust-list { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; flex: 1; } .trust-list span { display: inline-flex; align-items: center; gap: 6px; padding: 4px 12px; border-radius: 20px; border: 1px solid color-mix(in srgb, currentColor 20%, transparent); font-size: 0.85rem; font-weight: 500; color: var(--hd-fg-3); background: transparent; transition: border-color 0.2s, color 0.2s, background 0.2s; } .trust-list span:hover { border-color: var(--hd-accent); color: var(--hd-accent); background: color-mix(in srgb, var(--hd-accent) 8%, transparent); } .trust-list span i { font-size: 0.9em; opacity: 0.7; } .trust-more { font-size: 0.8rem; font-weight: 500; color: var(--hd-accent); white-space: nowrap; text-decoration: none; cursor: pointer; transition: opacity 0.2s; } .trust-more:hover { opacity: 0.7; } @media (min-width: 768px) { #community > div > div { width: 50% !important; } #community > div > div:first-child { border-right: 1px solid var(--hd-plum-400); } } /* ── Big idea section ── */ .section { padding: 96px 0; } .section--paper { background: var(--hd-bg-subtle); border-top: 1px solid var(--hd-border-1); border-bottom: 1px solid var(--hd-border-1); } .section-head { margin-bottom: 56px; } .section-head .eyebrow { display: flex; margin-bottom: 14px; } .eyebrow { display: inline-flex; align-items: center; gap: 8px; font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; color: var(--hd-fg-3); } .eyebrow .dot { display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: var(--hd-accent); flex-shrink: 0; } .h2 { font-size: clamp(1.5rem, 4vw, 2.25rem); font-weight: 700; line-height: 1.15; letter-spacing: -0.02em; color: var(--hd-fg-1); margin: 0; } .section-head .h2 { max-width: 720px; } .lede { font-size: 1.0625rem; line-height: 1.65; color: var(--hd-fg-2); margin-top: 14px; max-width: 640px; } .idea-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0; border: 1px solid var(--hd-border-1); border-radius: 12px; overflow: hidden; background: var(--hd-bg-canvas); } .idea-col { padding: 28px 28px 24px; } .idea-col + .idea-col { border-left: 1px solid var(--hd-border-1); } .idea-tag { font-family: var(--hd-font-mono, monospace); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--hd-fg-4); margin-bottom: 12px; display: flex; align-items: center; gap: 8px; } .idea-tag .num { display: inline-flex; align-items: center; justify-content: center; width: 18px; height: 18px; border-radius: 4px; background: var(--hd-bg-subtle); color: var(--hd-fg-3); font-size: 9px; } .idea-col h3 { font-weight: 700; font-size: 1.25rem; color: var(--hd-fg-1); letter-spacing: -0.015em; margin: 0 0 18px; } .idea-col h3 .strike { text-decoration: line-through; color: var(--hd-fg-4); font-weight: 600; } .zone-pre { font-family: var(--hd-font-mono, monospace); font-size: 11.5px; line-height: 1.7; color: var(--hd-fg-3); background: var(--hd-bg-subtle); border: 1px solid var(--hd-border-1); border-radius: 8px; padding: 14px 16px; margin: 0; white-space: pre; overflow: auto; } .zone-pre .k { color: var(--hd-fg-1); font-weight: 500; } .zone-pre .v { color: var(--hd-fg-2); } .zone-pre .c { color: var(--hd-fg-4); } .zone-pre .a { color: var(--hd-accent); } .svc { border: 1px solid var(--hd-border-1); border-radius: 8px; margin-bottom: 6px; background: var(--hd-bg-canvas); overflow: hidden; } .svc-row { display: flex; align-items: center; justify-content: space-between; padding: 9px 12px; } .svc-row + .svc-row { border-top: 1px solid var(--hd-bg-subtle); } .svc-l { display: flex; align-items: center; gap: 9px; } .svc-ico { width: 26px; height: 26px; border-radius: 6px; background: var(--hd-accent-subtle); border: 1px solid var(--hd-accent-border); display: flex; align-items: center; justify-content: center; color: var(--hd-accent); font-size: 13px; flex-shrink: 0; } [data-bs-theme="dark"] .svc-ico { background: var(--hd-accent-muted); } .svc-name { font-size: 12.5px; font-weight: 600; color: var(--hd-fg-1); } .svc-desc { font-size: 10.5px; color: var(--hd-fg-3); margin-top: 1px; } .svc-r { display: flex; align-items: center; gap: 8px; } .svc-cnt { font-family: var(--hd-font-mono, monospace); font-size: 10px; color: var(--hd-fg-4); background: var(--hd-bg-subtle); padding: 2px 6px; border-radius: 9999px; } .svc-ok { font-size: 10px; font-weight: 600; color: var(--hd-accent); display: flex; align-items: center; gap: 3px; } @media (max-width: 767px) { .idea-grid { grid-template-columns: 1fr; } .idea-col + .idea-col { border-left: none; border-top: 1px solid var(--hd-border-1); } .section { padding: 64px 0; } }