:root {
    --bg: #171717;
    --bg-2: #1c1c1c;
    --surface: #27272a;
    --surface-soft: rgba(39,39,42,.6);
    --border: #404040;
    --border-soft: rgba(64,64,64,.55);
    --hairline: rgba(245,245,244,.08);
    --text: #f5f5f4;
    --dim: #a8a29e;
    --dim-2: #737373;
    --gain: #22c55e;
    --gain-soft: rgba(34,197,94,.10);
    --gain-line: rgba(34,197,94,.28);
    --loss: #ef5350;
    --warning: #f59e0b;
    --info: #60a5fa;
    --info-soft: rgba(96,165,250,.10);
    --info-line: rgba(96,165,250,.28);
    --tx-buy: #2dd4bf;
    --tx-sell: #fed7aa;
    --tx-dividend: #c4b5fd;
    --display: 'GFS Neohellenic', Georgia, serif;
    --sans: 'Noto Sans', system-ui, sans-serif;
    --mono: 'Noto Sans Mono', ui-monospace, monospace;
}
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
html { scrollbar-color: var(--border) transparent; scrollbar-width: thin; }
body {
    font-family: var(--sans);
    background: var(--bg);
    color: var(--text);
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
    line-height: 1.5;
    background-image:
        radial-gradient(ellipse 80% 60% at 80% -10%, rgba(34,197,94,.07), transparent 60%),
        radial-gradient(ellipse 60% 40% at -10% 30%, rgba(96,165,250,.04), transparent 60%);
}
a { color: inherit; text-decoration: none; }
::selection { background: rgba(34,197,94,.30); color: var(--text); }

.w { max-width: 1200px; margin: 0 auto; padding: 0 28px; }
.w-narrow { max-width: 880px; margin: 0 auto; padding: 0 28px; }

.num { font-family: var(--mono); font-feature-settings: "tnum"; }
.display { font-family: var(--display); font-weight: 700; letter-spacing: -0.01em; }

.btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    height: 44px; padding: 0 22px; border-radius: 8px;
    font-family: var(--sans); font-size: 14px; font-weight: 600;
    border: 1px solid transparent; cursor: pointer;
    transition: background .18s ease, border-color .18s ease, transform .18s ease, color .18s ease;
    white-space: nowrap;
}
.btn-primary { background: var(--text); color: var(--bg); }
.btn-primary:hover { background: #ffffff; transform: translateY(-1px); }
.btn-arrow { width: 16px; height: 16px; display: block; transition: transform .18s ease; }
.btn-primary:hover .btn-arrow { transform: translateX(3px); }
.btn-ghost { background: transparent; color: var(--text); border-color: var(--border); }
.btn-ghost:hover { border-color: var(--text); }
.btn-link { background: transparent; color: var(--dim); padding: 0 4px; height: auto; }
.btn-link:hover { color: var(--text); }

nav {
    position: sticky; top: 0; z-index: 99;
    background: rgba(23,23,23,.78);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border-bottom: 1px solid var(--hairline);
}
nav .w { display: flex; align-items: center; justify-content: space-between; height: 64px; }
.logo { display: flex; align-items: center; gap: 10px; }
.logo img { display: block; height: 38px; width: auto; }
.beta-badge {
    font-family: var(--mono); font-size: 10px; font-weight: 600;
    color: var(--warning); background: rgba(245,158,11,.10);
    border: 1px solid rgba(245,158,11,.28);
    padding: 2px 7px; border-radius: 4px; letter-spacing: 1px;
}
.nav-r { display: flex; align-items: center; gap: 24px; }
.nav-r .btn { height: 38px; padding: 0 16px; font-size: 13px; }

.eyebrow {
    display: inline-flex; align-items: center; gap: 10px;
    font-family: var(--mono); font-size: 11px; font-weight: 500;
    color: var(--dim); text-transform: uppercase; letter-spacing: 1.6px;
}
.eyebrow::before {
    content: ""; width: 22px; height: 1px; background: var(--gain);
    display: inline-block;
}
.eyebrow.center { justify-content: center; }
.eyebrow.center::after {
    content: ""; width: 22px; height: 1px; background: var(--gain);
    display: inline-block;
}

.hero { padding: 84px 0 96px; position: relative; }
.hero .w { position: relative; z-index: 1; display: grid; grid-template-columns: 5fr 6fr; gap: 64px; align-items: center; }
.hero-l { min-width: 0; }
.hero h1 {
    font-family: var(--display); font-weight: 700;
    font-size: clamp(34px, 4.4vw, 52px);
    line-height: 1.08; letter-spacing: -0.02em;
    margin: 0 0 20px;
}
.hero-sub {
    font-size: 17px; line-height: 1.65; color: var(--dim);
    max-width: 520px; margin-bottom: 36px;
}
.hero-buttons {
    display: flex; gap: 12px; flex-wrap: wrap; align-items: center;
    margin-bottom: 36px;
}
.hero h1 .beat {
    display: inline-block;
    animation: beatIn .7s cubic-bezier(.22,.61,.36,1) both;
}
.hero h1 .beat:nth-child(1) { animation-delay: .05s; }
.hero h1 .beat:nth-child(2) { animation-delay: .13s; }
.hero h1 .beat:nth-child(3) { animation-delay: .21s; }
.hero-sub { animation: beatIn .7s cubic-bezier(.22,.61,.36,1) .29s both; }
.hero-buttons { animation: beatIn .7s cubic-bezier(.22,.61,.36,1) .37s both; }
.hero .eyebrow { animation: beatIn .7s cubic-bezier(.22,.61,.36,1) .45s both; }
@keyframes beatIn {
    from { opacity: 0; transform: translateY(14px); }
    to   { opacity: 1; transform: none; }
}
.hero h1 .accent {
    color: var(--gain);
    font-style: italic;
    position: relative;
}
.hero h1 .accent::after {
    content: "."; color: var(--text); font-style: normal;
}
.hero-r { min-width: 0; }

.brokers { padding: 56px 0; border-top: 1px solid var(--hairline); border-bottom: 1px solid var(--hairline); }
.brokers-label {
    text-align: center; font-family: var(--mono); font-size: 11px; color: var(--dim-2);
    text-transform: uppercase; letter-spacing: 2px; margin-bottom: 28px;
}
.broker-grid {
    display: flex; flex-wrap: wrap; justify-content: center; gap: 12px;
    list-style: none; max-width: 660px; margin: 0 auto;
}
.broker-grid li {
    width: 62px; height: 62px;
    display: grid; place-items: center;
    border: 1px solid var(--hairline); border-radius: 12px;
    background: var(--surface-soft);
    transition: border-color .18s ease, transform .18s ease;
}
.broker-grid li:hover { border-color: var(--border); transform: translateY(-2px); }
.broker-grid img {
    width: 30px; height: 30px; object-fit: contain;
    filter: grayscale(1); opacity: .72;
    transition: filter .18s ease, opacity .18s ease;
}
.broker-grid li:hover img { filter: none; opacity: 1; }

.coverage {
    display: flex; justify-content: center; list-style: none;
    margin: 32px auto 0;
}
.coverage li {
    display: flex; flex-direction: column; align-items: center; gap: 5px;
    padding: 0 34px;
}
.coverage li + li { border-left: 1px solid var(--hairline); }
.coverage-n {
    font-size: 26px; font-weight: 600; color: var(--text);
    line-height: 1; letter-spacing: -0.01em;
    min-width: 6ch; text-align: center;
}
.coverage-l {
    font-family: var(--mono); font-size: 11px; color: var(--dim-2);
    text-transform: uppercase; letter-spacing: 2px;
}

.section { padding: 112px 0; }
.ruled { border-top: 1px solid var(--hairline); }
.section-head { max-width: 720px; margin: 0 auto 64px; text-align: center; }
.section-head h2 {
    font-family: var(--display); font-weight: 700;
    font-size: clamp(32px, 3.6vw, 46px); line-height: 1.1; letter-spacing: -0.015em;
    margin: 18px 0 14px;
}
.section-head p { color: var(--dim); font-size: 17px; max-width: 560px; margin: 0 auto; }

.why-steps { list-style: none; }
.why-step {
    display: grid; grid-template-columns: 68px minmax(0, 4fr) minmax(0, 6fr);
    gap: 0 48px;
    align-items: center;
    padding: 40px 0;
}
.why-step:first-child { padding-top: 0; }
.why-step:last-child { padding-bottom: 0; }
.why-gutter { position: relative; align-self: stretch; display: flex; align-items: center; justify-content: center; }
.why-gutter::before {
    content: ""; position: absolute; left: 50%; margin-left: -.5px;
    top: 0; bottom: 0; width: 1px; background: var(--hairline);
}
.why-step:first-child .why-gutter::before { top: 50%; }
.why-step:last-child .why-gutter::before { bottom: 50%; }
.why-num {
    position: relative; width: 100%; text-align: center;
    font-family: var(--display); font-weight: 700; font-size: 40px;
    line-height: 1; color: var(--gain);
    background: var(--bg); padding: 12px 0;
}
.why-step h3 {
    font-family: var(--display); font-weight: 700;
    font-size: 28px; line-height: 1.15; letter-spacing: -0.01em;
    margin-bottom: 14px;
}
.why-ico {
    width: 20px; height: 20px; display: inline-block;
    vertical-align: -3px; margin-left: 10px; color: var(--gain);
}
.why-step p { color: var(--dim); font-size: 16px; line-height: 1.65; }

.why-frags { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; align-items: start; list-style: none; }
.why-frag {
    border: 1px solid var(--border); border-radius: 10px;
    background: var(--surface-soft); padding: 12px 14px 14px; color: var(--dim);
}
.why-frag:nth-child(1) { transform: rotate(-1.4deg); }
.why-frag:nth-child(2) { transform: rotate(1deg); }
.why-frag-label {
    display: block; margin-bottom: 10px; padding-bottom: 8px;
    border-bottom: 1px solid var(--hairline);
    font-family: var(--mono); font-size: 10px; text-transform: uppercase;
    letter-spacing: 1px; line-height: 1.45; color: var(--dim-2);
}
.why-frag table { width: 100%; border-collapse: collapse; font-family: var(--mono); font-size: 11px; }
.why-frag th { text-align: start; font-weight: 400; color: rgba(168,162,158,.65); padding-bottom: 6px; white-space: nowrap; }
.why-frag td { padding: 4px 0; white-space: nowrap; }
.why-frag td + td, .why-frag th + th { padding-inline-start: 10px; }
.why-frag .r { text-align: end; }
.why-flow { position: relative; min-width: 0; }
.why-merge {
    position: absolute; top: 100%; left: 0; right: 0;
    pointer-events: none; line-height: 0;
}
.why-merge svg { display: block; width: 100%; height: auto; }
.why-merge .flow {
    fill: none; stroke: var(--hairline); stroke-width: 1;
    vector-effect: non-scaling-stroke;
}
.why-merge .head {
    fill: none; stroke: var(--gain); stroke-width: 1.5;
    stroke-linecap: round; stroke-linejoin: round;
    vector-effect: non-scaling-stroke;
}

.why-panel {
    background: var(--surface); border: 1px solid var(--border);
    border-radius: 14px; overflow: hidden;
    box-shadow: inset 0 1px 0 0 rgba(245,245,244,.10);
}
.why-payoff {
    border-color: var(--gain-line);
    box-shadow:
        inset 0 1px 0 0 rgba(245,245,244,.10),
        0 0 70px -28px rgba(34,197,94,.32);
}
.why-linkage {
    position: absolute; top: 100%; left: 0; right: 0;
    height: 100px; pointer-events: none;
}
.why-linkage::before {
    content: ""; position: absolute; left: 50%; top: 0; bottom: 0;
    width: 1px; margin-left: -.5px; background: var(--hairline);
}
.why-linkage-ico {
    position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
    display: grid; place-items: center;
    width: 34px; height: 34px; border-radius: 50%;
    background: var(--bg); border: 1px solid var(--gain-line);
    color: var(--gain);
}
.why-linkage-ico svg { width: 15px; height: 15px; display: block; }
.why-panel-head {
    display: flex; align-items: center; justify-content: space-between; gap: 16px;
    padding: 14px 18px; border-bottom: 1px solid var(--hairline);
    font-family: var(--mono); font-size: 11px; text-transform: uppercase;
    letter-spacing: 1.4px; color: var(--dim);
}
.why-row {
    display: flex; align-items: center; justify-content: space-between; gap: 16px;
    padding: 13px 18px; border-top: 1px solid rgba(245,245,244,.05);
    font-size: 14px;
}
.why-row:first-of-type { border-top: 0; }
.why-row-l { display: flex; align-items: center; gap: 12px; min-width: 0; }
.why-row-l .why-desc,
.why-outcome .why-desc { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.why-outcome .why-desc { color: var(--text); }
.why-row-l .why-desc { color: var(--dim); }
.why-txn {
    display: flex; align-items: center; gap: 12px;
    padding: 15px 18px 5px; font-size: 13.5px;
    border-top: 1px solid rgba(245,245,244,.05);
}
.why-txn:first-of-type { border-top: 0; }
.why-txn .s { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--dim); }
.why-txn .meta {
    font-family: var(--mono); font-size: 11.5px; color: var(--dim);
    margin-inline-start: auto; flex: none;
}
.why-tag {
    font-family: var(--mono); font-size: 10.5px;
    text-transform: uppercase; letter-spacing: .7px;
    padding: 2.5px 7px; border-radius: 4px;
    background: color-mix(in srgb, currentColor 10%, transparent);
    border: 1px solid color-mix(in srgb, currentColor 28%, transparent);
    white-space: nowrap; flex: none;
    width: 80px; text-align: center;
}
.why-tag-buy { color: var(--tx-buy); }
.why-tag-sell { color: var(--tx-sell); }
.why-tag-div { color: var(--tx-dividend); }
.why-to {
    position: relative; display: flex; align-items: center;
    justify-content: space-between; gap: 14px;
    margin: 0 18px 14px 46px; padding-top: 9px; font-size: 13px;
}
.why-to::before {
    content: ""; position: absolute; inset-inline-start: -24px; top: 0;
    height: 15px; width: 10px;
    border-inline-start: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
    border-end-start-radius: 4px;
}
.why-outcome { display: flex; align-items: center; gap: 12px; min-width: 0; }
.why-code {
    flex-shrink: 0; font-family: var(--mono); font-size: 12px;
    color: var(--info); border: 1px solid var(--info-line); background: var(--info-soft);
    padding: 2px 8px; border-radius: 5px;
    width: 52px; text-align: center;
}
.why-amt { font-family: var(--mono); font-variant-numeric: tabular-nums; color: var(--text); }
.why-link {
    padding: 16px 18px; border-top: 1px solid rgba(245,245,244,.05);
    font-family: var(--mono); font-size: 12px; color: var(--dim-2);
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.why-link b { color: var(--text); font-weight: 400; }
.why-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--gain); display: inline-block; }
@keyframes whyPulse { 0%, 100% { opacity: 1; } 50% { opacity: .4; } }
.why-active { animation: whyPulse 2s ease-in-out infinite; }

