.site-boxes{
    --box-columns:3;
    --box-visible:3;
    --box-gap:24px;
    color:#171717;
    font-family:inherit
}
.site-boxes,.site-boxes *{
    box-sizing:border-box
}
.site-boxes--columns-1{
    --box-columns:1
}
.site-boxes--columns-2{
    --box-columns:2
}
.site-boxes--columns-4{
    --box-columns:4
}
.site-boxes--columns-5{
    --box-columns:5
}
.site-boxes--columns-6{
    --box-columns:6
}
.site-boxes--visible-1{
    --box-visible:1
}
.site-boxes--visible-2{
    --box-visible:2
}
.site-boxes--visible-4{
    --box-visible:4
}
.site-boxes--visible-5{
    --box-visible:5
}
.site-boxes--visible-6{
    --box-visible:6
}
 .site-boxes__track{
    display:grid;
    grid-template-columns:repeat(var(--box-columns),minmax(0,1fr));
    gap:var(--box-gap);
    margin:0;
    padding:4px;
    list-style:none
}
.site-boxes__item{
    min-width:0;
    display:flex
}
.site-box{
    --card-background:#fff;
    --card-text:#171717;
    --card-muted:#555;
    --card-accent:#678e91;
    display:flex;
    flex-direction:column;
    width:100%;
    min-width:0;
    height:100%;
    overflow:hidden;
    border:1px solid #dedede;
    border-radius:20px;
    background:var(--card-background);
    color:var(--card-text);
    text-decoration:none;
    font-family:inherit
}
.site-box--cream{
    --card-background:#f8eee3;
    border-color:transparent
}
.site-box--black{
    --card-background:#000000;
    --card-text:#fff;
    --card-muted:#fff;
    --card-accent:#fff;
    border-color:1px solid rgba(255,255,255,.3);
}
.site-box--transparent{
    --card-background:transparent;
    --card-text:#fff;
    --card-muted:#fff;
    --card-accent:#fff;
    border:0px;
}
.site-box__body{
    display:flex;
    flex-direction:column;
    flex:1;
    align-items:flex-start;
    gap:20px;
    padding:30px;
    min-width:0
}
.site-box__number{
    font-size:.875rem;
    color:var(--card-accent);
    line-height:1.4
}
.site-box__eyebrow{
    margin:0;
    padding:5px 12px;
    border:1px solid currentColor;
    border-radius:24px;
    font-size:.6875rem;
    line-height:1.4;
    text-transform:uppercase;
    letter-spacing:.04em;
    overflow-wrap:anywhere
}
.site-box__headline{
    margin:0;
    font-size:1.25rem;
    font-weight:400;
    line-height:1.2;
    white-space:pre-line;
    overflow-wrap:anywhere
}
.site-box__headline strong{
    font-weight:400
}
h3.site-box__headline {
    font-size:1.25rem;
    font-weight:400;
    margin-bottom:0px;
}
h3.site-box__headline:after {display:none;}

.site-box__text,.site-box__quote{
    margin:0;


    white-space:pre-line;
    overflow-wrap:anywhere
}
.site-box__text{
    color:var(--card-muted)
}
.site-box__quote p{
    margin:0
}
.site-box__attribution{
    margin-top:auto;
    padding-top:10px;
    display:grid;
    gap:4px;
    overflow-wrap:anywhere
}
.site-box__author{
    font-size:.875rem;
    line-height:1.5
}
.site-box__meta{
    font-size:.75rem;
    line-height:1.5;
    color:var(--card-muted)
}
.site-box__image-wrap{
    width:100%;
    flex-shrink:0
}
.site-box__image{
    display:block;
    width:100%;
    height:auto;
    aspect-ratio:16/9;
    object-fit:cover
}
.site-box--image-bottom .site-box__image-wrap{
    margin-top:auto;
    overflow:hidden;
    border-radius:20px
}
.site-box__icon{
    display:block;
    flex-shrink:0;
    width:40px;
    height:40px;
    object-fit:contain
}
.site-box--red .site-box__icon{
    filter:brightness(0) invert(1)
}
.site-box__stars{
    display:flex;
    gap:5px;
    color:var(--card-accent);
    font-size:1.125rem;
    line-height:1.4
}
.site-box__stars>span:not(.is-filled){
    opacity:.25
}

