@import "https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,600;9..144,700&family=Inter:wght@400;500;600;700;800&display=swap";.navbar{top:var(--card-gap);z-index:900;padding:0 var(--gutter);position:sticky}.navbar-inner{width:min(var(--container), 100%);min-height:var(--nav-height);border:1px solid var(--line-strong);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:min-height .3s var(--ease-out), padding .3s var(--ease-out);background:#ffffffd1;border-radius:16px;align-items:center;gap:clamp(16px,2.4vw,32px);margin-inline:auto;padding:10px 12px 10px 16px;display:flex;position:relative;box-shadow:0 10px 30px #0b1f4d14}.is-compact .navbar-inner{min-height:64px;padding-block:6px}.is-compact .logo-text em{display:none}.nav-progress{pointer-events:none;border-radius:1px;height:2px;position:absolute;bottom:0;left:16px;right:16px;overflow:hidden}.nav-progress i{background:var(--gold);transform-origin:0;border-radius:1px;height:100%;display:block;transform:scaleX(0)}.nav-login{min-height:44px;color:var(--navy);white-space:nowrap;align-items:center;padding:0 12px;font-size:14px;font-weight:700;display:inline-flex}@media (hover:hover) and (pointer:fine){.nav-login:hover{color:var(--gold-deep)}}.nav-item{display:inline-flex;position:relative}.mega{z-index:20;width:min(720px, calc(100vw - var(--gutter) * 2));border:1px solid var(--line);background:var(--white);opacity:0;pointer-events:none;transition:opacity .25s linear, transform .35s var(--ease-out);border-radius:18px;grid-template-columns:1.4fr 1fr;gap:14px;padding:14px;display:grid;position:absolute;top:calc(100% + 14px);left:50%;transform:translate(-50%)translateY(8px);box-shadow:0 30px 70px #0b1f4d2e}.has-mega.is-open .mega{opacity:1;pointer-events:auto;transform:translate(-50%)}.mega:before{content:"";height:16px;position:absolute;top:-16px;left:0;right:0}.mega-tracks{grid-template-columns:1fr 1fr;gap:10px;display:grid}.mega-track{border:1px solid var(--line);background:var(--paper);transition:transform .25s var(--ease-out), background .25s var(--ease-out);border-radius:12px;padding:14px}.mega-track svg{width:34px;height:20px;margin-bottom:8px;display:block;overflow:visible}.mega-track path{fill:none;stroke:var(--chart-1);stroke-width:2px;stroke-linecap:round}.mega-track strong{font-family:var(--font-display);color:var(--navy);font-size:17px;font-weight:600;display:block}.mega-track span{color:var(--ink-soft);margin-top:3px;font-size:12.5px;font-weight:600;display:block}@media (hover:hover) and (pointer:fine){.mega-track:hover{background:var(--gold-soft);transform:translateY(-3px)}}.mega-side{background:var(--navy);color:var(--white);border-radius:12px;align-content:space-between;gap:16px;padding:16px;display:grid}.mega-side strong{font-family:var(--font-display);font-size:20px;font-weight:500}.mega-side em{color:var(--gold);font-style:normal}.mega-side p{color:#ffffffbf;margin-top:8px;font-size:13px;line-height:1.6}.logo{flex-shrink:0;align-items:center;gap:12px;margin-right:auto;display:flex}.logo-mark{background:var(--navy);width:42px;height:42px;color:var(--gold);font-family:var(--font-display);border-radius:9px;place-items:center;font-size:16px;font-weight:700;display:grid}.logo-text{display:grid}.logo-text strong{font-family:var(--font-display);color:var(--navy);letter-spacing:.02em;font-size:18px;font-weight:600;line-height:1.2}.logo-text em{color:var(--ink-faint);letter-spacing:.04em;font-size:11.5px;font-style:normal;font-weight:600}.nav-links{align-items:center;gap:30px;display:flex}.nav-link{color:var(--ink-soft);transition:color .16s var(--ease-out);padding:4px 0 12px;font-size:15px;font-weight:600;position:relative}.nav-curve{pointer-events:none;height:14px;position:absolute;bottom:-2px;left:0;right:0}.nav-curve svg{width:100%;height:100%;overflow:visible}.curve-axis{fill:none;stroke:var(--ink-faint);stroke-width:1px;stroke-dasharray:2 3;vector-effect:non-scaling-stroke;opacity:0;transition:opacity .2s var(--ease-out)}.curve-plot{fill:none;stroke:var(--gold);stroke-width:2.6px;stroke-linecap:round;vector-effect:non-scaling-stroke;stroke-dasharray:130;stroke-dashoffset:130px;transition:stroke-dashoffset .42s var(--ease-out)}.curve-glyph{font-family:var(--font-display);color:var(--gold-deep);opacity:0;transition:opacity .2s var(--ease-out), transform .3s var(--ease-out);white-space:nowrap;font-size:13.5px;font-weight:600;transition-delay:.18s;position:absolute;bottom:0;right:-15px;transform:translate(-4px,4px)}.nav-link.active-nav{color:var(--navy)}.nav-link.active-nav .curve-plot{stroke-dashoffset:0}@media (hover:hover) and (pointer:fine){.nav-link:hover{color:var(--navy)}.nav-link:hover .curve-plot{stroke-dashoffset:0}.nav-link:hover .curve-axis{opacity:.4}.nav-link:hover .curve-glyph{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.curve-plot{stroke-dashoffset:0;opacity:0;transition:none}.nav-link:hover .curve-plot,.nav-link.active-nav .curve-plot{opacity:1}.curve-glyph{transition:opacity .2s linear;transform:none}}.nav-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.nav-actions .btn{height:44px;min-height:44px;font-size:14px}.menu-toggle{background:0 0;border-radius:8px;flex-direction:column;justify-content:space-between;width:44px;height:44px;padding:11px 10px;display:none}.menu-toggle span{background:var(--navy);width:100%;height:2px;transition:transform .24s var(--ease-out), opacity .18s linear;border-radius:2px;display:block}.menu-toggle.menu-open span:first-child{transform:translateY(9px)rotate(45deg)}.menu-toggle.menu-open span:nth-child(2){opacity:0}.menu-toggle.menu-open span:nth-child(3){transform:translateY(-9px)rotate(-45deg)}.mobile-menu,.mobile-tracks{display:none}@media (width<=1040px){.nav-links,.nav-actions{display:none}.menu-toggle{display:flex}.mobile-menu[hidden]{display:none}.mobile-menu{inset:calc(var(--nav-height) + var(--card-gap) * 2) var(--gutter) var(--card-gap);z-index:899;background:var(--white);border-radius:18px;padding:28px 22px 32px;display:block;position:fixed;overflow-y:auto;box-shadow:0 30px 70px #0b1f4d33}.mega{display:none}.mobile-menu nav{border-bottom:1px solid var(--line);gap:4px;padding-bottom:24px;display:grid}.mobile-link{min-height:56px;font-family:var(--font-display);color:var(--navy);border-bottom:1px solid var(--line);align-items:center;padding:16px 4px;font-size:26px;font-weight:600;display:flex}.mobile-link.active-nav{color:var(--gold-deep)}.mobile-tracks{gap:2px;margin-top:22px;list-style:none;display:grid}.mobile-tracks a{min-height:48px;color:var(--ink-soft);align-items:center;font-size:15px;font-weight:600;display:flex}.mobile-actions{justify-items:stretch;gap:12px;margin-top:26px;display:grid}@media (prefers-reduced-motion:no-preference){.mobile-menu.is-open .mobile-link{animation:menu-in .45s var(--ease-out) both;animation-delay:var(--menu-delay,0s)}}}@keyframes menu-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media (width<=560px){.navbar-inner{gap:14px}.logo-text em{display:none}.logo-text strong{font-size:16px}}.site-footer{background:var(--navy-deep);color:#ffffffb8;padding:clamp(40px,5vw,62px) 0 24px;position:relative;overflow:hidden}.footer-top,.footer-base{width:min(var(--container), 100% - var(--gutter) * 2);margin-inline:auto}.footer-mark{font-family:var(--font-display);color:var(--gold);opacity:.06;pointer-events:none;font-size:clamp(280px,34vw,520px);line-height:1;position:absolute;bottom:-.42em;right:-.16em}.footer-top{grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:clamp(24px,3vw,40px);display:grid;position:relative}.footer-wordmark{font-family:var(--font-display);color:var(--white);letter-spacing:-.03em;margin:0;font-size:clamp(46px,6vw,88px);font-weight:500;line-height:.95}.footer-wordmark em{color:var(--gold);font-style:normal}.footer-statement{max-width:26ch;font-family:var(--font-display);color:#fffc;margin-top:18px;font-size:19px;font-style:italic;font-weight:400;line-height:1.45}.footer-statement strong{color:var(--gold);font-style:normal;font-weight:500}.footer-col h3{color:var(--gold);font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;margin-bottom:14px;font-size:11px;font-weight:800}.footer-col ul{gap:2px;list-style:none;display:grid}.footer-col a{color:#ffffffd1;min-height:44px;transition:color .16s var(--ease-out);align-content:center;font-size:15px;font-weight:500;display:grid}.footer-col a span{color:#ffffff73;font-size:12px;font-weight:600}@media (hover:hover) and (pointer:fine){.footer-col a:hover{color:var(--white)}}.footer-contact div{margin-bottom:14px}.footer-contact strong{color:var(--gold);letter-spacing:.12em;text-transform:uppercase;font-size:10.5px;font-weight:800;display:block}.footer-contact a,.footer-contact span{color:#ffffffd9;min-height:0;font-size:14.5px;font-weight:500;line-height:1.5;display:block}.footer-contact a{align-items:center;min-height:44px;display:flex}.footer-base{color:#fff9;border-top:1px solid #ffffff1f;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:clamp(28px,4vw,44px);padding-top:18px;font-size:13px;line-height:1.6;display:flex;position:relative}@media (width<=1000px){.footer-top{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}@media (width<=560px){.footer-top{grid-template-columns:1fr}}.section{padding:clamp(64px,9vw,108px) 0}.section-tinted{background:var(--paper)}.section-heading{max-width:60ch;margin-bottom:clamp(32px,5vw,52px)}.section-heading h2{margin-top:14px;font-size:clamp(30px,4vw,46px)}@media (width>=900px){.section-heading.split{grid-template-columns:minmax(0,.45fr) minmax(0,1fr);align-items:start;column-gap:clamp(32px,5vw,72px);max-width:none;display:grid}.section-heading.split .eyebrow{grid-area:1/1;padding-top:.9em}.section-heading.split h2{grid-area:1/2;max-width:22ch;margin-top:0}.section-heading.split .section-sub{grid-column:2;max-width:58ch}}.section-sub{color:var(--ink-soft);margin-top:16px;font-size:17px;line-height:1.7}.ticker{border-block:1px solid var(--line);background:var(--white);padding:20px 0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000);mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000)}.ticker-track{white-space:nowrap;gap:52px;width:max-content;display:flex}@media (prefers-reduced-motion:no-preference){.ticker-track{animation:44s linear infinite ticker}.ticker:hover .ticker-track{animation-play-state:paused}}@keyframes ticker{0%{transform:translate(0)}to{transform:translate(-50%)}}.ticker-fact{font-family:var(--font-display);align-items:baseline;gap:.4em;font-size:19px;display:inline-flex}.ticker-fact em{color:var(--navy);opacity:.8;font-style:italic;font-weight:400}.ticker-eq{color:var(--ink-faint);font-weight:400}.ticker-fact b{min-width:2.6ch;color:var(--gold-deep);font-variant-numeric:tabular-nums;font-weight:500}.ticker-dot{color:var(--gold);margin-left:14px;font-style:normal}.section-tinted{position:relative;overflow:hidden}.wave{pointer-events:none;width:200%;height:34px;transform:translateX(calc(var(--wave-phase,0) * -25%));display:block;position:absolute;left:0}.wave path{fill:var(--white)}.wave-top{top:-1px}.wave-bottom{transform:translateX(calc(var(--wave-phase,0) * -25%)) scaleY(-1);bottom:-1px}.section-tinted>.container{position:relative}@media (width<=700px){.wave{height:22px}}.program-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.program-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow-card);flex-direction:column;padding:28px;transition:transform .3s ease-in-out,box-shadow .3s ease-in-out;display:flex;position:relative;overflow:hidden}.program-card:before{content:"";background:var(--gold);transform-origin:0;height:3px;transition:transform .24s var(--ease-out);position:absolute;inset:0 0 auto;transform:scaleX(0)}@media (hover:hover) and (pointer:fine){.program-card:hover{box-shadow:var(--shadow-lift);transform:translateY(-10px)}.program-card:hover:before{transform:scaleX(1)}}.card-tag{background:var(--navy-soft);color:var(--navy);letter-spacing:.06em;text-transform:uppercase;border-radius:99px;align-self:flex-start;padding:6px 11px;font-size:11.5px;font-weight:800}.program-card h3{margin-top:18px;font-size:25px}.program-card>p{color:var(--ink-soft);margin-top:12px;font-size:15.5px;line-height:1.7}.program-card ul{gap:7px;margin-top:18px;list-style:none;display:grid}.program-card li{color:var(--ink);padding-left:18px;font-size:14.5px;font-weight:500;position:relative}.program-card li:before{content:"";background:var(--gold);border-radius:50%;width:6px;height:6px;position:absolute;top:.62em;left:0}.program-card ul{margin-bottom:14px}.program-card footer{justify-content:space-between;align-items:center;gap:14px;margin-top:auto;padding-top:0;display:flex}.program-card footer em{color:var(--ink-soft);font-size:13px;font-style:normal;font-weight:600;line-height:1.5}.program-card footer a,.program-card footer button{min-height:44px;color:var(--navy);font:inherit;white-space:nowrap;transition:color .16s var(--ease-out);background:0 0;align-items:center;gap:6px;padding-left:12px;font-size:14.5px;font-weight:700;display:inline-flex}.program-card footer a:after,.program-card footer button:after{content:"→";transition:transform .3s var(--ease-out);display:inline-block}@media (hover:hover) and (pointer:fine){.program-card footer a:hover,.program-card footer button:hover{color:var(--gold-deep)}.program-card:hover footer a:after,.program-card:hover footer button:after{transform:translate(4px)}}.workflow-grid{grid-template-columns:repeat(4,1fr);gap:18px;list-style:none;display:grid}.workflow-card{border-top:2px solid var(--gold);background:var(--white);border-radius:0 0 var(--radius) var(--radius);box-shadow:var(--shadow-card);padding:26px;transition:transform .3s ease-in-out,box-shadow .3s ease-in-out}@media (hover:hover) and (pointer:fine){.workflow-card:hover{box-shadow:var(--shadow-lift);transform:translateY(-6px)}}.workflow-number{font-family:var(--font-display);color:var(--gold-deep);font-variant-numeric:tabular-nums;font-size:15px;font-weight:700}.workflow-card h3{margin-top:10px;font-size:23px}.workflow-card p{color:var(--ink-soft);margin-top:10px;font-size:15px;line-height:1.7}.portal-band{background:var(--white);padding:0 0 clamp(64px,9vw,104px)}.portal-band-inner{background:var(--navy);border-radius:20px;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(32px,5vw,64px);padding:clamp(40px,6vw,80px) clamp(28px,5vw,72px);display:grid;position:relative;overflow:hidden}.band-marks{pointer-events:none;position:absolute;inset:0;overflow:hidden}.band-marks:before,.band-marks:after{content:"";background:var(--gold);transform-origin:top;width:26px;height:180%;position:absolute;top:-40%;transform:rotate(32deg)}.band-marks:before{opacity:.55;left:-6px}.band-marks:after{opacity:.28;width:14px;left:52px}.band-marks.band-marks-end:before{left:auto;right:-6px}.band-marks.band-marks-end:after{left:auto;right:52px}.portal-band-inner>:not(.band-marks),.cta-inner>:not(.band-marks){position:relative}.portal-copy h2{color:var(--white);margin-top:14px;font-size:clamp(28px,3.6vw,42px)}.portal-copy h2 em,.cta-inner h2 em{color:var(--gold);font-style:normal}.portal-copy p{color:#ffffffc2;max-width:52ch;margin-top:18px;font-size:16.5px;line-height:1.75}.portal-copy .btn{margin-top:28px}.portal-features{gap:10px;list-style:none;display:grid}.portal-features li{color:var(--white);background:#ffffff0d;border:1px solid #ffffff24;border-radius:10px;align-items:center;gap:12px;padding:16px 18px;font-size:15px;font-weight:600;display:flex}.portal-features span{color:var(--gold);font-weight:800}.quote-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.quote-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow-card);flex-direction:column;padding:0 28px 28px;display:flex;overflow:hidden}.quote-strip{background:var(--gold-soft);height:52px;margin:0 -28px;position:relative;overflow:hidden}.quote-strip svg{fill:none;width:150%;height:auto;stroke:var(--gold);stroke-width:2px;opacity:.85;position:absolute;top:-72%;left:-18%}.quote-card:nth-child(3n+2) .quote-strip svg{top:-40%;left:-30%;transform:rotate(180deg)}.quote-card:nth-child(3n) .quote-strip svg{top:-60%;left:-6%;transform:scaleX(-1)}.quote-mark{font-family:var(--font-display);color:var(--gold-deep);margin:18px 0 6px;font-size:56px;font-weight:300;line-height:.6;display:block}.quote-card blockquote{color:var(--ink);font-family:var(--font-display);font-size:19px;font-weight:500;line-height:1.5}.quote-card figcaption{border-top:1px solid var(--line);margin-top:auto;padding-top:16px}.quote-card blockquote+figcaption{margin-top:22px}.quote-card strong{color:var(--navy);font-size:14.5px;display:block}.quote-card span{color:var(--ink-soft);margin-top:2px;font-size:13.5px;font-weight:600;display:block}.cta-band{padding:0 0 clamp(64px,9vw,104px)}.cta-inner{background:var(--navy);border-radius:20px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:28px;padding:clamp(36px,5vw,64px) clamp(28px,5vw,72px);display:flex;position:relative;overflow:hidden}.cta-inner h2{color:var(--white);margin-top:12px;font-size:clamp(28px,3.4vw,40px)}.cta-sub{color:#ffffffc2;max-width:46ch;margin-top:12px;font-size:16px;line-height:1.7}.cta-actions .btn-ghost{color:var(--white);background:0 0;border-color:#ffffff4d}@media (hover:hover) and (pointer:fine){.cta-actions .btn-ghost:hover{border-color:var(--white)}}.cta-actions{flex-wrap:wrap;gap:12px;display:flex}@media (width>=1600px){.program-grid,.quote-grid{grid-template-columns:repeat(4,1fr)}}@media (width<=1000px){.program-grid,.quote-grid,.workflow-grid{grid-template-columns:repeat(2,1fr)}.portal-band-inner{grid-template-columns:1fr}}@media (width<=660px){.program-grid,.quote-grid,.workflow-grid{grid-template-columns:1fr}.cta-actions .btn{flex:100%}}.score-drop{margin:0 0 var(--space-6);gap:12px;display:grid}.score-drop canvas{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);width:100%;display:block}.score-drop figcaption{color:var(--ink-faint);font-size:13.5px;font-weight:500}.page{width:min(var(--container), 100% - var(--gutter) * 2);margin-inline:auto;padding-bottom:clamp(48px,8vw,96px)}.page-head{background:radial-gradient(ellipse 60% 70% at 10% 0%, #0b1f4d0d, transparent 62%), var(--white);padding:clamp(52px,7vw,88px) 0 clamp(28px,4vw,44px)}.page-head h1{max-width:20ch;margin-top:16px;font-size:clamp(36px,5vw,58px)}.page-head h1 em{color:var(--gold-deep);font-style:normal}.page-lede{max-width:62ch;color:var(--ink-soft);margin-top:20px;font-size:clamp(16px,1.6vw,18px);line-height:1.75}@media (width>=1100px){.page-head .container{grid-template-columns:1.1fr .9fr;grid-template-areas:"eyebrow.""title lede""actions actions";align-items:end;column-gap:clamp(32px,5vw,72px);display:grid}.page-head .eyebrow{grid-area:eyebrow}.page-head h1{grid-area:title;margin-bottom:0}.page-lede{grid-area:lede;margin-top:0;padding-bottom:.35em}.page-head-actions{grid-area:actions}}.page-head-actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.principle-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.principle-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow-card);padding:28px}.principle-card h3{font-size:22px}.principle-card p{max-width:60ch;color:var(--ink-soft);margin-top:12px;font-size:15.5px;line-height:1.7}.faq-layout{grid-template-columns:.85fr 1.15fr;align-items:start;gap:clamp(28px,5vw,60px);display:grid}.faq-layout .section-heading{margin-bottom:0}.faq-cta{margin-top:24px}.faq-list{border-bottom:1px solid var(--line-strong);display:grid}.faq-item{padding:18px 0;position:relative}.faq-item:before{content:"";background:var(--line-strong);transform-origin:0;width:100%;height:1px;position:absolute;top:0;left:0;transform:scaleX(0)}.faq-item.is-visible:before{transform:scaleX(1)}@media (prefers-reduced-motion:no-preference){.faq-item.is-visible:before{transition:transform .7s var(--ease-sine);transition-delay:calc(var(--reveal-delay,0s) + .12s)}}.faq-item summary{min-height:44px;color:var(--navy);font-family:var(--font-display);cursor:pointer;justify-content:space-between;align-items:center;gap:16px;font-size:19px;font-weight:600;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary i{width:14px;height:14px;transition:transform .35s var(--ease-out);flex:none;position:relative}.faq-item summary i:before,.faq-item summary i:after{content:"";background:var(--gold-deep);border-radius:1px;width:14px;height:2px;position:absolute;top:6px;left:0}.faq-item summary i:after{transform:rotate(90deg)}.faq-item[open] summary i{transform:rotate(45deg)}.faq-body{overflow:hidden}.faq-item p{max-width:68ch;color:var(--ink-soft);padding:12px 0 6px;font-size:15.5px;line-height:1.75}.contact-layout{grid-template-columns:1.15fr .85fr;align-items:start;gap:22px;display:grid}.contact-form{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow-card);gap:16px;padding:clamp(24px,3vw,34px);display:grid}.field-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.contact-form label,.auth-form label{color:var(--ink);gap:8px;font-size:14px;font-weight:600;display:grid}.contact-form input,.contact-form select,.contact-form textarea{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--white);width:100%;min-height:52px;color:var(--ink);font:inherit;transition:border-color .16s var(--ease-out), box-shadow .16s var(--ease-out);padding:0 15px;font-size:15px;font-weight:500}.contact-form textarea{resize:vertical;min-height:120px;padding:14px 15px}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px #fdb5152e}.contact-form .btn{margin-top:4px}.contact-form .btn:disabled{opacity:.6;cursor:not-allowed}.form-note{border-radius:var(--radius-sm);padding:13px 15px;font-size:14px;font-weight:600;line-height:1.55}.form-ok{color:#0a6b45;background:#e6f5ee}.form-error{color:#a4322a;background:#fbeae8}.form-warn{color:#8a5a10;background:#fdf3e0}.contact-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--navy);color:#ffffffc7;padding:clamp(24px,3vw,32px)}.contact-card h2{color:var(--white);font-size:25px}.contact-card>p{max-width:52ch;margin-top:12px;font-size:15px;line-height:1.7}.contact-detail{border-top:1px solid #ffffff24;margin-top:20px;padding-top:16px}.contact-detail strong{color:var(--gold);letter-spacing:.12em;text-transform:uppercase;font-size:11.5px;font-weight:800;display:block}.contact-detail a{min-height:44px;color:var(--white);align-items:center;margin-top:2px;font-size:15.5px;font-weight:600;display:flex}.contact-detail span{color:var(--white);margin-top:6px;font-size:15px;font-weight:500;line-height:1.6;display:block}.auth-page{min-height:calc(100vh - var(--nav-height));padding:clamp(24px, 5vh, 72px) var(--gutter);background:radial-gradient(ellipse 60% 55% at 18% 12%, #0b1f4d0f, transparent 62%), radial-gradient(ellipse 55% 50% at 84% 88%, #fdb51517, transparent 60%), var(--paper);place-items:center;display:grid;position:relative;overflow:hidden}.auth-page:before{content:"∫";font-family:var(--font-display);color:var(--navy);opacity:.035;pointer-events:none;font-size:clamp(360px,46vh,760px);line-height:1;position:absolute;top:-.34em;left:-.08em}.auth-card{width:min(var(--container), 1440px, 100%);background:var(--white);border-radius:18px;grid-template-columns:1.02fr .98fr;display:grid;position:relative;overflow:hidden;box-shadow:0 4px 10px #0b1f4d0f,0 30px 70px #0b1f4d29}.auth-brand{background:var(--navy);flex-direction:column;padding:clamp(34px,3.4vw,52px);display:flex;position:relative;overflow:hidden}.auth-brand-inner{z-index:1;position:relative}.auth-watermark{font-family:var(--font-display);color:var(--gold);opacity:.07;pointer-events:none;font-size:clamp(240px,26vw,420px);line-height:1;position:absolute;bottom:-.34em;right:-.16em}.auth-stroke{aspect-ratio:1;pointer-events:none;width:min(240px,44%);height:auto;position:absolute;bottom:8%;right:4%;overflow:visible}.auth-stroke path{fill:none;stroke:var(--gold);stroke-width:1.4px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:0;opacity:.35}@media (prefers-reduced-motion:no-preference){.auth-stroke path{stroke-dashoffset:1px;animation:stroke-draw 1.8s var(--ease-out) .3s forwards}.auth-brand-inner,.auth-tracks{animation:rise-in .6s var(--ease-reveal) both}.auth-tracks{animation-delay:.12s}.auth-form>*{animation:rise-in .55s var(--ease-reveal) both;animation-delay:calc(.14s + var(--i,0) * 60ms)}.auth-form>:first-child{--i:0}.auth-form>:nth-child(2){--i:1}.auth-form>:nth-child(3){--i:2}.auth-form>:nth-child(4){--i:3}.auth-form>:nth-child(5){--i:4}.auth-form>:nth-child(6){--i:5}.auth-form>:nth-child(n+7){--i:6}.auth-form .form-error{animation:rise-in .4s var(--ease-reveal) both}}.auth-brand h1{color:var(--white);margin-top:14px;font-size:clamp(28px,2.5vw,38px)}.auth-points{gap:10px;margin-top:28px;display:grid}@media (width>=1000px){.auth-points{grid-template-columns:1fr 1fr}}.auth-points article{background:#ffffff0d;border:1px solid #ffffff21;border-radius:10px;padding:16px 18px}.auth-points strong{color:var(--gold);font-size:14.5px;display:block}.auth-points span{color:#ffffffb8;margin-top:5px;font-size:13.5px;line-height:1.6;display:block}.auth-tracks{z-index:1;color:#fff9;flex-wrap:wrap;gap:8px 24px;margin-top:auto;padding-top:24px;font-size:13px;font-weight:600;list-style:none;display:flex;position:relative}.auth-form-side{background:var(--white);flex-direction:column;justify-content:center;padding:clamp(34px,3.4vw,52px);display:flex}.auth-form{gap:15px;width:min(400px,100%);margin-inline:auto;display:grid}.auth-form h2{margin-bottom:6px;font-size:28px}.auth-form label{color:var(--ink);gap:8px;font-size:14px;font-weight:600;display:grid}.auth-form input{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--white);width:100%;min-height:52px;color:var(--ink);font:inherit;transition:border-color .16s var(--ease-out), box-shadow .16s var(--ease-out);padding:0 15px;font-size:15px;font-weight:500}.auth-form input:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px #fdb51538}.auth-form input{transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out)}.auth-form .btn{width:100%;margin-top:6px}.auth-form .btn:disabled{opacity:.6;cursor:not-allowed}.auth-help{max-width:46ch;color:var(--ink-soft);font-size:13px;font-weight:500;line-height:1.6}.auth-hint{border:1px dashed var(--line-strong);border-radius:var(--radius-sm);color:var(--ink-soft);padding:12px 14px;font-size:13px;line-height:1.6}.auth-hint code{color:var(--navy);font-weight:700}.auth-enrol{border-top:1px solid var(--line);width:min(400px,100%);color:var(--ink-soft);margin:26px auto 0;padding-top:18px;font-size:14px;font-weight:600}.auth-enrol a{min-height:44px;color:var(--gold-deep);align-items:center;font-weight:700;display:inline-flex}@media (width<=1000px){.principle-grid,.faq-layout,.contact-layout,.auth-card{grid-template-columns:1fr}.auth-brand,.auth-form-side{padding-inline:var(--gutter)}.auth-form-side{align-items:center}.auth-watermark{font-size:300px}.auth-tracks{margin-top:32px}}@media (width<=620px){.field-row{grid-template-columns:1fr}}.policy-stamp{color:var(--ink-faint);font-variant-numeric:tabular-nums;margin-top:14px;font-size:13px}.draft-flag{border:1px solid var(--line);border-left:3px solid var(--gold);background:var(--gold-soft);border-radius:var(--radius-sm);color:var(--ink);max-width:62ch;margin-bottom:32px;padding:16px 18px;font-size:14.5px;line-height:1.55}.prose-block{max-width:62ch}.prose-block h2{margin:34px 0 10px}.prose-block h2:first-of-type{margin-top:0}.inventory{gap:16px;margin:0 0 8px;display:grid}.inventory>div{border-left:2px solid var(--line-strong);padding-left:16px}.inventory dt{margin-bottom:4px;font-size:15px;font-weight:600}.inventory dd{gap:3px;max-width:56ch;margin:0;display:grid}.inventory dd span{font-size:14.5px}.inventory dd em{color:var(--ink-soft);font-size:13.5px;font-style:normal}.plain-list{gap:7px;max-width:62ch;padding-left:1.15em;display:grid}.plain-list li{font-size:15px;line-height:1.55}.page-outro{margin-top:36px}.auth-privacy a{text-underline-offset:3px;align-items:center;min-height:44px;padding:0 2px;display:inline-flex}.forgot-panel{align-content:start;gap:16px;display:grid}.forgot-panel h2{margin:0}.forgot-panel label{gap:6px;font-size:14px;font-weight:500;display:grid}.forgot-panel input{font:inherit;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--white);min-height:44px;color:var(--ink);padding:12px 14px}.forgot-panel input:focus-visible{outline:2px solid var(--gold);outline-offset:1px}.forgot-panel .optional{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.09em;margin-left:6px;font-size:12px;font-weight:400}.forgot-actions{flex-wrap:wrap;gap:10px;display:flex}.link-button{font:inherit;color:var(--navy);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;min-height:44px;padding:0;text-decoration:underline}.link-button:hover{color:var(--gold-deep)}.link-button:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px}.mentor-layout{grid-template-columns:1fr;align-items:start;gap:clamp(28px,4vw,56px);display:grid}@media (width>=900px){.mentor-layout{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}}.mentor-portrait{border-radius:var(--radius);background:var(--navy-soft);box-shadow:var(--shadow-card);margin:0;overflow:hidden}.mentor-portrait img{width:100%;height:auto;display:block}.mentor-copy h2{margin:0 0 6px}.mentor-role{color:var(--ink-soft);margin:0 0 20px;font-size:16px;font-weight:600}.mentor-role cite{font-style:italic}.mentor-copy p{max-width:62ch;color:var(--ink-soft);line-height:1.7}.exam-chips{gap:var(--space-2);margin:var(--space-4) 0 var(--space-5);flex-wrap:wrap;padding:0;list-style:none;display:flex}.exam-chips li{border:1px solid var(--line-strong);background:var(--white);color:var(--ink);border-radius:999px;padding:6px 12px;font-size:13.5px;font-weight:650}.school-list{gap:var(--space-2) var(--space-5);margin:var(--space-4) 0 0;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));padding:0;list-style:none;display:grid}.school-list li{border-top:1px solid var(--line);color:var(--ink);padding:9px 0;font-size:15px;font-weight:600}.career-list{padding-left:var(--space-6);counter-reset:none;flex-direction:column;gap:0;margin:0;list-style:none;display:flex;position:relative}.career-rail,.career-ink{left:5px;top:var(--space-5);bottom:var(--space-5);border-radius:1px;width:2px;position:absolute}.career-rail{background:var(--line-strong)}.career-ink{background:var(--gold);height:0;bottom:auto}.career-item{gap:var(--space-2) var(--space-6);padding:var(--space-5) 0;border-bottom:1px solid var(--line);opacity:.55;transition:opacity .45s var(--ease-out);grid-template-columns:1fr;display:grid;position:relative}.career-item.is-reached{opacity:1}.career-item:before{content:"";left:calc(var(--space-6) * -1);top:calc(var(--space-5) + .45em);background:var(--white);border:2px solid var(--line-strong);width:12px;height:12px;transition:background .35s var(--ease-out), border-color .35s var(--ease-out), transform .35s var(--ease-out);border-radius:50%;position:absolute}.career-item.is-reached:before{background:var(--gold);border-color:var(--gold);transform:scale(1.2)}@media (prefers-reduced-motion:reduce){.career-item{opacity:1}.career-item,.career-item:before{transition:none}}.career-item:last-child{border-bottom:0}@media (width>=760px){.career-item{grid-template-columns:170px minmax(0,1fr)}}.career-years{color:var(--gold-deep);font-variant-numeric:tabular-nums;letter-spacing:.01em;font-size:14px;font-weight:700}.career-item h3{margin:0 0 6px;font-size:19px}.career-item p{max-width:62ch;color:var(--ink-soft);margin:0;line-height:1.65}.results-list{gap:var(--space-2) var(--space-6);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin:0;padding:0;list-style:none;display:grid}.result-row{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--line);display:flex}.result-who{flex-direction:column;gap:2px;min-width:0;display:flex}.result-who strong{color:var(--ink);font-size:16px;font-weight:650}.result-who span{color:var(--ink-soft);font-size:13.5px}.result-score{font-family:var(--font-display);color:var(--navy);font-variant-numeric:tabular-nums;flex:none;font-size:26px;font-weight:600;line-height:1}.result-score em{font-family:var(--font-body);color:var(--ink-faint);font-size:13px;font-style:normal;font-weight:600}.result-score.is-quiet{color:var(--ink-faint);font-size:20px}.tangent-layout{grid-template-columns:.85fr 1.15fr;align-items:center;gap:clamp(28px,5vw,60px);display:grid}.tangent-layout .section-heading{margin-bottom:0}.tangent-layout .section-heading h2 em{color:var(--gold-deep);font-style:normal}.tangent{padding:var(--space-5);gap:var(--space-4);border:1px solid var(--line);border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow-card);margin:0;display:grid}.tangent svg{cursor:crosshair;touch-action:none;width:100%;height:auto}.tangent-grid{stroke:var(--line);stroke-width:1px}.tangent-curve{fill:none;stroke:var(--chart-1);stroke-width:2.6px;stroke-linecap:round}.tangent-line{stroke:var(--gold);stroke-width:2.4px;stroke-linecap:round}.tangent-rise,.tangent-run{stroke:var(--gold-deep);stroke-width:1.4px;stroke-dasharray:4 4;opacity:.75}.tangent-knob{fill:var(--gold);stroke:var(--white);stroke-width:2.5px}.tangent figcaption{align-items:baseline;gap:var(--space-5);font-variant-numeric:tabular-nums;flex-wrap:wrap;display:flex}.tangent figcaption span{gap:2px;display:grid}.tangent figcaption strong{font-family:var(--font-display);color:var(--navy);font-size:24px;font-weight:600}.tangent figcaption em{color:var(--ink-faint);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-style:normal;font-weight:700}.tangent-hint{color:var(--ink-faint);align-self:center;margin-left:auto;font-size:13px;font-weight:600}@media (width<=900px){.tangent-layout{grid-template-columns:1fr}.tangent-hint{margin-left:0}}.auth-paper,.auth-glow{pointer-events:none;position:absolute}.auth-paper{background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);opacity:.7;background-size:28px 28px;inset:0;-webkit-mask-image:radial-gradient(80% 70% at 50% 45%,#000 30%,#0000 78%);mask-image:radial-gradient(80% 70% at 50% 45%,#000 30%,#0000 78%)}.auth-glow{opacity:0;width:380px;height:380px;transform:translate(var(--mx,50%), var(--my,50%)) translate(-50%, -50%);background:radial-gradient(circle,#fdb5154d 0%,#fdb51517 44%,#0000 68%);border-radius:50%;transition:opacity .4s linear;top:0;left:0}.auth-page.is-lit .auth-glow{opacity:1}[data-magnet]{will-change:transform;transition:transform .45s var(--ease-out)}@media (prefers-reduced-motion:reduce){.auth-glow{display:none}[data-magnet]{transition:none}}.app-shell{--d-bg:#f3f5fa;--d-panel:#fff;--d-inset:#eef2fa;--d-ink:#101a33;--d-soft:#4a556e;--d-faint:#646e82;--d-line:#0b1f4d1f;--d-line-strong:#0b1f4d33;--d-rail:#0b1f4d;--d-rail-line:#ffffff1a;--rail-w:262px;--bar-h:66px;--portal-w:var(--container);grid-template-columns:var(--rail-w) minmax(0, 1fr);background:var(--d-bg);min-height:100vh;color:var(--d-ink);transition:grid-template-columns .35s var(--ease-out);display:grid}.app-shell.is-collapsed{--rail-w:78px}.app-shell[data-theme=dark]{--d-bg:#0b1226;--d-panel:#121b36;--d-inset:#1a2544;--d-ink:#eef1f8;--d-soft:#b7c0d6;--d-faint:#8e99b5;--d-line:#ffffff1a;--d-line-strong:#fff3;--d-rail:#070e22;--d-rail-line:#ffffff14;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.app-shell{--white:var(--d-panel);--paper:var(--d-bg);--surface-panel:var(--d-panel);--surface-inset:var(--d-inset);--ink:var(--d-ink);--ink-soft:var(--d-soft);--ink-faint:var(--d-faint);--line:var(--d-line);--line-strong:var(--d-line-strong);--navy-soft:var(--d-inset)}.app-shell[data-theme=dark] h1,.app-shell[data-theme=dark] h2,.app-shell[data-theme=dark] h3,.app-shell[data-theme=dark] h4{color:var(--d-ink)}.app-shell[data-theme=dark] .btn-ghost{border-color:var(--d-line-strong);color:var(--d-ink);background:0 0}.app-shell[data-theme=dark]{--navy:#0b1f4d}.app-shell[data-theme=dark] .data-table td,.app-shell[data-theme=dark] .data-table strong,.app-shell[data-theme=dark] .material-list strong,.app-shell[data-theme=dark] .test-list strong,.app-shell[data-theme=dark] .enquiry-list strong,.app-shell[data-theme=dark] .summary-tiles strong,.app-shell[data-theme=dark] .course-tab,.app-shell[data-theme=dark] .chapter-admin-list strong,.app-shell[data-theme=dark] .credential-who strong,.app-shell[data-theme=dark] .reset-who strong,.app-shell[data-theme=dark] .question-summary,.app-shell[data-theme=dark] .topic-label strong,.app-shell[data-theme=dark] .review-prompt,.app-shell[data-theme=dark] .answer-row strong,.app-shell[data-theme=dark] .account-facts dd,.app-shell[data-theme=dark] .panel-head h2,.app-shell[data-theme=dark] .stat-grid dd,.app-shell[data-theme=dark] .attention-list li,.app-shell[data-theme=dark] .analysis-item strong,.app-shell[data-theme=dark] .attention-list li a,.app-shell[data-theme=dark] .att-action{color:var(--d-ink)}.app-shell[data-theme=dark] .tag-video{color:var(--d-ink);background:#ffffff1a}.app-shell[data-theme=dark] .tag-pdf{color:var(--gold);background:#fdb51529}.app-shell[data-theme=dark] .kind-pill{color:var(--d-soft);background:#ffffff1a}.app-shell[data-theme=dark] .status-pill.active-pill{color:#7be0ae;background:#0d7a4f47}.app-shell[data-theme=dark] .held-pill{color:#f5c97a;background:#a15c004d}.app-shell[data-theme=dark] .verdict-ok{color:#7be0ae;background:#0d7a4f47}.app-shell[data-theme=dark] .verdict-bad{color:#f3a79e;background:#b3382e4d}.app-shell[data-theme=dark] .form-note{color:var(--d-ink)}.app-shell[data-theme=dark] .material-list li.is-complete{background:#0d7a4f29}.app-shell[data-theme=dark] .empty-state{border-color:var(--d-line-strong)}.rail{align-self:start;gap:var(--space-4);background:var(--d-rail);border-right:1px solid var(--d-rail-line);color:#ffffffb8;flex-direction:column;height:100vh;padding:18px 14px;display:flex;position:sticky;top:0;overflow:hidden}.rail-brand{border-bottom:1px solid var(--d-rail-line);white-space:nowrap;align-items:center;gap:10px;padding:2px 4px 16px;display:flex}.rail-name{min-width:0;display:grid}.rail-name strong{color:var(--white,#fff);font-family:var(--font-display);font-size:15px;font-weight:600}.app-shell .rail-name strong{color:#fff}.rail-name em{color:var(--gold);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-style:normal;font-weight:800}.rail-collapse,.rail-out{border:1px solid var(--d-rail-line);width:30px;height:30px;color:inherit;cursor:pointer;background:0 0;border-radius:8px;flex:none;place-items:center;margin-left:auto;display:grid}.rail-collapse svg,.rail-out svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.rail-collapse:hover,.rail-out:hover{color:#fff;background:#ffffff14}.rail-nav{gap:var(--space-5);align-content:start;display:grid;overflow-y:auto}.rail-group h2{color:#fff6;font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;margin:0 0 6px 12px;font-size:10px;font-weight:800}.rail-link{min-height:44px;color:inherit;white-space:nowrap;transition:background .2s var(--ease-out), color .2s var(--ease-out);border-radius:10px;align-items:center;gap:12px;padding:10px 12px;font-size:14px;font-weight:600;display:flex;position:relative}.rail-link svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px}.rail-link:hover{color:#fff;background:#ffffff0f}.rail-link.is-here{color:#fff;background:#fdb51524}.rail-link.is-here:before{content:"";background:var(--gold);border-radius:0 3px 3px 0;width:3px;position:absolute;top:9px;bottom:9px;left:-14px}.rail-foot{border-top:1px solid var(--d-rail-line);gap:10px;margin-top:auto;padding-top:14px;display:grid}.rail-theme{min-height:44px;color:inherit;font-family:var(--font-body);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:10px 12px;font-size:13.5px;font-weight:600;display:flex}.rail-theme svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px}.rail-theme:hover{color:#fff;background:#ffffff0f}.rail-user{white-space:nowrap;align-items:center;gap:10px;display:flex}.rail-avatar{background:var(--gold);width:34px;height:34px;color:var(--navy);font-family:var(--font-body);border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:700;display:grid}.rail-who{min-width:0;display:grid}.rail-who strong{color:#fff;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.rail-who span{color:#ffffff80;font-size:11.5px}.is-collapsed .rail-name,.is-collapsed .rail-group h2,.is-collapsed .rail-link span,.is-collapsed .rail-theme span,.is-collapsed .rail-who,.is-collapsed .rail-out{display:none}.is-collapsed .rail-brand,.is-collapsed .rail-user{justify-content:center}.is-collapsed .rail-collapse{margin:0}.is-collapsed .rail-link,.is-collapsed .rail-theme{justify-content:center;padding-inline:10px}.app-main{flex-direction:column;min-width:0;display:flex}.app-bar{z-index:700;background:color-mix(in srgb, var(--d-bg) 86%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--d-line);position:sticky;top:0}.portal-bar-inner{width:min(var(--portal-w), 100% - var(--gutter) * 2);min-height:var(--bar-h);align-items:center;gap:16px;margin-inline:auto;display:flex}.app-shell-wide{--portal-w:min(calc(var(--container) + 120px), 1720px)}.app-where{min-width:0;margin-right:auto;display:grid}.app-where h1{color:var(--d-ink);letter-spacing:-.01em;font-size:21px;font-weight:600}.app-where span{color:var(--d-faint);font-size:12.5px;font-weight:600}.app-menu{border:1px solid var(--d-line);background:var(--d-panel);width:44px;height:44px;color:var(--d-soft);cursor:pointer;border-radius:10px;flex:none;place-items:center;display:none}.app-menu svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;width:20px;height:20px}.app-out{border:1px solid var(--d-line-strong);background:var(--d-panel);min-height:40px;color:var(--d-ink);font-family:var(--font-body);cursor:pointer;white-space:nowrap;border-radius:9px;padding:0 14px;font-size:13.5px;font-weight:700}.app-out:hover{border-color:var(--gold)}.portal-main{width:min(var(--portal-w), 100% - var(--gutter) * 2);align-content:start;gap:18px;margin-inline:auto;padding:24px 0 70px;display:grid}.portal-main>*{min-width:0}.tab-bar,.rail-scrim{display:none}@media (width<=900px){.app-shell{grid-template-columns:minmax(0,1fr)}.rail{z-index:var(--z-overlay);visibility:hidden;width:min(300px,84vw);height:100%;transition:transform .3s var(--ease-reveal), visibility 0s linear .3s;border-right:0;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.drawer-open .rail{visibility:visible;transition:transform .3s var(--ease-reveal), visibility 0s linear;transform:none}.is-collapsed .rail{--rail-w:auto}.is-collapsed .rail-name,.is-collapsed .rail-group h2,.is-collapsed .rail-link span,.is-collapsed .rail-theme span,.is-collapsed .rail-who,.is-collapsed .rail-out{display:revert}.is-collapsed .rail-brand,.is-collapsed .rail-user{justify-content:flex-start}.is-collapsed .rail-link,.is-collapsed .rail-theme{justify-content:flex-start;padding-inline:12px}.app-menu{display:grid}.rail-scrim{z-index:calc(var(--z-overlay) - 1);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0816388c;display:block;position:fixed;inset:0}@media (prefers-reduced-motion:no-preference){.rail-scrim{animation:.25s linear both overlay-fade}}@media (prefers-reduced-motion:reduce){.rail{transition:none}}.tab-bar{z-index:690;border:1px solid var(--d-line);background:color-mix(in srgb, var(--d-panel) 94%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:20px;grid-auto-columns:1fr;grid-auto-flow:column;align-items:center;padding:6px;display:grid;position:fixed;bottom:12px;left:12px;right:12px;box-shadow:0 14px 34px #0b1f4d2e}.tab-link{color:var(--d-faint);border-radius:14px;justify-items:center;gap:4px;padding:8px 0;font-size:10.5px;font-weight:600;display:grid;position:relative}.tab-link svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.tab-link.is-here{background:var(--gold-soft);color:var(--navy)}.app-shell[data-theme=dark] .tab-link.is-here{color:var(--gold);background:#fdb51529}.app-shell:has(.tab-bar) .portal-main{padding-bottom:110px}}@media (width<=560px){.app-where h1{font-size:18px}.app-where span{display:none}}.admin-form{gap:var(--space-4);grid-template-columns:1fr 1fr;align-items:end;display:grid}.admin-form label,.stacked-label{gap:var(--space-2);color:var(--ink);font-size:13.5px;font-weight:600;display:grid}.admin-form input,.admin-form select,.stacked-label select{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--white);width:100%;min-height:48px;color:var(--ink);font:inherit;padding:0 14px;font-size:14.5px;font-weight:500}.admin-form input[type=file]{padding:12px 14px;font-size:13px}.admin-form input:focus,.admin-form select:focus,.stacked-label select:focus,.import-box:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px #fdb5152e}.admin-form .btn{grid-column:1/-1;justify-self:start}.route-loading{min-height:44vh;color:var(--ink-soft);place-items:center;gap:14px;font-weight:600;display:grid}.spinner{border:3px solid var(--navy-soft);border-top-color:var(--gold);border-radius:50%;width:30px;height:30px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:2s}}.empty-state{text-align:center;border:1px dashed var(--line-strong);border-radius:var(--radius);background:var(--white);justify-items:center;gap:12px;padding:52px 28px;display:grid}.empty-state p{max-width:44ch;color:var(--ink-soft)}.muted-note{color:var(--ink-faint);font-size:14.5px;font-weight:500}.portal-summary{grid-template-columns:1.15fr .85fr;gap:18px;display:grid}.resume-card{border-radius:var(--radius);background:var(--navy);color:var(--white);padding:30px}.resume-card h2{color:var(--white);margin-top:12px;font-size:28px}.resume-sub{color:#ffffffb8;margin-top:8px;font-size:14.5px}.resume-card .btn{margin-top:22px}.summary-tiles{grid-template-columns:1fr 1fr;gap:12px;display:grid}.summary-tiles article{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow-card);padding:20px}.summary-tiles span{color:var(--ink-soft);letter-spacing:.04em;text-transform:uppercase;font-size:13px;font-weight:700}.summary-tiles strong{font-family:var(--font-display);color:var(--navy);font-variant-numeric:tabular-nums;margin-top:8px;font-size:32px;font-weight:600;display:block}.course-tabs{flex-wrap:wrap;gap:8px;display:flex}.course-tab{border:1px solid var(--line);background:var(--white);min-height:44px;color:var(--navy);transition:border-color .2s var(--ease-out), background .2s var(--ease-out), color .2s var(--ease-out), transform .2s var(--ease-out);border-radius:999px;align-items:center;gap:10px;padding:0 16px;font-size:14px;font-weight:700;display:flex}@media (hover:hover) and (pointer:fine){.course-tab:hover{border-color:var(--navy);transform:translateY(-1px)}}.course-tab em{color:var(--ink-faint);font-size:12px;font-style:normal;font-weight:700}.course-tab.active-tab{border-color:var(--navy);background:var(--navy);color:var(--white)}.course-tab.active-tab em{color:var(--gold)}.panel{gap:var(--space-5);padding:var(--space-5);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-panel);box-shadow:var(--shadow-card);flex-direction:column;display:flex}.panel>*{margin-block:0}.panel-head{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px;display:flex}.panel-head h2{margin-top:6px;font-size:24px}.panel-progress-wrap{justify-items:end;gap:8px;min-width:190px;display:grid}.panel-progress-wrap span{color:var(--ink-soft);font-size:13px;font-weight:600}.progress-track{background:var(--navy-soft);border-radius:99px;width:190px;height:8px;overflow:hidden}.progress-track span{background:var(--gold);transform-origin:0;height:100%;transition:width .5s var(--ease-out);border-radius:99px;display:block}@media (prefers-reduced-motion:no-preference){.progress-track span,.topic-track span{animation:bar-in 1s var(--ease-out) .25s both;transform-origin:0}}.chapter-block+.chapter-block{border-top:1px solid var(--line);margin-top:24px;padding-top:22px}.chapter-block h3{font-size:18px}.material-list,.test-list,.result-list,.enquiry-list{gap:9px;margin-top:12px;list-style:none;display:grid}.material-list li{background:var(--paper);transition:transform .25s var(--ease-out), box-shadow .25s var(--ease-out);border-radius:10px;align-items:center;gap:14px;padding:14px 16px;display:flex}@media (hover:hover) and (pointer:fine){.material-list li:hover,.test-list li:hover{box-shadow:var(--shadow-card);transform:translateY(-2px)}}.material-list li.is-complete{background:#f2f8f5}.material-list div{gap:3px;margin-right:auto;display:grid}.material-list strong{color:var(--navy);font-size:15px}.material-list div span{color:var(--ink-soft);font-size:13.5px}.done-flag{color:#0d7a4f;font-size:12.5px;font-style:normal;font-weight:700}.tag{letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;border-radius:6px;padding:5px 9px;font-size:10.5px;font-weight:800}.tag-video{background:var(--navy-soft);color:var(--navy)}.tag-pdf{background:var(--gold-soft);color:var(--gold-deep)}.test-list li,.result-list li{border:1px solid var(--line);background:var(--white);border-radius:10px;align-items:center;gap:16px;padding:16px;display:flex}.test-meta{gap:4px;margin-right:auto;display:grid}.test-meta strong,.result-list strong{color:var(--navy);font-size:16px}.test-meta span:last-child,.result-list div span{color:var(--ink-soft);font-size:13px}.kind-pill{background:var(--navy-soft);color:var(--navy);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;justify-self:start;width:max-content;padding:4px 9px;font-size:10.5px;font-weight:800}.score-flag{color:var(--ink-soft);white-space:nowrap;font-size:13px;font-style:normal;font-weight:700}.result-list li>div:first-child{gap:4px;margin-right:auto;display:grid}.result-score{justify-items:end;gap:2px;min-width:80px;display:grid}.result-score strong{font-family:var(--font-display);color:var(--navy);font-variant-numeric:tabular-nums;font-size:24px}.result-score span{color:var(--ink-soft);font-size:13px;font-weight:600}.average-chip{justify-items:end;display:grid}.average-chip strong{font-family:var(--font-display);color:var(--navy);font-size:30px}.average-chip span{color:var(--ink-soft);font-size:13px;font-weight:600}.viewer-backdrop{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#080f23b8;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.viewer-panel{border-radius:var(--radius);background:var(--white);flex-direction:column;width:min(1000px,100%);max-height:92vh;display:flex;overflow:hidden}.viewer-panel header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;display:flex}.viewer-panel header h2{margin-top:8px;font-size:20px}.viewer-body{background:#0e1524;flex:1;min-height:60vh}.viewer-body iframe,.viewer-body video{border:0;width:100%;height:100%;min-height:60vh;display:block}.score-hero{border-radius:var(--radius);background:var(--navy);color:var(--white);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:32px;display:flex}.score-hero h1{color:var(--white);margin-top:12px;font-size:clamp(28px,3.4vw,40px)}.score-sub{color:#ffffffb3;margin-top:8px;font-size:14px}.score-dial{border-radius:var(--radius);background:#ffffff0f;border:1px solid #ffffff29;justify-items:center;gap:4px;padding:22px 30px;display:grid}.score-dial strong{font-family:var(--font-display);color:var(--gold);font-variant-numeric:tabular-nums;font-size:46px;font-weight:600;line-height:1}.score-dial span{color:#ffffffbd;font-size:13px;font-weight:600}.review-list{gap:12px;list-style:none;display:grid}.review-item{border:1px solid var(--line);border-left:4px solid var(--line-strong);background:var(--white);border-radius:10px;padding:20px}.review-item.correct{border-left-color:#0d7a4f}.review-item.wrong{border-left-color:#b3382e}.review-item header{align-items:center;gap:12px;display:flex}.review-index{font-family:var(--font-display);color:var(--navy);font-size:16px;font-weight:700}.verdict{letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:4px 10px;font-size:11.5px;font-weight:800}.verdict-ok{color:#0d7a4f;background:#e2f3ea}.verdict-bad{color:#b3382e;background:#f9e7e5}.review-item header em{color:var(--ink-faint);margin-left:auto;font-size:13px;font-style:normal;font-weight:700}.review-prompt{max-width:62ch;color:var(--ink);margin-top:14px;font-size:16px;line-height:1.6}.answer-row{grid-template-columns:1fr 1fr;gap:12px;margin-top:16px;display:grid}.answer-row div{background:var(--paper);border-radius:8px;padding:12px 14px}.answer-row span{color:var(--ink-faint);letter-spacing:.06em;text-transform:uppercase;font-size:11.5px;font-weight:700;display:block}.answer-row strong{color:var(--navy);margin-top:5px;font-size:15px;display:block}.explanation{border-left:3px solid var(--gold);background:var(--gold-soft);color:#6b4c05;border-radius:0 8px 8px 0;max-width:64ch;margin-top:14px;padding:14px 16px;font-size:14.5px;line-height:1.65}.enquiry-list li{border:1px solid var(--line);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;padding:16px;display:flex}.enquiry-list strong{color:var(--navy);font-size:15.5px;display:block}.enquiry-list span{color:var(--ink-faint);margin-top:3px;font-size:13px;display:block}.enquiry-list p{max-width:72ch;color:var(--ink-soft);margin-top:8px;font-size:14.5px}.enquiry-contact{text-align:right;gap:4px;display:grid}.enquiry-contact a{min-height:44px;color:var(--navy);justify-content:flex-end;align-items:center;font-size:14px;font-weight:600;display:inline-flex}@media (width<=900px){.portal-summary,.answer-row{grid-template-columns:1fr}.portal-nav,.portal-name{display:none}}@media (width<=620px){.portal-main{width:min(var(--portal-w), 100% - var(--gutter) * 2);padding-top:24px}.panel{padding:20px}.panel-head{flex-direction:column;align-items:flex-start}.panel-progress-wrap{justify-items:start}.material-list li,.test-list li,.result-list li,.enquiry-list li{flex-wrap:wrap}.material-list div,.test-meta,.result-list li>div:first-child{flex:100%;margin-right:0}.summary-tiles{grid-template-columns:1fr 1fr}.enquiry-contact{text-align:left;flex:100%}.enquiry-contact a{justify-content:flex-start}}.part-flag{color:var(--ink-soft);background:var(--navy-soft);white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:12px;font-style:normal;font-weight:500}.blocked-flag{color:var(--ink-soft);background:var(--paper);border:1px dashed var(--line-strong);border-radius:var(--radius-sm);text-align:center;max-width:26ch;padding:7px 12px;font-size:12.5px;line-height:1.35}.viewer-actions{align-items:center;gap:10px;display:flex}.resume-bar{color:var(--ink-soft);background:var(--gold-soft);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:12px;margin:0;padding:10px 20px;font-size:13.5px;display:flex}.resume-bar button{font:inherit;color:var(--navy);text-underline-offset:2px;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.trend{gap:12px;margin:0;display:grid}.trend svg{width:100%;height:auto;overflow:visible}.trend-grid{stroke:var(--chart-grid);stroke-width:1px}.trend-axis{fill:var(--ink-faint);font-variant-numeric:tabular-nums;font-size:11.5px}.trend-area{fill:var(--chart-1-soft);stroke:none}.trend-line{fill:none;stroke:var(--chart-1);stroke-width:2.5px;stroke-linejoin:round;stroke-linecap:round}.trend-class{fill:none;stroke:var(--chart-2);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.trend-dot{fill:var(--chart-1);stroke:var(--white);stroke-width:2px}.trend-dot-last{fill:var(--chart-1);stroke:var(--white);stroke-width:2.5px}@media (width<=600px){.trend-axis{font-size:24px}.trend-end{font-size:30px}.trend-end-class{font-size:25px}.trend-line{stroke-width:5px}.trend-class{stroke-width:4px}.trend-dot{r:9;stroke-width:3.5px}.trend-dot-last{r:11}.trend-x{display:none}.trend-x-end{display:initial}}@media (prefers-reduced-motion:no-preference){.trend-line,.trend-class{stroke-dasharray:1;stroke-dashoffset:1px;animation:stroke-draw 1.4s var(--ease-out) .3s forwards}.trend-class{animation-delay:.6s}.trend-area{animation:.6s linear 1.2s both fade-in}.trend-dot{transform-box:fill-box;transform-origin:50%;animation:dot-pop .35s var(--ease-out) both;animation-delay:calc(.5s + var(--i,0) * 90ms)}.trend-end{animation:.4s linear 1.5s both fade-in}}.trend-end{fill:var(--chart-1);font-variant-numeric:tabular-nums;font-size:14px;font-weight:700}.trend-end-class{fill:var(--chart-2);font-size:12.5px;font-weight:600}.trend figcaption{color:var(--ink-soft);flex-wrap:wrap;gap:6px 20px;font-size:13px;display:flex}.trend figcaption strong{color:var(--ink)}.trend-key{align-items:center;gap:8px;display:inline-flex}.key-line{border-radius:2px;width:20px;height:3px;display:inline-block}.key-you{background:var(--chart-1)}.key-class{background:var(--chart-2)}.topic-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.topic-list li{grid-template-columns:minmax(0,1fr) minmax(90px,2fr) auto;align-items:center;gap:16px;display:grid}.topic-label{gap:2px;min-width:0;display:grid}.topic-label strong{font-size:14.5px}.topic-label span{color:var(--ink-faint);font-size:12.5px}.topic-track{background:var(--chart-track);border-radius:999px;height:10px;overflow:hidden}.topic-track>span{background:var(--chart-1);border-radius:999px;height:100%;display:block}.topic-list em{font-variant-numeric:tabular-nums;text-align:right;min-width:44px;font-size:14px;font-style:normal;font-weight:600}@media (width<=620px){.topic-list li{grid-template-columns:minmax(0,1fr) auto}.topic-track{grid-column:1/-1}}.review-nav{gap:16px;margin-bottom:24px;display:grid}.palette-grid.review-grid{grid-template-columns:repeat(auto-fill,minmax(48px,56px))}.review-filters{flex-wrap:wrap;gap:8px;display:flex}.review-filter{font:inherit;border:1px solid var(--line-strong);background:var(--white);color:var(--ink-soft);cursor:pointer;transition:border-color .18s var(--ease-out), color .18s var(--ease-out);border-radius:999px;padding:7px 14px;font-size:13px;font-weight:500}.review-filter em{font-variant-numeric:tabular-nums;opacity:.6;margin-left:4px;font-style:normal}.review-filter:hover:not(:disabled){border-color:var(--navy);color:var(--ink)}.review-filter.is-active{background:var(--navy);border-color:var(--navy);color:#fff}.review-filter.is-active em{opacity:.75}.review-filter:disabled{opacity:.4;cursor:default}.palette-cell.was-flagged{box-shadow:inset 0 -6px 0 -2px #5b2f96}.verdict-flag{color:#5b2f96;background:#eee1fb}.topic-pill{letter-spacing:.05em;text-transform:uppercase;background:var(--navy-soft);color:var(--ink-soft);border-radius:999px;padding:3px 9px;font-size:11px;font-weight:600}.account-facts{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px;margin:0 0 18px;display:grid}.account-facts dt{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:4px;font-size:11px;font-weight:600}.account-facts dd{margin:0;font-size:15px;font-weight:500}.muted-note{max-width:62ch}.review-filter{align-items:center;min-height:44px;padding:0 16px;display:inline-flex}.stat-trend{margin-top:var(--space-1);font-size:13px;font-style:normal;font-weight:600;line-height:1.4;display:block}.stat-trend.is-up{color:#0a6b45}.stat-trend.is-down{color:#a4322a}.chapter-block.is-empty h3{align-items:baseline;gap:var(--space-3);color:var(--ink-soft);display:flex}.chapter-empty{font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);font-size:12px;font-weight:700}.hero{background:radial-gradient(ellipse 70% 60% at 15% 0%, #0b1f4d0d, transparent 60%), var(--white);position:relative;overflow:hidden}.hero-inner{width:min(var(--container), 100% - var(--gutter) * 2);grid-template-columns:1.08fr .92fr;align-items:center;gap:clamp(32px,5vw,68px);margin-inline:auto;padding:clamp(56px,8vw,104px) 0 clamp(64px,9vw,112px);display:grid}.hero-copy h1{font-family:var(--font-body);letter-spacing:-.025em;margin-top:18px;font-size:clamp(38px,5.2vw,64px);font-weight:700;line-height:1.06}.hero-copy h1 em{font-family:var(--font-display);letter-spacing:-.015em;color:var(--gold-deep);font-variation-settings:"opsz" 144;margin-top:.04em;font-size:1.1em;font-style:normal;font-weight:500;line-height:1.08;display:block}.hero-lede{max-width:56ch;color:var(--ink-soft);margin-top:22px;font-size:clamp(16px,1.6vw,18px);line-height:1.72}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.hero-proof{border-top:1px solid var(--line);flex-wrap:wrap;gap:clamp(24px,4vw,52px);margin-top:44px;padding-top:28px;display:flex}.hero-proof strong{font-family:var(--font-display);color:var(--navy);font-variant-numeric:tabular-nums;font-size:clamp(24px,2.6vw,32px);font-weight:600;display:block}.hero-proof span{color:var(--ink-faint);margin-top:4px;font-size:13.5px;font-weight:600;display:block}.hero-figure{place-items:end center;min-height:min(600px,68vw);display:grid;position:relative}.figure-stroke{aspect-ratio:1;width:min(560px,100%);height:auto;translate:-50%;transform:translateY(var(--drift,0px));pointer-events:none;position:absolute;bottom:-6%;left:50%;overflow:visible}.figure-stroke path{fill:none;stroke:var(--gold);stroke-width:1.6px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:0}@media (prefers-reduced-motion:no-preference){.figure-stroke path{stroke-dashoffset:1px;animation:stroke-draw 1.7s var(--ease-out) .35s forwards}}.hero-portrait{z-index:2;filter:drop-shadow(0 30px 40px #0b1f4d47);width:min(470px,100%);height:auto;position:relative}.hero-motif{pointer-events:none;font-family:var(--font-display);color:var(--navy);opacity:.05;position:absolute;inset:0}.hero-motif .glyph{font-size:clamp(90px,13vw,190px);line-height:1;position:absolute}.glyph-1{top:6%;left:44%}.glyph-2{font-size:clamp(70px,9vw,130px);bottom:8%;left:6%}.glyph-3{font-size:clamp(60px,7vw,110px);top:14%;right:4%}.glyph-4{font-size:clamp(50px,6vw,90px);bottom:14%;right:36%}.glyph-5{font-size:clamp(44px,5vw,74px);top:52%;left:2%}@media (prefers-reduced-motion:no-preference){.hero-step{animation:hero-in .6s var(--ease-reveal) both;animation-delay:calc(var(--step) * 80ms)}.hero-figure.hero-step{animation-name:hero-figure-in;animation-duration:.7s}}@keyframes hero-in{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}@keyframes hero-figure-in{0%{opacity:0;transform:translateY(16px)scale(.97)}to{opacity:1;transform:none}}@media (width<=900px){.hero-inner{grid-template-columns:1fr;gap:28px;padding-bottom:0}.hero-figure{order:2;min-height:min(460px,88vw)}.hero-portrait{width:min(400px,76%)}.figure-stroke{width:min(480px,100%);bottom:-3%}.hero-proof{margin-top:34px;padding-top:24px}}@media (width<=560px){.hero-inner{padding-top:44px}.hero-proof{gap:20px 30px}.hero-actions .btn{width:100%}.hero-figure{min-height:420px}.hero-portrait{width:min(330px,88%)}}:root{--navy:#0b1f4d;--navy-deep:#081638;--navy-soft:#edf1f9;--gold:#fdb515;--gold-deep:#8a6207;--gold-soft:#fdf3dc;--paper:#f7f8fc;--white:#fff;--ink:#101a33;--ink-soft:#4a556e;--ink-faint:#646e82;--line:#0b1f4d1a;--line-strong:#0b1f4d29;--font-display:"Fraunces", Georgia, "Times New Roman", serif;--font-body:"Inter", system-ui, -apple-system, sans-serif;--ease-out:cubic-bezier(.23,1,.32,1);--ease-move:cubic-bezier(.77,0,.175,1);--ease-reveal:cubic-bezier(.215,.615,.355,1);--ease-sine:cubic-bezier(.47,0,.745,.715);--dur-fast:.25s;--dur-base:.5s;--dur-slow:.8s;--reveal-duration:.55s;--reveal-distance:40px;--reveal-stagger:60ms;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--card-gap:12px;--surface-page:#f7f8fc;--surface-panel:#fff;--surface-inset:#f2f5fb;--radius:12px;--radius-sm:8px;--shadow-card:0 1px 2px #0b1f4d0d, 0 10px 30px #0b1f4d12;--shadow-lift:0 2px 4px #0b1f4d0f, 0 18px 44px #0b1f4d1f;--chart-1:#2f5aa8;--chart-1-soft:#2f5aa821;--chart-2:#c08512;--chart-track:#e7ebf4;--chart-grid:#0b1f4d1f;--z-menu:100;--z-overlay:200;--z-wipe:300;--container:clamp(1180px, 78vw, 1600px);--gutter:22px;--nav-height:76px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);color:var(--ink);background:var(--white);-webkit-font-smoothing:antialiased;font-size:17px;line-height:1.65;overflow-x:hidden}.page-card{background:var(--white)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--navy);letter-spacing:-.015em;text-wrap:balance;font-weight:600;line-height:1.1}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;font-family:inherit}img{max-width:100%;display:block}:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.container{width:min(var(--container), 100% - var(--gutter) * 2);margin-inline:auto}@media (width<=600px){:root{--gutter:20px}}.eyebrow{color:var(--gold-deep);letter-spacing:.16em;text-transform:uppercase;font-size:13px;font-weight:800;display:block}.eyebrow-light{color:var(--gold)}.reveal{opacity:1}.js .reveal{opacity:0}.js .reveal.is-visible{opacity:1}@media (prefers-reduced-motion:no-preference){.js .reveal{transform:translateY(var(--reveal-distance))}.js .reveal.is-visible{transition:opacity var(--reveal-duration) linear, transform var(--reveal-duration) var(--ease-reveal);transition-delay:var(--reveal-delay,0s);transform:none}.js .reveal-group>.reveal:nth-child(2){--reveal-delay:calc(var(--reveal-stagger) * 1)}.js .reveal-group>.reveal:nth-child(3){--reveal-delay:calc(var(--reveal-stagger) * 2)}.js .reveal-group>.reveal:nth-child(4){--reveal-delay:calc(var(--reveal-stagger) * 3)}.js .reveal-group>.reveal:nth-child(5){--reveal-delay:calc(var(--reveal-stagger) * 4)}.js .reveal-group>.reveal:nth-child(n+6){--reveal-delay:calc(var(--reveal-stagger) * 5)}.rise-in{animation:rise-in var(--reveal-duration) var(--ease-reveal) both;animation-delay:var(--reveal-delay,0s)}}@keyframes rise-in{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes bar-in{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes stroke-draw{to{stroke-dashoffset:0}}@keyframes dot-pop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.figure{font:inherit;color:inherit;font-variant-numeric:tabular-nums;display:inline}.figure i{color:var(--gold-deep);font-style:normal}.route-wipe{z-index:var(--z-wipe);background:var(--navy);pointer-events:none;will-change:transform;place-items:center;display:grid;position:fixed;inset:0}.route-wipe svg{width:84px;height:84px;overflow:visible}.route-wipe path{fill:none;stroke:var(--gold);stroke-width:5px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1px}.route-wipe.is-cover{animation:.46s cubic-bezier(.5,0,0,1) both wipe-cover}.route-wipe.is-cover path{animation:stroke-draw .5s var(--ease-out) .16s both}.route-wipe.is-lift{animation:.48s cubic-bezier(.5,0,0,1) both wipe-lift}.route-wipe.is-lift path{stroke-dashoffset:0}@keyframes wipe-cover{0%{transform:translateY(101%)}to{transform:none}}@keyframes wipe-lift{0%{transform:none}to{transform:translateY(-101%)}}.skeleton{gap:var(--space-3);padding:var(--space-5);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-panel);align-content:start;min-height:180px;display:grid}.skeleton-bar{height:14px;width:var(--w,70%);background:linear-gradient(90deg, var(--surface-inset) 0%, #e4e9f4 45%, var(--surface-inset) 90%);background-size:220% 100%;border-radius:7px;display:block}.skeleton-title{width:38%;height:22px;margin-bottom:var(--space-2)}@media (prefers-reduced-motion:no-preference){.skeleton-bar{animation:1.4s linear infinite shimmer}}@keyframes shimmer{0%{background-position:120% 0}to{background-position:-100% 0}}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.fade-media{opacity:0}.fade-media.is-loaded{opacity:1}@media (prefers-reduced-motion:no-preference){.fade-media.is-loaded{transition:opacity var(--dur-base) linear}}.no-js .fade-media{opacity:1}@media (prefers-reduced-motion:reduce){.js .reveal.is-visible{transition:opacity .3s linear}html{scroll-behavior:auto}}.btn{border-radius:var(--radius-sm);min-height:52px;font-family:var(--font-body);letter-spacing:.01em;transition:transform .16s var(--ease-out), box-shadow .16s var(--ease-out), background .16s var(--ease-out);justify-content:center;align-items:center;gap:8px;padding:0 26px;font-size:15px;font-weight:700;display:inline-flex}.btn-primary{background:var(--navy);color:var(--white);box-shadow:0 10px 24px #0b1f4d2e}.btn-gold{background:var(--gold);color:var(--navy);box-shadow:0 10px 24px #fdb51547}.btn-ghost{border:1px solid var(--line-strong);background:var(--white);color:var(--navy)}.btn-ghost-light{color:var(--white);background:0 0;border:1px solid #ffffff4d}@media (hover:hover) and (pointer:fine){.btn:hover{transform:translateY(-2px)}.btn-primary:hover{box-shadow:0 16px 34px #0b1f4d42}.btn-gold:hover{box-shadow:0 16px 34px #fdb5155c}.btn-ghost:hover{border-color:var(--navy)}}.btn:active{transform:scale(.98)}.btn-arrow{position:relative;overflow:hidden}.btn-arrow:before,.btn-arrow:after{content:"";background:currentColor;flex:none;width:14px;height:14px;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M2 7h10M8 3l4 4-4 4' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M2 7h10M8 3l4 4-4 4' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 50%/contain no-repeat}.btn-arrow:before{opacity:0;position:absolute;left:14px;transform:translate(-10px)}.btn-arrow>*{display:inline-block}@media (prefers-reduced-motion:no-preference){.btn-arrow:after,.btn-arrow:before,.btn-arrow>*{transition:transform .45s var(--ease-out), opacity .3s linear}}@media (hover:hover) and (pointer:fine){.btn-arrow:hover:after{transform:translate(4px)}.btn-gold.btn-arrow:hover>*{transform:translate(22px)}.btn-gold.btn-arrow:hover:after{opacity:0;transform:translate(12px)}.btn-gold.btn-arrow:hover:before{opacity:1;transform:none}}.math .katex{color:inherit;font-size:1.05em}.math-block{margin:14px 0;padding-bottom:2px;display:block;overflow:auto hidden}.math-block .katex-display{text-align:left;margin:0}.math-block .katex-display>.katex{text-align:left}.math .katex .katex-error{color:inherit}.overlay{z-index:var(--z-overlay);background:0 0;border:0;width:100%;max-width:100vw;height:100%;max-height:100dvh;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.overlay::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#08163894}.overlay-panel{background:var(--surface-panel);max-height:100%;box-shadow:var(--shadow-lift);flex-direction:column;display:flex}.overlay-modal{padding:var(--space-5);place-items:center;display:grid}.overlay-modal .overlay-panel{width:min(var(--overlay-width,560px), 100%);border-radius:var(--radius);max-height:min(84dvh,760px)}.overlay-drawer{justify-content:flex-end;display:flex}.overlay-drawer .overlay-panel{width:min(var(--overlay-width,620px), 100%);border-radius:0;height:100%}.overlay-head{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding:var(--space-5) var(--space-5) var(--space-4);border-bottom:1px solid var(--line);display:flex}.overlay-head h2{margin:0;font-size:19px;line-height:1.25}.overlay-description{margin:var(--space-2) 0 0;color:var(--ink-soft);max-width:56ch;font-size:14px;line-height:1.5}.overlay-close{border-radius:var(--radius-sm);width:36px;height:36px;color:var(--ink-soft);cursor:pointer;transition:background .16s var(--ease-out), color .16s var(--ease-out);background:0 0;border:1px solid #0000;flex:none;place-items:center;display:grid}.overlay-close:hover{background:var(--surface-inset);color:var(--ink)}.overlay-close:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.overlay-body{gap:var(--space-5);padding:var(--space-5);flex-direction:column;display:flex;overflow-y:auto}.overlay-body>*{margin-block:0}.overlay-foot{justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-top:1px solid var(--line);background:var(--surface-inset);display:flex}@media (prefers-reduced-motion:no-preference){.overlay[open]{animation:.3s linear overlay-fade}.overlay-modal[open] .overlay-panel{animation:overlay-rise .45s var(--ease-reveal)}.overlay-drawer[open] .overlay-panel{animation:overlay-slide .4s var(--ease-reveal)}}@keyframes overlay-fade{0%{opacity:0}}@keyframes overlay-rise{0%{opacity:0;transform:translateY(24px)}}@keyframes overlay-slide{0%{transform:translate(32px)}}.demo-form{gap:var(--space-4);display:grid}.demo-form .field-row{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.demo-form label{color:var(--ink);gap:7px;font-size:13.5px;font-weight:600;display:grid}.demo-form input,.demo-form select,.demo-form textarea{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--white);width:100%;min-height:48px;color:var(--ink);font:inherit;transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);padding:0 14px;font-size:15px;font-weight:500}.demo-form textarea{resize:vertical;min-height:88px;padding:12px 14px}.demo-form input:focus,.demo-form select:focus,.demo-form textarea:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px #fdb51538}@media (width<=520px){.demo-form .field-row{grid-template-columns:1fr}}.row-menu-trigger{border-radius:var(--radius-sm);width:44px;height:44px;color:var(--ink-soft);cursor:pointer;transition:background .16s var(--ease-out), color .16s var(--ease-out);background:0 0;border:1px solid #0000;place-items:center;display:grid}.row-menu-trigger:hover{background:var(--surface-inset);color:var(--ink)}.row-menu-trigger:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.row-menu-trigger[aria-expanded=true]{background:var(--surface-inset);color:var(--ink)}.row-menu{z-index:var(--z-menu);width:200px;padding:var(--space-1);border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface-panel);box-shadow:var(--shadow-lift);flex-direction:column;display:flex;position:fixed}.row-menu-item{padding:10px var(--space-3);color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:background .12s var(--ease-out);background:0 0;border:0;border-radius:6px;font-size:14px;font-weight:600}.row-menu-item:hover:not(:disabled){background:var(--surface-inset)}.row-menu-item:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}.row-menu-item:disabled{color:var(--ink-faint);cursor:not-allowed}.row-menu-item.is-danger{color:#a4322a}.row-menu-item.is-danger:hover:not(:disabled){background:#fbeae8}.overlay-actions{justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-2);grid-column:1/-1;display:flex}.empty-state{align-items:flex-start;gap:var(--space-3);padding:var(--space-6) var(--space-5);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-inset);flex-direction:column;display:flex}.empty-state svg{flex:none;width:56px;height:56px}.empty-state strong{color:var(--ink);font-size:17px;font-weight:650}.empty-state p{max-width:52ch;color:var(--ink-soft);margin:0;font-size:14.5px;line-height:1.6}.empty-state .btn{margin-top:var(--space-2)}
