:root {
  --bg: #09090a;
  --bg-2: #101012;
  --panel: #141416;
  --panel-2: #18181b;
  --text: #f7f2f3;
  --muted: #b7afb1;
  --muted-2: #8c8588;
  --line: #2b2a2d;
  --red: #e82133;
  --red-2: #ff4052;
  --rose: #ff9aa5;
  --max: 1180px;
  --radius: 22px;
  --shadow: 0 24px 80px rgba(0,0,0,.34);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--text);
  background:
    radial-gradient(circle at 85% 10%, rgba(232,33,51,.11), transparent 26rem),
    radial-gradient(circle at 0% 65%, rgba(232,33,51,.06), transparent 24rem),
    var(--bg);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
img, svg { max-width: 100%; }
.container { width: min(calc(100% - 40px), var(--max)); margin: 0 auto; }
.skip-link { position: absolute; left: -9999px; top: auto; }
.skip-link:focus { left: 16px; top: 16px; z-index: 999; background: #fff; color: #000; padding: 10px 14px; border-radius: 8px; }

.site-header {
  position: sticky; top: 0; z-index: 50;
  background: rgba(9,9,10,.82);
  border-bottom: 1px solid rgba(255,255,255,.06);
  backdrop-filter: blur(18px);
}
.nav { min-height: 78px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.brand { display: flex; align-items: center; width: 190px; flex: 0 0 auto; }
.nav-links { display: flex; align-items: center; gap: 26px; color: #ddd6d8; font-size: 14px; }
.nav-links a:hover, .nav-links a:focus-visible { color: #fff; }
.nav-cta { padding: 11px 17px; border: 1px solid rgba(255,255,255,.18); border-radius: 999px; font-weight: 650; }
.nav-cta:hover { border-color: var(--red); background: rgba(232,33,51,.09); }
.menu-button { display: none; background: transparent; color: white; border: 1px solid var(--line); border-radius: 10px; padding: 8px 10px; }

.hero { padding: 88px 0 68px; overflow: hidden; }
.hero-grid { display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: 70px; }
.eyebrow { display: inline-flex; align-items: center; gap: 9px; color: #f0c8cd; text-transform: uppercase; letter-spacing: .16em; font-size: 12px; font-weight: 750; }
.eyebrow::before { content: ""; width: 28px; height: 2px; background: var(--red); }
h1 { font-size: clamp(48px, 6.3vw, 82px); line-height: .99; letter-spacing: -.052em; margin: 22px 0 24px; max-width: 760px; font-weight: 560; }
.hero h1 strong { font-weight: 720; color: #fff; }
.lede { color: #cfc8ca; font-size: clamp(18px, 2vw, 22px); max-width: 680px; margin: 0; }
.hero-actions { margin-top: 34px; display: flex; gap: 13px; flex-wrap: wrap; }
.button { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 20px; border-radius: 999px; font-weight: 700; border: 1px solid transparent; transition: .18s ease; }
.button.primary { background: var(--red); color: #fff; box-shadow: 0 12px 32px rgba(232,33,51,.22); }
.button.primary:hover { background: var(--red-2); transform: translateY(-1px); }
.button.secondary { border-color: #37353a; background: rgba(255,255,255,.02); }
.button.secondary:hover { border-color: #635d62; background: rgba(255,255,255,.04); }
.microcopy { margin-top: 22px; color: var(--muted-2); font-size: 13px; }

.hero-visual { position: relative; min-height: 580px; display: grid; place-items: center; }
.glow { position: absolute; width: 440px; height: 440px; background: radial-gradient(circle, rgba(232,33,51,.20), rgba(232,33,51,0) 70%); filter: blur(4px); }
.phone {
  width: 315px; min-height: 560px; position: relative; z-index: 2;
  padding: 13px; border-radius: 40px; background: linear-gradient(150deg, #252327, #0e0e10 55%);
  border: 1px solid #3b373c; box-shadow: var(--shadow), inset 0 1px 0 rgba(255,255,255,.08);
  transform: rotate(2deg);
}
.phone-screen { min-height: 534px; border-radius: 31px; overflow: hidden; background: #0e0e10; border: 1px solid #252329; }
.phone-top { display: flex; justify-content: space-between; align-items: center; padding: 18px 18px 10px; font-size: 11px; color: #aaa3a6; }
.profile-photo { height: 246px; position: relative; overflow: hidden; background:
  radial-gradient(circle at 50% 28%, #d6b6ad 0 13%, transparent 13.5%),
  radial-gradient(ellipse at 50% 67%, #29262a 0 28%, transparent 28.5%),
  linear-gradient(135deg, #611a27, #1b1b1e 62%, #3a1520);
}
.profile-photo::before { content:""; position:absolute; inset:0; background: linear-gradient(180deg, transparent 55%, rgba(0,0,0,.66)); }
.verified-pill { position: absolute; left: 16px; bottom: 14px; display: inline-flex; gap: 7px; align-items: center; background: rgba(10,10,11,.82); border: 1px solid rgba(255,255,255,.15); padding: 7px 10px; border-radius: 999px; font-size: 11px; }
.verified-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--red); box-shadow: 0 0 0 4px rgba(232,33,51,.13); }
.profile-info { padding: 18px; }
.name-row { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }
.name-row h3 { font-size: 25px; margin: 0; }
.name-row span { color: #aaa3a6; font-size: 12px; }
.tags { display: flex; flex-wrap: wrap; gap: 7px; margin: 12px 0 18px; }
.tag { border: 1px solid #323035; background: #171719; color: #ccc5c7; font-size: 11px; padding: 5px 8px; border-radius: 999px; }
.score-card { border: 1px solid #322f34; background: linear-gradient(150deg, #171719, #111113); border-radius: 18px; padding: 14px; }
.score-top { display:flex; justify-content:space-between; align-items:center; font-size:12px; color:#b8b0b3; }
.score { font-size: 33px; font-weight: 740; letter-spacing:-.04em; color:white; }
.score em { color: var(--red); font-style:normal; }
.meter { height: 6px; margin-top: 8px; background:#2b292d; border-radius:99px; overflow:hidden; }
.meter span { display:block; width:87%; height:100%; background:linear-gradient(90deg,var(--red),#ff7180); }
.floating-card { position: absolute; z-index: 3; width: 220px; background: rgba(18,18,20,.94); border: 1px solid #343136; box-shadow: var(--shadow); border-radius: 18px; padding: 15px 16px; backdrop-filter: blur(12px); }
.floating-card strong { display: block; font-size: 13px; margin-bottom: 5px; }
.floating-card span { color: #aaa3a6; font-size: 12px; }
.card-a { left: 2%; top: 18%; }
.card-b { right: 0; bottom: 14%; }
.card-icon { width: 32px; height: 32px; border-radius: 10px; display:grid; place-items:center; background:rgba(232,33,51,.12); border:1px solid rgba(232,33,51,.25); margin-bottom:10px; color:#ff6978; }

.proof-strip { border-top: 1px solid rgba(255,255,255,.06); border-bottom: 1px solid rgba(255,255,255,.06); background: rgba(255,255,255,.018); }
.proof-grid { display: grid; grid-template-columns: 1.2fr repeat(3,1fr); }
.proof-intro, .proof-stat { padding: 27px 24px; }
.proof-stat { border-left: 1px solid rgba(255,255,255,.07); }
.proof-intro { color: #c9c2c4; font-size: 13px; }
.proof-intro strong { display:block; color:white; font-size:15px; margin-bottom:5px; }
.proof-stat b { display:block; font-size: 30px; letter-spacing:-.035em; color:white; }
.proof-stat span { color:#a9a2a5; font-size:12px; line-height:1.35; display:block; margin-top:2px; }

.section { padding: 104px 0; }
.section.compact { padding: 72px 0; }
.section-header { max-width: 800px; margin-bottom: 48px; }
.kicker { color: var(--red-2); font-weight: 750; text-transform: uppercase; letter-spacing: .12em; font-size: 12px; margin-bottom: 14px; }
h2 { margin: 0; font-size: clamp(36px, 5vw, 60px); line-height: 1.04; letter-spacing: -.042em; font-weight: 560; }
.section-header p { color: var(--muted); font-size: 18px; max-width: 720px; }

.cards-3, .cards-4 { display: grid; gap: 18px; }
.cards-3 { grid-template-columns: repeat(3,1fr); }
.cards-4 { grid-template-columns: repeat(4,1fr); }
.card { position: relative; overflow:hidden; min-height: 250px; border-radius: var(--radius); border: 1px solid #2d2b30; background: linear-gradient(155deg,#171719,#101012); padding: 27px; }
.card::before { content:""; position:absolute; inset:0 auto auto 0; width:4px; height:64px; background:var(--red); }
.card-index { color:#6f686c; font-size:12px; letter-spacing:.1em; margin-bottom:44px; display:block; }
.card h3 { margin: 0 0 12px; font-size: 23px; letter-spacing: -.025em; }
.card p { margin: 0; color:#aaa3a6; font-size:14px; }
.card .small-note { margin-top:16px; color:#716a6e; font-size:11px; }

.manifesto { position:relative; overflow:hidden; border-top:1px solid rgba(255,255,255,.06); border-bottom:1px solid rgba(255,255,255,.06); background:
  linear-gradient(90deg, rgba(232,33,51,.09), transparent 36%), #0d0d0f; }
.manifesto .container { padding-top: 92px; padding-bottom: 92px; }
.manifesto blockquote { margin:0; max-width:980px; font-size:clamp(38px,5.5vw,72px); line-height:1.03; letter-spacing:-.05em; font-weight:570; }
.manifesto blockquote em { color:var(--red-2); font-style:normal; }
.manifesto p { color:#aaa3a6; max-width:740px; font-size:18px; margin:25px 0 0; }

.journey { display:grid; grid-template-columns: repeat(5,1fr); gap:12px; counter-reset: journey; }
.journey-step { min-height: 200px; border-top: 1px solid #403d41; padding: 22px 12px 0 0; }
.journey-step::before { counter-increment: journey; content: "0" counter(journey); color: var(--red-2); font-size: 11px; font-weight:700; letter-spacing:.1em; }
.journey-step h3 { margin: 20px 0 9px; font-size:18px; }
.journey-step p { color:#938c90; font-size:13px; margin:0; }

.partner-panel { display:grid; grid-template-columns: .9fr 1.1fr; gap: 44px; align-items:start; background:linear-gradient(155deg,#151517,#0e0e10); border:1px solid #2d2b2f; border-radius:28px; padding:44px; }
.partner-panel h2 { font-size:clamp(38px,4.6vw,58px); }
.partner-panel .copy p { color:#b4adaf; font-size:17px; }
.partner-list { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.partner-item { border:1px solid #302e32; border-radius:16px; padding:19px; background:#111113; }
.partner-item strong { display:block; margin-bottom:7px; }
.partner-item span { color:#938c90; font-size:13px; }

.stage { display:flex; align-items:center; gap:13px; margin-top:25px; color:#c3bbbe; font-size:13px; }
.stage .pulse { width:10px;height:10px;border-radius:50%; background:var(--red); box-shadow:0 0 0 7px rgba(232,33,51,.1); }

.cta { text-align:center; padding: 112px 0 120px; }
.cta h2 { max-width: 850px; margin: 0 auto 20px; }
.cta p { max-width: 700px; margin: 0 auto 31px; color:#aaa3a6; font-size:18px; }

.site-footer { border-top:1px solid rgba(255,255,255,.07); background:#070708; padding:42px 0 28px; }
.footer-grid { display:grid; grid-template-columns:1.2fr .8fr .8fr; gap:40px; }
.footer-logo { width:180px; margin-bottom:15px; }
.footer-copy { color:#7e777a; max-width:440px; font-size:13px; }
.footer-col strong { display:block; margin-bottom:12px; font-size:13px; }
.footer-col a { display:block; color:#989194; font-size:13px; padding:4px 0; }
.footer-col a:hover { color:#fff; }
.footer-bottom { margin-top:34px; padding-top:18px; border-top:1px solid #1e1d20; display:flex; justify-content:space-between; gap:20px; color:#6f696c; font-size:11px; }

.page-hero { padding: 88px 0 56px; border-bottom:1px solid rgba(255,255,255,.06); }
.page-hero h1 { font-size:clamp(46px,6vw,72px); max-width:850px; }
.page-hero p { max-width:760px; color:#bbb4b6; font-size:19px; }
.prose { max-width:860px; }
.prose h2 { font-size:34px; margin:50px 0 18px; }
.prose h3 { font-size:21px; margin:32px 0 10px; }
.prose p, .prose li { color:#b0a9ac; }
.prose a { color:#f5c3c8; text-decoration:underline; text-underline-offset:3px; }
.prose ul { padding-left:20px; }
.notice { background:#151417; border:1px solid #322f34; border-left:4px solid var(--red); border-radius:16px; padding:20px 22px; color:#c8c1c3; }

.contact-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:48px; }
.contact-card { border:1px solid #302e32; background:#111113; border-radius:24px; padding:30px; }
.contact-card h3 { margin-top:0; }
.contact-card p, .contact-card li { color:#9e979a; font-size:14px; }
.form { display:grid; gap:17px; }
.field-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
label { display:block; font-size:12px; font-weight:700; color:#d6cfd1; margin-bottom:7px; }
input, select, textarea { width:100%; border:1px solid #343136; background:#0d0d0f; color:white; border-radius:12px; padding:13px 14px; outline:none; }
input:focus, select:focus, textarea:focus { border-color:#8c3944; box-shadow:0 0 0 3px rgba(232,33,51,.08); }
textarea { min-height:150px; resize:vertical; }
.form-status { min-height:22px; font-size:13px; color:#bdb5b8; }
.hp { position:absolute !important; left:-10000px !important; width:1px !important; height:1px !important; overflow:hidden !important; }

@media (max-width: 980px) {
  .hero-grid, .partner-panel, .contact-grid { grid-template-columns:1fr; }
  .hero { padding-top:64px; }
  .hero-visual { min-height:530px; margin-top:20px; }
  .cards-4 { grid-template-columns:1fr 1fr; }
  .cards-3 { grid-template-columns:1fr; }
  .proof-grid { grid-template-columns:1fr 1fr; }
  .proof-stat:nth-child(2) { border-left:0; }
  .proof-intro { grid-column:1 / -1; border-bottom:1px solid rgba(255,255,255,.06); }
  .journey { grid-template-columns:1fr 1fr; }
  .partner-list { grid-template-columns:1fr; }
}
@media (max-width: 760px) {
  .container { width:min(calc(100% - 28px),var(--max)); }
  .nav { min-height:68px; }
  .brand { width:165px; }
  .menu-button { display:block; }
  .nav-links { position:absolute; top:68px; left:0; right:0; display:none; flex-direction:column; align-items:stretch; gap:0; background:#0b0b0c; border-bottom:1px solid #242326; padding:12px 18px 18px; }
  .nav-links.open { display:flex; }
  .nav-links a { padding:12px 4px; }
  .nav-cta { text-align:center; margin-top:6px; }
  h1 { font-size:50px; }
  .hero-visual { min-height:500px; transform:scale(.92); margin-inline:-18px; }
  .floating-card { width:190px; }
  .card-a { left:-2%; }
  .card-b { right:-2%; }
  .proof-grid, .cards-4, .journey, .footer-grid, .field-row { grid-template-columns:1fr; }
  .proof-intro { grid-column:auto; }
  .proof-stat { border-left:0; border-top:1px solid rgba(255,255,255,.06); }
  .section { padding:78px 0; }
  .partner-panel { padding:28px; }
  .footer-bottom { flex-direction:column; }
}
@media (prefers-reduced-motion: reduce) {
  * { scroll-behavior:auto !important; transition:none !important; animation:none !important; }
}

/* Brand and responsive polish */
.source-link { color: #d7cfd2; text-decoration: underline; text-underline-offset: 3px; }
.source-link:hover, .source-link:focus-visible { color: #fff; }
:focus-visible { outline: 2px solid var(--red-2); outline-offset: 4px; }
@media (min-width: 1100px) {
  .hero { padding-top: 112px; padding-bottom: 92px; }
  .hero-grid { grid-template-columns: 1fr 1fr; gap: 96px; }
  .hero-visual { transform: scale(1.06); }
  .section { padding-top: 112px; padding-bottom: 112px; }
}

.human-moment, .real-world-moment { padding: 84px 0; border-bottom: 1px solid rgba(255,255,255,.06); }
.human-moment-grid, .real-world-grid { display:grid; grid-template-columns: .82fr 1.18fr; align-items:center; gap:64px; }
.real-world-grid { grid-template-columns: 1.12fr .88fr; }
.human-moment-copy h2, .real-world-copy h2 { margin:16px 0 18px; max-width:520px; font-size:clamp(34px,4vw,58px); line-height:1.04; letter-spacing:-.045em; }
.human-moment-copy p, .real-world-copy p { color:#b7afb1; max-width:500px; font-size:17px; }
.image-placeholder { margin:0; position:relative; min-height:360px; overflow:hidden; border:1px solid #3a3438; border-radius:24px; background:linear-gradient(135deg,#27151b,#111114 58%,#35141d); box-shadow:var(--shadow); }
.image-placeholder-date { min-height:330px; background:linear-gradient(135deg,#171a1b,#2a1b1d 58%,#111114); }
.placeholder-label { position:absolute; top:18px; left:18px; z-index:4; color:#f1c9ce; font-size:10px; letter-spacing:.14em; font-weight:750; }
.image-placeholder figcaption { position:absolute; left:18px; right:18px; bottom:16px; z-index:4; color:#d5cdcf; font-size:12px; }
.placeholder-scene { position:absolute; inset:0; opacity:.9; }
.scene-orb { position:absolute; border-radius:50%; filter:blur(1px); }
.orb-one { width:260px; height:260px; left:12%; top:14%; background:radial-gradient(circle at 62% 34%,#c88979 0 7%,transparent 7.5%),radial-gradient(circle at 58% 58%,#61363a 0 25%,transparent 25.5%),linear-gradient(140deg,#6e2732,#241820 68%); }
.orb-two { width:210px; height:210px; right:13%; bottom:12%; background:radial-gradient(circle at 42% 30%,#d9a68f 0 8%,transparent 8.5%),radial-gradient(ellipse at 48% 68%,#302327 0 30%,transparent 30.5%),linear-gradient(140deg,#aa5a4e,#25181b 72%); }
.scene-table { position:absolute; left:12%; right:10%; bottom:17%; height:28px; border-radius:50%; background:#8f4b3d; transform:rotate(-3deg); box-shadow:0 10px 0 #2a1519; }
.scene-person { position:absolute; width:82px; height:150px; bottom:21%; border-radius:46% 46% 18% 18%; background:linear-gradient(160deg,#b66b60,#371f27 68%); }
.person-one { left:30%; transform:rotate(7deg); }.person-two { right:27%; transform:rotate(-9deg); background:linear-gradient(160deg,#d09579,#302027 68%); }
.scene-window { position:absolute; inset:12% 18% 24%; border:1px solid rgba(255,255,255,.17); background:linear-gradient(150deg,rgba(234,191,161,.3),rgba(84,48,48,.08)); }
.table-two { left:18%; right:18%; bottom:22%; background:#5f4038; }
.person-three { left:31%; bottom:24%; }.person-four { right:29%; bottom:24%; background:linear-gradient(160deg,#b98269,#252027 68%); }
@media (max-width:760px){.human-moment,.real-world-moment{padding:64px 0}.human-moment-grid,.real-world-grid{grid-template-columns:1fr;gap:30px}.real-world-copy{order:-1}.image-placeholder,.image-placeholder-date{min-height:280px}.human-moment-copy h2,.real-world-copy h2{font-size:38px}}
@media (max-width: 760px) {
  .hero { padding-top: 58px; padding-bottom: 54px; }
  .hero h1 { font-size: clamp(44px, 13vw, 58px); letter-spacing: -.06em; }
  .lede { font-size: 17px; line-height: 1.55; }
  .hero-actions .button { width: 100%; }
  .hero-visual { min-height: 470px; transform: scale(.84); margin: -12px -38px -16px; }
  .section-header h2 { text-wrap: balance; }
  .cards-3 .card, .cards-4 .card { padding: 22px 20px; }
}
.image-placeholder img{display:block;width:100%;height:100%;min-height:inherit;object-fit:cover;object-position:center;border-radius:inherit}.image-placeholder-human img{object-position:center 54%}.image-placeholder-date img{object-position:center 48%}@media(max-width:760px){.image-placeholder-human img{object-position:58% 52%}.image-placeholder-date img{object-position:50% 46%}}
.image-placeholder{height:360px}.image-placeholder-date{height:330px}.image-placeholder img{position:absolute;inset:0}@media(max-width:760px){.image-placeholder,.image-placeholder-date{height:280px}}
