/* Public website enhancements consume the shared brand and geometry tokens. */
.brand>span{letter-spacing:-1.5px}.brand-small{letter-spacing:5px}
.site-header{transition:box-shadow .25s,background .25s}.site-header.has-scrolled{box-shadow:0 5px 22px color-mix(in srgb,var(--ink) 7%,transparent)}
.reading-progress{position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,var(--primary),var(--accent));transform:scaleX(var(--read-progress,0));transform-origin:left;pointer-events:none}
.header-inner nav>a:before{content:"";height:2px;position:absolute;left:0;right:0;bottom:4px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .2s}.header-inner nav>a:hover:before,.header-inner nav>a:focus-visible:before{transform:scaleX(1)}


.hero-actions .button{gap:16px}
.portrait-stack{--portrait-size:64px;width:auto}.portrait-row{padding:4px 0}.advisor-avatar{margin-left:calc(var(--portrait-size)*-.26)}.people-note{gap:12px;margin-top:32px}.people-link{display:inline-flex;align-items:center;gap:10px;color:var(--muted);font-size:12px;font-weight:550}.people-link svg{width:16px;height:16px}.people-link:hover{color:var(--primary-ink)}
.feature,.audience-card,.capability{transition:transform .25s,box-shadow .25s,border-color .25s}.feature:hover,.capability:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));box-shadow:0 14px 35px color-mix(in srgb,var(--ink) 5%,transparent)}
.feature-explorer{padding-top:36px}.feature-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:7px;gap:7px;border:1px solid var(--line);background:color-mix(in srgb,var(--soft) 75%,var(--paper));border-radius:var(--radius);margin-bottom:35px}
.feature-tabs button{display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid transparent;border-radius:var(--radius);background:transparent;color:var(--muted);font-size:14px;font-weight:650;padding:16px 12px;min-height:56px;transition:background .2s,box-shadow .2s,color .2s}.feature-tabs svg{width:20px;height:20px}.feature-tabs [aria-selected=true]{background:var(--white);color:var(--ink);border-color:var(--line);box-shadow:0 3px 12px color-mix(in srgb,var(--ink) 7%,transparent)}.feature-tabs [aria-selected=true] svg{color:var(--accent)}
.feature-panel{scroll-margin-top:210px}.feature-panel-heading{display:flex;align-items:start;justify-content:space-between;gap:35px;margin-bottom:25px}.feature-panel-heading h3{font-size:27px;max-width:450px;margin:0}.feature-panel-heading p{font-size:14px;color:var(--muted);max-width:420px;margin:0}
.capability-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.capability-grid:has(>.capability:nth-child(3):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}.capability{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);padding:28px}.capability .card-icon{margin-bottom:22px}.capability h3{font-size:23px;margin-bottom:12px}.capability p{font-size:14px;color:var(--muted);margin-bottom:20px;line-height:1.7}.capability ul{list-style:none;padding:18px 0 0;margin:0;border-top:1px solid var(--line);display:grid;gap:11px}.capability li{font-size:13px;line-height:1.6;padding-left:20px;position:relative}.capability li:before{content:"";width:6px;height:6px;position:absolute;left:1px;top:8px;background:var(--accent);border-radius:2px}.feature-availability{font-size:12px;line-height:1.8;color:var(--muted);margin:25px 0 0;max-width:860px}
.company-hero{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;padding-bottom:110px}.company-hero h1{font-size:clamp(44px,4.4vw,63px)}.company-mosaic{position:relative;width:100%;max-width:420px;justify-self:center;padding-left:45px;padding-bottom:45px}.company-main-photo{margin:0;background:var(--soft);padding:10px;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);transform:rotate(2deg)}.company-main-photo .event-photo{aspect-ratio:2/3}.company-main-photo img{object-fit:contain!important}.company-main-photo figcaption{display:flex;justify-content:space-between;gap:8px;padding:14px 4px 4px;font-size:12px;font-weight:650}.company-main-photo figcaption span{font-size:11px;color:var(--muted);font-weight:450}
.company-small-photo{position:absolute;bottom:0;left:0;width:56%;max-width:310px;margin:0;padding:9px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);transform:rotate(-4deg)}.company-small-photo .event-photo{aspect-ratio:523/391}.company-small-photo figcaption{padding:11px 3px 4px;font-size:11px;font-weight:600;color:var(--muted)}
.event-section{padding-top:30px;scroll-margin-top:115px}.event-section .section-heading{max-width:820px}.event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.event-card{margin:0;min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);overflow:hidden}.event-card-tall{grid-row:span 2}.event-photo{display:block;position:relative;overflow:hidden;border-radius:var(--radius);background:var(--soft);aspect-ratio:523/391}.event-photo img{width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.2,.7,.2,1)}.event-card-tall .event-photo{aspect-ratio:auto;height:calc(100% - 58px);min-height:380px}.event-card-tall img{object-fit:cover;object-position:50% 35%}.event-card .event-photo{border-radius:0}.event-card figcaption{display:flex;justify-content:space-between;gap:12px;align-items:center;min-height:58px;padding:16px;font-size:12px;font-weight:600}.event-card figcaption small{color:var(--muted);font-size:10px;font-weight:450;white-space:nowrap}.photo-open{display:grid;place-items:center;position:absolute;right:12px;bottom:12px;width:36px;height:36px;background:color-mix(in srgb,var(--paper) 95%,transparent);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);transition:background .2s,transform .25s}.photo-open svg{width:18px;height:18px}.event-photo:hover .photo-open{background:var(--white);transform:scale(1.06)}
.technology-partner{display:grid;grid-template-columns:200px 1fr;gap:45px;align-items:center;padding:40px 48px;margin-bottom:90px;background:var(--soft);border:1px solid var(--line);border-radius:var(--radius)}.technology-partner h2{font-size:32px;margin-bottom:14px}.technology-partner .eyebrow{margin-bottom:12px}.technology-partner p:last-child{font-size:14px;line-height:1.8;color:var(--muted);margin:0;max-width:780px}.partner-mark{font-weight:750;letter-spacing:-3px;font-size:70px;line-height:1;color:var(--ink)}.partner-mark span{display:block;font-size:10px;letter-spacing:3.2px;margin-top:12px}
.photo-dialog{width:min(960px,calc(100vw - 36px));max-width:none;max-height:calc(100dvh - 36px);padding:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);color:var(--ink);box-shadow:var(--shadow);overflow:auto}.photo-dialog::backdrop{background:#031832dc;backdrop-filter:blur(5px)}.photo-toolbar{display:flex;align-items:center;gap:18px;padding:14px 18px;border-bottom:1px solid var(--line)}.photo-toolbar p{margin:0;font-size:15px;font-weight:650;flex:1}.photo-toolbar button,.photo-controls button{display:grid;place-items:center;width:42px;height:42px;background:var(--white);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);flex-shrink:0}.photo-stage{display:flex;align-items:center;justify-content:center;min-height:180px;background:color-mix(in srgb,var(--ink) 6%,var(--paper));padding:12px}.photo-stage img{max-height:calc(100dvh - 230px);max-width:100%;width:auto;height:auto;object-fit:contain;border-radius:var(--radius)}.photo-controls{display:flex;align-items:center;justify-content:center;gap:24px;padding:12px 18px}.photo-counter{font-size:13px;color:var(--muted);min-width:52px;text-align:center}.photo-prev svg{transform:rotate(180deg)}.photo-opened{overflow:hidden}.photo-error{padding:40px;font-size:15px;max-width:600px}
.motion-enabled .hero-copy{animation:site-arrive .65s backwards}.motion-enabled .company-mosaic{animation:site-arrive .8s .1s backwards}.motion-enabled .advisor-avatar{animation:site-arrive .45s backwards}.motion-enabled .advisor-avatar:nth-child(2){animation-delay:.04s}.motion-enabled .advisor-avatar:nth-child(3){animation-delay:.08s}.motion-enabled .advisor-avatar:nth-child(4){animation-delay:.12s}.motion-enabled .advisor-avatar:nth-child(5){animation-delay:.16s}.motion-enabled .advisor-avatar:nth-child(6){animation-delay:.20s}.motion-enabled .advisor-avatar:nth-child(7){animation-delay:.24s}
.motion-enabled .reveal-pending{opacity:0;transform:translateY(18px)}.motion-enabled .reveal-complete{animation:site-arrive .55s var(--reveal-delay,0ms) backwards}.motion-enabled [role=tabpanel]:not([hidden]){animation:site-arrive .35s backwards}.motion-enabled .button svg{transition:transform .2s}.motion-enabled .button:hover svg{transform:translateX(4px)}.motion-enabled .feature:hover,.motion-enabled .capability:hover{transform:translateY(-3px)}.motion-enabled .event-photo:hover img{transform:scale(1.035)}.motion-enabled .photo-dialog[open]{animation:photo-arrive .22s both}
@keyframes site-arrive{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes photo-arrive{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}

@media(max-width:1180px){.portrait-stack{--portrait-size:58px}.company-hero{gap:45px}.company-mosaic{padding-left:35px}.company-main-photo figcaption{font-size:11px}.event-grid{gap:16px}}
@media(max-width:960px){.capability-grid:has(>.capability:nth-child(3):last-child){grid-template-columns:1fr}.portrait-stack{--portrait-size:64px}.company-hero{gap:40px;grid-template-columns:1fr 1fr}.company-hero h1{font-size:44px}.company-mosaic{padding-left:20px}.company-small-photo{width:75%}.company-main-photo figcaption{font-size:10px;display:block}.company-main-photo figcaption span{display:block;margin-top:5px}.feature-tabs button{font-size:12px;gap:7px}.event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.event-card-tall{grid-row:span 2}.technology-partner{grid-template-columns:140px 1fr;padding:32px;gap:28px}.partner-mark{font-size:55px}.partner-mark span{font-size:8px;letter-spacing:2px}}
@media(max-width:600px){.portrait-stack{--portrait-size:min(54px,calc((100vw - 48px)/5.6))}.advisor-avatar{margin-left:calc(var(--portrait-size)*-.25)}.people-link{font-size:11px}.people-note{margin-top:25px}.company-hero{grid-template-columns:1fr;padding-bottom:55px;gap:42px}.company-hero h1{font-size:43px}.company-mosaic{width:90%;max-width:430px;justify-self:center;padding-left:55px;padding-bottom:45px}.company-small-photo{width:59%}.company-main-photo figcaption{font-size:11px}.company-main-photo figcaption span{display:inline;margin-left:6px}.feature-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:5px;margin-bottom:25px}.feature-tabs button{font-size:12px;justify-content:flex-start;padding:12px;min-height:50px}.feature-panel-heading{display:block}.feature-panel-heading h3{font-size:25px;margin-bottom:12px}.feature-panel-heading p{font-size:13px}.capability-grid{grid-template-columns:1fr;gap:16px}.capability{padding:24px}.capability h3{font-size:22px}.feature-explorer{padding-top:20px}.event-grid{gap:14px}.event-card-tall{grid-row:auto}.event-card-tall .event-photo{height:auto;min-height:0;aspect-ratio:523/391}.event-card-tall img{object-position:50% 24%}.event-card figcaption{font-size:11px;padding:12px;min-height:62px;line-height:1.45}.event-card figcaption small{display:none}.photo-open{width:30px;height:30px;right:7px;bottom:7px}.technology-partner{grid-template-columns:1fr;gap:25px;padding:28px;margin-bottom:55px}.partner-mark{font-size:45px;letter-spacing:-2px}.partner-mark span{font-size:8px;margin-top:7px;letter-spacing:2px}.technology-partner h2{font-size:28px}.technology-partner p:last-child{font-size:13px}.photo-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.photo-toolbar{padding:10px 12px}.photo-toolbar p{font-size:13px}.photo-stage{padding:8px}.photo-stage img{max-height:calc(100dvh - 195px)}.photo-controls{padding:10px}.photo-error{padding:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-pending{opacity:1!important;transform:none!important}}
html:not(.motion-enabled) .reveal-pending{opacity:1;transform:none}

html:not(.motion-enabled){scroll-behavior:auto}html:not(.motion-enabled) *,html:not(.motion-enabled) *:before,html:not(.motion-enabled) *:after{animation:none!important;transition:none!important}html:not(.motion-enabled) .advisor-avatar:hover,html:not(.motion-enabled) .advisor-avatar:focus-visible,html:not(.motion-enabled) .button:hover{transform:none}
