/* Homepage event invitation and the decision-to-result animation. */
.summit-ribbon { color:#fff; background:#103044; border-bottom:1px solid #256078; }
.summit-ribbon-inner { display:flex; align-items:center; justify-content:space-between; gap:24px; padding-block:18px; }
.summit-kicker { color:#85dce7; font-size:11px; font-weight:700; line-height:1.6; letter-spacing:.1em; text-transform:uppercase; margin:0 0 5px; }
.summit-ribbon-title { margin:0; font-size:15px; line-height:1.5; }
.summit-button { flex-shrink:0; gap:16px; }
.home-v5 .home5-lead strong { color:#f2f7fc; font-weight:650; }
.home-v5 #contactExtraFields:not(:empty) { margin:0 0 18px; }
.summit-invitation { color:#fff; padding:50px 0; background:radial-gradient(ellipse at 90% 0%,#164961,transparent 65%),#0b2033; }
.summit-invitation-inner { display:flex; justify-content:space-between; align-items:center; gap:40px; }
.summit-invitation h2 { color:#fff; font-size:clamp(30px,3.5vw,44px); line-height:1.12; letter-spacing:-.025em; margin:13px 0 18px; }
.summit-invitation-copy { max-width:620px; margin:0; color:#bbcedc; font-size:16px; line-height:1.7; }
.summit-contact-reset { display:inline-block; border:0; border-bottom:1px solid currentColor; background:transparent; color:#1565c0; font:inherit; font-size:13px; padding:4px 0; margin-top:8px; cursor:pointer; }
.summit-contact-reset[hidden] { display:none; }
.summit-contact-reset:focus-visible,.business-map-replay:focus-visible { outline:3px solid #00bcd4; outline-offset:5px; }
.home-v5 .home5-business-map { overflow:hidden; border:1px solid #3a566d; }
.business-map-topline { display:flex; justify-content:space-between; align-items:center; gap:12px; }
.business-map-head .business-map-replay { color:#9de6ee; display:inline-flex; align-items:center; gap:5px; padding:5px 0 5px 7px; border:0; background:transparent; font:inherit; font-size:11px; font-weight:500; cursor:pointer; }
.business-map-replay[hidden] { display:none!important; }
.business-map-head .business-map-replay span { color:inherit; font-size:20px; line-height:1; font-weight:400; letter-spacing:0; }
.business-map-path .business-map-step { transition:background .45s,border-color .45s,box-shadow .45s,transform .45s; overflow:hidden; }
.business-map-icon { transition:background .45s,border-color .45s,box-shadow .45s; }
.map-enhanced .business-map-path { isolation:isolate; --map-progress:0; }
.map-enhanced .business-map-path::before { opacity:.4; }
.map-enhanced .business-map-path::after { content:""; position:absolute; z-index:2; pointer-events:none; left:24px; top:calc(30px + (100% - 60px) * var(--map-progress)); width:8px; height:8px; border-radius:50%; background:#c9fbff; box-shadow:0 0 10px #7cebf5,0 0 22px #00bcd4,0 -14px 15px #00bcd455; opacity:0; }
.map-enhanced.is-playing .business-map-path::after { opacity:1; }
.map-enhanced .business-map-step::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(105deg,transparent 15%,#7cebf518 45%,transparent 75%); transform:translateX(-110%); }
.map-enhanced .business-map-step.is-active { transform:translateX(4px); border-color:#58d5e6; background:linear-gradient(100deg,#12435b,#102a41); box-shadow:inset 0 0 25px #00bcd412,0 0 26px #00bcd417; }
.map-enhanced .business-map-step.is-active::after { animation:map-node-sweep 1.25s ease-out both; }
.map-enhanced .is-active .business-map-icon { border-color:#9debf4; background:#1a6179; box-shadow:0 0 0 4px #0b1a2c,0 0 26px #00bcd470; }
.map-enhanced .is-active .business-map-icon svg { animation:map-icon-in .65s cubic-bezier(.2,.8,.25,1) both; }
.map-enhanced .is-done .business-map-icon { border-color:#52b5c5; background:#184657; box-shadow:0 0 0 4px #0b1a2c,0 0 12px #00bcd425; }
.business-map-result { transition:border-color .6s,box-shadow .6s,background .6s; }
.home-v5 .home5-business-map .business-map-result { grid-template-columns:1fr; gap:12px; }
.home-v5 .home5-business-map .business-map-chart { width:100%; max-width:none; height:96px; }
.map-enhanced .business-map-result.is-active { border-color:#63d4e2; background:linear-gradient(135deg,#124754,#12394f); box-shadow:0 0 30px #00bcd41c; }
.business-map-result .business-map-chart { overflow:visible; }
.business-map-result .business-chart-grid { fill:none; stroke:#ffffff1f; stroke-width:1; }
.business-map-result .business-chart-area { fill:url(#business-chart-fill); stroke:none; }
.business-map-result .business-chart-line,.business-map-result .business-chart-glow { fill:none; stroke:#6fe7f5; stroke-width:3; stroke-linecap:round; stroke-linejoin:round; }
.business-map-result .business-chart-glow { stroke:#00bcd4; stroke-width:8; opacity:.45; filter:blur(4px); }
.business-map-result .business-chart-halo { fill:#00bcd4; stroke:none; opacity:.2; }
.business-map-result .business-chart-dot { fill:#d8fcff; stroke:#51dded; stroke-width:2; }
.map-enhanced .business-chart-line,.map-enhanced .business-chart-glow { stroke-dasharray:1; stroke-dashoffset:calc(1 - var(--chart-progress, 1)); }
.map-enhanced .business-chart-area { clip-path:inset(0 calc((1 - var(--chart-progress, 1)) * 100%) 0 0); }
@keyframes map-node-sweep { to { transform:translateX(110%); } }
@keyframes map-icon-in { 0% { transform:scale(.8) rotate(-10deg); } 60% { transform:scale(1.15) rotate(3deg); } 100% { transform:scale(1) rotate(0); } }
@media(min-width:981px) { .home-v5 .home5-hero-grid { min-height:calc(100svh - 180px); } }
@media(max-width:720px) {
 .summit-ribbon-inner,.summit-invitation-inner { align-items:flex-start; flex-direction:column; gap:16px; }
 .summit-ribbon-inner { padding-block:17px; }
 .summit-ribbon-title { font-size:14px; }
 .summit-kicker { font-size:10px; letter-spacing:.07em; }
 .summit-invitation { padding:36px 0; }
 .summit-invitation-copy { font-size:15px; }
 .map-enhanced .business-map-path::after { left:23px; }
 .business-map-replay { min-height:44px; }
}
@media(prefers-reduced-motion:reduce) {
 .map-enhanced .business-map-step,.business-map-icon,.business-map-result { transition:none; }
 .map-enhanced .business-map-path::after,.map-enhanced .business-map-step::after { display:none; }
 .map-enhanced .is-active .business-map-icon svg { animation:none; }
}
