.business-types { padding: 92px 0 45px; overflow: hidden; background: #fff; color: #11233f; border-top: 1px solid #edf2fa; }
.business-types-heading { text-align: center; max-width: 820px; margin: 0 auto; }
.business-types-eyebrow { display: inline-block; padding: 6px 10px; background: #eaf1ff; color: #2454d6; font-size: 10px; font-weight: 750; letter-spacing: .13em; }
.business-types-heading h2 { margin: 22px 0; font-size: clamp(38px, 4.6vw, 66px); line-height: 1.07; letter-spacing: -.055em; font-weight: 650; }
.business-types-heading h2 em { color: #2454d6; font-style: normal; }
.business-types-heading p { max-width: 555px; margin: 0 auto; font-size: 16px; line-height: 1.8; color: #60718a; }
.business-types-tabs { display: flex; justify-content: center; flex-wrap: wrap; gap: 8px; margin: 34px 0 0; }
.business-types-tabs a { padding: 6px 16px; border: 1px solid transparent; border-radius: 5px; background: #f0f3f8; color: #34455f; font-size: 13px; font-weight: 650; text-decoration: none; transition: background .2s, color .2s, box-shadow .2s; }
.business-types-tabs a:hover { background: #e4ecff; color: #2454d6; }
.business-types-tabs a[aria-selected="true"] { background: #2454d6; color: #fff; box-shadow: 0 5px 14px #2454d62b; }
.business-types a:focus-visible, .business-scene:focus-visible { outline: 2px solid #2454d6; outline-offset: 5px; }
.business-scene { position: relative; min-height: 700px; padding-top: 64px; max-width: 1180px; margin: 0 auto; }
.business-scene[hidden] { display: none; }
.business-center { position: relative; width: 430px; margin: 0 auto; }
.business-center-heading { position: relative; z-index: 2; text-align: center; padding: 20px 15px 17px; border-bottom: 1px solid #adc8f4; background: #ecf3ff; }
.business-center-heading h3 { font-size: 20px; line-height: 1.5; font-weight: 550; margin: 0 0 10px; letter-spacing: -.025em; }
.business-center-heading a { font-family: ui-monospace, Consolas, monospace; font-size: 12px; color: #163b9c; text-underline-offset: 6px; }
.business-center-heading a span { margin-left: 9px; }
.business-portrait-stage { height: 330px; position: relative; background: #ecf3ff; }
.business-portrait { position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); width: 320px; height: 330px; object-fit: contain; object-position: bottom; z-index: 2; }
.business-pixels { position: absolute; left: -45px; right: -45px; top: 65px; bottom: -24px; background: #96b8fc; clip-path: polygon(0 25%, 12% 25%, 12% 43%, 21% 43%, 21% 20%, 33% 20%, 33% 0, 55% 0, 55% 16%, 70% 16%, 70% 32%, 80% 32%, 80% 10%, 100% 10%, 100% 24%, 94% 24%, 94% 58%, 100% 58%, 100% 100%, 82% 100%, 82% 88%, 67% 88%, 67% 100%, 52% 100%, 52% 83%, 32% 83%, 32% 100%, 13% 100%, 13% 79%, 0 79%); }
.business-pixels-front { background: #2454d6; opacity: .4; transform: scaleX(-1) translate(20px, 15px); top: 110px; }
.business-portrait-label { position: absolute; z-index: 3; bottom: 6px; right: 24px; padding: 5px 10px; background: #2454d6; color: #fff; font-size: 12px; font-weight: 600; }
.business-grid { position: absolute; height: 57px; width: 57px; background-image: linear-gradient(#92b5f2 1px, transparent 1px), linear-gradient(90deg, #92b5f2 1px, transparent 1px); background-size: 14px 14px; }
.business-grid-one { top: 30px; left: -110px; }
.business-grid-two { right: -118px; bottom: 75px; width: 71px; height: 43px; }
.business-story-card { position: relative; z-index: 4; width: 282px; margin: -75px 0 0 -55px; background: #fff; border: 1px solid #e4ebf5; padding: 20px; box-shadow: 0 14px 35px #19365c0d; }
.business-story-kicker { display: flex; align-items: center; gap: 8px; color: #5f7899; font-size: 8px; font-weight: 700; letter-spacing: .11em; }
.business-story-kicker > span { font-size: 16px; line-height: 20px; width: 22px; text-align: center; color: #2454d6; background: #e9f1ff; }
.business-story-card h4 { font-size: 20px; line-height: 1.3; letter-spacing: -.035em; margin: 12px 0 8px; }
.business-story-card p { font-size: 12px; line-height: 1.7; color: #61718a; margin: 0 0 14px; }
.business-story-card > a { color: #2454d6; font-size: 16px; font-weight: 650; text-decoration: none; }
.business-story-card > a span { margin-left: 7px; }
.business-note { --note-color: #e2ecff; position: absolute; z-index: 5; display: flex; align-items: center; max-width: 310px; min-height: 44px; }
.business-note img { width: 40px; height: 40px; object-fit: cover; border: 3px solid var(--note-color); border-radius: 50%; flex-shrink: 0; position: relative; z-index: 2; }
.business-note-text { padding: 4px 7px 4px 12px; margin-left: -7px; background: var(--note-color); color: #183765; font-size: 13px; font-weight: 550; line-height: 1.4; white-space: nowrap; }
.business-note-pointer { width: 13px; height: 16px; position: absolute; right: -12px; top: 0; background: #163b9c; clip-path: polygon(0 0, 100% 25%, 35% 45%, 15% 100%); transform: rotate(85deg); }
.business-note:nth-of-type(odd) { flex-direction: row-reverse; }
.business-note:nth-of-type(odd) .business-note-text { margin: 0 -7px 0 0; padding: 4px 12px 4px 7px; }
.business-note:nth-of-type(odd) .business-note-pointer { right: auto; left: -12px; transform: none; }
.business-note-1 { top: 83px; left: 0; }
.business-note-2 { top: 67px; right: 0; --note-color: #cbdfff; }
.business-note-3 { top: 331px; left: 0; --note-color: #d9eeef; }
.business-note-4 { top: 346px; right: 0; --note-color: #d8e8fc; }
.business-note-5 { top: 641px; left: 15%; --note-color: #dce5fb; }
.business-note-6 { top: 630px; right: 13%; --note-color: #cce6e9; }
.business-types-footnote { text-align: center; color: #7c8ba1; font-size: 11px; margin: 25px 0 0; }
.business-types-footnote span { color: #2454d6; }
.business-types.is-enhanced .business-note { opacity: 0; transform: translateY(6px); transition: opacity .25s, transform .25s; }
.business-types.is-enhanced .business-note.is-visible { opacity: 1; transform: none; }
.business-note.is-typing .business-note-text { animation: business-type-in var(--typing-duration, 1s) steps(var(--typing-steps, 30), end) both; }
@keyframes business-type-in { from { clip-path: inset(0 100% 0 0); } to { clip-path: inset(0 0 0 0); } }
@media (min-width: 801px) and (max-width: 1100px) { .business-center { width: 360px; } .business-note-text { font-size: 13px; max-width: 175px; white-space: normal; } .business-note img { width: 34px; height: 34px; } .business-story-card { margin-left: -20px; width: 265px; } .business-note-3 { top: 290px; } .business-note-4 { top: 300px; } }
@media (max-width: 800px) { .business-types { padding: 60px 0 35px; } .business-types-heading h2 { font-size: clamp(38px, 7vw, 55px); } .business-types-tabs { gap: 7px; margin-top: 25px; } .business-types-tabs a { padding: 6px 16px; font-size: 13px; } .business-scene { display: grid; grid-template-columns: 1fr 1fr; gap: 15px 10px; padding-top: 30px; min-height: 0; max-width: 550px; } .business-center { grid-column: 1 / -1; grid-row: 2; width: min(85%, 390px); margin: 5px auto 12px; } .business-note { position: relative; top: auto; right: auto; left: auto; max-width: 100%; min-width: 0; align-self: start; } .business-note-1 { grid-row: 1; grid-column: 1; } .business-note-2 { grid-row: 1; grid-column: 2; } .business-note-text { white-space: normal; font-size: 13px; } .business-note img { width: 32px; height: 32px; } .business-note-pointer { width: 10px; height: 12px; right: -4px; top: -5px; } .business-note:nth-of-type(odd) .business-note-pointer { left: -4px; } .business-note:nth-of-type(odd) { justify-self: end; } .business-portrait-stage { height: 290px; } .business-portrait { height: 290px; width: 280px; } .business-story-card { width: 255px; margin: -60px 0 0 -18px; padding: 17px; } .business-pixels { left: -20px; right: -20px; } .business-grid-one { left: -22px; top: 15px; width: 29px; height: 43px; } .business-grid-two { right: -23px; width: 29px; } .business-types-footnote { margin-top: 30px; } }
@media (prefers-reduced-motion: reduce) { .business-types *, .business-types *::before { animation: none !important; transition: none !important; } }
