/* Editorial depth, responsive surfaces and purposeful motion. */
:root{--soft-shadow:0 22px 70px -38px var(--shadow)}
body{overflow-x:clip}
.top{background:color-mix(in srgb,var(--chassis) 88%,transparent);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
.reading-progress{position:fixed;inset:0 auto auto 0;height:3px;width:100%;transform:scaleX(0);transform-origin:left;background:var(--cyan);z-index:120;pointer-events:none}
.hero{position:relative;background:radial-gradient(ellipse at 88% 20%,color-mix(in srgb,var(--cyan) 15%,transparent),transparent 48%),var(--hero-bg);padding-block:92px 75px}
.hero:before{content:'';position:absolute;width:650px;height:650px;right:-240px;top:-100px;border:1px solid color-mix(in srgb,var(--cyan) 17%,transparent);border-radius:50%;pointer-events:none}
.hero .wrap{position:relative;gap:64px}
.hero h1{font-size:clamp(48px,5.2vw,72px);line-height:1.02;letter-spacing:-.055em}
.hero h1 em{background:linear-gradient(110deg,var(--cyan),var(--ink));background-clip:text;-webkit-background-clip:text;color:transparent}
.hero .eyebrow{letter-spacing:.14em}
.advisor-photo{height:510px;border-radius:160px 24px 24px 24px;box-shadow:0 32px 70px -35px #081e4660}
.insurance-story{isolation:isolate}
.insurance-story:before{content:'';position:absolute;inset:28px -15px 100px 25px;border:1px solid var(--rim-hi);border-radius:160px 24px 24px 24px;z-index:-1;transform:rotate(4deg)}
.story-tag,.story-work{background:color-mix(in srgb,var(--screen) 93%,transparent);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.story-work{bottom:30px;left:-28px;right:24px;border-radius:18px;padding:24px;box-shadow:0 25px 65px -25px #07193250}
.story-tag{top:235px;left:auto;right:-15px;border-radius:30px;padding:13px 18px}
.story-tag>span{display:inline-block;animation:quiet-spark 5s ease-in-out infinite}
.key{border-radius:100px;transition:background .2s,transform .2s,box-shadow .2s}
.key.lit{box-shadow:0 8px 24px -12px var(--cyan)}
.key:hover{transform:translateY(-3px);box-shadow:0 10px 24px -15px var(--cyan)}
.text-link{display:inline-block;text-underline-offset:6px;transition:color .2s,transform .2s}
.text-link:hover{transform:translateX(3px)}
.strip .wrap>div{padding:8px 0}
.bank-head h2,.overview h2,.foundation-layout h2{letter-spacing:-.045em;line-height:1.07}
.bank-title{letter-spacing:.14em}
.section-heading-row{gap:80px}
.protection-grid{gap:22px}
.protection-card{background:var(--screen);border:1px solid var(--rim);border-radius:20px;overflow:hidden;transition:transform .35s,box-shadow .35s,border-color .35s}
.protection-photo{border-radius:0}
.protection-photo img{height:310px;transition:transform .8s cubic-bezier(.2,.65,.3,1)}
.protection-card:hover,.protection-card:focus-within{transform:translateY(-7px);box-shadow:var(--soft-shadow);border-color:var(--rim-hi)}
.protection-card:hover img,.protection-card:focus-within img{transform:scale(1.055)}
.protection-copy{padding:26px 24px 30px}
.protection-copy h3{font-size:30px;line-height:1.1;letter-spacing:-.035em}
.protection-copy .text-link{line-height:1.7}
.work-in-action{background:radial-gradient(ellipse at 0 100%,color-mix(in srgb,var(--cyan) 10%,transparent),transparent 60%),var(--hero-bg)}
.workflow-tabs{gap:0;border:1px solid var(--rim);padding:6px;border-radius:16px;background:var(--chassis)}
.workflow-tabs button{border:0;border-radius:11px;background:transparent;transition:background .25s,color .25s}
.workflow-tabs button:hover:not([aria-pressed=true]){background:var(--accent-bg)}
.workbench{border-radius:22px;border-color:var(--rim);box-shadow:0 28px 85px -42px var(--shadow)}
.workbench-rail{background:linear-gradient(150deg,var(--chassis-2),var(--screen));padding:38px}
.work-request p{font-size:29px;letter-spacing:-.03em}
.demo-screen-head{background:var(--chassis)}
.demo-screen-content{padding:32px 38px;animation:work-arrive .32s ease-out}
.demo-result{border-radius:13px;background:linear-gradient(115deg,var(--accent-bg),var(--chassis-2));padding:24px}
.demo-result strong{font-size:32px;letter-spacing:-.03em}
.workflow-play{align-self:flex-start;margin:0 0 18px;border:1px solid var(--rim-hi);border-radius:30px;background:var(--screen);color:var(--ink);padding:11px 16px;font:500 11px var(--f-body);cursor:pointer;min-height:42px}
.workflow-play[aria-pressed=true]{background:var(--button);color:var(--button-text)}
.workflow-play:hover{border-color:var(--cyan)}
.publishing-card,.jurisdiction-panel,.tier,.inspector .lcd{border-radius:20px;box-shadow:var(--soft-shadow)}
.advanced-grid article{padding:32px;border:1px solid var(--rim);border-radius:20px;background:var(--screen)}
.advanced-grid{gap:24px}
.advanced-grid h3{letter-spacing:-.035em}
.mod{border-radius:12px;transition:transform .2s,background .2s,border-color .2s}
.mod:hover{transform:translateY(-2px);border-color:var(--cyan)}
#flow .step{border-radius:16px;transition:transform .25s,box-shadow .25s}
#flow .step:hover{transform:translateY(-5px);box-shadow:var(--soft-shadow)}
.nav a{position:relative}.nav a[aria-current=location]{color:var(--cyan)}
.nav a[aria-current=location]:after{content:'';position:absolute;bottom:-8px;left:0;right:0;height:2px;background:var(--cyan)}
.return-top{position:fixed;bottom:25px;right:25px;width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--rim);border-radius:50%;background:var(--screen);color:var(--ink);box-shadow:var(--soft-shadow);text-decoration:none;z-index:30;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .2s,transform .2s,visibility .2s}
.return-top.is-visible{opacity:1;visibility:visible;transform:none}
.reveal-ready{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.65,.3,1)}
.reveal-ready.is-revealed{opacity:1;transform:none}
@keyframes quiet-spark{0%,100%{transform:rotate(0)}50%{transform:rotate(90deg)}}
@keyframes work-arrive{from{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(min-width:1100px){.protection-card:nth-child(2){margin-top:36px}.protection-card:nth-child(3){margin-top:72px}.protection-grid{align-items:start}}
@media(max-width:1080px){.hero .wrap{gap:35px}.hero h1{font-size:52px}.story-work{left:0;right:0}.story-tag{right:-5px}.protection-copy{padding:22px 18px}.protection-copy h3{font-size:26px}.workbench-rail{padding:28px}}
@media(max-width:800px){.hero{padding-block:55px}.hero .wrap{gap:0}.hero h1{font-size:clamp(45px,7.5vw,62px)}.insurance-story:before{right:0}.story-work{left:15px;right:15px}.story-tag{left:auto;right:0}.protection-grid{grid-template-columns:1fr}.protection-card{display:grid;grid-template-columns:1fr 1fr}.protection-photo img{height:100%;min-height:280px}.protection-copy{padding:28px}.demo-screen-content{padding:28px}.advanced-grid article{padding:28px}.return-top{bottom:18px;right:18px}}
@media(max-width:520px){.hero h1{font-size:45px}.hero .story-tag{top:155px}.hero .insurance-story .advisor-photo{border-top-left-radius:85px}.story-work{padding:18px;left:8px;right:8px}.insurance-story:before{border-top-left-radius:85px}.protection-card{display:block}.protection-photo img{height:310px}.protection-copy{padding:26px}.protection-copy h3{font-size:30px}.workflow-tabs{gap:4px}.workflow-tabs button{padding:13px 9px}.workbench-rail,.demo-screen-content{padding:23px}.work-request p{font-size:25px}.demo-result strong{font-size:27px}.section-heading-row{gap:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-ready{opacity:1;transform:none}}