#portfolio { position: relative; }
#portfolio::before {
    content: ""; position: absolute; inset: 0; pointer-events: none;
    background: radial-gradient(ellipse 60% 55% at 32% 50%, rgba(34,197,94,.05), transparent 70%);
}
#portfolio .w { position: relative; }

.pf-split {
    display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr);
    gap: 64px; align-items: center;
}
.pf-copy { order: 2; }
.pf-copy h2 {
    font-family: var(--display); font-weight: 700;
    font-size: clamp(28px, 3vw, 38px); line-height: 1.12; letter-spacing: -0.015em;
    margin: 18px 0;
}
.pf-body { font-size: 17px; line-height: 1.65; color: var(--dim); }
.pf-note { margin-top: 20px; font-size: 14px; line-height: 1.6; color: var(--dim-2); }
.pf-panel {
    background: var(--surface); border: 1px solid var(--border);
    border-radius: 14px; overflow: hidden;
    transform: perspective(1400px) rotateY(9deg);
    box-shadow: inset 0 1px 0 0 rgba(245,245,244,.10);
}
.pf-chart {
    display: flex; align-items: stretch; gap: 24px;
    padding: 20px; border-bottom: 1px solid var(--hairline);
}
.pf-chart-l {
    flex: none; width: 156px;
    display: flex; flex-direction: column; align-items: center;
    justify-content: center; gap: 16px;
}
.pf-donut { width: 108px; height: 108px; flex: none; transform: rotate(-90deg); }
.pf-donut circle { fill: none; stroke-width: 20; }
.pf-slice-a { stroke: var(--tx-sell); stroke-dasharray: 190.70 314.16; }
.pf-slice-b { stroke: var(--info); stroke-dasharray: 123.46 314.16; stroke-dashoffset: -190.70; }
@keyframes pfDonutA { from { stroke-dasharray: 0 314.16; } to { stroke-dasharray: 190.70 314.16; } }
@keyframes pfDonutB { from { stroke-dasharray: 0 314.16; } to { stroke-dasharray: 123.46 314.16; } }
.pf-visual.show .pf-slice-a { animation: pfDonutA .9s cubic-bezier(.22,.61,.36,1) .15s both; }
.pf-visual.show .pf-slice-b { animation: pfDonutB .9s cubic-bezier(.22,.61,.36,1) .4s both; }
@keyframes pfPerfDraw { from { stroke-dashoffset: 1; } to { stroke-dashoffset: 0; } }
@keyframes pfFadeIn { from { opacity: 0; } to { opacity: 1; } }
.pf-visual.show .pf-perf-line {
    stroke-dasharray: 1;
    animation: pfPerfDraw 1.1s cubic-bezier(.22,.61,.36,1) .3s both;
}
.pf-visual.show .pf-perf-fill { animation: pfFadeIn .7s ease .8s both; }
.pf-legend { list-style: none; width: 100%; }
.pf-stats {
    flex: 1; min-width: 0;
    display: flex; flex-direction: column; justify-content: center;
    border-inline-start: 1px solid var(--hairline); padding-inline-start: 24px;
}
.pf-stat-list { list-style: none; }
.pf-legend li,
.pf-stat-list li { display: flex; align-items: center; gap: 10px; padding: 7px 0; font-size: 13px; }
.pf-perf { margin-bottom: 10px; }
.pf-perf svg { display: block; width: 100%; height: 58px; }
.pf-perf-fill { fill: url(#pfPerfGrad); stroke: none; }
.pf-perf-line {
    fill: none; stroke: var(--gain); stroke-width: 1.5;
    stroke-linejoin: round; stroke-linecap: round;
    vector-effect: non-scaling-stroke;
}
.pf-key { width: 9px; height: 9px; border-radius: 2px; flex: none; }
.pf-key-a { background: var(--tx-sell); }
.pf-key-b { background: var(--info); }
.pf-legend-l { color: var(--dim); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pf-legend-v { margin-inline-start: auto; color: var(--text); }
.pf-stat-ico {
    width: 14px; height: 14px; flex: none; color: var(--gain);
}
.pf-pos { color: var(--gain); }
.pf-neg { color: var(--warning); }
.pf-stat-ico.pf-neg { color: var(--warning); }

.pf-table { width: 100%; border-collapse: collapse; }
.pf-table th {
    font-family: var(--mono); font-size: 11px; font-weight: 400;
    text-transform: uppercase; letter-spacing: 1.2px;
    color: rgba(168,162,158,.7); text-align: start;
    padding: 16px 16px 12px; border-bottom: 1px solid var(--hairline);
}
.pf-table td {
    padding: 14px 16px; border-top: 1px solid rgba(245,245,244,.05);
    font-size: 14px; vertical-align: middle;
}
.pf-table tbody tr:first-child td { border-top: 0; }
.pf-table tbody tr { transition: background .18s ease; }
.pf-table tbody tr:hover { background: rgba(245,245,244,.025); }
.pf-table .r { text-align: end; }
.pf-sym { display: flex; align-items: center; gap: 9px; }
.pf-sym .t { font-family: var(--mono); font-size: 13.5px; color: var(--text); }
.pf-sym img, .pf-sym svg { width: 18px; height: 18px; flex: none; object-fit: contain; border-radius: 4px; }
.pf-name { display: block; margin-top: 3px; font-size: 12px; color: var(--dim); }
.pf-tag {
    font-family: var(--mono); font-size: 10.5px; text-transform: uppercase;
    letter-spacing: .7px; padding: 2.5px 7px; border-radius: 4px;
    color: var(--dim); border: 1px solid var(--border); white-space: nowrap;
}
.pf-stack { display: flex; align-items: center; justify-content: flex-end; }
.pf-stack img {
    width: 20px; height: 20px; border-radius: 50%;
    background: var(--bg); border: 1px solid var(--border);
    object-fit: contain; padding: 1px;
}
.pf-stack img + img { margin-inline-start: -7px; }
.pf-disclaimer {
    padding: 12px 16px; border-top: 1px solid var(--hairline);
    font-size: 12px; line-height: 1.5; color: var(--dim-2);
}
.pf-disclaimer::before {
    content: "*"; color: var(--gain); font-weight: 700; margin-right: 6px;
}

#privacy { position: relative; }
#privacy::before {
    content: ""; position: absolute; inset: 0; pointer-events: none;
    background: radial-gradient(ellipse 58% 60% at 68% 50%, rgba(34,197,94,.05), transparent 70%);
}
#privacy .w { position: relative; }

.pv-band {
    display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
    gap: 64px; align-items: start;
}
.pv-copy h2 {
    font-family: var(--display); font-weight: 700;
    font-size: clamp(28px, 3vw, 38px); line-height: 1.12; letter-spacing: -0.015em;
    margin: 18px 0 14px;
}
.pv-copy p { font-size: 16px; line-height: 1.65; color: var(--dim); }
.pv-claims { list-style: none; }
.pv-claims li {
    display: grid; grid-template-columns: 22px minmax(0, 1fr);
    gap: 16px; align-items: start;
    padding: 16px 4px;
    border-bottom: 1px solid var(--hairline);
}
.pv-claims li:first-child { padding-top: 0; }
.pv-claims li:last-child { padding-bottom: 0; border-bottom: 0; }
.pv-legal {
    margin-top: 12px; padding-inline-start: 42px;
    font-size: 13px; line-height: 1.6; color: var(--dim-2);
}
.pv-legal a { color: var(--dim); border-bottom: 1px solid var(--hairline); }
.pv-legal a:hover { color: var(--text); border-bottom-color: var(--dim); }
@keyframes pvRow { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
.pv-list.show .pv-claims li,
.pv-list.show .pv-legal { animation: pvRow .5s cubic-bezier(.22,.61,.36,1) both; }
.pv-list.show .pv-claims li:nth-child(1) { animation-delay: .12s; }
.pv-list.show .pv-claims li:nth-child(2) { animation-delay: .20s; }
.pv-list.show .pv-claims li:nth-child(3) { animation-delay: .28s; }
.pv-list.show .pv-claims li:nth-child(4) { animation-delay: .36s; }
.pv-list.show .pv-claims li:nth-child(5) { animation-delay: .44s; }
.pv-list.show .pv-legal { animation-delay: .52s; }
.pv-ico { color: var(--gain); margin-top: 3px; }
.pv-ico svg { width: 18px; height: 18px; display: block; }
.pv-claims p { font-size: 15.5px; line-height: 1.6; color: var(--dim); }
.pv-claims p strong { color: var(--text); font-weight: 600; }

#pricing .section-head { max-width: 820px; }
#pricing .section-head h2,
#pricing .section-head p { text-wrap: balance; }

.pyr {
    max-width: 820px; margin: 0 auto;
    background: var(--surface); border: 1px solid var(--border);
    border-radius: 14px; overflow: hidden;
    box-shadow:
        inset 0 1px 0 0 rgba(245,245,244,.10),
        0 0 80px -24px rgba(34,197,94,.2465),
        0 32px 100px -44px rgba(34,197,94,.34);
}
.pyr-table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.pyr-table thead .pyr-corner { width: 240px; }
.pyr-cap {
    caption-side: top; text-align: start;
    padding: 14px 20px; border-bottom: 1px solid var(--border);
    font-family: var(--mono); font-size: 11.5px; font-weight: 500;
    text-transform: uppercase; letter-spacing: 1.2px; color: var(--dim);
}
.pyr-table th, .pyr-table td { padding: 16px 20px; text-align: center; vertical-align: middle; }
.pyr-table thead th, .pyr-table thead td { padding-top: 13px; padding-bottom: 13px; }
.pyr-table tbody th[scope="row"] { text-align: start; font-weight: 400; }
.pyr-table tbody tr { border-top: 1px solid var(--hairline); }
.pyr-h {
    display: block;
    font-family: var(--mono); font-size: 11px; font-weight: 500;
    text-transform: uppercase; letter-spacing: 1.1px; line-height: 1.35;
    color: rgba(168,162,158,.7);
}
.pyr-table thead .pyr-corner { text-align: start; }
.pyr-paid {
    background: rgba(245,245,244,.035);
    border-inline-start: 1px solid var(--hairline);
}
.pyr-max { background: rgba(245,245,244,.06); }
.pyr-y {
    display: block;
    font-family: var(--display); font-weight: 700;
    font-variant-numeric: tabular-nums; font-feature-settings: "tnum";
    font-size: 30px; letter-spacing: -0.02em; line-height: 1.05; color: var(--text);
}
.pyr-yline { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 10px; }
.pyr-pop {
    font-family: var(--mono); font-size: 10px; font-weight: 600;
    text-transform: uppercase; letter-spacing: 1px; white-space: nowrap;
    color: var(--info); background: var(--info-soft);
    border: 1px solid var(--info-line);
    padding: 2px 7px; border-radius: 4px;
}
.pyr-tag {
    display: block; margin-top: 6px;
    font-family: var(--mono); font-size: 10.5px; font-weight: 500;
    text-transform: uppercase; letter-spacing: 1px; color: var(--dim-2);
}
.pyr-free, .pyr-always {
    font-family: var(--mono); font-size: 12.5px; font-weight: 500;
    text-transform: uppercase; letter-spacing: 1px; color: var(--gain);
}
.pyr-free, .pyr-amt { display: inline-block; }
.pyr-always { display: inline-flex; align-items: center; gap: 10px; text-align: start; }
.pyr-tick { color: var(--gain); flex-shrink: 0; }
.pyr-tick svg { width: 15px; height: 15px; display: block; }
.pyr-amt {
    font-family: var(--mono); font-variant-numeric: tabular-nums;
    font-feature-settings: "tnum";
    font-size: 20px; font-weight: 500; color: var(--text);
}
.pyr-table tbody .pyr-closed {
    border-top-color: var(--border);
    background:
        radial-gradient(ellipse 60% 170% at 63% 50%, rgba(34,197,94,.16), transparent 72%),
        rgba(34,197,94,.05);
}
.pyr-closed .pyr-y { color: var(--dim); }

.pyr-shared { max-width: 820px; margin: 30px auto 0; }
.pyr-shared-h {
    font-family: var(--mono); font-size: 11px; font-weight: 500;
    text-transform: uppercase; letter-spacing: 1.2px; color: var(--dim-2);
}
.pyr-shared-list {
    list-style: none; margin-top: 16px;
    display: grid; grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 32px;
    font-size: 14px; line-height: 1.45; color: var(--dim);
}
.pyr-shared-list li {
    display: grid; grid-template-columns: 16px minmax(0, 1fr);
    gap: 10px; align-items: start;
}
.pyr-shared-list .pyr-tick { margin-top: 3px; }
.pyr-shared-list .pyr-tick svg { width: 13px; height: 13px; }
@keyframes pyrIn { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
.pyr.show tbody th > span,
.pyr.show tbody td > span { animation: pyrIn .5s cubic-bezier(.22,.61,.36,1) both; }
.pyr.show tbody tr:nth-child(1) > * > span { animation-delay: .14s; }
.pyr.show tbody tr:nth-child(2) > * > span { animation-delay: .22s; }
.pyr.show tbody tr:nth-child(3) > * > span { animation-delay: .34s; }

@keyframes pyrTick { from { stroke-dashoffset: 24; } to { stroke-dashoffset: 0; } }
.pyr.show .pyr-tick path {
    stroke-dasharray: 24;
    animation: pyrTick .45s cubic-bezier(.22,.61,.36,1) .70s both;
}

@keyframes pyrPop {
    0%, 45%, 100% { transform: scale(1); }
    20% { transform: scale(1.05); }
}
.pyr.show .pyr-pop { animation: pyrPop .55s cubic-bezier(.22,.61,.36,1) .52s 3 both; }

.pyr-foot { margin-top: 34px; text-align: center; }
.pyr-note {
    margin: 0 auto 18px; max-width: 600px;
    font-size: 13px; line-height: 1.6; color: var(--dim-2);
}

.faq-list { max-width: 780px; margin: 0 auto; }
.faq-item { border-bottom: 1px solid var(--hairline); }
.faq-item:first-child { border-top: 1px solid var(--hairline); }
.faq-item summary {
    padding: 22px 0; font-size: 16px; font-weight: 500;
    cursor: pointer; list-style: none;
    display: flex; justify-content: space-between; align-items: center; gap: 24px;
    transition: color .15s ease;
}
.faq-item summary:hover { color: var(--gain); }
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary::after {
    content: "+"; font-family: var(--mono); font-size: 22px; font-weight: 400;
    color: var(--dim); flex-shrink: 0; line-height: 1;
    transition: transform .25s ease, color .15s ease;
}
.faq-item[open] summary::after { transform: rotate(45deg); color: var(--gain); }
.faq-item p {
    padding: 0 0 24px; font-size: 14.5px; color: var(--dim); line-height: 1.75;
    max-width: 680px;
}

.final-cta { padding: 128px 0; text-align: center; position: relative; border-top: 1px solid var(--hairline); }
.final-cta::before {
    content: ""; position: absolute; inset: 0; pointer-events: none;
    background: radial-gradient(ellipse 50% 70% at 50% 100%, rgba(34,197,94,.08), transparent 70%);
}
.final-cta .w { position: relative; }
.final-cta h2 {
    font-family: var(--display); font-weight: 700;
    font-size: clamp(36px, 4.6vw, 60px);
    letter-spacing: -0.02em; line-height: 1.05;
    margin: 18px 0 20px;
}
.final-cta p { color: var(--dim); font-size: 17px; margin-bottom: 36px; max-width: 480px; margin-left: auto; margin-right: auto; }
.cta-proof {
    margin: 24px auto 0; font-size: 12px; color: var(--dim-2);
    letter-spacing: .2px;
}

.disclaimer {
    padding: 40px 0;
    border-top: 1px solid var(--hairline);
}
.disclaimer p {
    font-size: 12px; color: var(--dim-2); text-align: center;
    line-height: 1.75; max-width: 760px; margin: 0 auto;
}

footer { border-top: 1px solid var(--hairline); padding: 32px 0 40px; }
footer .w { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 20px; }
.footer-l { display: flex; align-items: center; gap: 16px; font-size: 13px; color: var(--dim-2); flex-wrap: wrap; }
.footer-l .sep { color: var(--border); }
.footer-l a { color: var(--dim); }
.footer-l a:hover { color: var(--text); }
.lang-select { position: relative; }
.lang-select select {
    appearance: none; background: transparent;
    border: 1px solid var(--border); border-radius: 6px;
    padding: 7px 28px 7px 12px;
    font-family: var(--sans); font-size: 12px; color: var(--dim); font-weight: 500;
    cursor: pointer; outline: none;
    transition: border-color .15s, color .15s;
}
.lang-select select:hover { color: var(--text); border-color: var(--text); }
.lang-select::after {
    content: ""; position: absolute; right: 10px; top: 50%;
    width: 6px; height: 6px;
    border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor;
    color: var(--dim); transform: translateY(-70%) rotate(45deg);
    pointer-events: none;
}

.e1-card {
    position: relative;
    width: 100%; max-width: 576px; margin-left: auto;
    border: 1px solid var(--border); border-radius: 18px;
    background: var(--surface);
    overflow: hidden;
    opacity: .85;
    transform: perspective(1800px) rotateY(-7deg);
    box-shadow:
        inset 0 1px 0 0 rgba(245,245,244,.10),
        0 0 80px -24px rgba(34,197,94,.34),
        0 32px 100px -44px rgba(34,197,94,.47);
}
.e1-header {
    display: flex; align-items: center; justify-content: space-between;
    padding: 16px 24px;
}
.e1-title { display: flex; align-items: center; gap: 12px; }
.e1-mono {
    font-family: var(--mono); font-size: 12px; line-height: 16px;
    text-transform: uppercase; letter-spacing: .05em;
}
.e1-tag { color: var(--dim); }
.e1-year {
    color: var(--text);
    border: 1px solid var(--border); border-radius: 8px;
    padding: 2px 8px;
}
.e1-share { display: inline-flex; align-items: center; gap: 6px; color: var(--gain); white-space: nowrap; }
.e1-share svg { width: 14px; height: 14px; display: block; }
.e1-row {
    display: grid; grid-template-columns: 5.5rem 1fr auto;
    align-items: center; padding-left: 24px; padding-right: 24px; gap: 16px;
}
.e1-head { border-top: 1px solid var(--border); padding-top: 12px; padding-bottom: 12px; }
.e1-head span { color: rgba(168,162,158,.7); }
.e1-head span:last-child { text-align: right; }
.e1-line { border-top: 1px solid rgba(64,64,64,.4); padding-top: 16px; padding-bottom: 16px; }
.e1-code { font-family: var(--mono); font-size: 14px; line-height: 20px; color: var(--dim); }
.e1-desc {
    min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
    font-size: 14px; line-height: 20px; color: var(--text);
}
.e1-val {
    text-align: right; font-family: var(--mono); font-size: 14px; line-height: 20px;
    font-variant-numeric: tabular-nums; font-feature-settings: "tnum"; color: var(--text);
}
.e1-footer {
    display: flex; align-items: center; justify-content: space-between;
    padding: 20px 24px;
    border-top: 1px solid var(--border);
    background: linear-gradient(to right, rgba(34,197,94,.05), rgba(34,197,94,.15));
}
.e1-foot-label { color: var(--dim); }
.e1-foot-value {
    font-family: var(--mono); font-variant-numeric: tabular-nums;
    font-feature-settings: "tnum"; color: var(--gain);
}
.e1-foot-value .cur { margin-right: 6px; font-size: 20px; line-height: 28px; color: rgba(34,197,94,.7); }
.e1-foot-value .amt { font-size: 30px; line-height: 36px; font-weight: 500; }

@keyframes up {
    from { opacity: 0; transform: translateY(20px); }
    to   { opacity: 1; transform: translateY(0); }
}
@keyframes e1In {
    from { opacity: 0; transform: perspective(1800px) rotateY(-12deg) scale(.96); }
    to   { opacity: .85; transform: perspective(1800px) rotateY(-7deg) scale(1); }
}
.anim { opacity: 0; }
.anim.show { animation: up .6s cubic-bezier(.22,.61,.36,1) forwards; }
.e1-card { animation: e1In .9s cubic-bezier(.22,.61,.36,1) .15s both; }

@media (max-width: 980px) {
    .hero { padding: 56px 0 72px; }
    .hero .w { grid-template-columns: 1fr; gap: 48px; text-align: left; }
    .hero-r { order: 2; }
    .e1-card { transform: none; }
    .why-step { grid-template-columns: 1fr; gap: 28px 0; padding: 48px 0; }
    .why-gutter { align-self: start; justify-content: flex-start; }
    .why-gutter::before { display: none; }
    .why-num { width: auto; text-align: left; padding: 0; }
    .why-merge, .why-linkage { display: none; }
    .pf-split { grid-template-columns: 1fr; gap: 40px; }
    .pf-copy { order: 0; }
    .pf-panel { transform: none; }
    .pv-band { grid-template-columns: 1fr; gap: 36px; }
    .pyr-table th, .pyr-table td { padding: 14px 12px; }
    .pyr-cap { padding: 12px 14px; }
    .section { padding: 88px 0; }
}
@media (max-width: 540px) {
    .w, .w-narrow { padding: 0 20px; }
    .hero h1 { font-size: 32px; }
    .broker-grid li { width: 54px; height: 54px; }
    .broker-grid img { width: 26px; height: 26px; }
    .coverage li { padding: 0 22px; }
    .coverage-n { font-size: 22px; }
    .pyr-table th, .pyr-table td { padding: 12px 4px; }
    .pyr-table thead .pyr-corner { width: 112px; }
    .pyr-h { font-size: 8.5px; letter-spacing: .4px; }
    .pyr-y { font-size: 23px; }
    .pyr-tag { font-size: 9px; letter-spacing: .4px; }
    .pyr-free, .pyr-always { font-size: 10.5px; letter-spacing: .4px; }
    .pyr-pop { font-size: 8px; letter-spacing: .2px; padding: 2px 4px; }
    .pyr-always { gap: 7px; }
    .pyr-amt { font-size: 14px; }
    .pyr-shared-list { grid-template-columns: 1fr; gap: 10px; }
    .why-frags { grid-template-columns: 1fr; }
    .why-step h3 { font-size: 24px; }
    .pf-chart { flex-direction: column; align-items: stretch; gap: 16px; }
    .pf-chart-l { width: auto; }
    .pf-stats {
        border-inline-start: 0; padding-inline-start: 0;
        border-top: 1px solid var(--hairline); padding-top: 10px;
    }
    .pf-table th:nth-child(2), .pf-table td:nth-child(2) { display: none; }
    .pf-table th, .pf-table td { padding-left: 12px; padding-right: 12px; }
    .e1-header, .e1-footer { padding: 14px 16px; }
    .e1-header { flex-wrap: wrap; gap: 8px; }
    .e1-row { padding-left: 16px; padding-right: 16px; gap: 10px; grid-template-columns: 4rem 1fr auto; }
    .e1-line { padding-top: 13px; padding-bottom: 13px; }
    .e1-code, .e1-desc, .e1-val { font-size: 13px; }
    .e1-desc { white-space: normal; }
    .pv-claims li { padding: 14px 0; gap: 12px; }
    .pv-legal { padding-inline-start: 34px; }
    .e1-foot-value .cur { font-size: 16px; }
    .e1-foot-value .amt { font-size: 24px; }
}
@media (prefers-reduced-motion: reduce) {
    .anim { animation: none !important; opacity: 1 !important; transform: none !important; }
    .hero h1 .beat, .hero-sub, .hero-buttons, .hero .eyebrow { animation: none !important; }
    .pf-visual.show .pf-slice-a, .pf-visual.show .pf-slice-b,
    .pf-visual.show .pf-perf-line, .pf-visual.show .pf-perf-fill { animation: none !important; }
    .pf-visual.show .pf-perf-line { stroke-dasharray: none; }
    .pv-list.show .pv-claims li, .pv-list.show .pv-legal { animation: none !important; }
    .pyr.show tbody th > span, .pyr.show tbody td > span { animation: none !important; }
    .pyr.show .pyr-tick path { animation: none !important; stroke-dasharray: none; }
    .pyr.show .pyr-pop { animation: none !important; }
    .why-active { animation: none !important; }
    .e1-card { animation: none !important; }
}
