.cfd .lp {font-family: var(--cf-font);color:var(--cf-color-text-primary);font-size:18px;line-height:1.6}
.cfd .lp *, .cfd .lp *::before, .cfd .lp *::after {box-sizing:border-box}
.cfd .lp h1, .cfd .lp h2, .cfd .lp h3 {text-wrap:balance;letter-spacing:-0.01em;color:var(--cf-color-primary-900);margin:0}
.cfd .lp h1 {font-size:clamp(34px,5vw,54px);line-height:1.1;font-weight:700}
.cfd .lp h2 {font-size:clamp(26px,3.4vw,40px);line-height:1.18;font-weight:700}
.cfd .lp h3 {font-weight:600;line-height:1.3}
.cfd .lp p {margin:0;overflow-wrap:anywhere}
.cfd .hero p, .cfd .m-grid p, .cfd .r-grid p, .cfd .s-grid p, .cfd .trial p {max-width:68ch}
.cfd .lp a:not(:where(.cf-btn)):not(.cf-btn) {color:var(--cf-color-link)}
.cfd .lp a:not(:where(.cf-btn)):not(.cf-btn):hover {color:var(--cf-color-link-hover)}
.cfd .lp a.cf-btn--primary, .cfd .lp a.cf-btn--primary:hover, .cfd .lp a.cf-btn--primary:focus-visible {color:var(--cf-color-text-inverse)}
.cfd .lp a:not(:where(.cf-btn)):focus-visible, .cfd .lp button:focus-visible, .cfd .lp summary:focus-visible {outline:3px solid var(--cf-color-focus);outline-offset:3px}
.cfd .lp sup {font-size:16px;line-height:0}
.cfd .lp sup a:not(:where(.cf-btn)) {display:inline-block;min-width:24px;min-height:24px;line-height:24px;text-align:center;text-decoration:none;font-weight:700}
.cfd .wrap {max-width:var(--cf-max-width);margin:0 auto;padding:0 20px}
.cfd .sec {padding:clamp(56px,8vw,120px) 0}
.cfd .sec--tint {background:var(--cf-color-primary-050)}
.cfd .sec--line {border-top:1px solid var(--cf-color-border)}
.cfd .sec-head {margin-bottom:var(--cf-space-10)}
.cfd .sec-head .cf-lead {margin-top:var(--cf-space-4);color:var(--cf-color-text-secondary)}
.cfd .hero {background:linear-gradient(180deg,var(--cf-color-background-blue) 0%,var(--cf-color-background-page) 100%);padding:clamp(32px,4vw,56px) 0 clamp(40px,5vw,64px)}
.cfd .hero-grid {display:grid;gap:var(--cf-space-8)}
.cfd .hero-text .cf-lead {margin-top:var(--cf-space-5);color:var(--cf-color-text-secondary)}
.cfd .hero-text .cf-actions {margin-top:var(--cf-space-8)}
.cfd .hero-start {display:inline-flex;align-items:center;justify-content:center;gap:var(--cf-space-3);width:100%;max-width:420px;min-height:60px;font-size:20px;font-weight:700;box-shadow:var(--cf-shadow-medium);transition:transform .2s ease,box-shadow .2s ease}
.cfd .hero-start:hover {transform:translateY(-2px);box-shadow:var(--cf-shadow-large)}
.cfd .hero-start:focus-visible {outline:3px solid var(--cf-color-focus);outline-offset:4px}
.cfd .hero-start i {display:inline-flex;width:22px;height:22px}
.cfd .lp .micro {margin-top:var(--cf-space-3);font-size:16px;color:var(--cf-color-text-secondary)}
.cfd .launcher {width:100%}
.cfd .launcher iframe {display:block;width:100%;max-width:680px;height:780px;border:0;margin:0 auto;border-radius:var(--cf-radius-large);background:var(--cf-color-surface)}
.cfd .poster {background:var(--cf-color-primary-900);border-radius:var(--cf-radius-large);padding:var(--cf-space-8) var(--cf-space-5);display:flex;flex-direction:column;align-items:center;gap:var(--cf-space-6);max-height:560px;box-shadow:var(--cf-shadow-medium)}
.cfd .poster-instr {color:var(--cf-color-text-inverse);font-size:18px;font-weight:500;text-align:center}
.cfd .still {width:100%;max-width:440px;display:flex;flex-direction:column;gap:var(--cf-space-5)}
.cfd .stage {width:100%;background:var(--cf-color-surface);border-radius:var(--cf-radius-medium);aspect-ratio:16/7;display:grid;grid-template-columns:repeat(3,1fr);place-items:center}
.cfd .shape {grid-row:1;width:clamp(34px,9vw,60px);aspect-ratio:1;background:var(--cf-color-text-primary)}
.cfd .shape--circle {border-radius:50%}
.cfd .at-left {grid-column:1}
.cfd .at-center {grid-column:2}
.cfd .at-right {grid-column:3}
.cfd .fix {grid-row:1;grid-column:2;color:var(--cf-color-text-primary);font-size:24px;font-weight:700;line-height:1}
.cfd .keys {display:flex;justify-content:space-between;gap:var(--cf-space-4)}
.cfd .key {flex:0 1 44%;height:60px;border-radius:var(--cf-radius-medium);background:var(--cf-color-primary-800);border:2px solid var(--cf-color-primary-100);display:grid;place-items:center}
.cfd .glyph {width:26px;height:26px;background:var(--cf-color-text-inverse)}
.cfd .glyph--circle {border-radius:50%}
.cfd .play {width:76px;height:76px;border-radius:50%;border:0;background:var(--cf-color-surface);color:var(--cf-color-primary-900);display:grid;place-items:center;cursor:pointer;box-shadow:var(--cf-shadow-medium);transition:transform .2s ease}
.cfd .play:hover {transform:scale(1.06)}
.cfd .play:focus-visible {outline:3px solid var(--cf-color-primary-100);outline-offset:4px}
.cfd .play i {display:inline-flex;width:30px;height:30px;margin-left:4px}
.cfd .stepper {list-style:none;margin:0;padding:0;display:grid;gap:var(--cf-space-6)}
.cfd .stepper li {position:relative;display:grid;grid-template-columns:40px 1fr;column-gap:var(--cf-space-4);align-items:start}
.cfd .stepper li:not(:last-child)::after {content:"";position:absolute;left:19px;top:44px;bottom:calc(-1 * var(--cf-space-6) + 4px);width:2px;background:var(--cf-color-border-strong)}
.cfd .step-num {width:40px;height:40px;border-radius:50%;background:var(--cf-color-primary-900);color:var(--cf-color-text-inverse);display:grid;place-items:center;font-weight:700;font-size:16px;grid-row:span 2}
.cfd .step-title {font-weight:700;color:var(--cf-color-primary-900);font-size:18px;padding-top:6px}
.cfd .step-line {font-size:16px;color:var(--cf-color-text-secondary)}
.cfd .hero .stepper {margin-top:var(--cf-space-10);padding-top:var(--cf-space-8);border-top:1px solid var(--cf-color-border)}
.cfd .start-row {width:100%;margin-top:var(--cf-space-12);padding-top:var(--cf-space-6);border-top:1px solid var(--cf-color-border);display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:var(--cf-space-4)}
.cfd .lp .start-row p {font-size:18px;font-weight:500;color:var(--cf-color-primary-900);max-width:none;min-width:0}
.cfd .lp .start-row .cf-actions {margin-top:0;flex:none}
.cfd .start-row .cf-btn {min-height:44px}
.cfd .answer p {font-size:clamp(20px,2.2vw,24px);line-height:1.5;margin-top:var(--cf-space-6)}
.cfd .tablist {display:flex;flex-wrap:wrap;gap:var(--cf-space-2);margin-bottom:var(--cf-space-4)}
.cfd .tablist button {min-height:44px;padding:0 var(--cf-space-5);font:600 16px var(--cf-font);color:var(--cf-color-primary-900);background:var(--cf-color-surface);border:1px solid var(--cf-color-border-strong);border-radius:var(--cf-radius-small);cursor:pointer}
.cfd .tablist button[aria-selected="true"] {background:var(--cf-color-primary-900);color:var(--cf-color-text-inverse);border-color:var(--cf-color-primary-900)}
.cfd .trial {background:var(--cf-color-primary-900);border-radius:var(--cf-radius-large);padding:var(--cf-space-8) var(--cf-space-5);display:grid;gap:var(--cf-space-6);margin-bottom:var(--cf-space-4)}
.cfd .trial-fig {width:100%;max-width:600px;margin:0 auto;display:flex;flex-direction:column;gap:var(--cf-space-3)}
.cfd .lab {font-size:14px;color:var(--cf-color-primary-100);font-weight:500}
.cfd .slots {display:grid;grid-template-columns:repeat(3,1fr);text-align:center}
.cfd .slots .on {color:var(--cf-color-accent-500);font-weight:700}
.cfd .keys-lab {display:flex;justify-content:space-between}
.cfd .keys-lab span {flex:0 1 44%;text-align:center}
.cfd .key.is-right {border-color:var(--cf-color-text-inverse);border-width:3px}
.cfd .trial-note {color:var(--cf-color-text-inverse);font-size:18px;max-width:60ch;margin:0 auto}
.cfd .trial-note strong {color:var(--cf-color-primary-100)}
.cfd .lp .mix {margin-top:var(--cf-space-6);color:var(--cf-color-text-secondary);max-width:none}
.cfd .flow {margin-top:var(--cf-space-12)}
.cfd .flow h3 {font-size:22px;margin-bottom:var(--cf-space-6)}
.cfd .m-grid {display:grid;gap:var(--cf-space-10)}
.cfd .m-photo img {width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:var(--cf-radius-large);display:block}
.cfd .abilities {margin:0}
.cfd .ability {padding:var(--cf-space-6) 0;border-top:1px solid var(--cf-color-border-strong)}
.cfd .ability:last-child {border-bottom:1px solid var(--cf-color-border-strong)}
.cfd .ability dt {font-size:22px;font-weight:600;color:var(--cf-color-primary-900)}
.cfd .ability dd {margin:var(--cf-space-2) 0 0}
.cfd .ability .moment {color:var(--cf-color-text-secondary);font-size:17px}
.cfd .moment b {display:block;font-size:14px;color:var(--cf-color-primary-700);font-weight:700;margin-bottom:var(--cf-space-1)}
.cfd .lp .m-note {margin-top:var(--cf-space-6);color:var(--cf-color-text-secondary);max-width:none}
.cfd .r-grid {display:grid;gap:var(--cf-space-10)}
.cfd .readlist {display:grid;gap:var(--cf-space-8)}
.cfd .read h3 {font-size:22px;display:flex;align-items:center;gap:var(--cf-space-2)}
.cfd .read h3 i {display:inline-flex;width:22px;height:22px;color:var(--cf-color-primary-600)}
.cfd .read p {margin-top:var(--cf-space-2);color:var(--cf-color-text-secondary)}
.cfd .dir {display:block;margin-top:var(--cf-space-2);font-size:16px;font-weight:600;color:var(--cf-color-success-700)}
.cfd .keybox {background:var(--cf-color-surface);border-radius:var(--cf-radius-large);box-shadow:var(--cf-shadow-small);padding:var(--cf-space-8) var(--cf-space-6)}
.cfd .keybox h3 {font-size:clamp(24px,2.6vw,30px)}
.cfd .keybox > p {margin-top:var(--cf-space-4)}
.cfd .eq {margin-top:var(--cf-space-5);font-size:20px;font-weight:700;color:var(--cf-color-primary-900)}
.cfd .gap-fig {margin:var(--cf-space-8) 0 0}
.cfd .gap-row {display:grid;grid-template-columns:1fr;gap:var(--cf-space-2);margin-bottom:var(--cf-space-4)}
.cfd .gap-row .lab {color:var(--cf-color-text-secondary)}
.cfd .gap-track {display:flex;height:28px;background:var(--cf-color-primary-100);border-radius:var(--cf-radius-small);overflow:hidden}
.cfd .gap-bar {display:block;height:100%;width:var(--cf-value);background:var(--cf-color-primary-900)}
.cfd .gap-bar--cost {background:var(--cf-color-accent-600)}
.cfd .gap-fig figcaption {font-size:14px;color:var(--cf-color-text-secondary)}
.cfd .keybox .more {margin-top:var(--cf-space-6);color:var(--cf-color-text-secondary)}
.cfd .wide img {width:100%;aspect-ratio:21/9;object-fit:cover;border-radius:var(--cf-radius-large);display:block}
.cfd .wide {margin:0 0 var(--cf-space-10)}
.cfd .s-grid {display:grid;gap:var(--cf-space-10)}
.cfd .prose > * + * {margin-top:var(--cf-space-5)}
.cfd .prose details {width:100%;margin-top:var(--cf-space-8);border-top:1px solid var(--cf-color-border-strong);border-bottom:1px solid var(--cf-color-border-strong)}
.cfd .prose summary {min-height:48px;display:flex;align-items:center;cursor:pointer;font-weight:700;color:var(--cf-color-primary-900);font-size:18px}
.cfd .prose details > div {padding-bottom:var(--cf-space-6)}
.cfd .prose details > div > * + * {margin-top:var(--cf-space-4)}
.cfd .lp .prose details p {max-width:none}
.cfd .canbox {background:var(--cf-color-surface);border-radius:var(--cf-radius-large);padding:var(--cf-space-8) var(--cf-space-6);border:1px solid var(--cf-color-border);align-self:start}
.cfd .canbox h3 {font-size:22px}
.cfd .canbox h3 + ul {margin-top:var(--cf-space-4)}
.cfd .canbox ul {list-style:none;margin:0;padding:0;display:grid;gap:var(--cf-space-3)}
.cfd .canbox li {display:grid;grid-template-columns:24px 1fr;gap:var(--cf-space-3);font-size:17px}
.cfd .canbox li i {display:inline-flex;width:22px;height:22px;margin-top:3px}
.cfd .canbox .yes i {color:var(--cf-color-success-700)}
.cfd .canbox .not i {color:var(--cf-color-text-muted)}
.cfd .canbox ul + h3 {margin-top:var(--cf-space-8)}
.cfd .faq {max-width:none;width:100%}
.cfd .lp .faq details p {max-width:none}
.cfd .faq details {border-top:1px solid var(--cf-color-border-strong)}
.cfd .faq details:last-child {border-bottom:1px solid var(--cf-color-border-strong)}
.cfd .faq summary {min-height:56px;display:flex;align-items:center;gap:var(--cf-space-4);cursor:pointer;font-weight:700;font-size:18px;color:var(--cf-color-primary-900);padding:var(--cf-space-3) 0}
.cfd .faq details > div {padding:0 0 var(--cf-space-6);color:var(--cf-color-text-secondary)}
.cfd .final {background:var(--cf-color-background-blue);text-align:center}
.cfd .final h2, .cfd .final .cf-lead {margin-left:auto;margin-right:auto}
.cfd .final .cf-lead {margin-top:var(--cf-space-4);max-width:60ch;color:var(--cf-color-text-secondary)}
.cfd .final .cf-actions {justify-content:center;margin-top:var(--cf-space-8)}
.cfd .final .cf-actions .cf-btn {min-height:48px}
.cfd .series {margin-top:var(--cf-space-16);text-align:left;border-top:1px solid var(--cf-color-border-strong);padding-top:var(--cf-space-8)}
.cfd .series h3 {font-size:22px}
.cfd .series ul {list-style:none;margin:var(--cf-space-5) 0 0;padding:0;display:grid;gap:var(--cf-space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
.cfd .series a:not(:where(.cf-btn)) {display:flex;align-items:center;gap:var(--cf-space-2);min-height:44px;font-weight:600;font-size:17px}
.cfd .series a i {display:inline-flex;width:20px;height:20px;flex:none}
.cfd .sources {padding:clamp(48px,6vw,80px) 0}
.cfd .sources h2 {font-size:clamp(24px,2.6vw,30px)}
.cfd .sources ol {margin:var(--cf-space-6) 0 0;padding-left:var(--cf-space-6);display:grid;gap:var(--cf-space-3);font-size:16px;color:var(--cf-color-text-secondary);max-width:none}
.cfd .sources li {overflow-wrap:anywhere}
.cfd .lp .disclaimer {margin-top:var(--cf-space-8);font-size:16px;color:var(--cf-color-text-secondary);display:flex;gap:var(--cf-space-3);align-items:flex-start;max-width:none}
.cfd .disclaimer i {display:inline-flex;width:22px;height:22px;flex:none;color:var(--cf-color-primary-700);margin-top:2px}
@media (min-width:720px) {.cfd .wrap {padding:0 32px}
.cfd .trial {padding:var(--cf-space-10) var(--cf-space-10)}
.cfd .start-row {flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:space-between}
.cfd .keybox {padding:var(--cf-space-10)}
.cfd .gap-row {grid-template-columns:110px 1fr;align-items:center}}
@media (min-width:960px) {.cfd .hero-grid {grid-template-columns:45fr 55fr;gap:var(--cf-space-12);align-items:center}
.cfd .stepper {grid-template-columns:repeat(3,1fr);gap:var(--cf-space-8)}
.cfd .stepper li {grid-template-columns:1fr;row-gap:var(--cf-space-3)}
.cfd .step-num {grid-row:auto}
.cfd .stepper li:not(:last-child)::after {left:52px;right:calc(-1 * var(--cf-space-8) + 12px);top:19px;bottom:auto;width:auto;height:2px}
.cfd .step-title {padding-top:0}}
@media (min-width:1080px) {.cfd .m-grid {grid-template-columns:5fr 7fr;align-items:start;gap:var(--cf-space-16)}
.cfd .r-grid {grid-template-columns:5fr 6fr;gap:var(--cf-space-16);align-items:start}
.cfd .s-grid {grid-template-columns:7fr 5fr;gap:var(--cf-space-16)}}
@media (prefers-reduced-motion:reduce) {.cfd .hero-start, .cfd .play {transition:none}}