/* TP_HOME_EXPANSION_R15 — scoped to public Home; original R14 hero stays intact. */
.tp-home-content { color:#edf6fc; font-family:inherit; line-height:1.65; background:radial-gradient(ellipse at 0% 22%,rgba(23,122,166,.09),transparent 32%),radial-gradient(ellipse at 100% 65%,rgba(17,128,163,.07),transparent 30%),linear-gradient(180deg,#060e16,#050c13); }
.tp-home-content *, .tp-home-content *::before, .tp-home-content *::after { box-sizing:border-box; }
.tp-home-content h2,.tp-home-content h3,.tp-home-content p { margin:0; }
.tp-home-content h2 { font-size:clamp(30px,2.6vw,42px); line-height:1.18; letter-spacing:-.035em; font-weight:700; color:#f2f8ff; }
.tp-home-content h3 { font-size:24px; line-height:1.3; letter-spacing:-.025em; color:#edf6ff; }
.tp-home-content p { color:#b3bfce; font-size:18px; line-height:1.75; }
.tp-home-content a { text-decoration:none; }
.tp-home-content button { font:inherit; cursor:pointer; }
.tp-home-content :is(a,button,summary,[tabindex]):focus-visible, .tp-nav-account:focus-visible, .tp-trust-more:focus-visible { outline:3px solid #77d6ff; outline-offset:5px; }
.tp-home-section { width:min(2100px,calc(100% - 100px)); margin:0 auto; padding:78px 0; position:relative; border-bottom:1px solid rgba(61,109,139,.16); scroll-margin-top:35px; }
.tp-home-content .tp-eyebrow { display:block; font-size:12px; line-height:1.6; letter-spacing:.13em; font-weight:600; color:#8cb9d5; margin-bottom:20px; }
.tp-section-heading { text-align:center; max-width:850px; margin:0 auto 40px; }
.tp-section-heading>p { max-width:760px; margin:24px auto 0; }
.tp-feature-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.tp-feature-card { padding:30px; border:1px solid #283d50; border-radius:13px; background:linear-gradient(140deg,#14202c,#0a131d); display:flex; align-items:flex-start; flex-direction:column; }
.tp-feature-icon { display:grid; place-items:center; width:52px; height:52px; border-radius:50%; margin-bottom:24px; font-size:18px; font-weight:700; color:#58d4f0; background:linear-gradient(140deg,#192a3a,#101b27); border:1px solid #273b4f; }
.tp-feature-card p { margin:18px 0 36px; }
.tp-card-label { margin-top:auto; font-size:11px; color:#6cb3cb; letter-spacing:.11em; }
.tp-demo-section { display:grid; grid-template-columns:.9fr 1.1fr; gap:85px; align-items:center; }
.tp-demo-copy>p { margin-top:24px; }
.tp-demo-steps { display:grid; gap:12px; margin:32px 0; }
.tp-demo-steps button { padding:16px 20px; background:transparent; border:1px solid #244153; border-radius:12px; text-align:left; color:#acc3d2; display:flex; align-items:center; gap:18px; }
.tp-demo-steps button span { font-size:13px; color:#63d6ed; }
.tp-demo-steps button[aria-pressed="true"] { background:#132638; color:#fff; border-color:#329dcb; box-shadow:inset 3px 0 #329dcb; }
.tp-home-content .tp-note { display:block; font-size:14px; color:#91aaba; }
.tp-demo-panel { min-width:0; border:1px solid #2b4f65; border-radius:16px; padding:28px; background:linear-gradient(135deg,#111e2b,#070f18); box-shadow:0 24px 85px #0004,0 0 80px #077e9a0a; }
.tp-demo-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; border-bottom:1px solid #244152; padding-bottom:22px; }
.tp-demo-toolbar>strong { display:flex; align-items:center; gap:12px; font-size:16px; }
.tp-mini-logo { display:inline-grid; flex-shrink:0; place-items:center; width:34px; height:34px; border-radius:8px; background:linear-gradient(140deg,#64e1ff,#258ae9); color:#041727; font-size:14px; font-weight:900; }
.tp-chip { padding:4px 9px; font-size:10px; letter-spacing:.06em; font-weight:700; color:#7cceeb; background:#153344; border:1px solid #2b5266; border-radius:6px; white-space:nowrap; }
.tp-demo-market { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:25px 0 15px; }
.tp-demo-market>strong { font-size:21px; }
.tp-demo-market>span { font-size:13px; color:#9cb6c6; }
.tp-demo-chart { display:block; width:100%; height:auto; margin:10px 0 26px; }
.tp-demo-status { padding:22px; min-height:210px; background:#0a131e; border:1px solid #1b3b4d; border-radius:13px; margin-bottom:22px; }
.tp-demo-status h3 { margin:16px 0 12px; font-size:22px; }
.tp-demo-status p { font-size:16px; }
.tp-home-content .tp-home-button { display:inline-flex; justify-content:center; align-items:center; gap:20px; padding:16px 24px; min-height:52px; color:#041b25; background:linear-gradient(135deg,#189bd3,#0c84b7); border:1px solid #30a7da; border-radius:13px; font-size:16px; font-weight:650; line-height:1.3; box-shadow:inset 0 1px 0 #8cdcff33,0 5px 20px #0e8ec510; transition:background .2s,box-shadow .2s; }
.tp-home-content .tp-home-button:hover { background:#5bbee8; box-shadow:0 8px 24px #1aa0da1a; }
.tp-rules-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:45px; }
.tp-rules-grid article { padding:12px 20px 20px 0; }
.tp-rule-number { display:block; color:#57c8e7; font-size:12px; letter-spacing:.12em; margin-bottom:24px; }
.tp-rules-grid p { margin:20px 0; }
.tp-tags { display:flex; flex-wrap:wrap; gap:8px; margin-top:25px; }
.tp-tags span { font-size:13px; padding:5px 12px; border:1px solid #284351; color:#b2c8d5; border-radius:7px; background:#11212d; }
.tp-inline-callout { margin-top:40px; display:flex; align-items:center; justify-content:space-between; gap:24px; padding:28px 34px; border:1px solid #264451; border-radius:13px; background:linear-gradient(130deg,#13202e,#09121b); }
.tp-inline-callout strong { color:#eaf5ff; }
.tp-notification-section { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:100px; }
.tp-notification-section>div>p { margin-top:26px; }
.tp-notification-preview { padding:55px 45px; border-radius:16px; background:radial-gradient(ellipse at 50% 50%,#16374b 0%,#0b1b29 50%,#08121b 80%); border:1px solid #263d4f; text-align:center; }
.tp-notification-preview>.tp-eyebrow { font-size:11px; }
.tp-alert-card { padding:30px; text-align:left; border-radius:18px; border:1px solid #3b4d65; background:linear-gradient(130deg,#1b2b40,#101927); transform:rotate(-2deg); box-shadow:0 30px 50px #0004; }
.tp-alert-card>div { display:flex; align-items:center; gap:10px; margin-bottom:28px; }
.tp-alert-card .tp-chip { margin-left:auto; }
.tp-alert-card h3 { font-size:24px; }
.tp-alert-card p { margin-top:12px; font-size:16px; }
.tp-alert-card a { display:block; margin-top:24px; padding-top:20px; border-top:1px solid #365064; font-size:15px; color:#66dbe9; }
.tp-notification-caption { display:block; margin-top:34px; color:#8ecee2; font-size:15px; }
.tp-checklist { padding:0; list-style:none; margin:30px 0 0; }
.tp-checklist li { padding:0 0 25px 35px; position:relative; }
.tp-checklist li::before { content:'✓'; position:absolute; left:0; top:0; color:#36a5d5; }
.tp-checklist strong,.tp-checklist span { display:block; }
.tp-checklist strong { font-size:18px; }
.tp-checklist span { color:#a6b6c7; font-size:16px; margin-top:4px; }
.tp-reviews-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:35px; margin-bottom:38px; }
.tp-reviews-heading p { max-width:780px; margin-top:20px; font-size:15px; }
.tp-carousel-controls { display:flex; gap:10px; }
.tp-carousel-controls button { height:48px; min-width:48px; padding:0 16px; background:#102736; border:1px solid #315265; color:#d5f3ff; border-radius:9px; font-size:15px; }
.tp-carousel-controls button:hover { background:#1b3c4e; }
.tp-carousel { overflow-x:auto; scrollbar-width:thin; scrollbar-color:#31566a #0a1c29; border-radius:16px; }
.tp-review-track { display:flex; gap:20px; padding:4px 0 18px; width:max-content; }
.tp-testimonial { width:410px; flex:0 0 410px; padding:30px; border:1px solid #284556; border-radius:13px; background:linear-gradient(140deg,#14202d,#09121b); }
.tp-testimonial-head { display:flex; gap:13px; align-items:center; }
.tp-avatar { width:45px; height:45px; border-radius:50%; display:grid; place-items:center; background:#193e53; color:#7bddf0; font-size:13px; flex-shrink:0; }
.tp-testimonial-head strong,.tp-testimonial-head small { display:block; }
.tp-testimonial-head strong { font-size:16px; }
.tp-testimonial-head small { color:#98afbd; font-size:12px; }
.tp-testimonial-head .tp-chip { margin-left:auto; font-size:9px; }
.tp-testimonial blockquote { padding:0; margin:26px 0; color:#d1e0e9; font-size:20px; line-height:1.6; }
.tp-testimonial-foot { color:#77a5bb; font-size:12px; }
.tp-faq-section { display:grid; grid-template-columns:.85fr 1.15fr; gap:100px; align-items:start; }
.tp-faq-intro>p { margin:24px 0; }
.tp-text-link { color:#6bd9ef; font-size:16px; }
.tp-faq-list { display:grid; gap:12px; }
.tp-faq-item { background:linear-gradient(120deg,#101c28,#09131c); border:1px solid #293e51; border-radius:10px; overflow:hidden; }
.tp-faq-item summary { list-style:none; cursor:pointer; padding:18px 54px 18px 24px; position:relative; font-size:17px; font-weight:600; color:#e0edf6; line-height:1.45; }
.tp-faq-item summary::-webkit-details-marker { display:none; }
.tp-faq-item summary::after { content:'+'; position:absolute; right:24px; top:15px; color:#69cee8; font-size:23px; font-weight:400; }
.tp-faq-item[open] { border-color:#43879b; }
.tp-faq-item[open] summary::after { content:'−'; }
.tp-home-content .tp-faq-item p { font-size:16px; padding:0 24px 25px; }
.tp-final-cta { text-align:center; border-bottom:0; margin:50px auto; padding:64px 30px; border:1px solid #2e4960; border-radius:16px; background:radial-gradient(ellipse at 50% 0%,#153147,#0a1825 60%,#08111b); }
.tp-final-cta h2 { font-size:clamp(34px,3.5vw,49px); }
.tp-final-cta p { margin:24px auto; }
.tp-final-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:16px; margin:30px 0 22px; }
.tp-home-content .tp-button-outline { color:#d5eaf9; background:linear-gradient(135deg,#20384f,#112132); border-color:#406789; }
.tp-home-content .tp-button-outline:hover { background:#20445b; }
.tp-home-footer { width:min(2100px,calc(100% - 100px)); margin:auto; padding:35px 0 30px; }
.tp-footer-top { display:grid; grid-template-columns:2fr 1fr 1fr; gap:60px; padding-bottom:45px; }
.tp-footer-brand { display:flex; align-items:center; gap:12px; color:#eef8ff; font-size:23px; font-weight:700; }
.tp-footer-top p { font-size:16px; margin-top:18px; }
.tp-footer-top nav { display:flex; align-items:flex-start; flex-direction:column; gap:12px; }
.tp-footer-top nav>strong { font-size:15px; margin-bottom:8px; }
.tp-footer-top nav :is(a,button) { color:#9db8ca; background:none; border:0; font-size:15px; padding:0; }
.tp-footer-top nav :is(a,button):hover { color:#66daec; }
.tp-footer-bottom { border-top:1px solid #24404e; padding-top:25px; display:flex; align-items:start; gap:60px; }
.tp-footer-bottom p { max-width:1180px; font-size:13px; }
.tp-footer-bottom>span { white-space:nowrap; font-size:13px; color:#8ca8ba; margin-left:auto; }
.tp-nav-account { color:#bde7f6; text-decoration:none; padding:10px 18px; border:1px solid #315366; border-radius:20px; font-size:14px; white-space:nowrap; }
.tp-trust-more { border:0; background:none; color:#65d9ef; cursor:pointer; white-space:nowrap; font:inherit; }
/* Content remains available without JS, but follows the existing SPA Home route. */
body:not(.tpx-home-active) .tpx-home-shell .tp-home-content { display:none; }
@media(max-width:1199px) {
 .tp-home-section,.tp-home-footer { width:calc(100% - 48px); }
 .tp-home-section { padding:65px 0; }
 .tp-demo-section,.tp-notification-section,.tp-faq-section { gap:40px; }
 .tp-feature-card { padding:25px; }
 .tp-notification-preview { padding:38px 20px; }
 .tp-home-content h3 { font-size:21px; }
 .tp-home-content p { font-size:16px; }
 .tp-final-cta { padding:65px 25px; }
}
@media(max-width:760px) {
 .tp-home-section,.tp-home-footer { width:calc(100% - 36px); }
 .tp-home-section { padding:48px 0; }
 .tp-feature-grid,.tp-rules-grid,.tp-demo-section,.tp-notification-section,.tp-faq-section { grid-template-columns:1fr; gap:25px; }
 .tp-section-heading { text-align:left; margin-bottom:30px; }
 .tp-section-heading h2 br { display:none; }
 .tp-home-content h2 { font-size:34px; }
 .tp-feature-card { padding:26px; }
 .tp-feature-icon { margin-bottom:18px; }
 .tp-feature-card p { margin-bottom:24px; }
 .tp-demo-panel { padding:18px; }
 .tp-demo-toolbar>strong { font-size:13px; }
 .tp-demo-market { flex-wrap:wrap; }
 .tp-demo-status { min-height:245px; padding:18px; }
 .tp-inline-callout { flex-direction:column; align-items:flex-start; padding:24px; }
 .tp-rules-grid article { padding:20px 0; border-bottom:1px solid #1c3546; }
 .tp-reviews-heading { align-items:flex-start; flex-direction:column; }
 .tp-testimonial { width:290px; flex-basis:290px; padding:22px; }
 .tp-testimonial blockquote { font-size:18px; }
 .tp-testimonial-head { flex-wrap:wrap; gap:10px; }
 .tp-testimonial-head .tp-chip { margin-left:0; }
 .tp-final-cta { margin:35px auto; padding:48px 20px; }
 .tp-final-actions { flex-direction:column; }
 .tp-final-cta h2 { font-size:37px; }
 .tp-footer-top { grid-template-columns:1fr 1fr; gap:35px; }
 .tp-footer-top>div { grid-column:1/-1; }
 .tp-footer-bottom { flex-direction:column; gap:20px; }
 .tp-footer-bottom>span { margin-left:0; }
 body.tpx-home-active .tpx-topnav { height:auto !important; min-height:64px; }
 body.tpx-home-active .tpx-topnav-inner { flex-wrap:wrap; padding:14px 0; gap:14px !important; }
 body.tpx-home-active .tpx-navlinks { order:3; width:100%; justify-content:center; flex-wrap:wrap; display:flex !important; }
 body.tpx-home-active .tpx-navlinks :is(a,button) { font-size:12px !important; }
 body.tpx-home-active .tpx-account-cluster { margin-left:auto; }
 body.tpx-home-active .tpx-nav-spacer { display:none; }
 body.tpx-home-active .tpx-hero h1 { font-size:clamp(30px,7.6vw,46px) !important; }
 body.tpx-home-active .tpx-hero h1 br,body.tpx-home-active .tpx-hero-copy>p br { display:none; }
 body.tpx-home-active .tpx-hero-copy>p { font-size:16px !important; }
 body.tpx-home-active .tpx-hero-actions { flex-wrap:wrap; }
 body.tpx-home-active .tpx-hero-trust { flex-wrap:wrap; gap:14px !important; }
 body.tpx-home-active .tpx-trust-bar { display:flex !important; flex-wrap:wrap; height:auto !important; padding:20px !important; gap:12px !important; }
 body.tpx-home-active .tpx-trust-bar>span:not(.tpx-trust-shield) { width:100%; font-size:12px !important; }
}
@media(prefers-reduced-motion:reduce) { .tp-home-content * { animation:none !important; transition:none !important; scroll-behavior:auto !important; } }
/* Wider editorial titles avoid orphan words at the approved desktop scale. */
@media(min-width:1200px) { .tp-home-content .tp-section-heading { max-width:1100px; } }
body.tpx-home-active .mobile-nav { display:none !important; }

/* R16_REFERENCE_STYLE: consistent type, surface, line icons and brand details. */
.tp-home-content { --tp-surface:#0e1823; --tp-border:#293e51; --tp-blue:#61caff; --tp-copy:#b3bfce; }
.tp-home-content .tp-section-heading { text-align:left; max-width:none; margin-left:0; }
.tp-home-content .tp-section-heading>p { max-width:920px; margin-left:0; }
.tp-home-content .tp-feature-card { position:relative; padding-left:112px; }
.tp-home-content .tp-feature-icon { position:absolute; left:27px; top:29px; width:62px; height:62px; font-size:0; }
.tp-feature-icon::after { content:''; width:30px; height:30px; background:#5ecbff; mask:var(--tp-feature-symbol) center/contain no-repeat; -webkit-mask:var(--tp-feature-symbol) center/contain no-repeat; }
.tp-home-content .tp-feature-card h3 { font-size:23px; }
.tp-home-content .tp-feature-card p { margin:14px 0 22px; }
.tp-home-content .tp-card-label { color:#78a7c4; font-size:10px; }
.tp-home-content .tp-mini-logo { font-size:0; width:30px; height:34px; border-radius:6px; background:linear-gradient(140deg,#60dbfa,#168bec 70%,#295cec); transform:skew(-10deg); position:relative; box-shadow:0 0 16px #268dd92b; }
.tp-mini-logo::after { content:''; position:absolute; width:24px; height:7px; border-radius:3px; background:#071321; transform:rotate(-42deg); }
.tp-home-content .tp-demo-toolbar { border-bottom-color:#2a3b4b; }
.tp-home-content .tp-demo-steps button { border-color:#2b4054; border-radius:9px; background:linear-gradient(120deg,#132131,#0c1621); }
.tp-home-content .tp-demo-steps button[aria-pressed="true"] { border-color:#4a8eb6; background:linear-gradient(120deg,#203d55,#122333); box-shadow:inset 3px 0 #59c8ff; }
.tp-home-content .tp-chip { color:#8bc8e9; background:#142435; border-color:#30475f; }
.tp-home-content .tp-rules-grid { gap:24px; }
.tp-home-content .tp-rules-grid article { border:1px solid #263b4e; border-radius:13px; padding:28px; background:linear-gradient(140deg,#121f2c,#09131c); }
.tp-home-content .tp-rule-number { color:#7ac3ee; }
.tp-home-content .tp-tags span { background:#101e2c; border-color:#2c4055; border-radius:6px; }
.tp-home-content .tp-testimonial { width:410px; flex-basis:410px; padding:25px; }
.tp-home-content .tp-avatar { object-fit:cover; background:linear-gradient(140deg,#1e354a,#101c2a); border:1px solid #3b5269; }
.tp-home-content .tp-testimonial blockquote { font-size:18px; }
.tp-home-content .tp-carousel-controls button { background:linear-gradient(140deg,#1b3043,#101b28); border-color:#35516b; }
.tp-home-content .tp-faq-item[open] { border-color:#4d7d9f; background:linear-gradient(130deg,#152536,#0b1621); }
.tp-home-content .tp-faq-item summary { font-weight:500; }
.tp-home-content .tp-footer-brand { font-size:23px; }
.tp-home-content .tp-text-link,.tp-home-content .tp-alert-card a { color:#65c8ff; }
@media(min-width:1200px) {
 .tp-home-content .tp-intro .tp-section-heading h2 br,.tp-home-content #tpHomeRules .tp-section-heading h2 br { display:none; }
 .tp-home-content .tp-reviews-heading h2 { font-size:38px; }
 .tp-home-content .tp-faq-section { grid-template-columns:.8fr 1.2fr; }
}
@media(max-width:760px) {
 .tp-home-content .tp-feature-card { padding:25px; }
 .tp-home-content .tp-feature-icon { position:static; width:54px; height:54px; margin-bottom:20px; }
 .tp-home-content .tp-testimonial { width:290px; flex-basis:290px; padding:22px; }
 .tp-home-content h2 { font-size:31px; }
 .tp-home-content .tp-final-cta h2 { font-size:35px; }
 .tp-home-content .tp-rules-grid article { padding:25px; }
}
.tp-feature-card:nth-child(1) { --tp-feature-symbol:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M7%203h8l4%204v14H5V3h2Zm7%200v5h5M8%2012h8M8%2016h6%22/%3E%3C/svg%3E"); }
.tp-feature-card:nth-child(2) { --tp-feature-symbol:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22/%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%225%22/%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%221%22/%3E%3C/svg%3E"); }
.tp-feature-card:nth-child(3) { --tp-feature-symbol:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5%2017h14l-2-3V9a5%205%200%200%200-10%200v5l-2%203Zm5%203h4M12%202v2%22/%3E%3C/svg%3E"); }

/* R17_CONTINUOUS_HOME: one background, shared widths and reference density. */
body.tpx-home-active .tp-home-content {
  background:transparent;
  position:relative;
  isolation:isolate;
}
.tp-home-content::before {
  content:''; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:
    radial-gradient(ellipse 460px 310px at 0% 12%,rgba(27,167,214,.16),transparent 75%),
    radial-gradient(ellipse 500px 340px at 100% 35%,rgba(17,139,206,.14),transparent 75%),
    radial-gradient(ellipse 380px 330px at 0% 64%,rgba(27,167,214,.12),transparent 75%),
    radial-gradient(ellipse 480px 300px at 100% 86%,rgba(17,139,206,.13),transparent 75%);
}
.tp-home-content .tp-home-section { padding:54px 0; border-bottom-color:rgba(70,146,188,.13); }
.tp-home-content .tp-section-heading { margin-bottom:28px; }
.tp-home-content .tp-section-heading h2 { max-width:1100px; }
.tp-home-content h2 { font-size:36px; line-height:1.16; }
.tp-home-content h3 { font-size:21px; }
.tp-home-content p { font-size:16px; line-height:1.6; }
.tp-home-content .tp-eyebrow { margin-bottom:14px; color:#8ac6e5; }
.tp-home-content .tp-feature-card,
.tp-home-content .tp-rules-grid article,
.tp-home-content .tp-testimonial,
.tp-home-content .tp-faq-item {
  background:linear-gradient(135deg,rgba(17,33,48,.93),rgba(6,17,27,.94));
  border-color:rgba(66,116,151,.45);
  box-shadow:inset 0 1px 0 rgba(144,206,248,.035),0 14px 30px rgba(0,0,0,.12);
}
.tp-home-content .tp-feature-card { padding:24px 24px 24px 99px; }
.tp-home-content .tp-feature-icon { width:55px; height:55px; top:24px; left:24px; }
.tp-home-content .tp-feature-card h3 { font-size:20px; }
.tp-home-content .tp-feature-card p { margin:12px 0 20px; }
.tp-home-content .tp-demo-panel {
  background:linear-gradient(140deg,rgba(14,28,43,.97),rgba(5,14,24,.98));
  border-color:#345b75; padding:22px;
  box-shadow:inset 0 1px 0 #73b8e333,0 25px 70px #0005,0 0 45px #148dbe0e;
}
.tp-home-content .tp-demo-chart { max-height:200px; margin:6px 0 18px; }
.tp-home-content .tp-demo-status { min-height:170px; padding:20px; }
.tp-home-content .tp-demo-market { padding:18px 0 8px; }
.tp-home-content .tp-demo-section { gap:60px; }
.tp-home-content .tp-demo-steps { gap:9px; margin:24px 0; }
.tp-home-content .tp-demo-steps button { padding:12px 17px; }
.tp-home-content .tp-demo-copy>p { margin-top:18px; }
.tp-home-content .tp-rules-grid article { padding:24px; }
.tp-home-content .tp-inline-callout { margin-top:24px; padding:22px 28px; }
.tp-home-content .tp-notification-section { gap:70px; }
.tp-home-content .tp-notification-preview { padding:40px 35px; background:radial-gradient(ellipse at 45% 50%,#153448aa,#07172566 75%); }
.tp-home-content .tp-checklist li { padding-bottom:20px; }
.tp-home-content .tp-faq-section { gap:70px; }
.tp-home-content .tp-faq-item summary { padding:16px 48px 16px 22px; font-size:16px; }
.tp-home-content .tp-faq-item summary::after { top:12px; }
.tp-home-content .tp-final-cta { margin:40px auto; padding:50px 25px; background:radial-gradient(ellipse at 50% 0%,#123b52b3,#0a1c2ac9 65%,#081520e6); }
.tp-home-content .tp-home-footer { background:transparent; }
@media(min-width:1200px) {
  .tp-home-content .tp-home-section,.tp-home-content .tp-home-footer { width:min(2100px,110vw); }
}
@media(min-width:761px) and (max-width:1199px) {
  .tp-home-content .tp-home-section,.tp-home-content .tp-home-footer { width:min(calc(100% - 28px),980px); }
}
@media(max-width:760px) {
  .tp-home-content .tp-home-section,.tp-home-content .tp-home-footer { width:calc(100% - 24px); }
  .tp-home-content .tp-home-section { padding:38px 0; }
  .tp-home-content h2 { font-size:30px; }
  .tp-home-content .tp-feature-card { padding:24px; }
  .tp-home-content .tp-feature-icon { position:static; }
  .tp-home-content .tp-demo-section,.tp-home-content .tp-notification-section,.tp-home-content .tp-faq-section { gap:28px; }
  .tp-home-content .tp-demo-panel { padding:17px; }
  .tp-home-content .tp-demo-status { min-height:230px; padding:17px; }
  .tp-home-content .tp-notification-preview { padding:30px 20px; }
  .tp-home-content .tp-final-cta { padding:40px 20px; }
}

/* R18 — a visual story: explain, explore, demonstrate, decide. */
.tp-home-content { overflow:hidden; }
.tp-home-content .tp-home-section { padding:78px 0; }
.tp-home-content .tp-motion-bar { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:0 0 50px; color:#739bb4; font-size:11px; letter-spacing:.13em; }
.tp-motion-bar button { display:flex; gap:12px; align-items:center; padding:8px 13px; min-height:36px; border:1px solid #2c4b62; background:#0b1c2b; border-radius:20px; color:#9dc2d7; font-size:12px; font-weight:500; letter-spacing:0; }
.tp-motion-bar button:disabled { opacity:1; color:#8b9daa; }
.tp-home-content .tp-intro-layout { display:grid; grid-template-columns:1.08fr 1fr; align-items:center; gap:50px; }
.tp-home-content .tp-intro h2 { font-size:clamp(40px,4vw,65px); font-weight:750; letter-spacing:-.045em; line-height:1.08; }
.tp-home-content .tp-gradient-text { background:linear-gradient(110deg,#94d4f0 0%,#45bbed 50%,#5292fc 100%); background-clip:text; -webkit-background-clip:text; color:transparent; }
.tp-home-content .tp-intro-copy>p { max-width:730px; margin-top:21px; }
.tp-home-content .tp-plain-definition { font-size:22px; line-height:1.5; }
.tp-plain-definition strong { font-weight:500; color:#d8e9f3; }
.tp-three-verbs { display:flex; align-items:center; flex-wrap:wrap; gap:15px; margin:30px 0 20px; font-size:14px; color:#d2e7f2; }
.tp-three-verbs span { display:flex; align-items:center; gap:9px; }
.tp-three-verbs b { font-size:10px; font-weight:500; color:#64c9f6; background:#112c3e; border:1px solid #25516a; border-radius:50%; width:26px; height:26px; display:grid; place-items:center; }
.tp-three-verbs i { color:#4c7e96; font-style:normal; }
.tp-text-action { padding:12px 0; color:#67d0f5; background:none; border:0; font-size:15px; }
.tp-radar-scene { position:relative; min-height:470px; display:grid; place-items:center; isolation:isolate; }
.tp-radar-scene::before { content:''; position:absolute; width:430px; height:430px; border-radius:50%; z-index:-1; background:radial-gradient(circle,#096b9040,#15528a22 45%,transparent 72%); animation:tp-ambient 10s ease-in-out infinite alternate; }
.tp-radar { position:relative; width:380px; height:380px; border-radius:50%; background:linear-gradient(transparent 49.8%,#2c536629 50%,transparent 50.2%),linear-gradient(90deg,transparent 49.8%,#2c536629 50%,transparent 50.2%); }
.tp-radar-orbit { position:absolute; border:1px solid #3e80904d; border-radius:50%; }
.tp-orbit-one { inset:0; border-style:dashed; opacity:.6; }
.tp-orbit-two { inset:49px; border-color:#397b984d; }
.tp-orbit-three { inset:100px; border-color:#4598b951; background:#0c2e412e; }
.tp-radar-sweep { position:absolute; inset:0; border-radius:50%; background:conic-gradient(from 0deg,transparent 0deg,transparent 280deg,#28c4e617 325deg,#47d9e846 359deg,transparent 360deg); animation:tp-radar-turn 16s linear infinite; mask-image:radial-gradient(circle,transparent 14%,#000 28%); }
.tp-radar-core { position:absolute; inset:150px; display:grid; place-items:center; border-radius:22px; border:1px solid #417590; background:linear-gradient(145deg,#1c4961,#0b1c2d); box-shadow:0 0 0 10px #24759c0a,0 0 70px #18b7cf26; }
.tp-radar-core .tp-mini-logo { width:42px; height:49px; }
.tp-radar-core .tp-mini-logo::after { width:34px; height:9px; }
.tp-radar-point { position:absolute; width:8px; height:8px; border-radius:50%; background:#4fb7e3; box-shadow:0 0 15px #2eace2; }
.tp-radar-point::after { content:''; position:absolute; inset:-6px; border:1px solid #67c1e8; border-radius:50%; animation:tp-radar-ping 4s ease-out infinite; }
.tp-point-one { top:58px; left:104px; }.tp-point-two { bottom:65px; right:57px; background:#63bbff; }.tp-point-two::after { animation-delay:2s; }
.tp-orbit-label { position:absolute; display:flex; align-items:center; gap:14px; padding:16px 20px; border:1px solid #32617a; border-radius:12px; background:linear-gradient(140deg,#173247ed,#091a29f5); box-shadow:0 15px 30px #0003; animation:tp-float 7s ease-in-out infinite alternate; }
.tp-orbit-label small,.tp-orbit-label strong { display:block; }
.tp-orbit-label small { color:#8bb2ca; letter-spacing:.09em; font-size:9px; margin-bottom:4px; }
.tp-orbit-label strong { font-size:16px; font-weight:600; }
.tp-orbit-rule { top:38px; left:0; }.tp-orbit-context { right:0; top:178px; animation-delay:-2s; }.tp-orbit-alert { bottom:49px; left:25px; animation-delay:-4s; border-color:#2c6279; }
.tp-status-dot { width:8px; height:8px; border-radius:50%; background:#32ace0; box-shadow:0 0 14px #28a2d670; }
.tp-orbit-symbol { color:#63ccf5; font-size:26px; }.tp-orbit-alert .tp-orbit-symbol { color:#41a9d6; }
.tp-radar-caption { position:absolute; bottom:0; font-size:10px; color:#7babc2; letter-spacing:.11em; text-align:center; }.tp-radar-caption small { display:block; font-size:10px; letter-spacing:0; color:#7291a8; margin-top:6px; }
.tp-home-content .tp-demo-section { padding:90px 0; grid-template-columns:.8fr 1.2fr; gap:65px; }
.tp-home-content .tp-demo-copy h2 { font-size:48px; }
.tp-home-content .tp-demo-copy>p { max-width:570px; font-size:18px; }
.tp-home-content .tp-demo-copy .tp-note { font-size:13px; }
.tp-home-content .tp-demo-panel { transform:perspective(1800px) rotateY(-3deg); transition:transform .45s ease,border-color .45s ease; box-shadow:0 26px 90px #0007,0 0 80px #1686c015; }
.tp-home-content .tp-demo-panel:hover,.tp-home-content .tp-demo-panel:focus-within { transform:none; border-color:#5195b8; }
.tp-home-content .tp-demo-panel[data-demo-state="2"] { border-color:#439fc7; box-shadow:0 26px 70px #0005,0 0 65px #2495c61c; }
.tp-chart-animation { position:relative; overflow:hidden; margin-top:15px; }
.tp-home-content .tp-demo-chart { margin:0 0 15px; }
.tp-chart-scan { position:absolute; top:0; bottom:15px; width:2px; left:10%; background:linear-gradient(transparent,#65dfffbf,transparent); box-shadow:0 0 20px 5px #55cfff1a; animation:tp-scan 6s ease-in-out infinite alternate; pointer-events:none; }
.tp-chart-confirmation { position:absolute; z-index:1; right:14px; top:6px; background:#0b2d3c; border:1px solid #266986; border-radius:8px; color:#8cd2f0; padding:7px 12px; font-size:11px; opacity:0; transform:translateY(-8px); transition:opacity .4s ease,transform .4s ease; }
[data-demo-state="2"] .tp-chart-confirmation { opacity:1; transform:none; }
.tp-home-content .tp-demo-status { min-height:180px; }
.tp-demo-actions { display:flex; flex-wrap:wrap; align-items:center; gap:16px; }
.tp-demo-play { border:1px solid #315572; border-radius:10px; padding:12px 16px; background:#14283a; color:#a8d8ef; min-height:44px; font-size:13px; }
.tp-home-content #tpHomeRules { padding-top:70px; }
.tp-home-content #tpHomeRules .tp-section-heading { text-align:center; }
.tp-home-content #tpHomeRules .tp-section-heading h2 { max-width:none; font-size:48px; }
.tp-home-content #tpHomeRules .tp-section-heading>p { margin:20px auto 0; }
.tp-scenario-layout { display:grid; grid-template-columns:.9fr 1.1fr; gap:42px; align-items:center; margin-top:38px; }
.tp-scenario-choices { display:grid; gap:12px; }
.tp-scenario-choices button { display:flex; align-items:center; gap:18px; text-align:left; padding:24px; border:1px solid #243e52; background:linear-gradient(120deg,#101e2beb,#081421a6); border-radius:13px; color:#bfd6e6; font-weight:400; transition:background .25s,border-color .25s,transform .25s; }
.tp-scenario-choices button:hover { transform:translateX(4px); border-color:#4885a9; }
.tp-scenario-choices button[aria-pressed="true"] { border-color:#55bee7; background:linear-gradient(110deg,#153c52,#0d2638); box-shadow:inset 3px 0 #53cbea; }
.tp-scenario-choices strong,.tp-scenario-choices small { display:block; }.tp-scenario-choices strong { font-size:19px; font-weight:600; color:#e5f2fa; }.tp-scenario-choices small { font-size:13px; color:#9bb7ca; margin-top:5px; }
.tp-scenario-number { color:#62caeb; font-size:12px; }.tp-scenario-choices button>span:last-child { margin-left:auto; color:#6cd5f7; font-size:22px; }
.tp-scenario-board { min-height:385px; padding:32px; border:1px solid #315b74; border-radius:18px; background:radial-gradient(ellipse at 90% 0%,#16426370,transparent 65%),#0b1926eb; }
.tp-scenario-board-head { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px; margin-bottom:25px; }.tp-scenario-board-head>span:last-child { font-size:10px; letter-spacing:.07em; color:#8eb7d2; }
.tp-home-content .tp-scenario-board h3 { font-size:27px; }.tp-home-content .tp-scenario-board>p { margin-top:15px; }.tp-home-content .tp-scenario-board .tp-note { font-size:12px; }
.tp-scenario-flow { display:flex; align-items:stretch; gap:0; list-style:none; padding:0; margin:28px 0; }
.tp-scenario-flow li { position:relative; flex:1; padding:0 18px; border-left:1px solid #2d6178; }.tp-scenario-flow li:first-child { padding-left:0; border:0; }.tp-scenario-flow li:not(:first-child)::before { content:'→'; position:absolute; top:13px; left:-7px; color:#68bbd4; background:#0c2030; }
.tp-scenario-flow span { display:block; color:#77abc9; font-size:9px; letter-spacing:.05em; margin-bottom:8px; }.tp-scenario-flow strong { color:#d4eaf5; font-size:14px; font-weight:500; }
.tp-home-content .tp-inline-callout { border:0; border-radius:0; background:none; padding:25px 0 0; }
.tp-home-content .tp-notification-section { padding:90px 0; grid-template-columns:.8fr 1.2fr; }
.tp-home-content .tp-notification-section h2 { font-size:46px; }
.tp-home-content .tp-notification-section>div>p { max-width:700px; font-size:19px; }
.tp-home-content .tp-notification-preview { position:relative; width:390px; min-height:475px; margin:0 auto; padding:72px 22px 45px; border:2px solid #35576c; border-radius:42px; background:radial-gradient(ellipse at 70% 20%,#205c82,#102a40 40%,#071524 80%); transform:rotate(-5deg); box-shadow:9px 14px 0 #020b13,10px 16px 0 1px #2b4255,0 30px 90px #1684ac21; }
.tp-notification-preview::before { content:''; position:absolute; width:108px; height:24px; border-radius:0 0 16px 16px; background:#030b12; top:0; left:calc(50% - 54px); }
.tp-home-content .tp-alert-card { transform:rotate(5deg) translateX(30px); animation:tp-notification-float 8s ease-in-out infinite alternate; background:linear-gradient(130deg,#1c3246f7,#101e31f7); padding:24px; border:1px solid #567285; }
.tp-home-content .tp-alert-card h3 { font-size:23px; }
.tp-home-content .tp-notification-caption { color:#9bcfe4; }
.tp-home-content .tp-reviews-section { padding-top:80px; padding-bottom:70px; }
.tp-home-content .tp-reviews-heading h2 { font-size:43px; }
.tp-home-content .tp-faq-section { padding:75px 0; }
.tp-home-content .tp-final-cta { padding:75px 25px; margin:45px auto; border-color:#31576d; background:radial-gradient(ellipse at 50% -40%,#28698b80,transparent 72%),linear-gradient(145deg,#0f2434d9,#071521e0); overflow:hidden; }
.tp-home-content .tp-final-cta h2 { position:relative; font-size:62px; }
.tp-final-cta::before { content:''; position:absolute; width:460px; height:240px; left:calc(50% - 230px); top:-140px; background:radial-gradient(ellipse,#4abefb33,transparent 65%); animation:tp-ambient 12s ease-in-out infinite alternate; pointer-events:none; }
.tp-home-content [data-entered="true"] { animation:tp-enter .7s ease-out both; }
@keyframes tp-radar-turn { to { transform:rotate(360deg); } }
@keyframes tp-radar-ping { 0% { transform:scale(.6); opacity:.8; } 80%,100% { transform:scale(2.5); opacity:0; } }
@keyframes tp-float { from { transform:translateY(-5px); } to { transform:translateY(6px); } }
@keyframes tp-notification-float { from { transform:rotate(5deg) translate(30px,-3px); } to { transform:rotate(5deg) translate(30px,7px); } }
@keyframes tp-ambient { from { transform:translate(-15px,-5px) scale(.95); opacity:.65; } to { transform:translate(25px,12px) scale(1.12); opacity:1; } }
@keyframes tp-scan { from { left:5%; opacity:.35; } to { left:95%; opacity:.85; } }
@keyframes tp-enter { from { opacity:.6; } to { opacity:1; } }
.tp-home-content[data-motion="paused"] *, .tp-home-content[data-motion="paused"] *::before, .tp-home-content[data-motion="paused"] *::after { animation-play-state:paused !important; }
.tp-home-content[data-motion="paused"] [data-entered="true"] { animation:none; }
@media(max-width:1199px) {
 .tp-home-content .tp-intro-layout { grid-template-columns:1fr 1fr; gap:15px; }
 .tp-home-content .tp-intro h2 { font-size:42px; }.tp-home-content .tp-plain-definition { font-size:18px; }
 .tp-radar-scene { transform:scale(.9); }.tp-orbit-label { padding:13px; }.tp-orbit-label strong { font-size:14px; }
 .tp-home-content .tp-demo-section,.tp-home-content .tp-notification-section { gap:35px; }
 .tp-home-content .tp-demo-copy h2,.tp-home-content .tp-notification-section h2 { font-size:36px; }
 .tp-home-content .tp-notification-preview { width:320px; padding-left:16px; padding-right:16px; }
 .tp-scenario-choices button { padding:19px; }.tp-scenario-choices strong { font-size:16px; }
 .tp-scenario-layout { gap:25px; }.tp-scenario-board { padding:25px; }
}
@media(max-width:760px) {
 .tp-home-content .tp-home-section { padding:45px 0; }
 .tp-home-content .tp-motion-bar { padding-bottom:30px; font-size:9px; gap:10px; }
 .tp-motion-bar button { font-size:11px; padding:7px 10px; }
 .tp-home-content .tp-intro-layout,.tp-home-content .tp-demo-section,.tp-scenario-layout,.tp-home-content .tp-notification-section { grid-template-columns:1fr; }
 .tp-home-content .tp-intro h2 { font-size:39px; }
 .tp-home-content .tp-plain-definition { font-size:19px; }
 .tp-three-verbs { gap:10px; font-size:12px; }.tp-three-verbs i { display:none; }
 .tp-radar-scene { min-height:365px; transform:none; margin-top:20px; }
 .tp-radar { width:270px; height:270px; }.tp-orbit-two { inset:35px; }.tp-orbit-three { inset:72px; }.tp-radar-core { inset:102px; }
 .tp-orbit-rule { left:0; top:10px; }.tp-orbit-context { right:0; top:150px; }.tp-orbit-alert { left:5px; bottom:40px; }.tp-orbit-label { gap:9px; padding:10px 12px; }.tp-orbit-label strong { font-size:12px; }.tp-orbit-label small { font-size:8px; }.tp-point-one { top:43px; left:68px; }.tp-point-two { bottom:48px; right:43px; }
 .tp-home-content .tp-demo-copy h2 { font-size:36px; }.tp-home-content .tp-demo-copy>p { font-size:16px; }.tp-home-content .tp-demo-panel { transform:none; }
 .tp-home-content .tp-demo-status { min-height:230px; }.tp-demo-actions { gap:10px; }.tp-demo-actions>button { width:100%; }
 .tp-home-content #tpHomeRules .tp-section-heading { text-align:left; }.tp-home-content #tpHomeRules .tp-section-heading h2 { font-size:36px; }
 .tp-scenario-board { min-height:390px; padding:22px; }.tp-scenario-flow { flex-direction:column; gap:20px; }.tp-scenario-flow li { padding:0 0 0 16px; border-left:1px solid #2d6178; }.tp-scenario-flow li:first-child { padding-left:16px; border-left:1px solid #2d6178; }.tp-scenario-flow li:not(:first-child)::before { content:'↓'; top:-18px; left:11px; }
 .tp-home-content .tp-notification-section { gap:50px; }.tp-home-content .tp-notification-preview { width:280px; min-height:440px; transform:rotate(-3deg); margin:15px auto; }
 .tp-home-content .tp-alert-card { padding:20px; animation:none; transform:rotate(3deg) translateX(9px); }.tp-home-content .tp-alert-card h3 { font-size:20px; }.tp-home-content .tp-alert-card p { font-size:14px; }
 .tp-home-content .tp-notification-section h2,.tp-home-content .tp-reviews-heading h2 { font-size:34px; }.tp-home-content .tp-notification-section>div>p { font-size:16px; }
 .tp-home-content .tp-final-cta { padding:55px 20px; }.tp-home-content .tp-final-cta h2 { font-size:40px; }
}
@media(prefers-reduced-motion:reduce) {
 .tp-home-content *, .tp-home-content *::before,.tp-home-content *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
 .tp-home-content .tp-demo-panel { transform:none; }
}
