/* For Investors (Pocket Pulse v7): component rules from the v7 design */
body{margin:0;background:#F4F2EC}
a{color:#7E6316}a:hover{color:#0E1626}
.m{display:inline-block;border-radius:999px;padding:3px 9px;line-height:1.3;white-space:nowrap}
.ms{background:#FFFFFF;color:#0E1626;font-weight:700;box-shadow:0 1px 3px rgba(14,22,38,0.16)}
.mt{background:#0E1626;color:#FFFFFF;font-family:'DM Mono',monospace;font-size:12px}
.mv{background:#D6CDB8;color:#333A48;font-size:12.5px}
.mp{background:#FFFFFF;border:1px solid #B5AE9E;color:#333A48;font-size:12.5px}
.nz{position:absolute;opacity:0.32;animation:bob 4s ease-in-out infinite}
.n2{animation-duration:5s;animation-delay:-1.4s}.n3{animation-duration:4.6s;animation-delay:-2.6s}
@keyframes bob{0%,100%{translate:0 0}50%{translate:0 -6px}}
.wv{display:inline-block;width:3px;border-radius:2px;background:#C9A84C}
.it{background:#FFFFFF;border:1px solid #E6E0D2;border-radius:14px;padding:11px 12px;display:flex;flex-direction:column;gap:5px}
.it b{font-size:13.5px;line-height:1.3;color:#0E1626}
.it i{font-style:normal;font-size:11.5px;line-height:1.35;color:#7E6316}
.pt{display:inline-flex;align-items:center;gap:7px;font-size:15px;color:#333A48}
@media (prefers-reduced-motion: reduce){.nz{animation:none}}
body{margin:0;background:#F4F2EC}
a{color:#7E6316}a:hover{color:#0E1626}
.m{display:inline-block;border-radius:999px;padding:3px 9px;line-height:1.3;white-space:nowrap}
.ms{background:#FFFFFF;color:#0E1626;font-weight:700;box-shadow:0 1px 3px rgba(14,22,38,0.16)}
.mt{background:#0E1626;color:#FFFFFF;font-family:'DM Mono',monospace;font-size:12px}
.me{background:#0E1626;color:#FFFFFF;font-family:'DM Mono',monospace;font-size:12px}
.mv{background:#D6CDB8;color:#333A48;font-size:12.5px}
.mp{background:#FFFFFF;border:1px solid #B5AE9E;color:#333A48;font-size:12.5px}
.mq{background:#D6CDB8;color:#333A48;font-style:italic;font-size:12.5px}
@keyframes bob{0%,100%{translate:0 0}50%{translate:0 -5px}}
.kn{display:inline-block;border:1px solid rgba(201,168,76,0.7);color:#F4F2EC;border-radius:999px;padding:3px 10px;font-size:12px;line-height:1.3;white-space:nowrap}
.fr{display:flex;align-items:center;gap:9px}
.fr b{width:14px;font-family:'DM Mono',monospace;font-size:12px;font-weight:500;color:#7E6316}
.fr .m{font-size:11.5px}
.fr i{display:block;height:6px;border-radius:3px;background:#E9E3D5}
.tw{position:absolute;color:#C9A84C;line-height:1;animation:tw 2.8s ease-in-out infinite}
.t2{animation-delay:-0.9s}.t3{animation-delay:-1.8s}
@keyframes tw{0%,100%{opacity:0.3;transform:scale(0.75)}50%{opacity:1;transform:scale(1.1)}}
@media (prefers-reduced-motion: reduce){.tw{animation:none;opacity:0.8}}
.gem{position:relative;box-sizing:border-box;background:linear-gradient(180deg,#1A2640 0%,#0E1626 100%);border:1.5px solid #C9A84C;border-radius:18px;padding:15px 18px 14px;outline:1px solid rgba(201,168,76,0.55);outline-offset:5px;box-shadow:0 22px 44px rgba(14,22,38,0.32);text-align:left}
.gr{display:flex;align-items:center;gap:9px}
.gr b{width:12px;font-family:'DM Mono',monospace;font-size:11.5px;font-weight:500;color:#C9A84C}
.gc{display:inline-block;background:#F4F2EC;color:#0E1626;border-radius:999px;padding:3px 10px;font-size:11.5px;font-weight:600;line-height:1.3;white-space:nowrap}
.gc.tk{font-family:'DM Mono',monospace;font-weight:500}
.gr i{display:block;height:4px;border-radius:2px;background:rgba(201,168,76,0.5)}
.rl{display:inline-flex;align-items:center;gap:5px;border:1px solid #DDD3BC;border-radius:999px;padding:4px 10px}
@keyframes fall{0%{translate:0 -4px;opacity:0}12%{opacity:0.9}70%{opacity:0.85}100%{translate:0 56px;opacity:0}}
.fa{animation:fall 3.4s ease-in infinite}
@media (prefers-reduced-motion: reduce){.fa,.f1,.f2,.f3{animation:none}}
.f1{animation:bob 3.4s ease-in-out infinite}
.f2{animation:bob 4.1s ease-in-out 0.6s infinite}
.f3{animation:bob 3.8s ease-in-out 1.2s infinite}
.gq{border:1.5px solid #C9A84C;background:#FBF8EF;border-radius:14px;overflow:hidden}
.gq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;min-height:44px;box-sizing:border-box;font-family:'Playfair Display',serif;font-weight:700;color:#0E1626}
.gq summary::-webkit-details-marker{display:none}
.gq summary .cv{flex-shrink:0;width:30px;height:30px;border-radius:50%;background:#C9A84C;display:flex;align-items:center;justify-content:center;transition:transform .2s}
.gq[open] summary .cv{transform:rotate(180deg)}
.gq p{margin:0;padding:0 22px 20px;line-height:1.6;color:#333A48}
header{position:relative;z-index:30}
.mn{position:relative}
.mn summary{list-style:none;cursor:pointer;height:44px;box-sizing:border-box;display:inline-flex;align-items:center;gap:9px;padding:0 16px;border:1.5px solid #0E1626;border-radius:999px;font-family:'DM Mono',monospace;font-size:12.5px;letter-spacing:1.5px;color:#0E1626;background:#F4F2EC}
.mn summary::-webkit-details-marker{display:none}
.mn[open] summary{background:#0E1626;color:#FFFFFF}
.mn[open] summary svg{stroke:#C9A84C}
.mn nav{position:absolute;right:0;top:54px;width:300px;box-sizing:border-box;background:#FFFFFF;border:1px solid #DDD7C8;border-radius:16px;box-shadow:0 20px 40px rgba(14,22,38,0.16);padding:8px;display:flex;flex-direction:column;gap:2px}
.mn nav a{display:flex;align-items:center;justify-content:space-between;min-height:46px;padding:0 14px;border-radius:10px;color:#0E1626;text-decoration:none;font-family:'DM Sans',sans-serif;font-size:16px}
.mn nav a:hover{background:#F4F2EC;color:#0E1626}
.mn nav a.cur{font-weight:700}
.mn nav a.cur::after{content:'';width:8px;height:8px;border-radius:50%;background:#C9A84C}
.mn nav a.bk{margin-top:6px;justify-content:center;background:#C9A84C;font-family:'DM Mono',monospace;font-size:13px;letter-spacing:2px;font-weight:500}
.mn nav a.bk:hover{background:#B8973F}
.mn nav hr{border:none;border-top:1px solid #ECE6D8;margin:4px 8px}

/* ---------- For Investors (Pocket Pulse v7): layout on top of the v7 component rules above ---------- */
body.page-pocket{background:#F4F2EC;color:#0E1626}
.page-pocket button:focus-visible,.page-pocket [data-bill]:focus-visible{outline:2px solid #C9A84C;outline-offset:2px}
#ppHead{position:sticky;top:0;z-index:50;background:#F4F2EC;border-bottom:1px solid #E3DDCF}
.pp-bar{height:76px;box-sizing:border-box;padding:0 80px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.pp-logo{font-family:'DM Mono',monospace;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:#0E1626;text-decoration:none;white-space:nowrap;min-height:44px;display:inline-flex;align-items:center}
.pp-logo:hover{color:#0E1626}
.pp-links{display:flex;gap:28px;font-size:15px}
.pp-links a{color:#333A48;text-decoration:none;min-height:44px;display:inline-flex;align-items:center;white-space:nowrap}
.pp-links a:hover{color:#0E1626}
.pp-links a.cur{color:#0E1626;text-decoration:underline;text-decoration-color:#C9A84C;text-decoration-thickness:2px;text-underline-offset:8px}
.pp-right{display:flex;align-items:center;gap:12px}
.pp-book{height:44px;box-sizing:border-box;padding:0 18px;display:inline-flex;align-items:center;background:#C9A84C;color:#0E1626;border-radius:999px;text-decoration:none;font-family:'DM Mono',monospace;font-size:12.5px;letter-spacing:1.5px;font-weight:500;white-space:nowrap;transition:background 160ms ease}
.pp-book:hover{background:#B8973F;color:#0E1626}
.pp-join{height:44px;box-sizing:border-box;padding:0 20px;display:inline-flex;align-items:center;background:#0E1626;color:#FFFFFF;border-radius:999px;text-decoration:none;font-family:'DM Mono',monospace;font-size:12.5px;letter-spacing:1.5px;white-space:nowrap;transition:background 160ms ease}
.pp-join:hover{background:#1E2A44;color:#FFFFFF}
.pp-short{display:none}
.mn .pp-site{display:none}
.mn summary:hover{background:#E9E3D5}
.mn[open] summary:hover{background:#1E2A44}
[data-bill]{transition:background 160ms ease,color 160ms ease}
[data-bill][aria-pressed="false"]:hover{background:rgba(14,22,38,.08) !important}
[data-bill][aria-pressed="true"]{background:#0E1626 !important;color:#FFFFFF !important}
#ppWrap a[data-wl],#ppWrap a[data-book]{transition:background 160ms ease,box-shadow 160ms ease}
#ppWrap section a[data-wl][style*="background: #C9A84C"]:hover,#ppWrap a[data-book][style*="background: #C9A84C"]:hover{background:#D4B856 !important;box-shadow:0 4px 12px rgba(0,0,0,.12)}
#ppWrap section a[data-wl][style*="background: #0E1626"]:hover{background:#1E2A44 !important}
#ppWrap section a[data-wl][style*="border: 1.5px solid #0E1626"]:hover{background:rgba(14,22,38,.06) !important}
.gq summary:hover .cv{background:#D4B856}
.pp-fig-m,.pp-steps-m{display:none}
#ppClose h2{color:#FFFFFF}
.page-pocket footer a:hover{color:#C9A84C !important}

/* waitlist dialog */
#wlDialog{border:none;padding:0;margin:auto;background:transparent;width:calc(100% - 32px);max-width:560px;max-height:calc(100dvh - 32px);overflow:visible;color:#0E1626}
#wlDialog::backdrop{background:rgba(14,22,38,.6)}
#wlDialog .wl-card{position:relative;box-sizing:border-box;background:#FFFFFF;border-top:3px solid #C9A84C;border-radius:16px;padding:36px;max-height:calc(100dvh - 32px);overflow:auto;box-shadow:0 30px 60px rgba(14,22,38,.3)}
.wl-x{position:absolute;top:10px;right:10px;width:44px;height:44px;border:none;background:transparent;border-radius:50%;cursor:pointer;font-size:18px;line-height:1;color:#0E1626}
.wl-x:hover{background:#F4F2EC}

@media (max-width:1199px){
#top,#how,#save-money,#pricing,#next,#ppClose{padding-left:40px !important;padding-right:40px !important}
#top{grid-template-columns:minmax(0,1fr) !important;min-height:0 !important;padding-top:64px !important;padding-bottom:72px !important;gap:24px !important}
#top h1{font-size:80px !important}
#top h1 span{font-size:50px !important}
.pp-hero-phone{width:100%}
#how{grid-template-columns:minmax(0,1fr) !important;padding-top:88px !important;padding-bottom:88px !important;justify-items:center}
.pp-how-copy{max-width:760px}
.pp-fig-d{justify-content:center !important;padding-right:130px}
#how h2{font-size:58px !important}
#save-money,#pricing,#next,#ppClose{padding-top:88px !important;padding-bottom:88px !important}
.pp-money-grid{grid-template-columns:minmax(0,1fr) !important;gap:16px !important}
.pp-money-arrow svg{transform:rotate(90deg)}
#save-money h2{font-size:44px !important}
.pp-steps-d{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
}
@media (max-width:1099px){
.pp-bar{padding:0 40px}
.pp-links{display:none}
.mn .pp-site{display:flex}
.mn hr.pp-site{display:block}
}
@media (max-width:1023px){
.pp-cards{grid-template-columns:minmax(0,1fr) !important;max-width:560px !important}
#students{grid-template-columns:minmax(0,1fr) !important;gap:24px !important}
}
@media (max-width:767px){
.pp-bar{height:64px;padding:0 20px;gap:8px}
.pp-right{gap:8px}
.pp-book{display:none}
.pp-long{display:none}
.pp-short{display:inline}
.pp-join{padding:0 14px;font-size:11px;letter-spacing:1px}
.mn nav{width:min(300px,calc(100vw - 40px))}
#top{display:flex !important;flex-direction:column !important;align-items:stretch !important;gap:20px !important;padding:36px 20px 48px !important}
.pp-hero-copy,.pp-cta{display:contents !important}
.pp-hero-copy > span:first-child{font-size:11px !important;letter-spacing:2.5px !important}
#top h1{font-size:54px !important;line-height:1 !important;letter-spacing:-1px !important}
#top h1 span{font-size:36px !important;line-height:1.1 !important;letter-spacing:-.3px !important;margin-top:10px !important}
.pp-you{gap:6px !important}
.pp-you span{font-size:11px !important;letter-spacing:2.5px !important}
.pp-you p{font-size:19px !important}
.pp-cta a:first-child{height:58px !important;justify-content:center;padding:0 !important;font-size:14px !important;margin-top:4px}
.pp-hero-phone{order:1;height:660px !important;zoom:.92;margin-top:12px}
.pp-cta a:last-child{order:2;align-self:center;min-height:44px;display:inline-flex;align-items:center;font-size:12px !important}
#how{display:flex !important;flex-direction:column !important;gap:20px !important;padding:56px 20px 48px !important}
.pp-how-copy{gap:20px !important}
.pp-how-copy > span:first-child{font-size:11px !important}
#how h2{font-size:38px !important;line-height:1.08 !important;letter-spacing:-.5px !important}
.pp-how-copy > p{font-size:17px !important}
.pp-cmp{padding:20px 18px !important;grid-template-columns:minmax(0,1fr) 32px minmax(0,1fr) !important}
.pp-cmp span[style*="44px"]{font-size:30px !important}
.pp-cmp span[style*="15px"]{font-size:12.5px !important}
.pp-cmp svg{width:28px}
.pp-fig-d{display:none !important}
.pp-fig-m{display:block;margin-top:12px}
#save-money{padding:56px 20px 60px !important;gap:22px !important}
#save-money > div:first-child > span{font-size:11px !important}
#save-money h2{font-size:30px !important;line-height:1.15 !important}
.pp-cost{padding:22px 18px !important;border-radius:16px !important}
.pp-cost > div{font-size:15px !important;gap:12px !important;padding:10px 0 !important}
.pp-cost > div:last-child{font-size:16.5px !important;padding:14px 0 0 !important;margin-top:6px !important}
.pp-cost > span{font-size:10.5px !important}
.pp-cost > span:first-child{margin-bottom:14px !important}
.pp-fed{flex-direction:column !important;gap:4px !important}
.pp-gold{padding:24px 20px !important;gap:10px !important;border-radius:16px !important}
.pp-gold > span:first-child{font-size:11px !important}
.pp-gold > span:nth-child(2){font-size:56px !important}
.pp-gold > span:nth-child(2) span{font-size:17px !important}
.pp-gold > p:nth-of-type(1){font-size:16px !important}
.pp-gold > p:nth-of-type(2){font-size:14.5px !important}
.pp-gold a{height:56px !important;margin-top:6px !important}
#save-money > p{font-size:12px !important}
#pricing{padding:56px 20px 64px !important;align-items:stretch !important;gap:20px !important}
#pricing > div:first-child{align-items:flex-start !important;text-align:left !important;gap:20px !important}
#pricing > div:first-child > span{font-size:11px !important}
#pricing h2{font-size:40px !important;letter-spacing:-.5px !important}
#pricing > div:first-child > a{font-size:16px !important;min-height:44px;display:inline-flex;align-items:center}
.pp-bill{display:grid !important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);width:100%;box-sizing:border-box;margin-top:0 !important}
.pp-bill button{height:46px !important;padding:0 8px !important;font-size:12px !important;letter-spacing:1px !important;line-height:1.2}
.pp-cards{gap:20px !important}
.pp-cards > div{padding:24px 20px !important;gap:14px !important;border-radius:18px !important}
.pp-cards span[style*="52px"]{font-size:48px !important}
.pp-cards span[style*="10.5px"]{font-size:9.5px !important;white-space:nowrap;flex-shrink:0}
.pp-cards a{height:56px !important}
#students{padding:24px 20px !important;gap:12px !important;border-radius:18px !important}
#students h3{font-size:30px !important}
#students p{font-size:15.5px !important}
.gq summary{font-size:19px !important}
.gq p{font-size:15.5px !important}
#pricing > p:last-child{font-size:12.5px !important}
#next{padding:56px 20px 60px !important;align-items:stretch !important;gap:20px !important}
#next > div:first-child{align-items:flex-start !important;text-align:left !important}
#next > div:first-child > span{font-size:11px !important}
#next h2{font-size:38px !important;line-height:1.08 !important;letter-spacing:-.5px !important}
.pp-steps-d,.pp-strip{display:none !important}
.pp-steps-m{display:block}
#book{height:58px !important;justify-content:center;padding:0 !important;font-size:14px !important;margin-top:8px}
#ppClose{padding:56px 20px 64px !important;gap:20px !important}
#ppClose h2{font-size:40px !important}
#ppClose h2 span{font-size:26px !important}
#ppClose a{align-self:stretch;height:58px !important}
.page-pocket footer{padding:44px 20px 28px !important}
#wlDialog .wl-card{padding:28px 20px}
}
@media (max-width:389px){
.pp-fig-m figure{zoom:.88}
.pp-hero-phone{zoom:.84}
}

#ppSuccess a[data-book]:hover{background:#D4B856 !important}
#ppSignupCard[data-sent="1"] #ppSuccess{display:flex}
#ppSignupCard[data-sent="0"] #ppDone,#ppSignupCard[data-sent="2"] #ppDone,#ppSignupCard[data-sent="0"] #ppSuccess,#ppSignupCard[data-sent="1"] #ppSuccess,#ppSignupCard[data-sent="1"] form,#ppSignupCard[data-sent="2"] form{display:none !important}
#ppSignupCard[data-sent="2"] #ppSuccess{display:flex !important;animation:wlIn 320ms ease both}
#ppSignupCard[data-sent="1"] #ppDone{animation:wlIn 320ms ease both}
.wl-check path{stroke-dasharray:60;stroke-dashoffset:60;animation:wlDraw 500ms 200ms ease forwards}
.wl-check circle{transform-origin:42px 42px;animation:wlPop 360ms ease both}
#ppDone [data-next]:hover{background:#1E2A44}
@keyframes wlDraw{to{stroke-dashoffset:0}}
@keyframes wlPop{from{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}
@keyframes wlIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.wl-check path{animation:none;stroke-dashoffset:0}.wl-check circle,#ppDone,#ppSuccess{animation:none !important}}
