/* Homepage group artwork with the original Swiss Management logo. */
.visual.group-visual{isolation:isolate;display:block;height:420px;border-radius:12px;background:radial-gradient(ellipse at 50% 44%,#f9efee 0%,#f1dede 78%)}
.group-visual:before,.group-visual:after{z-index:-1;pointer-events:none}
.group-visual-title{position:absolute;top:25px;left:26px;right:26px;z-index:3;font-size:11px;line-height:1.5;font-weight:400;letter-spacing:2px;text-transform:uppercase}
.group-visual .cross{position:absolute;left:50%;top:50%;width:240px;height:240px;transform:translate(-50%,-50%) rotate(-13deg)}
.group-companies{position:absolute;left:50%;top:50%;width:calc(100% - 36px);max-width:318px;height:214px;transform:translate(-50%,-50%) rotate(-13deg);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto auto;align-content:space-between;gap:18px;z-index:3}
/* Keep each logo horizontal while preserving its position around the tilted cross. */
.group-company{transform:rotate(13deg);display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;max-width:100px;min-width:0;padding:4px;background:#fff;border-radius:4px;box-shadow:0 6px 18px #6223330e,0 1px 3px #62233307}
.group-company:nth-child(even){justify-self:end}
.group-company-logo{position:relative;display:block;width:100%;max-width:92px;aspect-ratio:528/96;flex-shrink:0;overflow:hidden}
.group-company-logo img{position:absolute;display:block;max-width:none;width:123.106061%;height:auto;left:-6.060606%;top:-56.25%}
/* Keep labels below the cropped image, without overlapping its white background. */
/* Match the word MANAGEMENT: its right edge is 50 / 528 inside the cropped logo. */
.group-company-name{display:block;width:100%;max-width:92px;flex-shrink:0;margin-top:0;padding-right:9.469697%;text-align:right;color:#b82332;font-size:5.5px;font-weight:400;line-height:1.4;letter-spacing:0;white-space:nowrap}
.group-visual-benefits{position:absolute;bottom:20px;left:20px;right:20px;z-index:3;display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center;font-size:13px;line-height:1.5}
.group-visual-benefits>span{color:#806b6c;font-size:12px}
.group-visual-benefits>strong{font-weight:500;color:#392526}
@media(max-width:1100px){.visual.group-visual{height:390px}.group-visual-title{left:20px;right:20px;font-size:10px;letter-spacing:1.3px}.group-company{max-width:92px}.group-companies{max-width:286px;height:194px;gap:20px}.group-visual .cross{width:210px;height:210px}.group-visual .cross:before{inset:0 70px}.group-visual .cross:after{inset:70px 0}}
@media(min-width:601px) and (max-width:760px){.hero{grid-template-columns:1fr}.visual.group-visual{max-width:520px;width:100%;justify-self:center}}
@media(max-width:600px){.visual.group-visual{height:360px}.group-companies{width:calc(100% - 28px);max-width:274px;height:176px;gap:18px}.group-company{max-width:90px}.group-company-name{font-size:5.5px}.group-visual-title{top:22px;left:18px;right:18px;font-size:10px;letter-spacing:1.1px}.group-visual .cross{width:190px;height:190px}.group-visual .cross:before{inset:0 63px}.group-visual .cross:after{inset:63px 0}.group-visual-benefits{bottom:17px;font-size:13px}}
@media(max-width:360px){.group-companies{width:calc(100% - 40px);gap:16px}.group-company{max-width:80px}.group-visual-title{font-size:9px;letter-spacing:.7px}}
