@font-face { font-family: "Inter"; src: url("/assets/fonts/InterVariable.woff2") format("woff2"); font-weight: 100 900; font-style: normal; font-display: swap; } @font-face { font-family: "Inter"; src: url("/assets/fonts/InterVariable-Italic.woff2") format("woff2"); font-weight: 100 900; font-style: italic; font-display: swap; } :root{ --bg0:#020617; --bg1:#0b1220; --panel: rgba(255,255,255,.05); --border: rgba(255,255,255,.10); --text: rgba(255,255,255,.92); --muted: rgba(226,232,240,.72); --muted2: rgba(148,163,184,.70); --brand1:#60a5fa; --brand2:#22d3ee; --accent:#fb923c; --radius: 16px; --shadow: 0 20px 60px rgba(0,0,0,.45); --maxw: 1120px; } *{box-sizing:border-box} html{scroll-behavior:smooth} body{ margin:0; background: radial-gradient(1200px 900px at 20% 10%, rgba(96,165,250,.12), transparent 55%), radial-gradient(900px 700px at 80% 35%, rgba(34,211,238,.10), transparent 55%), linear-gradient(180deg, var(--bg0), var(--bg1)); color:var(--text); font-family: Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji"; line-height:1.55; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; } a{color:inherit} img{max-width:100%; height:auto} .container{ width:100%; max-width:var(--maxw); margin:0 auto; padding:0 24px; } .sr-only{ position:absolute !important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; } /* Header / Nav */ .site-header{ position:sticky; top:0; z-index:50; backdrop-filter: blur(10px); background: rgba(2,6,23,.75); border-bottom:1px solid var(--border); } .header-inner{ display:flex; align-items:center; justify-content:space-between; padding:14px 0; gap:16px; } .brand{ display:inline-flex; align-items:center; gap:10px; text-decoration:none; } .brand-mark{ width:12px; height:12px; border-radius:999px; background: linear-gradient(90deg, var(--brand1), var(--brand2)); box-shadow: 0 0 0 6px rgba(96,165,250,.10); } .brand-text { font-size: clamp(2.4rem, 5.2vw, 3.75rem); font-weight: 700; line-height: 1.12; /* prevents descender clipping */ letter-spacing: -0.02em; padding-block: 0.15em; padding-inline-start: clamp(1rem, 4vw, 2.5rem); /* Gradient text */ background: linear-gradient( 90deg, #60a5fa 0%, #22d3ee 35%, #34d399 70%, #a78bfa 100% ); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; text-wrap: balance; } .gradient-text { background: linear-gradient( 90deg, #60a5fa 0%, #22d3ee 35%, #34d399 70%, #a78bfa 100% ); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; /* Prevent descender clipping in inline contexts */ padding-block: 0.05em; } .gradient-warm { background: linear-gradient( 90deg, #fb923c 0%, /* orange */ #f97316 35%, /* deep orange */ #ef4444 70%, /* red */ #dc2626 100% /* dark red */ ); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; line-height: 1.08; /* tight but safe */ padding-block: 0.1em; /* protects descenders */ } .callout { margin: 1.25rem auto 0; padding: clamp(1.25rem, 3vw, 2.25rem); max-width: 980px; border-radius: 24px; border: 1px solid rgba(148, 163, 184, 0.18); /* “Glass” background */ background: radial-gradient(900px 220px at 50% 0%, rgba(34, 211, 238, 0.12), transparent 60%), linear-gradient(180deg, rgba(15, 23, 42, 0.72), rgba(2, 6, 23, 0.62)); /* Soft depth */ box-shadow: 0 18px 50px rgba(0, 0, 0, 0.45), inset 0 1px 0 rgba(255, 255, 255, 0.06); /* Optional “frosted” feel (safe fallback if unsupported) */ backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); } .callout__text { margin: 0; text-align: center; font-size: clamp(1.1rem, 1.6vw, 1.5rem); line-height: 1.55; color: rgba(226, 232, 240, 0.92); } .callout__text strong { color: rgba(241, 245, 249, 0.98); font-weight: 700; } .callout__accent { color: #22d3ee; /* matches your cyan */ font-weight: 700; } .micro-header-red { display: block; font-size: 0.75rem; /* small but legible */ font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; color: #fb923c; margin-bottom: 0.5rem; /* Optical alignment */ line-height: 1; } .micro-header-blue { display: block; font-size: 0.75rem; /* small but legible */ font-weight: 600; letter-spacing: 0.14em; /* Base44-style tracking */ text-transform: uppercase; color: rgba(96,165,250,.85); margin-bottom: 0.5rem; /* Optical alignment */ line-height: 1; } .site-nav{ display:flex; align-items:center; gap:18px; } .nav-link{ text-decoration:none; color:var(--muted); padding:8px 10px; border-radius:999px; border:1px solid transparent; } .nav-link:hover{ color:var(--text); border-color: rgba(255,255,255,.14); background: rgba(255,255,255,.03); } .nav-link.is-active{ color:var(--text); border-color: rgba(96,165,250,.35); background: rgba(96,165,250,.10); } .nav-toggle{ display:none; appearance:none; border:1px solid rgba(255,255,255,.16); background: rgba(255,255,255,.03); color:var(--text); padding:10px 12px; border-radius:999px; } .nav-toggle-bars{ display:block; width:18px; height:2px; background: currentColor; position:relative; } .nav-toggle-bars::before, .nav-toggle-bars::after{ content:""; position:absolute; left:0; width:18px; height:2px; background: currentColor; } .nav-toggle-bars::before{top:-6px} .nav-toggle-bars::after{top:6px} /* Main */ .site-main{min-height:60vh} /* Hero */ .hero{ position:relative; padding: 96px 0 72px; overflow:hidden; } .hero-bg{ position:absolute; inset:0; background: radial-gradient(900px 600px at 20% 20%, rgba(96,165,250,.18), transparent 60%), radial-gradient(900px 600px at 80% 30%, rgba(34,211,238,.16), transparent 62%), radial-gradient(900px 600px at 70% 80%, rgba(251,146,60,.10), transparent 62%), linear-gradient(135deg, rgba(2,6,23,1), rgba(15,23,42,1)); opacity:1; } .hero-inner{ position:relative; text-align:center; } .kicker{ display:inline-block; margin:0 0 18px; padding:8px 14px; border-radius:2px; background: rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.10); color: rgba(226,232,240,.80); font-weight:600; letter-spacing:.5px; font-size:.92rem; } h1{ margin:0 0 14px; font-size: clamp(2.3rem, 4.8vw, 4.5rem); line-height:1.05; letter-spacing:-.02em; } .lead{ margin: 0 auto 10px; max-width: 60ch; font-size: 1.15rem; color: rgba(226,232,240,.86); } .sublead{ margin: 0 auto 24px; max-width: 62ch; color: var(--muted2); } .hero-actions{ display:flex; gap:12px; justify-content:center; flex-wrap:wrap; margin-top: 18px; } .btn{ display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:12px 16px; border-radius: 999px; border: 1px solid rgba(255,255,255,.16); background: rgba(255,255,255,.03); color: var(--text); text-decoration:none; font-weight:600; transition: transform .15s ease, background .15s ease, border-color .15s ease; } .btn:hover{transform: translateY(-1px); background: rgba(255,255,255,.05); border-color: rgba(255,255,255,.22);} .btn.primary{ border-color: rgba(96,165,250,.35); background: linear-gradient(90deg, rgba(96,165,250,.22), rgba(34,211,238,.18)); } .btn.ghost{ background: transparent; } .btn[disabled], button.btn[disabled]{ opacity:.55; cursor:not-allowed; transform:none !important; } .section{ padding: 72px 0; } .section-header{ margin-bottom: 26px; text-align: center; } .section-header h1, .section-header h2{ margin: 0.25rem 0 0; font-size: clamp(2.25rem, 5vw, 3.25rem); line-height: 1.1; letter-spacing: -0.015em; } .muted{color: var(--muted2)} .small{font-size:.95rem} .grid{ display:grid; gap:16px; } .cards-3{grid-template-columns: repeat(3, minmax(0, 1fr));} .cards-2{grid-template-columns: repeat(2, minmax(0, 1fr));} .card{ border-radius: var(--radius); border:1px solid var(--border); background: rgba(255,255,255,.03); padding: 18px 18px; box-shadow: 0 10px 30px rgba(0,0,0,.20); position:relative; overflow:hidden; transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease; } .card::before{ content:""; position:absolute; inset:-80px; background: radial-gradient(500px 260px at 15% 10%, rgba(96,165,250,.22), transparent 55%), radial-gradient(420px 240px at 70% 0%, rgba(34,211,238,.18), transparent 60%); opacity:.30; pointer-events:none; } .card:hover{ transform: translateY(-2px); border-color: rgba(96,165,250,.28); box-shadow: 0 16px 44px rgba(0,0,0,.30); } .card-icon{ width:44px; height:44px; border-radius: 14px; display:inline-flex; align-items:center; justify-content:center; background: rgba(96,165,250,.10); border:1px solid rgba(96,165,250,.18); box-shadow: 0 10px 25px rgba(0,0,0,.22); margin:0 0 12px; } .card-icon .icon{ width:22px; height:22px; display:block; opacity:.92; filter: drop-shadow(0 8px 12px rgba(0,0,0,.35)); } .card h3{ margin:0 0 8px; font-size: 1.15rem; } .card p{margin:0; color: rgba(226,232,240,.78)} /* Iconography (drop-in friendly: swap SVGs in /assets/icons) */ .card-icon{ width:44px; height:44px; border-radius:14px; display:inline-flex; align-items:center; justify-content:center; margin: 0 0 12px; background: rgba(96,165,250,.10); border:1px solid rgba(96,165,250,.18); box-shadow: 0 10px 30px rgba(0,0,0,.25); } .card-icon .icon{ width:22px; height:22px; display:block; opacity:.95; filter: drop-shadow(0 6px 10px rgba(0,0,0,.35)); } @media (prefers-reduced-motion:no-preference){ .card::before{ transition: opacity .18s ease; } .card:hover::before{ opacity:.45; } } .card.featured{ grid-column: 1 / -1; padding: 22px; background: linear-gradient(90deg, rgba(96,165,250,.10), rgba(34,211,238,.08)); } .card-actions{ display:flex; flex-wrap:wrap; gap:10px; margin-top:14px; } /* Blue */ .card-icon.icon-blue { background: linear-gradient( 180deg, rgba(96,165,250,.28), rgba(96,165,250,.12) ); border-color: rgba(96,165,250,.35); } /* Cyan */ .card-icon.icon-cyan { background: linear-gradient( 180deg, rgba(34,211,238,.28), rgba(34,211,238,.12) ); border-color: rgba(34,211,238,.35); } /* Teal */ .card-icon.icon-teal { background: linear-gradient( 180deg, rgba(20,184,166,.28), rgba(20,184,166,.12) ); border-color: rgba(20,184,166,.35); } /* Green */ .card-icon.icon-green { background: linear-gradient( 180deg, rgba(34,197,94,.28), rgba(34,197,94,.12) ); border-color: rgba(34,197,94,.35); } .elm-panels{ display:grid; gap:18px; } .elm-panels__footer{ margin: 6px 0 0; color: rgba(148,163,184,.82); max-width: 92ch; } .elm-panel{ border-radius: 18px; border: 1px solid rgba(255,255,255,.10); overflow:hidden; box-shadow: 0 20px 60px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.06); background: linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.02)); } .elm-panel--blue{ background: radial-gradient(1100px 520px at 30% 10%, rgba(96,165,250,.22), transparent 60%), linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.02)); } .elm-panel--teal{ background: radial-gradient(1100px 520px at 25% 15%, rgba(20,184,166,.22), transparent 60%), linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.02)); } .elm-panel__header{ display:flex; align-items:center; gap:16px; padding: 22px 22px 14px; } .elm-panel__icon{ width: 46px; height: 46px; border-radius: 14px; display:flex; align-items:center; justify-content:center; border: 1px solid rgba(255,255,255,.12); box-shadow: 0 14px 38px rgba(0,0,0,.35); } .elm-panel__icon .icon{ width: 22px; height: 22px; display:block; opacity: .98; filter: drop-shadow(0 10px 14px rgba(0,0,0,.35)); } .elm-panel__title{ margin:0; font-size: 1.35rem; line-height: 1.25; letter-spacing: -0.01em; } .elm-panel__body{ padding: 0 22px 22px; color: rgba(226,232,240,.82); } .elm-panel__body p{ margin: 0 0 14px; } .elm-panel__callout{ margin-top: 14px; margin-bottom: 14px; padding: 14px 16px; border-left: 2px solid rgba(34,211,238,.45); background: rgba(2,6,23,.22); border-radius: 12px; } .elm-panel__callout p:last-child{ margin-bottom: 0; } .elm-link{ color: rgba(34,211,238,.95); font-weight: 700; } .elm-panel__note{ margin-top: 12px; padding: 10px; font-style: italic; color: rgba(148,163,184,.78); } .elm-layer-grid{ margin-top: 12px; display:grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; } .elm-layer-card{ border-radius: 14px; border: 1px solid rgba(255,255,255,.10); background: rgba(255,255,255,.03); padding: 14px 14px 12px; box-shadow: 0 10px 30px rgba(0,0,0,.22); } .elm-layer-card p{ margin: 0; color: rgba(148,163,184,.85); } .elm-layer-card__title{ margin: 0 0 8px; font-size: 1rem; letter-spacing: -0.01em; } .elm-layer-card__title--green{ color: rgba(34,197,94,.92); } .elm-layer-card__title--cyan{ color: rgba(34,211,238,.92); } .elm-layer-card__title--blue{ color: rgba(96,165,250,.92); } .elm-layer-card__title--purple{ color: rgba(167,139,250,.92); } .elm-layer-card--full{ grid-column: 1 / -1; } @media (max-width: 900px){ .elm-layer-grid{ grid-template-columns: 1fr; } } .pullquote{ margin: 26px auto 0; max-width: 78ch; border-left: 4px solid rgba(96,165,250,.45); padding: 10px 0 10px 14px; color: rgba(226,232,240,.85); } .pullquote footer{ margin-top:8px; color: rgba(148,163,184,.85); font-size:.95rem; } /* Prose */ .prose{ max-width: 78ch; } .prose p{color: rgba(226,232,240,.80)} .prose ul{color: rgba(226,232,240,.80); margin: 10px 0 0 18px;} .prose li{margin: 8px 0} /* Tables */ .table-wrap{ max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; overflow:auto; border-radius: var(--radius); border:1px solid var(--border); background: rgba(255,255,255,.02); } table{ width:100%; border-collapse: collapse; min-width: 760px; } th, td{ text-align:left; padding: 14px 14px; border-bottom: 1px solid rgba(255,255,255,.08); vertical-align: top; } thead th{ font-size:.95rem; color: rgba(226,232,240,.86); background: rgba(255,255,255,.03); } tbody th{ color: rgba(226,232,240,.88); font-weight:700; width: 22%; } tbody td{color: rgba(226,232,240,.74)} .compare-wrap{ border-radius: 18px; border: 1px solid rgba(255,255,255,.10); background: radial-gradient(900px 420px at 25% 0%, rgba(96,165,250,.10), transparent 60%), radial-gradient(900px 420px at 85% 15%, rgba(34,211,238,.08), transparent 60%), rgba(255,255,255,.02); box-shadow: 0 20px 60px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.06); } table.compare{ min-width: 860px; } table.compare thead th{ background: rgba(255,255,255,.02); color: rgba(226,232,240,.86); font-weight: 700; letter-spacing: -0.01em; } table.compare th, table.compare td{ padding: 18px 18px; border-bottom: 1px solid rgba(255,255,255,.06); } table.compare tbody tr:last-child th, table.compare tbody tr:last-child td{ border-bottom: 0; } .compare__cap{ width: 40%; color: rgba(226,232,240,.88); } .compare__col{ width: 30%; text-align: center; } .compare__col--elm{ color: rgba(34,211,238,.92); } .compare__capability{ font-weight: 700; color: rgba(241,245,249,.92); } .compare__cell{ text-align: center; vertical-align: middle; } .compare__mark{ display: inline-flex; width: 34px; height: 34px; border-radius: 999px; align-items: center; justify-content: center; font-weight: 900; font-size: 1.05rem; line-height: 1; margin-bottom: 6px; border: 1px solid rgba(255,255,255,.10); background: rgba(2,6,23,.18); } .compare__mark--good{ color: rgba(34,197,94,.95); border-color: rgba(34,197,94,.28); background: rgba(34,197,94,.10); } .compare__mark--bad{ color: rgba(239,68,68,.95); border-color: rgba(239,68,68,.28); background: rgba(239,68,68,.10); } .compare__mark--mid{ color: rgba(250,204,21,.92); border-color: rgba(250,204,21,.22); background: rgba(250,204,21,.08); font-weight: 800; } .compare__sub{ font-size: 0.92rem; color: rgba(148,163,184,.82); max-width: 34ch; margin: 0 auto; } /* Fingerprint */ .fingerprint-figure{ margin:0; border-radius: var(--radius); border:1px solid var(--border); background: rgba(255,255,255,.02); padding: 18px; } .fingerprint-grid{ display:grid; gap: 10px; } .signal-row{ display:grid; grid-template-columns: 160px 1fr; gap: 14px; align-items:center; } .signal-label{ color: rgba(226,232,240,.82); font-weight:600; } .signal-line{ color: rgba(96,165,250,.85); } .sparkline{width:100%; height:62px; display:block} /* FAQ */ .faq-category{ margin-top: 30px; } .faq-category h2{ margin:0 0 12px; font-size: 1.25rem; } .faq-list{ display:grid; gap:12px; } .faq-item{ border-radius: var(--radius); border:1px solid var(--border); background: rgba(255,255,255,.03); padding: 8px 12px; } .faq-item summary{ cursor:pointer; list-style:none; font-weight:700; padding: 8px 4px; } .faq-item summary::-webkit-details-marker{display:none} .faq-answer{ padding: 8px 4px 12px; color: rgba(226,232,240,.78); } /* Footer */ .site-footer{ border-top: 1px solid rgba(255,255,255,.08); background: linear-gradient(180deg, rgba(2,6,23,1), rgba(2,6,23,.85)); padding: 56px 0 44px; } .footer-cta{ text-align:center; max-width: 78ch; margin: 0 auto 22px; } .footer-cta h2{ margin:0 0 10px; font-size: clamp(1.6rem, 2.6vw, 2.2rem); } .footer-cta p{margin:0; color: rgba(226,232,240,.74)} .footer-meta{ text-align:center; color: rgba(148,163,184,.78); font-size:.95rem; } .footer-meta .muted{margin-top:6px} /* Responsive */ @media (max-width: 900px){ .cards-3{grid-template-columns: 1fr;} .cards-2{grid-template-columns: 1fr;} table{min-width: 640px;} .signal-row{grid-template-columns: 1fr; gap:8px;} .signal-line{color: rgba(34,211,238,.85);} } @media (max-width: 720px){ .site-nav{ display:none; position:absolute; right:24px; top:62px; flex-direction:column; gap:10px; padding: 12px; border-radius: 14px; border:1px solid rgba(255,255,255,.14); background: rgba(2,6,23,.92); box-shadow: var(--shadow); min-width: 180px; } .site-nav.is-open{display:flex;} .nav-toggle{display:inline-flex} .hero{padding-top:84px} }