.banner{container:banner/inline-size;width:100%}.banner__link{display:grid;grid-template:"above" min-content "visual" min-content "below" min-content "asideleft" min-content "asideright" min-content/100%;position:relative;-webkit-text-decoration:none;text-decoration:none}@container banner (width >= 52rem){.banner__link{grid-template:".            above     ." min-content "asideleft    visual    asideright" min-content ".            below     ." min-content/max-content 1fr max-content}}.banner__link-video{display:block;top:0;right:0;bottom:0;left:0;position:absolute;z-index:2}.banner__visual{border-radius:4px;grid-area:visual;overflow:hidden;place-self:center;width:100%}.banner__picture{display:contents}.banner__image{width:100%}.banner__video,.banner__video .video{height:100%;width:100%}.banner__container{display:contents}.banner__content{color:#000;width:100%;z-index:1}.banner__heading{color:inherit;font-size:1.8rem;line-height:1.3;margin-top:0}.banner__description{--height:auto;-webkit-box-orient:vertical;-webkit-line-clamp:var(--height,auto);display:-webkit-box;font-size:1.4rem;height:calc(var(--height, auto)*1lh);overflow:hidden}@container banner (width <= 32rem){.banner__button{width:100%}}.banner--overlay .banner__visual{position:relative}:is(.banner--overlay .banner__visual):after{background:#00000026;content:"";top:0;right:0;bottom:0;left:0;pointer-events:none;position:absolute}.banner--overlay .button{border:0}:is(.banner--above,.banner--below) .banner__link{background:#fff;border:1px solid #e0e0e0;border-radius:4px;overflow:hidden}:is(.banner--above,.banner--below) .banner__heading{height:2lh;overflow:hidden;text-overflow:ellipsis}:is(.banner--above,.banner--below) .banner__content{padding:1.6rem}:is(.banner--above,.banner--below) .banner__description{--height:3;margin-block:.5lh}@container banner (width >= 32rem){:is(.banner--above,.banner--below) .banner__heading{height:auto;overflow:visible}}.banner--above .banner__content{grid-area:above}.banner--below .banner__content{grid-area:below}:is(.banner--asideleft,.banner--asideright) .banner__visual{margin-bottom:3.2rem}:is(.banner--asideleft,.banner--asideright) .banner__content{place-self:center}:is(.banner--asideleft,.banner--asideright) .banner__heading{font-size:2.1rem}:is(.banner--asideleft,.banner--asideright) .banner__description{margin-block:1lh}.banner--asideleft .banner__content{grid-area:asideleft}@container banner (width >= 52rem){.banner--asideleft .banner__link{grid-template-columns:50% 50% 0}.banner--asideleft .banner__visual{margin-bottom:0;padding-left:1.6rem}.banner--asideleft .banner__content{padding-right:1.6rem}}.banner--asideright .banner__content{grid-area:asideright}@container banner (width >= 52rem){.banner--asideright .banner__link{grid-template-columns:0 50% 50%}.banner--asideright .banner__visual{margin-bottom:0;padding-right:1.6rem}.banner--asideright .banner__content{padding-left:1.6rem}}:is(.banner--topleft,.banner--top,.banner--topright,.banner--left,.banner--center,.banner--right,.banner--bottomleft,.banner--bottom,.banner--bottomright) .banner__content{color:#fff;grid-area:visual;padding:2.4rem;text-align:center}:is(.banner--topleft,.banner--top,.banner--topright,.banner--left,.banner--center,.banner--right,.banner--bottomleft,.banner--bottom,.banner--bottomright) .banner__heading{font-size:1.6rem;line-height:1.6}:is(.banner--topleft,.banner--top,.banner--topright,.banner--left,.banner--center,.banner--right,.banner--bottomleft,.banner--bottom,.banner--bottomright) .banner__description{--height:1;font-size:1.6rem;font-weight:600;margin-block:.5lh;width:100%}:is(.banner--topleft,.banner--top,.banner--topright,.banner--left,.banner--center,.banner--right,.banner--bottomleft,.banner--bottom,.banner--bottomright) .banner__button{height:4.4rem;margin-top:1rem}@container banner (width >= 48rem){:is(.banner--topleft,.banner--top,.banner--topright,.banner--left,.banner--center,.banner--right,.banner--bottomleft,.banner--bottom,.banner--bottomright) .banner__content{max-width:33.33%;padding:4rem}}.banner--topleft .banner__content{place-self:start}.banner--top .banner__content{place-self:start center}.banner--topright .banner__content{place-self:start end}.banner--left .banner__content{place-self:center start}.banner--center .banner__content{place-self:center}.banner--right .banner__content{place-self:center end}.banner--bottomleft .banner__content{place-self:end start}.banner--bottom .banner__content{place-self:end center}.banner--bottomright .banner__content{place-self:end}.banner--hero.banner--overlay .banner__visual{border-radius:0}.banner--hero.banner--overlay .banner__container{display:grid;grid-area:visual;grid-template:"visual" 1fr/1fr}.banner--hero.banner--overlay .banner__heading{font-size:4rem}.banner--hero.banner--overlay .banner__description{--height:1;font-size:2.4rem;font-weight:600;margin-block:.5lh;width:100%}@container banner (width < 42rem){.banner--hero.banner--overlay .banner__visual{aspect-ratio:1}.banner--hero.banner--overlay .banner__image{height:100%;object-fit:cover;width:100%}}@container banner (width >= 42rem){.banner--hero.banner--overlay .banner__heading{font-size:4.8rem}}
