.viason-team{font-family:Inter,Arial,sans-serif;color:#232323}
.viason-team .team-main{max-width:1320px;margin:0 auto;padding:0 36px}
.viason-team .team-main>section{max-width:none;margin-left:0;margin-right:0}
.viason-team .team-intro{padding:68px 0 48px;border-bottom:1px solid #dedede}
.viason-team .team-kicker{margin:0 0 20px;max-width:none;font-size:11px;line-height:1.5;letter-spacing:.18em;text-transform:uppercase;color:#716c64}
.viason-team h1{font-family:Manrope,Inter,Arial,sans-serif;font-size:clamp(44px,5vw,72px);font-weight:400;letter-spacing:-.055em;line-height:1.12;margin:0 0 24px;max-width:none}
.viason-team .team-lead{font-family:Manrope,Inter,Arial,sans-serif;font-size:20px;line-height:1.7;font-weight:400;max-width:920px;margin:0;color:#5c5c5c}
.viason-team .team-rating{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:30px;font-size:12px;line-height:1.5;color:#656565}
.viason-team .team-rating-line{display:block;width:1px;height:16px;background:#ccc}
.viason-team .team-stars{letter-spacing:.1em;color:#667f8e;margin-right:7px}
.viason-team .team-founders{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:72px;row-gap:48px;padding:40px 0 62px}
.viason-team .team-colleagues{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:44px;row-gap:48px;padding:46px 0 72px;border-top:1px solid #dedede}
.viason-team .team-person{display:flex;flex-direction:column;min-width:0;border:0;background:#fff}
.viason-team .team-portrait{position:relative;overflow:hidden;padding:8px 12px 0;background:#fff}
.viason-team .team-portrait img{display:block;max-width:100%;width:100%;height:390px;object-fit:contain;object-position:center bottom;transition:transform .55s cubic-bezier(.2,.7,.3,1);transform-origin:center bottom}
.viason-team .team-colleagues .team-portrait img{height:360px}
.viason-team .team-person-copy{position:relative;padding-top:24px;flex:1}
.viason-team .team-person-copy::before{content:'';position:absolute;top:0;left:0;width:100%;height:1px;background:#dedede}
.viason-team .team-person-copy::after{content:'';position:absolute;top:0;left:0;width:100%;height:2px;background:#a6bbc8;transform:scaleX(0);transform-origin:left;transition:transform .4s ease}
.viason-team .team-name-line{display:flex;align-items:center;justify-content:space-between;gap:16px}
.viason-team .team-qualification{margin:0 0 5px;font-size:11px;line-height:1.5;color:#767676;max-width:none;letter-spacing:.03em}
.viason-team .team-person h2{font-family:Manrope,Inter,Arial,sans-serif;font-size:30px;font-weight:400;line-height:1.25;letter-spacing:-.035em;margin:0;max-width:none}
.viason-team .team-colleagues .team-person h2{font-size:25px}
.viason-team .team-contact-arrow{display:flex;align-items:center;justify-content:center;width:42px;height:42px;flex:0 0 42px;border:1px solid #c9c9c9;border-radius:50%;font-size:22px;font-weight:400;text-decoration:none;color:#232323;transition:background .25s,color .25s,border-color .25s}
.viason-team .team-contact-arrow span{transition:transform .3s ease}
.viason-team .team-role{margin:14px 0 16px;font-size:13px;line-height:1.7;color:#6a6a6a;max-width:none;min-height:44px}
.viason-team .team-contacts{display:flex;flex-wrap:wrap;gap:8px 26px;padding:0 0 22px;font-size:13px;line-height:1.65}
.viason-team .team-contacts a{color:#232323;text-decoration:none;text-underline-offset:5px;overflow-wrap:anywhere}
.viason-team .team-contacts a:hover{text-decoration:underline}
.viason-team .team-colleagues .team-contacts{display:grid;gap:5px}
.viason-team .team-bio{font-size:14px;line-height:1.85;color:#626262;margin:0;max-width:none}
.viason-team .team-invitation{display:flex;justify-content:space-between;align-items:center;gap:36px;padding:38px 0 50px;border-top:1px solid #dedede}
.viason-team .team-invitation .team-kicker{margin-bottom:10px}
.viason-team .team-invitation h2{font-family:Manrope,Inter,Arial,sans-serif;font-size:30px;font-weight:400;letter-spacing:-.035em;line-height:1.3;margin:0}
.viason-team .team-invitation-button{display:inline-flex;justify-content:center;align-items:center;gap:16px;min-height:54px;padding:14px 23px;border:1px solid #232323;color:#232323;background:#fff;text-decoration:none;font-size:14px;white-space:nowrap;transition:background .2s,color .2s}
.viason-team .team-invitation-button:hover{background:#232323;color:#fff}
.viason-team a:focus-visible{outline:2px solid #667f8e;outline-offset:5px}
.viason-team .team-person:focus-within .team-person-copy::after{transform:scaleX(1)}
.viason-team .team-person:focus-within .team-contact-arrow{background:#232323;border-color:#232323;color:#fff}
@media(hover:hover) and (pointer:fine){
 .viason-team .team-person:hover .team-portrait img{transform:translateY(-5px) scale(1.012)}
 .viason-team .team-person:hover .team-person-copy::after{transform:scaleX(1)}
 .viason-team .team-person:hover .team-contact-arrow{background:#232323;border-color:#232323;color:#fff}
 .viason-team .team-person:hover .team-contact-arrow span{transform:translate(2px,-2px)}
}
@media(max-width:1000px){.viason-team .team-founders{column-gap:42px}.viason-team .team-colleagues{column-gap:28px}.viason-team .team-portrait img{height:330px}.viason-team .team-colleagues .team-portrait img{height:310px}.viason-team .team-colleagues .team-person h2{font-size:21px}.viason-team .team-invitation h2{font-size:26px}}
@media(max-width:780px){.viason-team .team-main{padding:0 24px}.viason-team .team-colleagues{grid-template-columns:repeat(2,minmax(0,1fr))}.viason-team .team-colleagues .team-portrait img{height:280px}.viason-team .team-founders{column-gap:30px}.viason-team .team-person h2{font-size:25px}.viason-team .team-colleagues .team-person h2{font-size:25px}.viason-team .team-lead{font-size:18px}.viason-team .team-contacts{display:grid;gap:5px}.viason-team .team-invitation{align-items:flex-start;flex-direction:column;gap:24px}}
@media(max-width:620px){.viason-team .team-main{padding:0 20px}.viason-team .team-intro{padding:42px 0 30px}.viason-team .team-founders,.viason-team .team-colleagues{grid-template-columns:1fr;gap:42px;padding:30px 0 42px}.viason-team .team-portrait img{height:auto;max-height:430px}.viason-team .team-colleagues .team-portrait img{height:auto;max-height:400px}.viason-team .team-person h2,.viason-team .team-colleagues .team-person h2{font-size:28px}.viason-team .team-rating{gap:12px;margin-top:24px}.viason-team .team-rating-line{display:none}.viason-team .team-role{min-height:0}.viason-team .team-invitation h2{font-size:27px}.viason-team .team-invitation-button{width:100%}.viason-team .team-kicker{margin-bottom:14px}}
@media(prefers-reduced-motion:reduce){.viason-team .team-person *,.viason-team .team-person-copy::after{transition:none!important;transform:none!important}}

/* Entwurf 1 mit nahezu gleich grossen Portraets im zweiten Teamabschnitt. */
.viason-team .team-intro{border-bottom:0;padding-bottom:18px}
@media(min-width:621px) and (max-width:1100px){.viason-team .team-colleagues{grid-template-columns:repeat(2,minmax(0,1fr))}.viason-team .team-colleagues .team-portrait img{height:310px}}

/* Lesbarkeit, Blocksatz und Kontaktsymbole nach Kundenwunsch. */
.viason-team .team-bio{font-size:16px;line-height:1.8;text-align:justify;text-align-last:left;hyphens:auto;-webkit-hyphens:auto;hyphenate-limit-chars:7 3 3;overflow-wrap:break-word}
.viason-team .team-lead{text-align:justify;text-align-last:left;hyphens:auto;-webkit-hyphens:auto}
.viason-team .team-person h2{font-size:34px}
.viason-team .team-colleagues .team-person h2{font-size:29px}
.viason-team .team-qualification{font-size:14px;margin-bottom:7px}
.viason-team .team-role{font-size:15px;line-height:1.7;min-height:52px}
.viason-team .team-contacts{font-size:15px;gap:10px 24px}
.viason-team .team-contacts a{display:inline-flex;align-items:flex-start;gap:9px;min-width:0;max-width:100%}
.viason-team .team-contacts a>span{min-width:0;overflow-wrap:anywhere}
.viason-team .team-contacts svg{display:block;flex:0 0 17px;width:17px;height:17px;margin-top:3px}
@media(max-width:1100px){.viason-team .team-person h2{font-size:31px}.viason-team .team-colleagues .team-person h2{font-size:28px}.viason-team .team-contacts{display:grid;gap:8px}}
@media(max-width:620px){.viason-team .team-person h2,.viason-team .team-colleagues .team-person h2{font-size:29px}.viason-team .team-role{min-height:0}.viason-team .team-bio{line-height:1.8}}

/* Dezente Schaerfung bei der Darstellung, Originalfotos bleiben unveraendert. */
.viason-team .team-portrait img{filter:url(#team-portrait-sharp)}
@media(hover:hover) and (pointer:fine){.viason-team .team-person:hover .team-portrait img{transform:translateY(-5px)}}

/* Fotos bleiben in Ruhe und bei Mouseover identisch gerendert. */
.viason-team .team-person .team-portrait img,.viason-team .team-person:hover .team-portrait img{transform:none;transition:none;filter:url(#team-portrait-sharp)}
.viason-team .team-person-copy{transition:transform .3s ease}
@media(hover:hover) and (pointer:fine){.viason-team .team-portrait{transform:translateY(0);will-change:transform;transition:transform .35s ease}.viason-team .team-person:hover .team-portrait{transform:translateY(-4px)}.viason-team .team-person:hover .team-person-copy{transform:translateY(-3px)}}
@media(prefers-reduced-motion:reduce){.viason-team .team-person-copy,.viason-team .team-portrait{transition:none!important;transform:none!important}}

/* Deutlich groessere Einleitung, Profiltexte und direkte Kontaktangaben. */
.viason-team .team-lead{font-size:24px;line-height:1.7;text-align:justify;text-align-last:left;max-width:1040px}
.viason-team .team-qualification{font-size:16px}
.viason-team .team-role{font-size:18px;line-height:1.65;min-height:60px}
.viason-team .team-bio{font-size:18px;line-height:1.8}
.viason-team .team-contacts{display:grid;font-size:21px;line-height:1.6;gap:12px;padding-bottom:26px}
.viason-team .team-colleagues .team-contacts{gap:12px}
.viason-team .team-contacts a{gap:12px}
.viason-team .team-contacts svg{flex-basis:26px;width:26px;height:26px;margin-top:4px}
@media(max-width:620px){.viason-team .team-lead{font-size:22px}.viason-team .team-role{min-height:0}.viason-team .team-contacts{font-size:20px}.viason-team .team-contacts svg{flex-basis:25px;width:25px;height:25px}}

/* Grosszuegige Bewertung mit goldenen Sternen. */
.viason-team .team-rating{font-size:60px;line-height:1.3;gap:16px;margin-top:34px;align-items:flex-start}
.viason-team .team-rating>span{max-width:100%;overflow-wrap:anywhere}
.viason-team .team-rating strong{font-weight:700;color:#232323}
.viason-team .team-rating-line{display:none}
.viason-team .team-stars{color:#b58a35;letter-spacing:.06em;white-space:nowrap}

/* Abgestimmter Feinschliff: Bewertung, Namen, Titel und Abstand. */

.viason-team .team-rating{font-size:24px;gap:18px 24px;align-items:center;line-height:1.5;margin-top:30px}
.viason-team .team-stars{color:var(--viason-gold,#c2b6a0)}
.viason-team .team-rating strong{font-weight:700}


.viason-team .team-rating{font-size:22px;margin:0 0 24px;gap:12px 22px;color:#666}
.viason-team .team-rating strong{font-weight:600;color:#404040}
.viason-team .team-person h2{font-size:42px}
.viason-team .team-colleagues .team-person h2{font-size:35px}
.viason-team .team-founders .team-qualification{font-size:20px;margin-bottom:9px}
@media(max-width:620px){.viason-team .team-person h2,.viason-team .team-colleagues .team-person h2{font-size:34px}.viason-team .team-rating{font-size:20px}}

.viason-team .team-contacts{padding-bottom:40px}
/* Freigegebener Kontaktbereich oberhalb der Portraets. */

.viason-team .team-invitation{padding:30px 0 28px;margin-top:26px;gap:28px}
.viason-team .team-invitation h2{font-size:42px;line-height:1.25}
.viason-team .team-rating-five{font-weight:600}
@media(max-width:780px){.viason-team .team-invitation h2{font-size:34px}}
@media(max-width:620px){.viason-team .team-invitation h2{font-size:30px}.viason-team .team-invitation{margin-top:18px}}

/* Einleitung im Blocksatz ueber die gesamte Inhaltsbreite. */
.viason-team .team-lead{max-width:none;width:100%;text-align:justify;text-align-last:left}

/* Abschlusslinie unter den drei Teamprofilen. */
.viason-team .team-colleagues{border-bottom:1px solid #dedede}
.viason-team .team-colleagues{margin-bottom:40px;padding-bottom:40px}

/* Kontaktabschluss nach den Teamprofilen, feine graue Abschlusslinie. */
body.viason-team .team-colleagues{border-bottom:0;margin-bottom:0}
body.viason-team .team-invitation{margin-top:0;margin-bottom:40px;padding:38px 0 40px;border-top:1px solid #dedede;border-bottom:1px solid #dedede}