.site-box--linked:focus-visible{
    outline:3px solid var(--card-accent);
    outline-offset:1px
}
.site-boxes__sr{
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    margin:-1px;
    overflow:hidden;
    clip-path:inset(50%);
    white-space:nowrap;
    border:0
}
 .site-boxes--carousel .site-boxes__track{
    grid-template-columns:none;
    grid-auto-flow:column;
    grid-auto-columns:calc((100% - (var(--box-visible) - 1) * var(--box-gap)) / var(--box-visible));
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scroll-padding:4px;
    overscroll-behavior-x:contain
}
.site-boxes--carousel .site-boxes__item{
    scroll-snap-align:start
}
.site-boxes__track:focus-visible{
    outline:2px solid #678e91;
    outline-offset:2px
}
.site-boxes__controls{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:16px;
    margin-bottom:16px
}
.site-boxes__controls[hidden]{
    display:none
}
.site-boxes__controls button{
    display:grid;
    place-items:center;
    width:44px;
    height:44px;
    padding:0;
    border:1px solid #dedede;
    border-radius:50%;
    background:#fff;
    color:#678e91;
    font:inherit;
    font-size:1.25rem;
    cursor:pointer
}
.site-boxes__controls button[aria-disabled=true]{
    opacity:.4;
    cursor:default
}
.site-boxes__controls button:focus-visible{
    outline:3px solid #678e91;
    outline-offset:3px
}
.site-boxes__status{
    font-size:.875rem;
    line-height:1.4
}
 @media(max-width:1200px){
    .site-boxes{
        --box-columns:3;
        --box-visible:3
    }
    .site-boxes--columns-1{
        --box-columns:1
    }
    .site-boxes--columns-2{
        --box-columns:2
    }
    .site-boxes--visible-1{
        --box-visible:1
    }
    .site-boxes--visible-2{
        --box-visible:2
    }
}
 @media(max-width:900px){
    .site-boxes{
        --box-columns:2;
        --box-visible:2
    }
    .site-boxes--columns-1{
        --box-columns:1
    }
    .site-boxes--visible-1{
        --box-visible:1
    }
    .site-box__body{
        padding:24px
    }
    .site-box__headline{
        font-size:1.375rem
    }
}
 @media(max-width:600px){
    .site-boxes{
        --box-columns:1;
        --box-visible:1;
        --box-gap:16px
    }
    .site-box__body{
        padding:24px
    }
    .site-box__headline{
        font-size:1.5rem
    }
}
 .site-box--testimonial .site-box__quote{
    font-size:1.125rem;
    line-height:1.55
}
/* Bildgestaltung pro Box. Automatisch erhält das vorherige Layout. */
 .site-box{
    --box-padding:30px;
    --image-radius:0px
}
 .site-box__body{
    padding:var(--box-padding)
}
 .site-box__image-wrap{
    overflow:hidden;
    border-radius:var(--image-radius)
}
 .site-box--image-bottom{
    --image-radius:20px
}
 .site-box--image-bottom .site-box__image-wrap{
    width:calc(100% - 2 * var(--box-padding));
    margin:0 var(--box-padding) var(--box-padding);
    border-radius:var(--image-radius)
}
 .site-box--image-style-inset{
    --image-radius:20px
}
 .site-box--image-style-inset .site-box__image-wrap{
    width:calc(100% - 2 * var(--box-padding));
    margin:var(--box-padding) var(--box-padding) 0
}
 .site-box--image-bottom.site-box--image-style-inset .site-box__image-wrap{
    margin:0 var(--box-padding) var(--box-padding)
}
 .site-box--image-style-edge{
    --image-radius:0px
}
 .site-box--image-style-edge .site-box__image-wrap{
    width:100%;
    margin:0
}
 .site-box--image-radius-0{
    --image-radius:0px
}
 .site-box--image-radius-20{
    --image-radius:20px
}
 .site-box--image-radius-30{
    --image-radius:30px
}
 .site-box__bottom-icon{
    padding:0 var(--box-padding) var(--box-padding)
}
 @media(max-width:900px){
    .site-box{
        --box-padding:24px
    }
}/* One shared surface; colors apply to the whole connected box. */
.site-boxes--connected { --connected-columns: 4; --connected-bg: #fff; --connected-text: #171717; --connected-muted: #555; --connected-line: #dedede; --card-accent: #171717; padding: 2rem 0; /*border-bottom: 1px solid var(--connected-line);*/border-radius:20px; background: var(--connected-bg); color: var(--connected-text); }
.site-boxes--connected-bg-black { --connected-bg: #000; --connected-text: #fff; --connected-muted: #e0e0e0; --connected-line: #444; --card-accent: #fff; }
.site-boxes--connected-bg-gray { --connected-bg: #f7f7f7; }
.site-boxes--connected-bg-teal { --connected-bg: #678e91; --connected-muted: #171717; --connected-line: #4d6c6e; }
.site-boxes--connected-columns-2 { --connected-columns: 2; }
.site-boxes--connected-columns-3 { --connected-columns: 3; }
.site-boxes--connected-columns-5 { --connected-columns: 5; }
.site-boxes--connected-columns-6 { --connected-columns: 6; }
.site-boxes--connected .site-boxes__track { grid-template-columns: repeat(var(--connected-columns), minmax(0, 1fr)); gap: 1.5rem 0; padding: 0; }
.site-boxes--connected .site-boxes__item { border-left: 1px solid var(--connected-line); }
.site-boxes--connected-columns-2 .site-boxes__item:nth-child(2n + 1),
.site-boxes--connected-columns-3 .site-boxes__item:nth-child(3n + 1),
.site-boxes--connected-columns-4 .site-boxes__item:nth-child(4n + 1),
.site-boxes--connected-columns-5 .site-boxes__item:nth-child(5n + 1),
.site-boxes--connected-columns-6 .site-boxes__item:nth-child(6n + 1),
.site-boxes--connected .site-boxes__item:first-child { border-left-color: transparent; }
.site-boxes__connected-cell { display: flex; width: 100%; min-width: 0; color: inherit; text-decoration: none; }
.site-boxes--connected .site-box__body { width: 100%; gap: .35rem; padding: 0 2rem; }
.site-boxes--connected .site-box__headline { color: inherit; font-size: 1.125rem; font-weight: 700; line-height: 1.4; }
.site-boxes--connected .site-box__text, .site-boxes--connected .site-box__quote { color: var(--connected-muted); font-size: 1rem; line-height: 1.6; }
.site-boxes--connected .site-box__meta { color: var(--connected-muted); }
.site-boxes--connected .site-box__icon { width: 2.5rem; height: 2.5rem; margin-bottom: .5rem; }
.site-boxes--connected-bg-black .site-box__icon { filter: brightness(0) invert(1); }
.site-boxes__connected-cell--linked:focus-visible { outline: 2px solid currentColor; outline-offset: -2px; }
@media (hover: hover) { .site-boxes__connected-cell--linked:hover .site-box__headline { text-decoration: underline; text-underline-offset: .2em; } }
@media (max-width: 75rem) {
  .site-boxes--connected-columns-4, .site-boxes--connected-columns-5, .site-boxes--connected-columns-6 { --connected-columns: 3; }
  .site-boxes--connected.site-boxes--connected-columns-4 .site-boxes__item, .site-boxes--connected.site-boxes--connected-columns-5 .site-boxes__item, .site-boxes--connected.site-boxes--connected-columns-6 .site-boxes__item { border-left-color: var(--connected-line); }
  .site-boxes--connected.site-boxes--connected-columns-4 .site-boxes__item:nth-child(3n + 1), .site-boxes--connected.site-boxes--connected-columns-5 .site-boxes__item:nth-child(3n + 1), .site-boxes--connected.site-boxes--connected-columns-6 .site-boxes__item:nth-child(3n + 1) { border-left-color: transparent; }
}
@media (max-width: 56.25rem) {
  .site-boxes--connected { --connected-columns: 2; }
  .site-boxes--connected .site-box__body { padding: 0 1.5rem; }
  .site-boxes.site-boxes--connected .site-boxes__item { border-left-color: var(--connected-line); }
  .site-boxes.site-boxes--connected .site-boxes__item:nth-child(2n + 1) { border-left-color: transparent; }
}
@media (max-width: 37.5rem) {
  .site-boxes--connected { --connected-columns: 1; padding: 1.5rem; }
  .site-boxes.site-boxes--connected .site-boxes__item { border-left: 0; }
  .site-boxes--connected .site-box__body { padding: 0; }
  .site-boxes--connected .site-boxes__item + .site-boxes__item { padding-top: 1.5rem; border-top: 1px solid var(--connected-line); }
}
