@font-face{font-family:Roobert;src:url(fonts/roobert-bold.woff2) format('woff2');font-weight:700;font-display:swap}@font-face{font-family:Inter;src:url(fonts/inter-regular.woff2) format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Inter;src:url(fonts/inter-medium.woff2) format('woff2');font-weight:500;font-display:swap}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#fff;color:#09090b;font:16px/1.5 Inter,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #6366f1;outline-offset:5px}.wrap{width:calc(100% - 128px);max-width:1216px;margin:auto}.nav{position:fixed;z-index:20;top:10px;left:32px;right:32px;max-width:1376px;margin:auto;height:64px;padding:12px 24px;display:flex;align-items:center;justify-content:space-between;border:1px solid transparent;border-radius:16px;color:#fff;transition:background .25s,color .25s,box-shadow .25s}.brand{display:inline-flex;align-items:center}.brand img{display:block;width:145px;height:36px}.nav-links{display:flex;gap:34px;font-size:14px;font-weight:500}.nav-actions{display:flex;align-items:center;gap:10px}.button{display:inline-flex;align-items:center;justify-content:center;padding:12px 20px;border-radius:12px;background:#09090b;color:white;border:1px solid #09090b;font-size:14px;font-weight:500;line-height:1.25;transition:transform .2s,background .2s;box-shadow:0 1px 2px #00000012}.button:hover{transform:translateY(-2px);background:#27272a}.nav .button,.hero .button{background:#fafafa;color:#09090b;border-color:#e4e4e7}.nav .button{padding:9px 15px}.app-link{display:grid;place-items:center;width:36px;height:36px;border:1px solid #ffffff30;border-radius:50%;font-size:24px}.nav.scrolled{background:#ffffffed;color:#09090b;border-color:#f0f0f0;backdrop-filter:blur(18px);box-shadow:0 1px 3px #0000000d}.nav.scrolled .brand img,footer .brand img{filter:invert(1)}.nav.scrolled .button{background:#09090b;color:white;border-color:#09090b}.nav.scrolled .app-link{border-color:#e4e4e7}.menu-toggle{display:none}.hero{position:relative;background:#000;color:white;overflow:hidden;padding:154px 0 0}.hero-glow{position:absolute;inset:0;background:radial-gradient(ellipse at 88% 24%,#231b493f,transparent 43%);pointer-events:none}.hero-copy{position:relative;text-align:center;max-width:1020px}.hero-eyebrow{display:block;color:#a1a1aa;font-size:13px;margin-bottom:24px}h1,h2,h3,h4{font-family:Roobert,Inter,Arial,sans-serif;font-weight:700;margin:0;line-height:1.12;letter-spacing:-.025em}h1{font-size:60px;line-height:1.08}h2{font-size:48px}h3{font-size:22px;line-height:1.25}p{color:#71717a;margin:20px 0 0;line-height:1.6}.hero-copy>p{max-width:700px;margin:28px auto 24px;font-size:18px;color:#a1a1aa}.hero-copy>.button{padding:14px 26px}.hero-links{display:flex;justify-content:center;gap:22px;font-size:13px;color:#a1a1aa;margin-top:32px}.hero-links a:hover{color:white}.hero-preview{position:relative;margin-top:72px;height:420px;overflow:hidden;mask-image:linear-gradient(#000 78%,transparent)}.hero-preview .skeleton{height:560px;--sk-bg:#161619;--sk-line:#28282d;--sk-border:#303036;border:1px solid #33333b;border-radius:18px}.section-nav{display:flex;justify-content:center;gap:34px;padding:28px 20px;border-bottom:1px solid #f4f4f5;color:#71717a;font-size:13px}.section-nav a:hover{color:#09090b}.section{padding:110px 0}.section-heading{margin-bottom:48px}.eyebrow{display:block;color:#2563eb;font-size:14px;font-weight:500;margin-bottom:20px}.section-heading>p{max-width:680px}.section-heading.centered{text-align:center;max-width:740px;margin:0 auto 48px}.section-heading.centered>p{margin-left:auto;margin-right:auto}.centered .button{margin-top:26px}.cards{display:grid;grid-template-columns:1fr 1fr;gap:24px}.card{border:1px solid #e9e9eb;box-shadow:0 0 0 4px #f5f5f5;border-radius:24px;overflow:hidden;background:#fff;padding-top:32px}.card-copy{padding:0 32px 30px}.card-copy p{margin-top:10px;font-size:16px;max-width:650px}.card-media{padding:10px 0 0 32px;background:linear-gradient(#fff,#fafafa);height:290px;overflow:hidden}.card-media>.skeleton{width:calc(100% + 25px);height:320px;box-shadow:0 0 0 1px #ededf0,0 4px 12px #00000005}.card.wide{grid-column:1/-1;display:grid;grid-template-columns:1fr 1.25fr;align-items:center;padding-top:0;min-height:370px}.card.wide .card-copy{padding:40px}.card.wide h3{font-size:30px}.card.wide .card-media{height:370px;padding:35px 0 0 15px}.card.wide .skeleton{height:420px}.compact-features{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;margin-top:48px}.compact-features h3{font-size:20px;margin:16px 0 10px}.compact-features p{font-size:15px;margin:0}.feature-icon{font-size:23px}.connections{background:#fafafa;border-top:1px solid #f4f4f5;border-bottom:1px solid #f4f4f5}.broker-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;max-width:1040px;margin:0 auto}.broker{padding:26px 12px;display:flex;flex-direction:column;align-items:center;gap:18px;background:#fff;border:1px solid #eaeaec;border-radius:18px;font-size:13px;color:#52525b}.logo-placeholder{width:48px;height:48px;border-radius:12px;background:linear-gradient(120deg,#f0f0f2,#e4e4e7)}.connection-note{text-align:center;font-size:12px;color:#8b8b93;margin:28px auto 0;max-width:650px}.section-action{margin-top:40px;text-align:center}.mobile-section{background:#fafafa}.mobile-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:center}.mobile-copy>p{max-width:510px}.mobile-features{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:34px 0}.mobile-features h3{font-size:18px}.mobile-features p{font-size:14px;margin-top:8px}.phone-placeholder{padding:36px;background:linear-gradient(140deg,#f4f4f5,#e4e4e7);border-radius:28px;display:flex;justify-content:center;overflow:hidden}.phone-placeholder .skeleton{width:280px;height:550px;border:7px solid #18181b;border-radius:38px;box-shadow:0 20px 35px #00000015;padding:14px 12px}.phone .sk-top{height:35px;border-bottom:0}.phone .sk-top>b{width:65px;height:18px;margin:auto;background:#18181b}.phone .sk-top>i{display:none}.phone .sk-body{padding:15px 3px}.phone aside{display:none}.phone .sk-value{height:24px;width:75%}.phone .sk-chart{height:140px;margin-bottom:35px}.phone .sk-row{gap:9px}.phone .sk-row b:last-child{display:none}
.skeleton{--sk-bg:#fff;--sk-line:#eeeef0;--sk-border:#f2f2f4;background:var(--sk-bg);border:1px solid var(--sk-border);border-radius:14px;overflow:hidden;position:relative}.sk-top{height:44px;display:flex;gap:6px;align-items:center;padding:0 18px;border-bottom:1px solid var(--sk-border)}.sk-top>i{display:block;width:6px;height:6px;border-radius:50%;background:var(--sk-line)}.sk-top>b{display:block;margin-left:auto;width:90px;height:8px;background:var(--sk-line);border-radius:5px}.sk-body{display:flex;padding:24px;gap:28px;height:calc(100% - 44px)}.sk-body aside{width:15%;border-right:1px solid var(--sk-border);padding:8px 20px 0 0}.sk-body aside b{display:block;height:10px;border-radius:4px;background:var(--sk-line);margin-bottom:27px}.sk-content{flex:1;min-width:0}.sk-line{height:9px;width:26%;border-radius:4px;background:var(--sk-line);margin-bottom:13px}.sk-value{height:23px;width:40%;border-radius:5px;background:var(--sk-line)}.sk-chart{height:110px;display:flex;align-items:flex-end;gap:14px;margin:22px 0;border-bottom:1px solid var(--sk-border);background:repeating-linear-gradient(to top,transparent 0,transparent 35px,var(--sk-border) 36px,transparent 37px)}.sk-chart i{width:10%;height:var(--h);background:var(--sk-line);border-radius:4px 4px 0 0}.sk-row{display:flex;align-items:center;gap:22px;padding:13px 0;border-bottom:1px solid var(--sk-border)}.sk-row i{width:23px;height:23px;border-radius:6px;background:var(--sk-line)}.sk-row b{height:8px;width:22%;border-radius:4px;background:var(--sk-line)}.sk-row b:nth-child(2){margin-right:auto}.dashboard .sk-body{padding:32px;gap:35px}.dashboard .sk-chart{height:170px}.dashboard .sk-row{padding:17px 0}.rows .sk-chart{height:42px;background:none}.rows .sk-chart i{height:22px;border-radius:5px}.calendar .sk-chart{gap:12px;height:70px}.calendar .sk-chart i{height:65px;width:20%;border-radius:7px}.calendar .sk-chart i:nth-child(n+6){display:none}
.pricing-header{display:flex;justify-content:space-between;align-items:end;margin-bottom:46px}.billing{display:flex;align-items:center;background:#f4f4f5;border:1px solid #e4e4e7;padding:5px;border-radius:12px}.billing button{background:none;border:0;border-radius:8px;font-size:13px;padding:11px 16px;color:#71717a}.billing button[aria-pressed=true]{background:#fff;color:#09090b;box-shadow:0 1px 4px #00000012}.billing button span{font-size:10px;margin-left:6px}.plans{display:grid;grid-template-columns:1fr 1fr;gap:26px}.plan{border:1px solid #e4e4e7;border-radius:24px;padding:38px;box-shadow:0 0 0 4px #fafafa}.plan.pro{background:#fff}.plan-name{font-family:Roobert;font-size:28px}.plan-tag{font-family:Inter;font-size:11px;margin-left:12px;color:#71717a}.plan>p{font-size:15px;margin-top:10px}.price{font-family:Roobert;font-size:54px;margin-top:35px;letter-spacing:-2px}.price small{font:14px Inter;letter-spacing:0;color:#71717a;margin-left:7px}.billing-note{display:block;font-size:12px;color:#71717a;margin:5px 0 25px}.plan>.button{display:flex;width:100%}.button.outline{background:white;color:#09090b;border-color:#e4e4e7}.plan ul{list-style:none;padding:15px 0 0;margin:15px 0 0;border-top:1px solid #e4e4e7}.plan li{font-size:14px;margin:14px 0;color:#52525b;position:relative;padding-left:23px}.plan li:before{content:'✓';position:absolute;left:0;color:#09090b}.pricing-note{font-size:12px;text-align:center;margin-top:25px}.faq{display:grid;grid-template-columns:1fr 1.15fr;gap:80px;padding-top:0}.faq h2{font-size:38px}.faq details{border-bottom:1px solid #e4e4e7;padding:20px 0}.faq summary{list-style:none;cursor:pointer;font-size:15px;font-weight:500;padding-right:30px;position:relative}.faq summary:after{content:'+';position:absolute;right:0;font-size:20px;font-weight:400;top:-3px}.faq details[open] summary:after{content:'−'}.faq details p{font-size:14px;margin:15px 0 0}.closing{padding:100px 0;background:#fafafa;border-top:1px solid #f4f4f5;text-align:center}.closing h2{font-size:48px}.closing .button{margin-top:28px}.closing p{font-size:13px}footer{padding:65px 0 30px}.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer-top>div{display:flex;flex-direction:column;gap:14px;font-size:14px}.footer-top strong{font-weight:500;margin-bottom:7px}.footer-top>div a{color:#71717a}.footer-top .brand{align-self:start}.legal{font-size:12px;margin-top:55px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #eee;padding-top:24px;margin-top:26px;color:#a1a1aa;font-size:12px}.footer-bottom>div{display:flex;gap:25px}.motion-ready .reveal{opacity:0;transform:translateY(20px);transition:opacity .7s,transform .7s}.motion-ready .reveal.is-visible{opacity:1;transform:none}
@media(min-width:1600px){h1{font-size:64px}}
@media(max-width:1024px){.wrap{width:calc(100% - 64px)}h1{font-size:50px}h2{font-size:40px}.mobile-grid{gap:35px}.card.wide{grid-template-columns:1fr 1fr}.card.wide .card-copy{padding:28px}.nav-links{gap:20px}.faq{gap:35px}.plan-tag{display:block;margin:8px 0 0}.plan{padding:28px}}
@media(max-width:768px){.wrap{width:calc(100% - 40px)}.nav{left:10px;right:10px;top:8px;padding:10px 14px;height:60px}.brand img{width:118px;height:auto}.nav-actions{gap:8px}.nav-actions .app-link{display:none}.nav .button{font-size:12px}.menu-toggle{display:block;background:transparent;border:0;color:inherit;font-size:12px;padding:8px}.nav-links{display:none;position:absolute;top:65px;left:0;right:0;padding:24px;background:#18181b;border:1px solid #303036;border-radius:14px;color:white}.nav-links.open{display:flex;flex-direction:column}.hero{padding-top:130px}.hero-eyebrow{font-size:11px}h1{font-size:39px}h2{font-size:34px}.hero-copy>p{font-size:16px;margin-top:24px}.hero-links{font-size:10px;gap:10px}.hero-preview{height:270px;margin-top:45px;width:calc(100% - 30px)}.hero-preview .skeleton{height:330px}.dashboard .sk-body{padding:20px;gap:15px}.sk-body aside{display:none}.dashboard .sk-chart{height:85px}.section-nav{gap:20px;justify-content:flex-start;overflow:auto;white-space:nowrap;padding-left:20px;font-size:12px}.section{padding:70px 0}.section-heading{margin-bottom:34px}.section-heading p{font-size:15px}.cards{grid-template-columns:1fr;gap:24px}.card.wide{display:block;grid-column:auto;min-height:0}.card-copy,.card.wide .card-copy{padding:27px}.card.wide{padding-top:0}.card{padding-top:0}.card h3,.card.wide h3{font-size:24px}.card-copy p{font-size:15px}.card-media,.card.wide .card-media{height:255px;padding:0 0 0 25px}.compact-features{grid-template-columns:1fr;gap:28px}.compact-features h3{margin-top:9px}.broker-grid{grid-template-columns:repeat(2,1fr);gap:12px}.broker{font-size:12px;padding:24px 8px}.connection-note{font-size:11px}.mobile-grid{grid-template-columns:1fr;gap:40px}.phone-placeholder{max-width:460px;width:100%;margin:auto}.mobile-features{gap:23px}.pricing-header{display:block}.billing{display:inline-flex;margin-top:25px}.plans{grid-template-columns:1fr}.plan{padding:28px}.faq{grid-template-columns:1fr;padding-top:0;gap:28px}.faq h2{font-size:34px}.closing{padding:70px 0}.closing h2{font-size:34px}.footer-top{grid-template-columns:1fr 1fr;gap:35px}.footer-top>.brand{grid-column:1/-1}.footer-bottom{display:block;line-height:1.6}.footer-bottom>div{margin-top:15px}.section-heading h2 br{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}}

.section-nav{scrollbar-width:none}.section-nav::-webkit-scrollbar{display:none}

/* Hero: web and iPhone together. */
.hero-preview{height:490px;overflow:visible;mask-image:none;padding-top:35px;margin-bottom:30px}
.hero-preview>.dashboard{width:91%;height:475px;mask-image:linear-gradient(#000 73%,transparent)}
.hero-phone{position:absolute;z-index:2;top:0;right:0;width:238px;height:460px;border:5px solid #505056;border-radius:38px;background:#101012;box-shadow:0 0 0 1px #151518,0 25px 65px #000b,inset 0 0 0 1px #09090b;overflow:hidden;color:#d4d4d8}
.hero-phone-island{position:absolute;top:10px;left:50%;transform:translateX(-50%);width:70px;height:19px;border-radius:30px;background:#030304}.hero-phone-status{display:flex;justify-content:space-between;padding:14px 19px;font-size:9px}.hero-phone-content{padding:22px 17px 12px}.hp-label,.hp-value,.hp-caption{background:#2d2d33;border-radius:4px;height:7px;width:37%;margin-bottom:12px}.hp-value{height:24px;width:80%;background:#3a3a42}.hp-caption{width:55%;height:6px;background:#242429}.hp-chart{height:102px;display:flex;align-items:end;gap:7px;margin:26px 0 15px;border-bottom:1px solid #303035;background:repeating-linear-gradient(to top,transparent 0,transparent 32px,#222228 33px,transparent 34px)}.hp-chart i{flex:1;background:linear-gradient(#52525d,#29292f);border-radius:3px 3px 0 0}.hp-periods{display:flex;justify-content:space-around;margin:0 0 22px}.hp-periods i{width:20px;height:5px;border-radius:3px;background:#2f2f35}.hp-periods i:nth-child(2){background:#777782}.hp-stats{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:14px 0;border-block:1px solid #27272d}.hp-stats i,.hp-stats b{display:block;height:5px;width:70%;border-radius:3px;background:#29292f}.hp-stats b{height:12px;background:#414149;margin-top:9px;width:90%}.hp-row{display:flex;align-items:center;gap:10px;margin-top:14px}.hp-row i{width:22px;height:22px;border-radius:6px;background:#2f2f36}.hp-row b{width:55px;height:6px;border-radius:3px;background:#303036}.hp-row span{width:27px;height:6px;background:#38383f;margin-left:auto;border-radius:3px}.hp-nav{display:flex;justify-content:space-around;margin-top:20px}.hp-nav i{width:13px;height:13px;border-radius:4px;background:#38383f}.hp-home{position:absolute;bottom:9px;left:50%;transform:translateX(-50%);width:70px;height:4px;background:#777780;border-radius:4px}
@media(max-width:768px){.hero-preview{height:330px;padding-top:20px;margin-bottom:15px}.hero-preview>.dashboard{height:315px;width:88%}.hero-phone{width:153px;height:299px;top:0;right:0;border-width:4px;border-radius:27px}.hero-phone-island{width:47px;height:13px;top:7px}.hero-phone-status{padding:10px 12px;font-size:6px}.hero-phone-content{padding:13px 10px 8px}.hp-label{height:5px;margin-bottom:8px}.hp-value{height:16px;margin-bottom:8px}.hp-caption{height:4px;margin-bottom:8px}.hp-chart{height:65px;gap:4px;margin:17px 0 10px}.hp-periods{margin-bottom:12px}.hp-periods i{width:13px;height:3px}.hp-stats{padding:9px 0;gap:12px}.hp-stats i{height:4px}.hp-stats b{height:8px;margin-top:6px}.hp-row{margin-top:9px;gap:6px}.hp-row i{width:14px;height:14px;border-radius:4px}.hp-row b{width:36px;height:4px}.hp-row span{width:18px;height:4px}.hp-nav{margin-top:12px}.hp-nav i{width:9px;height:9px}.hp-home{width:45px;height:3px;bottom:6px}}

.broker-coverage{text-align:center;font-size:14px;color:#71717a;margin:0 auto 24px}.broker-coverage strong{color:#09090b;font-weight:500;font-size:18px;margin-right:3px}
/* Let the phone dissolve into the hero like the desktop preview. */
.hero-phone{-webkit-mask-image:linear-gradient(to bottom,#000 65%,transparent 98%);mask-image:linear-gradient(to bottom,#000 65%,transparent 98%)}
/* One viewport hero, balanced web + mobile composition. */
.hero{height:100svh;min-height:740px;max-height:1200px;display:flex;flex-direction:column;padding-top:clamp(100px,12svh,150px)}
.hero-copy{flex:0 0 auto;margin:0 auto;max-width:1050px}.hero h1{font-size:clamp(42px,4.2vw,60px)}.hero-eyebrow{margin-bottom:20px}.hero-copy>p{margin:22px auto;font-size:17px}.hero-links{margin-top:24px}
.hero-preview{flex:1 1 auto;min-height:260px;height:auto;width:calc(100% - 128px);max-width:1060px;margin:42px auto 0;padding-top:35px;overflow:hidden;-webkit-mask-image:linear-gradient(to bottom,#000 65%,transparent 100%);mask-image:linear-gradient(to bottom,#000 65%,transparent 100%)}
.hero-preview>.dashboard{width:84%;height:480px;-webkit-mask-image:none;mask-image:none}.hero-preview .dashboard .sk-body{padding:26px;gap:24px}.hero-preview .dashboard .sk-chart{height:140px}
.hero-phone{width:270px;height:525px;right:0;top:0;-webkit-mask-image:none;mask-image:none;background:#101012;box-shadow:-20px 15px 55px #0009}.hero-phone-content{padding:25px 21px 15px}.hero-phone .hp-chart{height:130px;margin-top:30px}.hero-phone .hp-stats{padding:18px 0}.hero-phone .hp-row{margin-top:18px}.hero-phone .hp-nav{margin-top:26px}
@media(min-width:1500px){.hero-preview{max-width:1140px}.hero-phone{width:290px;height:560px}.hero-phone .hp-chart{height:145px}}
@media(max-width:1024px){.hero-preview{width:calc(100% - 64px)}.hero-phone{width:245px;height:490px}.hero-preview>.dashboard{width:82%}}
@media(max-width:768px){.hero{height:100svh;min-height:780px;max-height:none;padding-top:110px}.hero h1{font-size:36px}.hero-copy>p{font-size:15px;margin:20px auto}.hero-eyebrow{margin-bottom:18px}.hero-links{margin-top:22px;font-size:10px}.hero-preview{width:calc(100% - 30px);margin-top:34px;min-height:290px;padding-top:26px}.hero-preview>.dashboard{width:82%;height:340px}.hero-preview .dashboard .sk-body{padding:17px;gap:12px}.hero-preview .dashboard .sk-chart{height:105px}.hero-phone{width:175px;height:355px;border-radius:29px}.hero-phone-content{padding:17px 12px 10px}.hero-phone .hp-chart{height:83px;margin:21px 0 12px}.hero-phone .hp-stats{padding:11px 0}.hero-phone .hp-row{margin-top:11px}.hero-phone .hp-nav{margin-top:16px}}
@media(prefers-reduced-motion:reduce){.hero-preview{animation:none}}

/* Headline entrance and layered scroll, with a static reduced-motion fallback. */
.hero{overflow:clip}
.hero-copy{position:sticky;top:clamp(100px,12svh,150px);z-index:1;opacity:var(--hero-copy-opacity,1);filter:blur(var(--hero-copy-blur,0px))}
.hero-preview{z-index:2;isolation:isolate}
.hero-title-line{display:block}
.hero-word{display:inline-block}
@media(prefers-reduced-motion:no-preference){
 .hero-word{animation:hero-word-in .85s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(80ms + var(--word)*65ms)}
 .hero-eyebrow{animation:hero-detail-in .7s ease both}
 .hero-copy>p,.hero-copy>.button,.hero-links{animation:hero-detail-in .8s ease both;animation-delay:.4s}
 .hero-copy>.button{animation-delay:.5s}.hero-links{animation-delay:.6s}
 .hero-copy{will-change:opacity,filter}
}
@keyframes hero-word-in{from{opacity:0;filter:blur(7px);transform:translateY(24px)}to{opacity:1;filter:blur(0);transform:translateY(0)}}
@keyframes hero-detail-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:768px){.hero-copy{top:110px}}
@media(prefers-reduced-motion:reduce){.hero-copy{position:relative;top:auto}}



/* Larger product scene, with smaller companion windows at different depths. */
.hero-preview{width:calc(100% - 64px);max-width:1240px;padding-top:58px;transform:scale(var(--mockup-scale,1));transform-origin:50% 0;will-change:transform}
.hero-preview>.dashboard{width:85%;margin-left:4%;height:530px;z-index:1}
.hero-phone{right:2%;width:295px;height:575px;z-index:4;top:22px}
.hero-float{position:absolute;border:1px solid #484850;border-radius:14px;background:#202024;box-shadow:0 14px 40px #0008;overflow:hidden;pointer-events:none}
.float-research{left:0;top:4px;width:225px;z-index:0}
.float-returns{left:1%;top:185px;width:210px;z-index:3;background:#141417}
.float-dividends{right:18%;top:120px;width:200px;z-index:3;background:#29292eeF}
.float-chrome{display:flex;gap:5px;padding:10px 12px;border-bottom:1px solid #ffffff09;background:#ffffff04}
.float-chrome i{width:5px;height:5px;border-radius:50%;background:#64646e}
.float-body{padding:16px}.float-kicker{display:block;width:48%;height:5px;background:#575760;border-radius:4px;margin-bottom:12px}
.float-row{display:flex;gap:10px;align-items:center;margin:10px 0}.float-row>i{width:26px;height:26px;flex-shrink:0;border-radius:7px;background:#45454f}.float-row>div{flex:1}.float-row b,.float-row span{display:block;height:5px;border-radius:3px;background:#666670;width:75%}.float-row span{width:95%;background:#393940;margin-top:7px}
.float-body strong{display:block;height:18px;width:64%;background:#70707c;border-radius:4px;margin:12px 0 16px}
.float-bars{display:flex;align-items:end;gap:7px;height:65px;border-bottom:1px solid #44444c}.float-bars i{flex:1;background:linear-gradient(#777786,#34343e);height:35%;border-radius:3px 3px 0 0}.float-bars i:nth-child(2n){height:55%}.float-bars i:nth-child(3n){height:75%}.float-bars i:last-child{height:95%}
@media(max-width:1024px){.hero-phone{width:260px;height:515px}.float-dividends{right:23%;width:170px}.float-research{width:180px}.float-returns{width:175px}}
@media(max-width:768px){.hero-preview{width:calc(100% - 12px);padding-top:52px}.hero-preview>.dashboard{width:88%;margin-left:0;height:370px}.hero-phone{width:185px;height:375px;right:0;top:22px}.float-research{width:135px;left:5px;top:4px}.float-research .float-row:last-child{display:none}.float-returns{width:130px;left:5px;top:185px}.float-dividends{display:none}.float-body{padding:12px}.float-body strong{height:13px}.float-bars{height:45px}}
@media(prefers-reduced-motion:reduce){.hero-preview{transform:none;will-change:auto}}
@media(min-width:769px){.float-returns{top:120px;width:185px}.float-returns .float-bars{height:38px}.float-returns .float-body{padding:12px}.float-dividends{right:24%;top:85px}}

/* Soft section badges and a balanced three-part footer. */
.eyebrow{display:inline-flex;align-items:center;width:fit-content;padding:6px 12px;border-radius:999px;background:#eff6ff;border:1px solid #dbeafe;color:#2563eb;font-size:12px;line-height:1.4}
.ph-icon{width:22px;height:22px;display:block;fill:currentColor;flex-shrink:0}.app-link .ph-icon{width:21px;height:21px}.feature-icon{display:inline-flex}.feature-icon .ph-icon{width:25px;height:25px}
.footer-bottom{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}.footer-bottom>.footer-socials{display:flex;gap:8px;justify-self:start;margin:0}.footer-socials a{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;color:#71717a;transition:background .2s,color .2s}.footer-socials a:hover{background:#f4f4f5;color:#09090b}.footer-socials .ph-icon{width:20px;height:20px}.footer-bottom>.footer-legal-links{display:flex;gap:24px;margin:0;justify-content:center}.footer-copyright{justify-self:end;text-align:right}
@media(max-width:768px){.footer-bottom{grid-template-columns:1fr;justify-items:center;gap:18px}.footer-bottom>.footer-socials,.footer-copyright{justify-self:center;text-align:center}.footer-bottom>.footer-legal-links{flex-wrap:wrap;gap:20px}}

/* Reveal companion cards as the phone fades away on scroll. */
.hero-float{opacity:var(--hero-cards-opacity,0)}
.hero-phone{opacity:var(--hero-phone-opacity,1)}

/* Seamless connectivity carousel with softly faded edges. */
.broker-marquee{overflow:hidden;width:100%;padding:20px 0 28px;mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent)}
.broker-track{display:flex;width:max-content;animation:broker-flow 46s linear infinite;will-change:transform}
.broker-group{display:flex;gap:22px;padding-right:22px;flex-shrink:0}
.broker-marquee .broker{width:154px;height:148px;flex-shrink:0;justify-content:center;padding:20px 8px;gap:15px;border-radius:24px;background:linear-gradient(145deg,#fff,#f3f4f6);box-shadow:0 8px 20px #09090b05;font-size:11px}
.broker img{width:54px;height:54px;object-fit:contain;filter:grayscale(1);mix-blend-mode:multiply}
.broker-marquee:hover .broker-track,.broker-marquee.is-paused .broker-track{animation-play-state:paused}
.broker-motion-toggle{display:block;margin:0 auto;border:0;background:none;color:#71717a;font-size:11px;text-decoration:underline;text-underline-offset:3px;padding:8px 12px;border-radius:8px}
@keyframes broker-flow{to{transform:translateX(-50%)}}
@media(max-width:768px){.broker-group{gap:14px;padding-right:14px}.broker-marquee .broker{width:130px;height:130px;border-radius:20px}.broker img{width:45px;height:45px}}
@media(prefers-reduced-motion:reduce){.broker-track{animation:none;width:100%;will-change:auto}.broker-group{display:grid;grid-template-columns:repeat(5,1fr);width:100%;padding:0;gap:14px}.broker-group[aria-hidden]{display:none}.broker-marquee{mask-image:none;-webkit-mask-image:none}.broker-marquee .broker{width:100%}.broker-motion-toggle{display:none}}
@media(prefers-reduced-motion:reduce) and (max-width:768px){.broker-group{grid-template-columns:repeat(2,1fr)}}
/* Complete product scene with layered companion cards. */
.hero{height:auto;max-height:none;min-height:100svh;padding-bottom:60px}
.hero-preview{flex:none;height:640px;min-height:0;overflow:visible;padding-top:40px;margin-bottom:0;-webkit-mask-image:none;mask-image:none}
.hero-preview>.dashboard{width:78%;margin-left:11%;height:560px;-webkit-mask-image:none;mask-image:none}
.hero-phone{right:4%;top:12px}
.float-research{left:0;top:20px;width:225px;z-index:0}
.float-returns{left:2%;top:auto;bottom:38px;width:215px;z-index:3}
.float-returns .float-body{padding:18px}.float-returns .float-bars{height:105px}
.float-dividends{right:0;top:70px;width:225px;height:260px;z-index:0;background:#242429}
.float-dividends .float-body{padding:20px}.float-dividends .float-body:after{content:"";display:block;height:100px;margin-top:22px;border-radius:7px;background:repeating-linear-gradient(to bottom,#42424b 0 5px,transparent 5px 22px);opacity:.65}
@media(max-width:1024px){.hero-preview{height:580px}.hero-preview>.dashboard{height:500px}.float-research,.float-dividends{width:180px}.float-returns{width:185px}}
@media(max-width:768px){.hero{height:auto;min-height:100svh;max-height:none;padding-bottom:30px}.hero-preview{height:420px;padding-top:38px}.hero-preview>.dashboard{width:82%;margin-left:8%;height:350px}.hero-phone{right:0;top:10px}.float-research{width:130px;left:0;top:14px}.float-returns{width:130px;left:0;top:auto;bottom:12px}.float-returns .float-body{padding:12px}.float-returns .float-bars{height:55px}.float-dividends{display:block;width:120px;height:200px;right:0;top:60px}.float-dividends .float-body{padding:12px}.float-dividends .float-body:after{height:65px;margin-top:16px}}

/* Consistent soft corners and legal links alongside the disclaimer. */
.eyebrow{border-radius:8px}
.broker img{border-radius:11px}
.footer-disclaimer-row{display:flex;justify-content:space-between;align-items:center;gap:28px;margin-bottom:24px}
.footer-disclaimer-row .legal{margin:0;max-width:760px}
.footer-disclaimer-row .footer-legal-links{display:flex;flex-shrink:0;gap:24px;font-size:12px;color:#8b8b93}
.footer-disclaimer-row .footer-legal-links a:hover{color:#09090b}
.footer-bottom{grid-template-columns:1fr 1fr}
@media(max-width:768px){.footer-disclaimer-row{flex-direction:column;align-items:flex-start;gap:18px}.footer-disclaimer-row .footer-legal-links{flex-wrap:wrap;gap:20px}.footer-bottom{grid-template-columns:1fr}}
.footer-disclaimer-row{margin-top:48px}

.mobile-steps{margin:30px 0 12px}.mobile-step{display:block;width:100%;text-align:left;border:0;background:none;padding:15px 0;color:#71717a}.mobile-step-title{display:block;font:700 19px Roobert,Inter,sans-serif}.mobile-step.is-active{color:#09090b}.mobile-step-description{display:none;color:#71717a;font-size:14px;margin-top:9px}.mobile-step.is-active .mobile-step-description{display:block}.mobile-step-bar{display:block;height:2px;background:#e4e4e7;margin-top:17px;overflow:hidden}.mobile-step-bar i{display:block;width:100%;height:100%;background:#2563eb;transform:scaleX(0);transform-origin:left}.mobile-step.is-active .mobile-step-bar i{transform:scaleX(var(--mobile-progress,0))}.mobile-demo-toggle{border:0;background:none;padding:4px 0;color:#71717a;font-size:11px;text-decoration:underline;display:block;margin-bottom:20px}
.mobile-demo-phone{position:relative}.demo-island{width:66px;height:18px;background:#18181b;border-radius:6px;margin:2px auto 27px}.demo-screen{position:absolute;inset:70px 19px 28px;opacity:0;visibility:hidden;transition:opacity .35s}.demo-screen.is-active{opacity:1;visibility:visible}.demo-screen-title{font-size:15px;font-weight:500;color:#3f3f46}.demo-subtitle{width:40%;height:6px;background:#eeeef0;border-radius:4px;margin:12px 0 22px}.demo-value{height:24px;width:72%;background:#e4e4e7;border-radius:5px}.demo-chart{height:125px;display:flex;align-items:end;gap:7px;border-bottom:1px solid #e4e4e7;margin:25px 0;background:repeating-linear-gradient(to top,transparent 0 30px,#f4f4f5 30px 31px)}.demo-chart i{flex:1;background:#d4d4d8;border-radius:3px 3px 0 0}.demo-stats{display:flex;gap:18px;padding-bottom:22px}.demo-stats i{height:22px;flex:1;background:#eeeef0;border-radius:4px}.demo-row{display:flex;align-items:center;gap:10px;padding:14px 0;border-bottom:1px solid #f4f4f5}.demo-row>i{width:25px;height:25px;background:#e4e4e7;border-radius:7px}.demo-row>div{flex:1}.demo-row b,.demo-row span{display:block;width:75%;height:6px;background:#e4e4e7;border-radius:3px}.demo-row span{width:50%;margin-top:7px;background:#f1f1f3}.demo-row em{width:30px;height:7px;border-radius:4px;background:#d4d4d8}.demo-filters{display:flex;gap:8px;margin:0 0 16px}.demo-filters i{height:22px;flex:1;background:#eeeef0;border-radius:6px}.demo-filters i:first-child{background:#dbeafe}.demo-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;margin-bottom:20px}.demo-calendar i{aspect-ratio:1;background:#f1f1f3;border-radius:4px}.demo-calendar i:nth-child(10),.demo-calendar i:nth-child(16){background:#bfdbfe}.demo-home{position:absolute;bottom:10px;left:35%;width:30%;height:4px;border-radius:4px;background:#18181b}
@media(prefers-reduced-motion:reduce){.demo-screen{transition:none}.mobile-demo-toggle{display:none}}

/* Original Finsepa App Store QR, available on hover and keyboard focus. */
.app-download{position:relative;display:flex;align-items:center}.app-qr-card{position:absolute;top:calc(100% + 12px);right:0;width:300px;display:flex;align-items:center;gap:16px;padding:20px;background:#09090b;color:#fff;border:1px solid #27272a;border-radius:16px;box-shadow:0 16px 40px #0005;opacity:0;visibility:hidden;transition:opacity .15s;z-index:20}.app-qr-card:before{content:"";position:absolute;bottom:100%;left:0;right:0;height:14px}.app-qr-card img{width:120px;height:120px;flex:none;border-radius:10px}.app-qr-card strong{display:block;font-size:15px;line-height:20px;margin-bottom:7px}.app-qr-card span{display:block;color:#a1a1aa;font-size:13px;line-height:18px}.app-download:not(.qr-dismissed):hover .app-qr-card,.app-download:not(.qr-dismissed):focus-within .app-qr-card{opacity:1;visibility:visible}@media(max-width:640px){.app-download{display:none}}@media(prefers-reduced-motion:reduce){.app-qr-card{transition:none}}

/* Slower scroll reveal and accurately proportioned hero mockups. */
.eyebrow{border:0;background:#e3efff}
.hero-preview{height:auto;min-height:660px;padding-bottom:40px;transition:transform .8s cubic-bezier(.2,.65,.3,1)}
.hero-preview>.dashboard{height:auto;aspect-ratio:1440 / 960}
.hero-phone{height:auto;aspect-ratio:78 / 163.4;transition:opacity .85s ease-out}
.hero-float{transition:opacity .85s ease-out}
@media(max-width:1024px){.hero-preview{min-height:590px}}
@media(max-width:768px){.hero-preview{min-height:430px}.hero-preview>.dashboard .sk-body{padding:12px;gap:10px}.hero-preview>.dashboard .sk-chart{height:70px}}
@media(prefers-reduced-motion:reduce){.hero-preview,.hero-phone,.hero-float{transition:none}}

/* Quiet line texture around the closing call to action. */
.closing{position:relative;isolation:isolate;overflow:hidden;border-bottom:1px solid #eeeef0}
.closing:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:repeating-linear-gradient(90deg,transparent 0 10px,rgba(113,113,122,.13) 10px 11px);mask-image:radial-gradient(ellipse 40% 80% at 50% 45%,transparent 35%,#000 100%);-webkit-mask-image:radial-gradient(ellipse 40% 80% at 50% 45%,transparent 35%,#000 100%)}
.mobile-step-bar{height:4px}
.mobile-steps{margin-bottom:24px}
.apple-logo{width:19px;height:19px;flex:none;fill:currentColor}
.mobile-copy>.button{display:inline-flex;align-items:center;gap:9px}

/* Text-width underline draws from the left, as in the Attio footer. */
footer a:has(.footer-link-label){width:fit-content;text-decoration:none;transition:color .15s ease-out}
.footer-link-label{background-image:linear-gradient(currentColor,currentColor);background-position:0 91%;background-repeat:no-repeat;background-size:0% .06em;transition:background-size .4s cubic-bezier(.65,0,.35,1);-webkit-text-stroke:.1em #fff;paint-order:stroke fill}
@media(hover:hover){footer a:hover .footer-link-label{background-size:100% .06em;transition-duration:.15s}}
footer a:focus-visible .footer-link-label{background-size:100% .06em;transition-duration:.15s}
footer a:active .footer-link-label{background-size:100% .06em;transition-duration:50ms}
@media(prefers-reduced-motion:reduce){.footer-link-label{transition:none}}

.footer-disclaimer-row .footer-copyright{font-size:12px;color:#8b8b93;text-align:left}.footer-bottom{grid-template-columns:auto 1fr}.footer-bottom .legal{margin:0;text-align:right;justify-self:end;max-width:760px}@media(max-width:768px){.footer-bottom{grid-template-columns:1fr}.footer-bottom .legal{text-align:left;justify-self:start}}

/* Header links and CTA respond with a soft fill, without moving. */
#navigation>a{position:relative;isolation:isolate}
#navigation>a:before{content:"";position:absolute;inset:-8px -12px;border-radius:8px;background:#ffffff14;opacity:0;z-index:-1;transition:opacity .18s ease-out}
.nav.scrolled #navigation>a:before{background:#09090b0a}
#navigation>a:hover:before,#navigation>a:focus-visible:before{opacity:1}
.nav .nav-actions>.button{transition:background-color .2s ease-out,border-color .2s ease-out,color .2s ease-out}
.nav:not(.scrolled) .nav-actions>.button:hover,.nav:not(.scrolled) .nav-actions>.button:focus-visible{background:#e4e4e7;border-color:#e4e4e7;color:#09090b;transform:none}
.nav.scrolled .nav-actions>.button:hover,.nav.scrolled .nav-actions>.button:focus-visible{background:#3f3f46;border-color:#3f3f46;color:#fff;transform:none}
@media(max-width:768px){.nav.scrolled #navigation>a:before{background:#ffffff14}}
@media(prefers-reduced-motion:reduce){#navigation>a:before,.nav .nav-actions>.button{transition:none}}

/* Colorful connections and a stronger desktop-to-phone balance. */
.broker img{filter:none;mix-blend-mode:normal}
.hero-preview>.dashboard{width:85.8%;margin-left:7.1%}
.hero-phone{transform:scale(.9);transform-origin:top right;top:48px}
@media(max-width:768px){.hero-preview>.dashboard{width:90.2%;margin-left:3.9%}.hero-phone{top:36px}}

/* Quiet inactive steps, smoothly expanding descriptions and phone pagination. */
.mobile-step{transition:color .35s ease}
.mobile-step-description,.mobile-step.is-active .mobile-step-description{display:block;overflow:hidden;max-height:0;margin-top:0;opacity:0;transition:max-height .4s ease,margin .4s ease,opacity .3s ease}
.mobile-step.is-active .mobile-step-description{max-height:70px;margin-top:9px;opacity:1}
.mobile-step-bar{opacity:0;transition:opacity .35s ease}
.mobile-step.is-active .mobile-step-bar{opacity:1}
.demo-screen{transform:translateY(8px);transition:opacity .45s ease,transform .45s ease,visibility 0s linear .45s}
.demo-screen.is-active{transform:translateY(0);transition-delay:0s}
.phone-placeholder{position:relative;flex-direction:column;align-items:center;gap:24px}
.mobile-indicators{display:flex;justify-content:center;align-items:center;gap:8px}
.mobile-indicator{width:18px;height:24px;padding:0;border:0;background:transparent;position:relative;transition:width .4s cubic-bezier(.2,.7,.3,1)}
.mobile-indicator:before{content:"";position:absolute;left:0;right:0;top:9px;height:6px;border-radius:4px;background:#c4c4cb;transition:background .4s ease}
.mobile-indicator.is-active{width:38px}.mobile-indicator.is-active:before{background:#2563eb}
/* Chart builds, holdings arrive, and a row highlights before a soft reset. */
.hero-preview>.dashboard .sk-chart i{transform-origin:bottom;animation:hero-chart-demo 5s cubic-bezier(.22,.7,.3,1) infinite both;animation-delay:var(--demo-delay,0ms)}
.hero-preview>.dashboard .sk-row{animation:hero-row-demo 5s ease infinite both;animation-delay:var(--demo-delay,0ms)}
.hero-preview>.dashboard .sk-value{animation:hero-value-demo 5s ease infinite}

@keyframes hero-chart-demo{0%,100%{transform:scaleY(.08);opacity:.15}24%,76%{transform:scaleY(1);opacity:1}90%{transform:scaleY(1);opacity:.15}}
@keyframes hero-row-demo{0%,100%{opacity:0;transform:translateY(9px);background:transparent}18%,62%{opacity:1;transform:translateY(0);background:transparent}72%{opacity:1;transform:translateY(0);background:#ffffff08}87%{opacity:0;transform:translateY(0);background:transparent}}
@keyframes hero-value-demo{0%,100%{opacity:.25;transform:translateY(4px)}18%,82%{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.hero-preview>.dashboard .sk-chart i,.hero-preview>.dashboard .sk-row,.hero-preview>.dashboard .sk-value{animation:none}.mobile-step,.mobile-step-description,.mobile-step-bar,.mobile-indicator,.mobile-indicator:before,.demo-screen{transition:none}.demo-screen{transform:none}}

/* Lower phone placement and a working three-view skeleton walkthrough. */
.hero-phone{top:116px}
.hero-preview>.dashboard .sk-chart i,.hero-preview>.dashboard .sk-row,.hero-preview>.dashboard .sk-value{animation:none}
.hero-demo-tabs{display:flex;gap:6px;margin-bottom:22px;position:relative;width:fit-content;padding:4px;background:#ffffff04;border-radius:8px}
.hero-demo-tabs:before{content:"";position:absolute;left:4px;top:4px;bottom:4px;width:88px;background:#ffffff0e;border-radius:5px;transform:translateX(calc(var(--hero-view,0)*94px));transition:transform .5s cubic-bezier(.22,.7,.3,1)}
.hero-demo-tabs button{position:relative;width:88px;padding:7px 0;border:0;border-radius:5px;background:transparent;color:#777780;font-size:11px;transition:color .35s}
.hero-demo-tabs button.is-active{color:#d4d4d8}
.hero-demo-panels{position:relative;min-height:380px}
.hero-demo-panel{position:absolute;inset:0;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .5s ease,transform .5s ease,visibility 0s .5s;pointer-events:none}
.hero-demo-panel.is-active{opacity:1;visibility:visible;transform:translateY(0);transition-delay:0s;pointer-events:auto}
.hero-preview>.dashboard .hero-demo-panel.is-active .sk-chart i{animation:hero-chart-enter .8s cubic-bezier(.22,.7,.3,1) both}
.hero-preview>.dashboard .hero-demo-panel.is-active .sk-row{animation:hero-row-enter .65s ease both}
.hero-demo-panel .sk-chart i:nth-child(2n){animation-delay:.08s}.hero-demo-panel .sk-chart i:nth-child(3n){animation-delay:.16s}
.hero-summary{display:flex;gap:16px;margin:24px 0}.hero-summary i{width:30%;height:55px;background:#28282d;border-radius:7px}
.hero-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:9px;margin:22px 0}.hero-calendar i{height:35px;background:#28282d;border-radius:5px}.hero-calendar i:nth-child(9),.hero-calendar i:nth-child(17),.hero-calendar i:nth-child(24){background:#444450}
@keyframes hero-chart-enter{from{transform:scaleY(.1);opacity:.3}to{transform:scaleY(1);opacity:1}}
@keyframes hero-row-enter{from{transform:translateY(7px);opacity:0}to{transform:translateY(0);opacity:1}}
@media(max-width:768px){.hero-phone{top:82px}.hero-demo-tabs{gap:3px;margin-bottom:12px;padding:3px}.hero-demo-tabs button{width:56px;font-size:8px;padding:5px 0}.hero-demo-tabs:before{left:3px;top:3px;bottom:3px;width:56px;transform:translateX(calc(var(--hero-view,0)*59px))}.hero-summary{margin:12px 0;gap:8px}.hero-summary i{height:24px}.hero-calendar{gap:4px;margin:12px 0}.hero-calendar i{height:15px}.hero-demo-panels{min-height:200px}}
@media(prefers-reduced-motion:reduce){.hero-demo-tabs:before,.hero-demo-tabs button,.hero-demo-panel{transition:none}.hero-demo-panel.is-active .sk-chart i,.hero-demo-panel.is-active .sk-row{animation:none}}

@media(prefers-reduced-motion:reduce){.hero-preview>.dashboard .hero-demo-panel.is-active .sk-chart i,.hero-preview>.dashboard .hero-demo-panel.is-active .sk-row{animation:none}}

/* Larger broker labels and balanced iPhone section columns. */
.broker-marquee .broker{width:214px;height:178px;padding:20px 14px}
.broker-marquee .broker>span{font-size:22px;font-weight:500;line-height:1.2;text-align:center;min-height:53px;display:flex;align-items:center;justify-content:center}
.mobile-indicator:before{height:4px;top:10px}
.mobile-indicator.is-active:before{background:#09090b}
.mobile-grid{align-items:stretch}
.mobile-copy{display:flex;flex-direction:column;align-items:flex-start}
.mobile-copy>.mobile-steps{width:100%;margin-top:auto;padding-top:30px}
.mobile-copy>.button{flex-shrink:0}
.plan>p{margin-top:6px}
.plan .price{margin-top:26px}
@media(max-width:768px){.mobile-copy>.mobile-steps{margin-top:0}.broker-marquee .broker{width:200px;height:166px}.broker-marquee .broker>span{font-size:22px}}
@media(prefers-reduced-motion:reduce){.broker-marquee .broker{width:100%;min-width:0}.broker-marquee .broker>span{font-size:22px;overflow-wrap:anywhere}}

/* Balanced brokerage labels in the primary text color. */
.broker-marquee .broker>span{font-size:16px;color:#09090b;font-weight:500}

/* Faster walkthrough with a distinct build sequence for every view. */
.hero-demo-tabs:before{transition-duration:.35s}
.hero-demo-panel{transition:opacity .35s ease,transform .35s ease,visibility 0s .35s}
.hero-demo-panel.is-active{transition-delay:0s}
.hero-preview>.dashboard .hero-demo-panel.is-active .sk-chart i{animation:hero-chart-enter .75s cubic-bezier(.22,.7,.3,1) both;animation-delay:var(--entry-delay,0ms)}
.hero-preview>.dashboard .hero-demo-panel.is-active .sk-row{animation:hero-row-enter .55s ease both;animation-delay:var(--entry-delay,0ms)}
.hero-holdings.is-active .hero-summary i{animation:hero-tile-enter .65s cubic-bezier(.22,.7,.3,1) both;animation-delay:var(--entry-delay,0ms)}
.hero-earnings.is-active .hero-calendar i{animation:hero-tile-enter .5s ease both;animation-delay:var(--entry-delay,0ms)}
.hero-earnings.is-active .hero-calendar i:nth-child(9),.hero-earnings.is-active .hero-calendar i:nth-child(17),.hero-earnings.is-active .hero-calendar i:nth-child(24){animation:hero-tile-enter .5s ease both,hero-date-highlight 1.4s ease .8s both;animation-delay:var(--entry-delay,0ms),.8s}
@keyframes hero-tile-enter{from{opacity:0;transform:translateY(8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes hero-date-highlight{0%,100%{background:#444450}45%{background:#696979}}
@media(prefers-reduced-motion:reduce){.hero-demo-tabs:before,.hero-demo-panel{transition:none}.hero-preview>.dashboard .hero-demo-panel.is-active .sk-chart i,.hero-preview>.dashboard .hero-demo-panel.is-active .sk-row,.hero-holdings.is-active .hero-summary i,.hero-earnings.is-active .hero-calendar i{animation:none}}

@media(prefers-reduced-motion:reduce){.hero-preview>.dashboard .hero-demo-panel *{animation:none!important}}

/* Portfolio walkthrough: a sticky index beside scrolling product stories. */
.portfolio-layout{display:grid;grid-template-columns:230px minmax(0,1fr);border-top:1px solid #eaeaec;border-bottom:1px solid #eaeaec}
.portfolio-rail{border-left:1px solid #eaeaec;padding:40px 0}
.portfolio-nav{position:sticky;top:130px;display:flex;flex-direction:column;gap:4px}
.portfolio-nav a{position:relative;display:block;padding:10px 24px;font-size:16px;font-weight:500;color:#a1a1aa;transition:color .25s,background .25s}
.portfolio-nav a:before{content:"";position:absolute;left:-1px;top:10px;bottom:10px;width:2px;background:#2563eb;opacity:0;transform:scaleY(.4);transition:opacity .25s,transform .25s}
.portfolio-nav a:hover{color:#09090b;background:#fafafa}
.portfolio-nav a.is-active{color:#09090b}.portfolio-nav a.is-active:before{opacity:1;transform:scaleY(1)}
.portfolio-content{min-width:0;border-left:1px solid #eaeaec;border-right:1px solid #eaeaec}
#portfolio .cards{display:block}
#portfolio .card,#portfolio .card.wide{display:block;min-height:0;padding:0;border:0;border-bottom:1px solid #eaeaec;border-radius:0;box-shadow:none;background:#fff;overflow:hidden;scroll-margin-top:110px}
#portfolio .card-copy,#portfolio .card.wide .card-copy{padding:40px 40px 30px;width:auto;max-width:700px}
#portfolio .card h3,#portfolio .card.wide h3{font-size:30px}
#portfolio .card-copy p{margin-top:14px}
#portfolio .card-media,#portfolio .card.wide .card-media{height:350px;padding:24px 0 0 40px;background:#fafafa;overflow:hidden}
#portfolio .card-media .skeleton{width:100%;height:380px;border-radius:14px 0 0 0}
#portfolio .compact-features{margin:0;padding:36px 40px;display:grid;grid-template-columns:1fr;gap:28px;scroll-margin-top:110px}
#portfolio .compact-features article{display:grid;grid-template-columns:38px 1fr;column-gap:18px}
#portfolio .compact-features .feature-icon{grid-row:1/3;margin:0}
#portfolio .compact-features h3{margin:0;font-size:22px}
#portfolio .compact-features p{grid-column:2;margin-top:8px}
@media(max-width:1024px){.portfolio-layout{grid-template-columns:190px minmax(0,1fr)}.portfolio-nav a{padding-left:18px;font-size:14px}#portfolio .card-copy,#portfolio .card.wide .card-copy{padding:28px}#portfolio .card-media,#portfolio .card.wide .card-media{padding-left:28px}}
@media(max-width:768px){.portfolio-layout{display:block}.portfolio-rail{padding:12px 0;border-left:0}.portfolio-nav{position:static;flex-direction:row;gap:4px;overflow-x:auto;padding-bottom:6px}.portfolio-nav a{white-space:nowrap;padding:9px 12px;font-size:13px}.portfolio-nav a:before{left:12px;right:12px;top:auto;bottom:0;width:auto;height:2px;transform:scaleX(.4)}.portfolio-nav a.is-active:before{transform:scaleX(1)}#portfolio .card h3,#portfolio .card.wide h3{font-size:25px}#portfolio .card-media,#portfolio .card.wide .card-media{height:250px;padding:20px 0 0 20px}#portfolio .compact-features{padding:28px 24px}.portfolio-content{border-left:0;border-right:0}}
@media(prefers-reduced-motion:reduce){.portfolio-nav a,.portfolio-nav a:before{transition:none}}

@media(max-width:768px){.portfolio-nav{scrollbar-width:none}.portfolio-nav::-webkit-scrollbar{display:none}}

/* Five portfolio stories with editorial copy and a paired feature row. */
#portfolio .card-copy,#portfolio .card.wide .card-copy{padding:48px 40px;max-width:760px}
#portfolio h3.portfolio-statement{font-family:Inter,Arial,sans-serif;font-size:28px;line-height:1.35;font-weight:500;letter-spacing:-.025em}
.portfolio-statement span{color:#858b96}
.portfolio-story{border-bottom:1px solid #eaeaec;scroll-margin-top:110px}
.portfolio-goal-visual{padding:50px 40px;background:#fafafa;display:flex;justify-content:center}
.goal-preview{width:100%;max-width:540px;display:flex;align-items:center;gap:36px;background:#fff;border:1px solid #eaeaec;border-radius:16px;padding:32px;box-shadow:0 5px 15px #09090b04}
.goal-ring{position:relative;width:130px;aspect-ratio:1;flex-shrink:0;border-radius:50%;background:conic-gradient(#d4d4d8 0 72%,#f4f4f5 72%)}
.goal-ring:before{content:"";position:absolute;inset:15px;border-radius:50%;background:#fff}.goal-ring i{position:absolute;top:calc(50% - 6px);left:35%;width:30%;height:12px;background:#e4e4e7;border-radius:4px}
.goal-preview-lines{flex:1}.goal-preview-lines>b,.goal-preview-lines>span{display:block;height:12px;width:65%;border-radius:4px;background:#e4e4e7}.goal-preview-lines>span{height:24px;width:90%;margin:16px 0 26px}.goal-preview-lines>div{height:7px;background:#f4f4f5;border-radius:4px;overflow:hidden}.goal-preview-lines>div i{display:block;width:72%;height:100%;background:#d4d4d8}
.portfolio-pair{display:grid;grid-template-columns:1fr 1fr;scroll-margin-top:110px;background:#fafafa}
.portfolio-pair>article{display:flex;flex-direction:column;min-width:0;padding-bottom:36px}
.portfolio-pair>article+article{border-left:1px solid #eaeaec}
#portfolio .portfolio-pair .card-copy{padding:32px 28px 24px}
#portfolio .portfolio-pair h3{font-family:Inter,Arial,sans-serif;font-size:20px;line-height:1.35;font-weight:500;letter-spacing:-.02em}
#portfolio .portfolio-pair p{font-size:16px;color:#858b96;line-height:1.5;margin-top:8px}
.portfolio-mini-visual{margin:auto 28px 0;padding:22px;border:1px solid #eaeaec;border-radius:12px;background:#fff;box-shadow:0 4px 12px #09090b04;min-height:225px}
.mini-account{display:flex;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid #f4f4f5}.mini-account i{width:24px;height:24px;border-radius:6px;background:#e4e4e7;flex:none}.mini-account b{height:7px;width:40%;background:#eeeef0;border-radius:3px}.mini-account span{height:7px;width:20%;margin-left:auto;background:#e4e4e7;border-radius:3px}.mini-total{display:flex;justify-content:space-between;margin-top:22px}.mini-total b,.mini-total span{width:30%;height:12px;background:#e4e4e7;border-radius:4px}
.share-avatar{height:30px;width:30px;border-radius:50%;background:#e4e4e7;margin:auto}.share-name{width:35%;height:7px;border-radius:4px;background:#eeeef0;margin:10px auto 18px}.share-chart{height:80px;display:flex;align-items:end;gap:8px}.share-chart i{flex:1;background:#e4e4e7;border-radius:3px 3px 0 0}.share-link{border:1px solid #eeeef0;border-radius:6px;padding:10px;margin-top:18px}.share-link i{display:block;width:60%;height:6px;background:#eeeef0;border-radius:3px}
@media(max-width:1024px){#portfolio h3.portfolio-statement{font-size:25px}#portfolio .portfolio-pair .card-copy{padding:26px 20px}.portfolio-mini-visual{margin-left:20px;margin-right:20px;padding:16px}.goal-preview{gap:24px;padding:24px}.goal-ring{width:100px}}
@media(max-width:768px){#portfolio .card-copy,#portfolio .card.wide .card-copy{padding:30px 24px}#portfolio h3.portfolio-statement{font-size:23px}.portfolio-pair{grid-template-columns:1fr}.portfolio-pair>article+article{border-left:0;border-top:1px solid #eaeaec}.portfolio-goal-visual{padding:30px 20px}.goal-preview{gap:18px;padding:20px}.goal-ring{width:85px}.goal-ring:before{inset:11px}.portfolio-mini-visual{margin:0 24px;min-height:225px}}

/* Rounded portfolio cards, with open space instead of section dividers. */
.portfolio-layout,.portfolio-rail,.portfolio-content{border:0}
.portfolio-layout{column-gap:24px}
#portfolio .cards{display:grid;grid-template-columns:1fr;gap:24px}
#portfolio .card,#portfolio .card.wide,.portfolio-story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center;border:0;border-radius:24px;background:#fafafa;box-shadow:none;overflow:hidden;min-height:360px}
#portfolio .card-copy,#portfolio .card.wide .card-copy{padding:32px;max-width:none}
#portfolio h3.portfolio-statement{font-size:24px;line-height:1.4}
#portfolio .card-media,#portfolio .card.wide .card-media{align-self:stretch;display:flex;align-items:flex-end;height:auto;min-height:360px;padding:30px 0 0;background:transparent}
#portfolio .card-media .skeleton{height:330px;width:620px;min-width:620px;border:0;box-shadow:none;border-radius:18px 0 0 0}
.portfolio-story{margin-top:24px}
.portfolio-goal-visual{padding:30px 24px 30px 0;background:transparent}
.goal-preview{border:0;box-shadow:none;flex-direction:column;gap:24px;padding:28px;min-width:0}.goal-preview-lines{width:100%}
.portfolio-pair{gap:24px;margin-top:24px;background:transparent}
.portfolio-pair>article{border:0;border-radius:24px;background:#fafafa;overflow:hidden}
.portfolio-pair>article+article{border:0}
.portfolio-mini-visual{border:0;box-shadow:none}
@media(max-width:1024px){.portfolio-layout{column-gap:16px}#portfolio .card-copy,#portfolio .card.wide .card-copy{padding:26px}#portfolio h3.portfolio-statement{font-size:22px}}
@media(max-width:768px){#portfolio .card,#portfolio .card.wide,.portfolio-story{grid-template-columns:1fr;min-height:0}#portfolio .card-copy,#portfolio .card.wide .card-copy{padding:28px 24px}#portfolio .card-media,#portfolio .card.wide .card-media{height:250px;min-height:0;padding:0 0 0 24px}#portfolio .card-media .skeleton{height:300px;min-width:480px}.portfolio-goal-visual{padding:0 24px 28px}.goal-preview{flex-direction:row}.portfolio-pair{gap:24px}.portfolio-pair>article+article{border:0}}

#portfolio .card-media{min-width:0}

/* Portfolio uses the Research card typography and preview treatment. */
#portfolio .card,#portfolio .card.wide,.portfolio-story,.portfolio-pair>article{background:#fff;border:0;box-shadow:0 4px 24px #09090b06}
#portfolio .card,#portfolio .card.wide,.portfolio-story{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);min-height:370px}
#portfolio .card-copy,#portfolio .card.wide .card-copy{padding:40px;max-width:none}
#portfolio .card-copy h3{font-family:Roobert,Inter,Arial,sans-serif;font-weight:700;font-size:30px;line-height:1.25;letter-spacing:-.025em}
#portfolio .card-copy p{font-size:16px;line-height:1.6;color:#71717a;margin-top:10px}
#portfolio .card-media,#portfolio .card.wide .card-media{height:370px;min-height:370px;align-items:flex-start;padding:35px 0 0 15px;background:linear-gradient(#fff,#fafafa)}
#portfolio .card-media .skeleton{height:420px;border-radius:14px 0 0 0;box-shadow:0 0 0 1px #ededf0,0 4px 12px #00000005}
#portfolio .portfolio-pair .card-copy{padding:32px 32px 30px}
#portfolio .portfolio-pair h3{font-size:22px}
.portfolio-mini-visual{margin-left:32px;margin-right:32px;background:linear-gradient(#fff,#fafafa)}
.portfolio-goal-visual{align-self:stretch;align-items:center;background:linear-gradient(#fff,#fafafa)}
@media(max-width:1024px){#portfolio .card-copy,#portfolio .card.wide .card-copy{padding:28px}#portfolio .card-copy h3{font-size:26px}}
@media(max-width:768px){#portfolio .card,#portfolio .card.wide,.portfolio-story{grid-template-columns:minmax(0,1fr);min-height:0}#portfolio .card-copy,#portfolio .card.wide .card-copy,#portfolio .portfolio-pair .card-copy{padding:27px}#portfolio .card-copy h3{font-size:24px}#portfolio .card-copy p{font-size:15px}#portfolio .card-media,#portfolio .card.wide .card-media{height:255px;min-height:0;padding:0 0 0 25px}.portfolio-mini-visual{margin-left:27px;margin-right:27px}}

/* Fit brokerage cards to their content with equal vertical padding. */
.broker-marquee .broker{height:auto;padding:26px 14px;justify-content:flex-start}
.broker-marquee .broker>span{min-height:0}
@media(max-width:768px){.broker-marquee .broker{padding-top:24px;padding-bottom:24px}}

/* Inset highlights and soft elevation, with rectangular CTA corners. */
.button,.nav .button,.hero .button,.button.outline{border-radius:10px;box-shadow:inset 0 0 0 1px var(--button-rim,#ffffff38),0 2px 3px #09090b0a,0 10px 20px -6px #09090b24;transition:background-color .2s,border-color .2s,box-shadow .2s,transform .2s}
.button{background:#09090b;border-color:#09090b}
.hero .button,.nav:not(.scrolled) .button,.button.outline{--button-rim:#fff;background:#fafafa;border-color:#fff;color:#18181b}
.nav.scrolled .button{--button-rim:#ffffff38;background:#09090b;border-color:#09090b;color:#fff}
.button:hover,.button:focus-visible{background:#222225;transform:none;box-shadow:inset 0 0 0 1px var(--button-rim,#ffffff38),0 3px 5px #09090b0d,0 12px 24px -6px #09090b30}
.hero .button:hover,.hero .button:focus-visible,.button.outline:hover,.button.outline:focus-visible,.nav:not(.scrolled) .nav-actions>.button:hover,.nav:not(.scrolled) .nav-actions>.button:focus-visible{background:#eeeef0;border-color:#fff;color:#18181b}
.nav.scrolled .nav-actions>.button:hover,.nav.scrolled .nav-actions>.button:focus-visible{background:#222225;border-color:#09090b}
.button:active,.nav .nav-actions>.button:active{transform:translateY(1px);box-shadow:inset 0 0 0 1px var(--button-rim,#ffffff38),0 2px 5px #09090b16}
@media(prefers-reduced-motion:reduce){.button,.nav .button,.hero .button,.button.outline{transition:none}.button:active,.nav .nav-actions>.button:active{transform:none}}

/* Consistent softly squared controls and visible Portfolio hover feedback. */
.portfolio-nav a{border-radius:10px;transition:color .2s ease,background-color .2s ease}
.portfolio-nav a:hover,.portfolio-nav a:focus-visible{background:#f0f0f2;color:#09090b}
.app-link{border-radius:10px;transition:background-color .2s ease,border-color .2s ease}
.app-link:hover,.app-link:focus-visible{background:#ffffff14}
.nav.scrolled .app-link:hover,.nav.scrolled .app-link:focus-visible{background:#f0f0f2}
@media(prefers-reduced-motion:reduce){.portfolio-nav a,.app-link{transition:none}}

/* Lift primary and secondary actions with a deeper shadow on hover. */
.button,.nav .nav-actions>.button,.app-link{transition:background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease}
.button:hover,.button:focus-visible,.nav.scrolled .nav-actions>.button:hover,.nav.scrolled .nav-actions>.button:focus-visible,.nav:not(.scrolled) .nav-actions>.button:hover,.nav:not(.scrolled) .nav-actions>.button:focus-visible,.app-link:hover,.app-link:focus-visible{transform:translateY(-3px);box-shadow:inset 0 0 0 1px var(--button-rim,#ffffff38),0 4px 7px #09090b14,0 16px 28px -6px #09090b45}
.button:active,.nav.scrolled .nav-actions>.button:active,.nav:not(.scrolled) .nav-actions>.button:active,.app-link:active{transform:translateY(0);box-shadow:inset 0 0 0 1px var(--button-rim,#ffffff38),0 2px 5px #09090b16}
@media(prefers-reduced-motion:reduce){.button,.nav .nav-actions>.button,.app-link{transition:none}.button:hover,.button:focus-visible,.nav.scrolled .nav-actions>.button:hover,.nav.scrolled .nav-actions>.button:focus-visible,.nav:not(.scrolled) .nav-actions>.button:hover,.nav:not(.scrolled) .nav-actions>.button:focus-visible,.app-link:hover,.app-link:focus-visible{transform:none}}

/* Reveal more of the two companion cards behind the hero dashboard. */
@media(min-width:769px){.float-research{left:-5%;top:-8px}.float-dividends{right:-5%;top:70px}.float-research,.float-dividends{background:#29292f;border-color:#53535e}}
@media(min-width:769px) and (max-width:1024px){.float-research{left:-3%}.float-dividends{right:-3%}}

/* Match Research card outlines and strengthen selected menu feedback. */
#portfolio .card,#portfolio .card.wide,#portfolio .portfolio-story,#portfolio .portfolio-pair>article{border:1px solid #e9e9eb;box-shadow:0 0 0 4px #f5f5f5;border-radius:24px}
.portfolio-nav a.is-active{background:#f0f0f2}
.portfolio-nav a:hover,.portfolio-nav a:focus-visible{background:#e4e4e7;color:#09090b}
.hero-eyebrow{display:inline-block;width:auto;padding:6px 12px;border:1px solid #ffffff30;border-radius:8px;background:#ffffff05}
@media(min-width:769px){.float-returns{left:-1%}.float-dividends{right:-8%}}
@media(min-width:769px) and (max-width:1024px){.float-dividends{right:-5%}}

/* Borderless billing control; both plans use the primary action. */
.billing{border:0}

/* Keep the lead Research card heading consistent with the cards below. */
#research .card.wide h3{font-size:22px}
@media(max-width:768px){#research .card.wide h3{font-size:24px}}

/* Use the smaller feature-card typography throughout Portfolio. */
#portfolio .card h3,#portfolio .card.wide h3,#portfolio .card-copy h3{font-size:22px;line-height:1.25}
#portfolio .card-copy p{font-size:16px;line-height:1.6}
@media(max-width:768px){#portfolio .card-copy p{font-size:15px}}

/* Frame the smaller illustrations like the dashboard previews. */
#portfolio .goal-preview,#portfolio .portfolio-mini-visual{background:#fff;border:1px solid #ededf0;border-radius:14px;box-shadow:0 4px 12px #00000005}

/* Five anchored groups alternate between one and two feature cards. */
.portfolio-sequence{display:grid;gap:24px}
.portfolio-feature-group{min-width:0;scroll-margin-top:110px}
#portfolio .portfolio-feature-group{margin:0}
#portfolio .portfolio-feature-group .portfolio-story{margin-top:0}
#portfolio .portfolio-pair>.card,#portfolio .portfolio-pair>.portfolio-story{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:0 0 28px}
#portfolio .portfolio-pair .card-copy{padding:32px 28px 24px}
#portfolio .portfolio-pair .card-media{height:260px;min-height:260px;margin-top:auto;padding:0 0 0 28px;align-self:auto}
#portfolio .portfolio-pair .card-media .skeleton{height:300px;min-width:480px;width:480px}
#portfolio .portfolio-pair .portfolio-goal-visual{margin-top:auto;padding:0 28px;background:transparent}
#portfolio .portfolio-pair .goal-preview{flex-direction:column;min-height:260px;justify-content:center}
.goal-ring-progress{background:conic-gradient(#d4d4d8 0 86%,#f4f4f5 86%)}
.portfolio-combined-visuals{padding:28px 24px 28px 0;display:grid;gap:20px;min-width:0}
#portfolio .portfolio-combined-visuals .portfolio-mini-visual{margin:0;min-height:0;padding:20px}
.portfolio-combined-visuals .mini-account{padding:9px 0}
.portfolio-combined-visuals .share-chart{height:65px}
@media(max-width:768px){#portfolio .portfolio-pair{grid-template-columns:minmax(0,1fr)}#portfolio .portfolio-pair .card-copy{padding:27px}.portfolio-combined-visuals{padding:0 27px 27px}}

/* Slightly tighter heading-to-description spacing in the sharing card. */
#portfolio #portfolio-together .card-copy p{margin-top:6px}

/* A gentler lift for the app download action. */
#mobile .mobile-copy>.button:hover,#mobile .mobile-copy>.button:focus-visible{transform:translateY(-2px)}
#mobile .mobile-copy>.button:active{transform:none}
@media(prefers-reduced-motion:reduce){#mobile .mobile-copy>.button:hover,#mobile .mobile-copy>.button:focus-visible{transform:none}}

/* Fully rounded buttons, navigation controls, and badges. */
.button,.nav .button,.hero .button,.button.outline,
button,.billing,.billing button,.app-link,.portfolio-nav a,
.eyebrow,.hero-eyebrow,.hero-demo-tabs,.hero-demo-tabs button,
.hero-demo-tabs:before,#navigation>a:before{border-radius:9999px}

/* Shared typography for every Portfolio and Research feature card. */
:is(#portfolio,#research){--feature-heading-size:22px;--feature-body-size:16px}
:is(#portfolio,#research) .card-copy h3,
:is(#portfolio,#research) .card.wide h3{font-family:Roobert,Inter,Arial,sans-serif;font-size:var(--feature-heading-size);font-weight:700;line-height:1.25;letter-spacing:-.025em}
:is(#portfolio,#research) .card-copy p{font-family:Inter,Arial,sans-serif;font-size:var(--feature-body-size);font-weight:400;line-height:1.6;letter-spacing:normal;color:#71717a}
@media(max-width:768px){:is(#portfolio,#research){--feature-heading-size:24px;--feature-body-size:15px}}

/* More breathing room and softer container corners. */
.nav{border-radius:18px}
#navigation>a{padding-inline:8px}
#navigation>a:before{inset:-8px -8px}
.nav .nav-actions>.button{padding-left:21px;padding-right:21px}
.portfolio-nav a:before{left:9px;border-radius:9999px}
#portfolio #portfolio-goals .card-copy p{margin-top:6px}
.card,.plan,#portfolio .card,#portfolio .card.wide,
#portfolio .portfolio-story,#portfolio .portfolio-pair>article{border-radius:28px}
.broker-marquee .broker{border-radius:28px}
.phone-placeholder{border-radius:32px}
.skeleton{border-radius:18px}
.hero-preview .skeleton{border-radius:22px}
#portfolio .card-media .skeleton{border-radius:18px 0 0 0}
#portfolio .goal-preview,#portfolio .portfolio-mini-visual{border-radius:18px}
.app-qr-card{border-radius:20px}
@media(max-width:768px){
 .broker-marquee .broker{border-radius:24px}
 .portfolio-nav a:before{left:16px;right:16px;bottom:5px}
 .nav-links{border-radius:18px}
}
@media(min-width:769px) and (max-width:1024px){#navigation{gap:12px}#navigation>a{padding-inline:4px}}

/* Align the Portfolio menu with its cards, with softly rounded items. */
.portfolio-rail{padding-top:0}
.portfolio-nav a{border-radius:10px}

/* Subtle recessed surface for the grey billing toggle. */
.billing{background:#f4f4f5;box-shadow:inset 0 1px 2px #09090b12,inset 0 -1px 0 #ffffffeb}

/* Room below pricing actions and a flush Portfolio selection marker. */
.plan ul{margin-top:24px}
.portfolio-nav a{border-radius:14px}
@media(min-width:769px){.portfolio-nav a:before{left:0}}

/* Previous/next controls replace the phone preview indicators. */
.mobile-arrow{position:absolute;top:50%;transform:translateY(-50%);width:36px;height:36px;display:grid;place-items:center;padding:0;border:1px solid #e4e4e7;border-radius:50%;background:#ffffffeb;color:#52525b;box-shadow:0 2px 6px #09090b0a;transition:background .2s,box-shadow .2s}
.mobile-arrow-prev{left:12px}.mobile-arrow-next{right:12px}
.mobile-arrow:hover{background:#fff;box-shadow:0 4px 10px #09090b18;color:#09090b}
@media(max-width:768px){.phone-placeholder{padding:36px 52px}.phone-placeholder .mobile-demo-phone{width:100%;max-width:280px}.mobile-arrow-prev{left:8px}.mobile-arrow-next{right:8px}}

/* Annual billing savings badge. */
.billing button[data-billing="year"] span{display:inline-flex;align-items:center;padding:3px 7px;margin-left:6px;border-radius:9999px;background:#dcfce7;color:#166534;font-size:11px;font-weight:500;line-height:1.2;white-space:nowrap}

/* Local hover feedback complements the hero's animated skeleton rhythm. */
.hero-preview .sk-row,.hero-preview .float-row{transition:background-color .2s ease;border-radius:6px}
.hero-preview .sk-row:hover,.hero-preview .float-row:hover{background:#ffffff06}
.hero-preview .hero-calendar i,.hero-preview .hero-summary i,.hero-preview .sk-body aside b{transition:background-color .2s ease}
.hero-preview .hero-calendar i:hover,.hero-preview .hero-summary i:hover,.hero-preview .sk-body aside b:hover{background:#50505d}
.hero-preview .hero-float{transition:border-color .25s ease,box-shadow .25s ease,opacity .85s ease,transform .85s ease}
.hero-preview .hero-float:hover{border-color:#737380;box-shadow:0 12px 30px #0004}
.hero-preview.skeleton-live .float-dividends .float-body:after{animation:dividend-lines-pulse 3.6s ease-in-out infinite}
@keyframes dividend-lines-pulse{0%,100%{opacity:.45}50%{opacity:.85}}
@media(prefers-reduced-motion:reduce){.hero-preview .hero-skeleton-bit{filter:none!important}.hero-preview .hero-float,.hero-preview .sk-row,.hero-preview .float-row,.hero-preview .hero-calendar i,.hero-preview .hero-summary i,.hero-preview .sk-body aside b{transition:none}}

/* Softer logo tiles with distinct eToro and E*TRADE treatments. */
.broker img{border-radius:15px}
.broker .etoro-logo{display:grid;place-items:center;width:54px;height:54px;min-height:0;flex-shrink:0;border-radius:15px;background:#13c636}
.broker .etoro-logo img{width:40px;height:40px;object-fit:contain;border-radius:0;filter:brightness(0) invert(1)}
.broker img[src="logos/e-trade.jpg"]{border:1px solid #dedee3}
@media(max-width:768px){.broker .etoro-logo{width:45px;height:45px}.broker .etoro-logo img{width:33px;height:33px}}

/* Supplied MetalForge starfield, rendered behind the hero content. */
.hero-starfield{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;display:block}

/* Gently reveal the slower starfield once its first frame is ready. */
.hero-starfield{opacity:0}
.hero-starfield.is-ready{animation:starfield-appear 2.8s ease-out both}
@keyframes starfield-appear{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.hero-starfield.is-ready{animation:none;opacity:1}}
/* A scroll-led reading pause before pricing. */
.testimonial{position:relative;height:200svh;background:#fff;border-block:1px solid #eeeef0;background-image:radial-gradient(#dfe3eb .7px,transparent .7px);background-size:12px 12px}
.testimonial-stage{position:sticky;top:84px;height:calc(100svh - 84px);min-height:400px;display:grid;place-items:center;padding:64px 28px}
.testimonial-figure{width:100%;max-width:890px;margin:0;text-align:center}
.testimonial-label{display:block;margin-bottom:32px;color:#71717a;font:500 12px/1.5 Inter,Arial,sans-serif;letter-spacing:.03em}
.testimonial-quote{margin:0}
.testimonial-quote p{margin:0;color:#09090b;font:400 clamp(34px,4vw,56px)/1.13 Georgia,'Times New Roman',serif;letter-spacing:-.025em;text-wrap:balance}
.testimonial-word{color:#a5abb6;transition:color .5s ease-out}
.testimonial-word.is-read{color:#09090b}
.testimonial-author{display:flex;flex-direction:column;gap:5px;margin-top:48px;font:14px/1.5 Inter,Arial,sans-serif;color:#71717a}
.testimonial-author strong{font-weight:500;color:#27272a}
@media(max-width:768px){.testimonial{height:170svh}.testimonial-stage{top:80px;height:calc(100svh - 80px);min-height:380px;padding:44px 24px}.testimonial-label{margin-bottom:26px}.testimonial-author{margin-top:32px}.testimonial-quote p{font-size:34px;line-height:1.18}}
@media(prefers-reduced-motion:reduce){.testimonial{height:auto}.testimonial-stage{position:relative;top:auto;height:auto;min-height:540px}.testimonial-word{color:#09090b;transition:none}}

/* Goals overview with an illustrative rising curve. */
.goals-banner{background:#fff}
.goals-banner-inner{position:relative;min-height:740px;overflow:hidden}
.goals-banner-copy{position:relative;z-index:1;padding:100px 48px 210px;max-width:690px}
.goals-banner-copy h2{font-size:42px;line-height:1.14}
.goals-benefits{display:grid;grid-template-columns:1fr 1fr;gap:28px 24px;margin-top:48px}
.goals-benefits>div{border-left:2px solid #2563eb;padding-left:18px}
.goals-benefits h3{font-size:18px;line-height:1.3;letter-spacing:-.02em}
.goals-benefits p{font-size:14px;line-height:1.5;margin-top:5px}
.goals-curve{position:absolute;inset:0;pointer-events:none}
.goals-curve svg{display:block;width:100%;height:100%}
.goals-banner.motion-enabled .goals-curve-line{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 2s cubic-bezier(.22,1,.36,1)}
.goals-banner.motion-enabled .goals-curve-fill{opacity:0;transition:opacity 1.5s ease .25s}
.goals-banner.is-visible .goals-curve-line{stroke-dashoffset:0}
.goals-banner.is-visible .goals-curve-fill{opacity:1}
@media(max-width:1024px){.goals-banner-copy{padding:70px 28px 0;max-width:660px}.goals-banner-inner{min-height:0}.goals-curve{position:relative;height:240px;margin-top:36px}.goals-banner-copy h2{font-size:38px}}
@media(max-width:768px){.goals-banner-inner{width:100%;border:0}.goals-banner-copy{padding:70px 24px 0}.goals-banner-copy h2{font-size:34px}.goals-benefits{gap:24px 18px;margin-top:34px}.goals-benefits>div{padding-left:12px}.goals-benefits h3{font-size:17px}.goals-curve{height:210px}}
@media(prefers-reduced-motion:reduce){.goals-banner.motion-enabled .goals-curve-line{stroke-dashoffset:0;transition:none}.goals-banner.motion-enabled .goals-curve-fill{opacity:1;transition:none}}
@media(max-width:1024px){.goals-banner-inner{display:flex;flex-direction:column}.goals-banner-copy{order:1}.goals-curve{order:2}}

.goals-metrics{display:grid;grid-template-columns:1fr 1fr;gap:32px 24px;margin:48px 0 0}
.goals-metrics>div{display:flex;flex-direction:column;border-left:1px solid #e4e4e7;padding-left:22px;min-width:0}
.goals-metrics dt{order:2;font-size:15px;line-height:1.5;color:#71717a}
.goals-metrics dd{order:1;margin:0 0 6px;font:500 46px/1.1 Roobert,Inter,Arial,sans-serif;letter-spacing:-.025em;font-variant-numeric:tabular-nums}
.goals-metrics-note{font-size:12px;margin-top:24px;color:#85858e}
@media(max-width:768px){.goals-metrics{gap:28px 18px;margin-top:36px}.goals-metrics>div{padding-left:14px}.goals-metrics dd{font-size:36px}.goals-metrics dt{font-size:14px}}

/* Let the curve span the viewport while the copy follows the content grid. */
.goals-banner-inner{width:100%;max-width:none;margin:0}
.goals-banner-copy{margin-left:max(64px,calc((100% - 1216px)/2))}
@media(max-width:1024px){.goals-banner-copy{margin-left:64px}}
@media(max-width:768px){.goals-banner-copy{margin-left:0}}

.testimonial-avatar{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 32px;border-radius:50%;background:#f0f0f2;border:1px solid #e4e4e7;color:#a1a1aa;box-shadow:0 2px 6px #09090b06}
@media(max-width:768px){.testimonial-avatar{width:56px;height:56px;margin-bottom:26px}.testimonial-avatar svg{width:28px;height:28px}}

/* Give the metrics breathing room and reveal a chart annotation after drawing. */
.goals-banner-inner{min-height:840px}
.goals-banner-copy{padding-bottom:310px}
.goals-chart-marker{position:absolute;left:78.046875%;top:41.27604%;bottom:0;width:1px;background:#2563eb80;opacity:1}
.goals-chart-dot{position:absolute;top:0;left:50%;width:9px;height:9px;transform:translate(-50%,-50%);border-radius:50%;background:#2563eb;border:2px solid #fff;box-shadow:0 0 0 1px #2563eb}
.goals-chart-tooltip{position:absolute;bottom:calc(100% + 20px);left:0;transform:translateX(-50%);width:180px;padding:14px 18px;background:#fff;border:1px solid #e9e9ed;border-radius:14px;box-shadow:0 8px 28px #09090b0d;display:flex;flex-direction:column;gap:4px}
.goals-chart-tooltip>span{font-size:12px;color:#71717a}
.goals-chart-tooltip strong{font:700 22px/1.3 Roobert,Inter,Arial,sans-serif;letter-spacing:-.02em;color:#09090b}
.goals-chart-tooltip small{font-size:10px;color:#85858e}
.goals-banner.motion-enabled .goals-chart-marker{opacity:0;transition:opacity .45s ease 2s}
.goals-banner.is-visible .goals-chart-marker{opacity:1}
@media(max-width:1024px){.goals-banner-inner{min-height:0}.goals-banner-copy{padding-bottom:0}.goals-curve{margin-top:72px}}
@media(max-width:768px){.goals-chart-tooltip{width:148px;padding:10px 12px;transform:translateX(-80%)}.goals-chart-tooltip strong{font-size:19px}.goals-chart-tooltip>span{font-size:11px}}
@media(prefers-reduced-motion:reduce){.goals-banner.motion-enabled .goals-chart-marker{opacity:1;transition:none}}

/* Translucent glass navigation with a soft rim and reflected highlights. */
.nav{background:linear-gradient(135deg,#ffffff16,#ffffff05 48%,#ffffff0c);border-color:#ffffff26;-webkit-backdrop-filter:blur(26px) saturate(170%);backdrop-filter:blur(26px) saturate(170%);box-shadow:inset 0 1px 0 #ffffff35,inset 0 -1px 0 #ffffff0c,0 8px 30px #00000012;transition:background .3s ease,color .25s ease,border-color .3s ease,box-shadow .3s ease}
.nav.scrolled{background:linear-gradient(135deg,#ffffffb8,#ffffff70 48%,#ffffffa3);border-color:#ffffffa6;-webkit-backdrop-filter:blur(26px) saturate(170%);backdrop-filter:blur(26px) saturate(170%);box-shadow:inset 0 1px 0 #ffffffed,inset 0 -1px 0 #ffffff66,0 0 0 1px #09090b06,0 8px 28px #09090b0d,0 2px 5px #09090b06}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.nav{background:#151519f5}.nav.scrolled{background:#fffffff5}}
@media(prefers-reduced-transparency:reduce){.nav{background:#151519;-webkit-backdrop-filter:none;backdrop-filter:none}.nav.scrolled{background:#fff}}

/* Keep the hero header open; reveal the glass surface only after scrolling. */
.nav:not(.scrolled){background:transparent;border-color:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}

.goals-chart-tooltip{width:196px}
.goals-chart-tooltip strong{white-space:nowrap}
@media(max-width:768px){.goals-chart-tooltip{width:166px}}

/* Plain text labels for product features. */
.research-feature-label,.portfolio-feature-label{margin-bottom:16px;font-size:14px;line-height:20px;padding:0;background:transparent;border:0;border-radius:0;vertical-align:middle}

.faq-contact{margin-top:28px;font-size:16px;line-height:1.65}
.faq-contact a{color:#2563eb;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.faq-contact a:hover{color:#1d4ed8}

.footer-top>.footer-brand{align-items:flex-start;gap:24px}
.footer-app-store{display:inline-flex;width:120px;line-height:0}
.footer-app-store img{display:block;width:120px;height:auto}
@media(max-width:768px){.footer-top>.footer-brand{grid-column:1/-1}}

/* Product, Company and Legal footer columns. */
.footer-top{grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr))}
@media(max-width:768px){.footer-top{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:20px}.footer-top>.footer-brand{grid-column:1/-1}}
@media(max-width:640px){.footer-top{grid-template-columns:repeat(2,minmax(0,1fr))}}

.testimonial-stars{display:flex;justify-content:center;gap:6px;color:#f5b800;margin-bottom:28px}
.testimonial-stars svg{display:block;width:24px;height:24px;fill:currentColor}
@media(max-width:768px){.testimonial-stars{margin-bottom:24px}.testimonial-stars svg{width:22px;height:22px}}

/* Chart target, revealed with the existing portfolio marker. */
.goals-chart-goal{position:absolute;left:98.3%;top:3.8%;width:0;height:0;opacity:1}
.goals-goal-dot{position:absolute;width:10px;height:10px;transform:translate(-50%,-50%);border:2px solid #fff;border-radius:50%;background:#2563eb;box-shadow:0 0 0 1px #2563eb}
.goals-goal-label{position:absolute;right:22px;top:10px;display:flex;flex-direction:column;gap:3px;min-width:142px;padding:12px 16px;border:1px solid #e4e4e7;border-radius:12px;background:#fff;box-shadow:0 6px 22px #09090b08}
.goals-goal-label>span{font-size:12px;color:#71717a}
.goals-goal-label strong{font:700 22px/1.3 Roobert,Inter,Arial,sans-serif;letter-spacing:-.02em;white-space:nowrap}
.goals-banner.motion-enabled .goals-chart-goal{opacity:0;transition:opacity .45s ease 2s}
.goals-banner.is-visible .goals-chart-goal{opacity:1}
@media(max-width:1024px){.goals-goal-label{top:-64px;right:12px;padding:8px 12px;min-width:130px}.goals-goal-label strong{font-size:19px}}
@media(prefers-reduced-motion:reduce){.goals-banner.motion-enabled .goals-chart-goal{opacity:1;transition:none}}

/* One moving surface for the billing selection. */
.billing{position:relative;isolation:isolate}
.billing.has-indicator:before{content:"";position:absolute;left:0;top:0;pointer-events:none;z-index:0;width:var(--billing-width);height:var(--billing-height);transform:translate(var(--billing-x),var(--billing-y));border-radius:9999px;background:#fff;box-shadow:0 1px 4px #00000012}
.billing.indicator-ready:before{transition:transform .38s cubic-bezier(.22,1,.36,1),width .38s cubic-bezier(.22,1,.36,1),height .38s cubic-bezier(.22,1,.36,1)}
.billing.has-indicator button{position:relative;z-index:1;background:transparent;box-shadow:none;transition:color .2s ease}
.billing.has-indicator button[aria-pressed="true"]{background:transparent;box-shadow:none;color:#09090b}
@media(prefers-reduced-motion:reduce){.billing.indicator-ready:before,.billing.has-indicator button{transition:none}}

.footer-brand .footer-description{margin:0;color:#71717a;font-size:14px;line-height:1.6;max-width:360px}

/* Refined preview placement, lighter feature titles and compact attribution. */
@media(min-width:769px){.hero-phone{right:-1%}}
:is(#portfolio,#research) .card-copy h3,:is(#portfolio,#research) .card.wide h3{font-weight:500}
.testimonial-author{flex-direction:row;justify-content:center;align-items:center;gap:12px}
.testimonial-person{display:block;width:44px;height:44px;flex:0 0 44px;border-radius:50%;object-fit:cover}
.testimonial-author-copy{display:flex;flex-direction:column;gap:3px;text-align:left}
#mobile .phone-placeholder{background:linear-gradient(140deg,#f4f4f5,#e4e4e7);border:1px solid #e9e9eb;box-shadow:0 0 0 4px #f5f5f5;border-radius:24px}
.goals-chart-marker{left:73.465%;top:47.975%}
.goals-chart-goal{left:92.265355%;top:16.378575%}
.goals-goal-label{top:auto;bottom:20px;right:auto;left:0;transform:translateX(-50%);border-color:#e9e9ed;border-radius:14px;box-shadow:0 8px 28px #09090b0d}
.faq-contact a{color:#71717a}
.faq-contact a:hover{color:#52525b}
.footer-bottom{margin-top:48px}
.footer-bottom>.footer-disclosures{display:flex;flex-direction:column;align-items:flex-end;gap:10px;margin:0;justify-self:end}
.footer-disclosures .footer-copyright{font-size:12px;color:#8b8b93;text-align:right}
@media(max-width:768px){.goals-goal-label{transform:translateX(-85%)}.footer-bottom>.footer-disclosures{align-items:flex-start;justify-self:start}.footer-disclosures .footer-copyright{text-align:left}}

/* Full-width brokerage carousel with a contained introduction. */
#connections>.section-heading{margin-left:auto;margin-right:auto}
@media(prefers-reduced-motion:reduce){#connections>.broker-marquee{padding-left:20px;padding-right:20px}}

/* Blend the chart and its vertical grid into the white section below. */
.goals-curve:after{content:"";position:absolute;left:0;right:0;bottom:0;height:clamp(80px,12vw,160px);background:linear-gradient(to bottom,rgba(255,255,255,0),rgba(255,255,255,.65) 55%,#fff 100%);pointer-events:none}

/* More breathing room between the goals title and metrics. */
.goals-metrics{margin-top:64px}
@media(max-width:768px){.goals-metrics{margin-top:48px}}

/* A compact, interactive mobile walkthrough in the hero. */
.hero-phone{container-type:inline-size}
.hero-phone .hp-interactive-content{position:absolute;top:48px;bottom:78px;left:0;right:0;padding:0 7%;overflow:hidden}
.hp-view{position:absolute;inset:0 7%;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .4s ease,transform .4s ease,visibility 0s .4s}
.hp-view.is-active{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.hp-screen-title{font-size:13px;font-weight:500;color:#e4e4e7;margin-bottom:18px}
.hero-phone .hp-view .hp-chart{height:40cqw;margin:8cqw 0 5cqw}
.hero-phone .hp-view .hp-row{margin-top:6cqw}
.hp-tabbar{position:absolute;bottom:22px;left:5%;right:5%;display:grid;grid-template-columns:repeat(3,1fr);gap:3px;padding:6px 0 0;border-top:1px solid #ffffff0c;background:#101012}
.hp-tabbar button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:44px;padding:5px 1px;border:0;border-radius:9px;background:transparent;color:#777780;font:9px/1.2 Inter,Arial,sans-serif;cursor:pointer;transition:color .25s,background .25s}
.hp-tabbar button[aria-selected="true"]{color:#f4f4f5;background:#ffffff08}
.hp-tabbar button:hover{color:#fff;background:#ffffff0d}
.hp-tabbar button:focus-visible{outline:2px solid #8eabff;outline-offset:-2px}
.hp-tabbar svg{width:19px;height:19px}
.hp-allocation{display:flex;gap:4px;height:28px;margin:22px 0 28px}
.hp-allocation i{flex:4;background:#626271;border-radius:4px}.hp-allocation i:nth-child(2){flex:3;background:#484854}.hp-allocation i:nth-child(3){flex:2;background:#383842}.hp-allocation i:nth-child(4){flex:1;background:#282830}
.hp-list .hp-row{padding-bottom:12px;border-bottom:1px solid #ffffff06}
.hp-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin:24px 0}
.hp-calendar i{height:7cqw;background:#28282f;border-radius:3px}.hp-calendar i:nth-child(9),.hp-calendar i:nth-child(17),.hp-calendar i:nth-child(24){background:#626271}
@media(max-width:768px){.hero-phone .hp-interactive-content{top:34px;bottom:68px}.hp-screen-title{font-size:10px;margin-bottom:12px}.hp-tabbar{bottom:15px}.hp-tabbar button{font-size:7px;min-height:40px}.hp-tabbar svg{width:16px;height:16px}.hp-allocation{height:18px;margin:14px 0}.hp-calendar{gap:3px;margin:14px 0}.hp-list .hp-row{padding-bottom:8px}}
@media(prefers-reduced-motion:reduce){.hp-view,.hp-tabbar button{transition:none}}

/* Keep the Portfolio index unfilled in every interaction state. */
.portfolio-nav a.is-active,.portfolio-nav a:hover,.portfolio-nav a:focus-visible{background:transparent}

/* Tighter title-to-description spacing across Portfolio cards. */
#portfolio .card-copy p{margin-top:6px}

/* Stable-width counters with a gentle staggered entrance. */
.goals-metrics dd{font-variant-numeric:tabular-nums;display:grid;justify-items:start}
.metric-final,.metric-count{grid-area:1/1}
.metric-final{opacity:0;pointer-events:none}
.goals-metrics.count-ready>div{opacity:0}
.goals-metrics.count-started>div{animation:metric-count-enter .75s cubic-bezier(.22,1,.36,1) var(--count-delay,0ms) both}
.goals-metrics.count-complete>div{opacity:1;animation:none}
@keyframes metric-count-enter{from{opacity:0;filter:blur(4px);transform:translateY(10px)}to{opacity:1;filter:blur(0);transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.goals-metrics.count-ready>div{opacity:1}.goals-metrics.count-started>div{animation:none}}

/* More breathing room below the main navigation. */
.hero{padding-top:calc(clamp(100px,12svh,150px) + 32px)}
@media(max-width:768px){.hero{padding-top:134px}}

/* Slightly tighter spacing between desktop navigation links. */
@media(min-width:1025px){#navigation{gap:24px}}

/* Dark brokerage section, with the carousel aligned to the page container. */
#connections{background:#09090f;border-color:#202027;color:#fafafa}
#connections .section-heading p{color:#a1a1aa}
#connections .eyebrow{background:#172442;color:#9bbcff}
#connections .button{background:#fafafa;color:#09090b;border-color:#e4e4e7;--button-rim:#ffffff80}
#connections .button:hover{background:#e4e4e7}
#connections .broker-marquee{width:calc(100% - 128px);max-width:1216px;margin-inline:auto}
#connections .broker{background:linear-gradient(145deg,#1b1b24,#13131b);border-color:#2b2b35;box-shadow:none}
#connections .broker>span{color:#f4f4f5}
#connections .broker-motion-toggle{color:#a1a1aa}
/* Contain the goals illustration and reset its former viewport-based offset. */
.goals-banner-inner{width:calc(100% - 128px);max-width:1216px;margin-inline:auto}
.goals-banner-copy{margin-left:0}
@media(max-width:1024px){
 #connections .broker-marquee,.goals-banner-inner{width:calc(100% - 64px)}
}
@media(max-width:768px){
 #connections .broker-marquee,.goals-banner-inner{width:calc(100% - 40px)}
 .goals-banner-copy{padding-left:0;padding-right:0}
}

/* A title-only Portfolio introduction and more readable card descriptions. */
#portfolio>.section-heading h2{margin:0}
#portfolio .card-copy p{margin-top:3px;line-height:1.8}
/* Reserve border space so selection never moves the navigation labels. */
.portfolio-nav a{border:1px solid transparent;transition:color .2s ease,border-color .2s ease}
.portfolio-nav a:before{display:none}
.portfolio-nav a.is-active{border-color:#e4e4e7;background:transparent}
.portfolio-nav a:focus-visible{outline:2px solid #2563eb;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.portfolio-nav a{transition:none}}

/* Stack Portfolio copy above its existing skeleton preview. */
#portfolio .card,#portfolio .card.wide{display:flex;flex-direction:column;align-items:stretch;min-height:0}
#portfolio .card-copy,#portfolio .card.wide .card-copy{padding:36px 40px 28px;width:100%;max-width:none}
#portfolio .card-media,#portfolio .card.wide .card-media{display:block;height:350px;min-height:0;padding:8px 0 0 40px}
#portfolio .card-media .skeleton{width:calc(100% + 24px);min-width:0;height:420px}
@media(max-width:1024px){
 #portfolio .card-copy,#portfolio .card.wide .card-copy{padding:30px 28px 24px}
 #portfolio .card-media,#portfolio .card.wide .card-media{padding-left:28px;height:310px}
}
@media(max-width:768px){
 #portfolio .card-copy,#portfolio .card.wide .card-copy{padding:27px 24px 24px}
 #portfolio .card-media,#portfolio .card.wide .card-media{height:255px;padding:0 0 0 24px}
 #portfolio .card-media .skeleton{width:480px;min-width:480px;height:320px}
}

/* Shared dark surfaces for the app and closing invitation. */
#mobile,.closing{background:#09090f;color:#fafafa;border-color:#202027}
#mobile .eyebrow{background:#172442;color:#9bbcff}
#mobile .mobile-copy>p,#mobile .mobile-step-description{color:#a1a1aa}
#mobile .mobile-step{color:#92929e}
#mobile .mobile-step.is-active{color:#fafafa}
#mobile .mobile-step-bar{background:#30303b}
#mobile .mobile-step-bar i{background:#6691ff}
#mobile .button,.closing .button{background:#fafafa;color:#09090b;border-color:#e4e4e7;--button-rim:#fff}
#mobile .button:hover,.closing .button:hover{background:#e4e4e7}
#mobile .phone-placeholder{background:#18181b;border:1px solid #2a2a2e;box-shadow:0 0 0 4px #121214,inset 0 1px 0 #ffffff03}
#mobile .mobile-demo-phone{--sk-bg:#101017;--sk-line:#30303a;--sk-border:#272732;border-color:#494954;box-shadow:0 20px 35px #0005}
#mobile .demo-screen-title{color:#ededf3}
#mobile .demo-island{background:#030305}
#mobile .demo-home{background:#a1a1aa}
#mobile .demo-subtitle,#mobile .demo-stats i,#mobile .demo-filters i{background:#282832}
#mobile .demo-value,#mobile .demo-row>i,#mobile .demo-row b{background:#393945}
#mobile .demo-chart{border-color:#30303a;background:repeating-linear-gradient(to top,transparent 0 30px,#24242e 30px 31px)}
#mobile .demo-chart i,#mobile .demo-row em{background:#555563}
#mobile .demo-row{border-color:#24242e}
#mobile .demo-row span,#mobile .demo-calendar i{background:#292934}
#mobile .demo-filters i:first-child,#mobile .demo-calendar i:nth-child(10),#mobile .demo-calendar i:nth-child(16){background:#294678}
#mobile .mobile-arrow{background:#292934;color:#e4e4e7;border-color:#40404c}
#mobile .mobile-arrow:hover{background:#3a3a46}
.closing:before{background:repeating-linear-gradient(90deg,transparent 0 10px,#ffffff12 10px 11px)}
.connections-action{text-align:center;margin-top:18px}
/* Match the header to the section passing underneath its centre. */
.nav.scrolled.is-dark{background:linear-gradient(135deg,#18181eea,#111119de 48%,#202028e6);color:#fafafa;border-color:#ffffff20;box-shadow:inset 0 1px 0 #ffffff15,0 8px 28px #0003}
.nav.scrolled.is-dark .brand img{filter:none}
.nav.scrolled.is-dark .app-link{border-color:#ffffff30}
.nav.scrolled.is-dark .app-link:hover,.nav.scrolled.is-dark #navigation>a:before{background:#ffffff14}
.nav.scrolled.is-dark .nav-actions>.button{background:#fafafa;color:#09090b;border-color:#e4e4e7;--button-rim:#fff}
.nav.scrolled.is-dark .nav-actions>.button:hover,.nav.scrolled.is-dark .nav-actions>.button:focus-visible{background:#e4e4e7;color:#09090b;border-color:#e4e4e7}
@media(prefers-reduced-transparency:reduce){.nav.scrolled.is-dark{background:#151519}}

/* Broad, soft overhead light on the dark brokerage surface. */
#connections{background:radial-gradient(ellipse 48% 80% at 50% -18%,#ffffff1f 0%,#ffffff09 48%,transparent 78%),#09090f}
/* Reveal the complete curve without scaled SVG dash-length truncation. */
.goals-banner.motion-enabled .goals-curve-line{stroke-dasharray:none;stroke-dashoffset:0;clip-path:inset(0 100% 0 0);transition:clip-path 2s cubic-bezier(.22,1,.36,1)}
.goals-banner.is-visible .goals-curve-line{clip-path:inset(0)}
@media(prefers-reduced-motion:reduce){.goals-banner.motion-enabled .goals-curve-line{clip-path:none;transition:none}}

/* Original Finsepa charcoal card surface and layered rim; retain existing radii. */
#connections .broker{background:#18181b;border:1px solid #2a2a2e;box-shadow:0 0 0 4px #121214,inset 0 1px 0 #ffffff03}

/* A softly expanding feature accordion with a vertical countdown rail. */
#mobile .mobile-step{position:relative;padding:18px 0 18px 28px;border-radius:0;transition:color .8s cubic-bezier(.63,0,.26,1)}
#mobile .mobile-step-description{max-height:0;margin-top:0;opacity:0;transform:translateY(-10px);visibility:hidden;transition:max-height .8s cubic-bezier(.63,0,.26,1),margin-top .8s cubic-bezier(.63,0,.26,1),opacity .4s ease,transform .65s ease,visibility 0s .8s}
#mobile .mobile-step.is-active .mobile-step-description{max-height:var(--description-height,70px);margin-top:12px;opacity:1;transform:translateY(0);visibility:visible;transition:max-height .8s cubic-bezier(.63,0,.26,1),margin-top .8s cubic-bezier(.63,0,.26,1),opacity .55s ease .15s,transform .65s ease .1s,visibility 0s}
#mobile .mobile-step-bar{position:absolute;left:0;top:24px;width:3px;height:4px;margin:0;opacity:1;background:#6691ff;transition:height .8s cubic-bezier(.63,0,.26,1),background .4s}
#mobile .mobile-step.is-active .mobile-step-bar{height:calc(100% - 42px);background:#30303b}
#mobile .mobile-step-bar i{transform:scaleY(0);transform-origin:top}
#mobile .mobile-step.is-active .mobile-step-bar i{transform:scaleY(var(--mobile-progress,0))}
#mobile .mobile-step:focus-visible{outline:2px solid #6691ff;outline-offset:5px}
#mobile .demo-screen{transform:translateY(12px);transition:opacity .6s ease,transform .8s cubic-bezier(.63,0,.26,1),visibility 0s .6s}
#mobile .demo-screen.is-active{transform:translateY(0);transition-delay:0s}
#mobile .demo-screen.is-active>*{animation:mobile-detail-enter .7s cubic-bezier(.22,1,.36,1) both}
#mobile .demo-screen.is-active>:nth-child(2){animation-delay:.05s}
#mobile .demo-screen.is-active>:nth-child(3){animation-delay:.1s}
#mobile .demo-screen.is-active>:nth-child(4){animation-delay:.15s}
#mobile .demo-screen.is-active>:nth-child(n+5){animation-delay:.2s}
@keyframes mobile-detail-enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){
 #mobile .mobile-step,#mobile .mobile-step-description,#mobile .mobile-step.is-active .mobile-step-description,#mobile .mobile-step-bar,#mobile .demo-screen{transition:none;transform:none}
 #mobile .demo-screen.is-active>*{animation:none}
}

/* Contain the dark closing invitation within white page margins. */
.closing{width:calc(100% - 128px);max-width:1216px;margin-inline:auto}
.closing>.wrap{width:100%;padding-inline:32px}
@media(max-width:1024px){.closing{width:calc(100% - 64px)}}
@media(max-width:768px){.closing{width:calc(100% - 40px)}.closing>.wrap{padding-inline:24px}}

/* Match the site's rounded card corners. */
.closing{border-radius:28px}
@media(max-width:768px){.closing{border-radius:24px}}

/* Keep the footer disclaimer and copyright together on wider screens. */
.footer-bottom>.footer-disclosures{flex-direction:row;align-items:center;gap:20px;flex-wrap:wrap;justify-content:flex-end}
.footer-bottom .legal{max-width:none}
.footer-disclosures .footer-copyright{white-space:nowrap}
@media(max-width:768px){.footer-bottom>.footer-disclosures{justify-content:flex-start;gap:10px 20px}}

/* Soft travelling highlights over the CTA's existing vertical rails. */
.closing-streaks{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;mask-image:radial-gradient(ellipse 70% 65% at 50% 45%,transparent 35%,#000 85%);-webkit-mask-image:radial-gradient(ellipse 70% 65% at 50% 45%,transparent 35%,#000 85%)}
.closing-streaks i{position:absolute;top:0;left:8%;width:1px;height:100%;background:linear-gradient(transparent 0%,transparent 18%,rgba(170,180,198,.4) 50%,transparent 82%,transparent 100%);opacity:0;animation:closing-streak 9s linear infinite;animation-play-state:paused}
.closing-streaks i:nth-child(2){left:22%;animation-duration:11s;animation-delay:-7s}
.closing-streaks i:nth-child(3){left:37%;animation-duration:10s;animation-delay:-3s}
.closing-streaks i:nth-child(4){left:64%;animation-duration:12s;animation-delay:-9s}
.closing-streaks i:nth-child(5){left:79%;animation-duration:9.5s;animation-delay:-5s}
.closing-streaks i:nth-child(6){left:92%;animation-duration:11.5s;animation-delay:-1s}
.is-animating>.closing-streaks i{animation-play-state:running}
@keyframes closing-streak{0%{transform:translateY(-100%);opacity:0}15%{opacity:.75}75%{opacity:.75}100%{transform:translateY(100%);opacity:0}}
@media(prefers-reduced-motion:reduce){.closing-streaks{display:none}.closing-streaks i{animation:none}}

/* Keep the gap inside main so it cannot collapse past the CTA. */
main{padding-bottom:80px}
.closing{margin-bottom:0}

/* Reuse the closing CTA rails behind brokerage content. */
#connections{position:relative;isolation:isolate;overflow:hidden}
#connections:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:repeating-linear-gradient(90deg,transparent 0 10px,#ffffff12 10px 11px);mask-image:radial-gradient(ellipse 40% 80% at 50% 45%,transparent 35%,#000 100%);-webkit-mask-image:radial-gradient(ellipse 40% 80% at 50% 45%,transparent 35%,#000 100%)}

/* Give the desktop hero dashboard a larger, wider stage. */
@media(min-width:1025px){
 .hero-preview.wrap{max-width:1376px}
 .hero-preview>.dashboard{width:92%;margin-left:2%}
}

/* More breathing room above and below the brokerage content. */
#connections{padding-block:160px}
@media(max-width:768px){#connections{padding-block:100px}}

/* Match the brokerage glow and generous section spacing. */
.closing{background:radial-gradient(ellipse 48% 80% at 50% -18%,#ffffff1f 0%,#ffffff09 48%,transparent 78%),#09090f}
#mobile{padding-block:160px}
@media(max-width:768px){#mobile{padding-block:100px}}

/* Hero companions use Finsepa web dark tokens; the phone renders the iOS film. */
.hero-phone{background:#000}
.hero-phone-screen{position:absolute;inset:0;overflow:hidden;border-radius:inherit}
.hero-float,.float-research,.float-returns,.float-dividends{height:auto;padding:14px;background:#151515;border-color:#2a2a2c;box-shadow:0 18px 45px #000a;color:#fff;font:12px/1.35 Inter,Arial,sans-serif;font-variant-numeric:tabular-nums;text-align:left}
.fc-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:6px}
.fc-head b{font-size:13px;font-weight:600}
.fc-head span,.fc-label,.fc-note,.fc-sub,.fc-name small{color:#999}
.fc-label{display:block;font-size:11px;font-weight:500}
.fc-metric{display:block;margin:4px 0 2px;font-size:22px;font-weight:600;letter-spacing:-.02em}
.fc-note{display:block;font-size:11px}
.fc-sub{display:block;margin:14px 0 2px;font-size:10px;font-weight:500;letter-spacing:.04em;text-transform:uppercase}
.fc-row{display:flex;align-items:center;gap:8px;padding:7px 0;border-top:1px solid #212121}
.fc-head+.fc-row,.fc-sub+.fc-row{border-top:0}
.fc-row>b,.fc-name b{font-size:12px;font-weight:600}
.fc-name{display:flex;flex-direction:column}
.fc-name small{font-size:10px}
.fc-right{display:flex;flex-direction:column;align-items:flex-end;margin-left:auto}
.fc-right b{font-size:12px;font-weight:500}
.fc-right small{font-size:10px}
.fc-up{color:#35d96c}
.fc-down{color:#ff3349}
.fc-logo{display:flex;flex:none;align-items:center;justify-content:center;width:24px;height:24px;border-radius:7px;background:#2c2c2e;font-size:12px;font-weight:700}
.fc-logo svg{width:14px;height:14px}
.fc-logo-meta{background:#fff;color:#0866ff;font-size:18px}
.fc-logo-nflx{background:#000;color:#e50914;box-shadow:inset 0 0 0 1px #2a2a2c}
.fc-logo-aapl{background:#eee}
.fc-logo-v{background:#1434cb;color:#fff}
.fc-bars{display:flex;align-items:flex-end;gap:5px;height:64px;margin-top:14px;border-bottom:1px solid #212121}
.fc-bars i{flex:1;height:var(--h);border-radius:3px 3px 0 0;background:#364aff}
.fc-bars i.is-down{background:#ff3349}
@media (max-width:768px){
 .hero-float,.float-research,.float-returns,.float-dividends{height:auto;padding:9px;font-size:10px}
 .fc-head b,.fc-row>b,.fc-name b,.fc-right b{font-size:10px}
 .fc-label,.fc-note,.fc-right small,.fc-name small{font-size:8px}
 .fc-metric{font-size:15px}
 .fc-row{gap:5px;padding:4px 0}
 .fc-logo{width:16px;height:16px;border-radius:5px;font-size:9px}
 .fc-logo svg{width:10px;height:10px}
 .fc-logo-meta{font-size:12px}
 .fc-bars{height:34px;gap:3px;margin-top:8px}
 .fc-sub{margin-top:8px;font-size:7px}
 .float-research .fc-row:last-child,.float-dividends .fc-row:last-child{display:none}
}
@media (min-width:769px){.float-research,.float-dividends{z-index:3}}
