/* Business: supplied decorative frames with selectable HTML text. */
.business-page .business-departments-art,
.business-page .business-strengths-art,
.business-page .business-roles .business-frame,
.business-page .business-roles .business-spark,
.business-page .business-strength-grid .business-spark { display: none; }
.business-page .business-departments .business-roles,
.business-page .business-strengths .business-strength-grid {
 position: relative; display: grid; width: 100%; height: auto; padding: 0;
 overflow: visible; clip: auto; clip-path: none; white-space: normal; border: 0;
 list-style: none; box-sizing: border-box;
}
.business-page .business-departments { min-width: 0; }
.business-page .business-roles {
 grid-template-columns: repeat(6,minmax(0,1fr)); gap: 0; margin: 0;
}
.business-page .business-roles > li {
 grid-column: span 2; position: relative; aspect-ratio: 1; min-width: 0;
 padding: 0; border: 0; border-radius: 0; outline: none;
 background: url('images/business/department-frame.png') center / 100% 100% no-repeat;
}
.business-page .business-roles > li:nth-child(4) { grid-column: 2 / span 2; margin-top: -12%; }
.business-page .business-roles > li:nth-child(5) { grid-column: 4 / span 2; margin-top: -12%; }
.business-page .business-roles > li::before {
 content: ''; position: absolute; inset: 8%; z-index: -1;
 background: rgba(0,8,18,.48);
 clip-path: polygon(31% 0,69% 0,100% 31%,100% 69%,69% 100%,31% 100%,0 69%,0 31%);
}
.business-page .business-role-copy {
 position: absolute; inset: 0; padding: 16% 9%; display: flex;
 flex-direction: column; justify-content: center; align-items: center; text-align: center;
}
.business-page .business-role-copy h2 {
 margin: 0 0 10px; color: #fff; font-size: clamp(20px,1.7vw,30px); line-height: 1.35;
}
.business-page .business-role-copy p {
 margin: 0; color: #fff; font-size: clamp(10px,.80vw,15px); line-height: 1.5;
 letter-spacing: 0; overflow-wrap: anywhere;
}
.business-page .business-strengths .business-strength-grid {
 grid-template-columns: repeat(4,minmax(0,1fr)); gap: 24px; max-width: 1240px; margin: 75px auto 0;
}
.business-page .business-strength-grid > li {
 position: relative; isolation: isolate; box-sizing: border-box; aspect-ratio: 1;
 min-width: 0; display: flex; flex-direction: column; justify-content: center;
 align-items: center; padding: 12% 5%; text-align: center;
 border: 0; outline: none; border-radius: 0; box-shadow: none;
 background: url('images/business/strength-ring.png') center / 100% 100% no-repeat;
}
.business-page .business-strength-grid > li::before {
 content: ''; position: absolute; inset: 4%; border-radius: 50%; z-index: -1;
}
.business-page .business-strength-grid h3 {
 margin: 0 0 9px; color: #fff; font-size: clamp(23px,2vw,32px); line-height: 1.4;
}
.business-page .business-strength-grid p {
 margin: 0; color: #fff; font-size: clamp(12px,1vw,16px); line-height: 1.6; letter-spacing: 0;
}
@media (max-width: 1200px) {
 .business-page .business-intro { grid-template-columns: 1fr; gap: 45px; }
 .business-page .business-departments { width: 100%; max-width: 780px; margin: auto; }
 .business-page .business-role-copy h2 { font-size: 27px; }
 .business-page .business-role-copy p { font-size: 13px; }
 .business-page .business-strengths .business-strength-grid { grid-template-columns: repeat(2,minmax(0,1fr)); max-width: 660px; gap: 25px; }
 .business-page .business-strength-grid h3 { font-size: 30px; }
 .business-page .business-strength-grid p { font-size: 15px; }
}
@media (max-width: 700px) {
 .business-page .business-roles { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px 0; }
 .business-page .business-roles > li,
 .business-page .business-roles > li:nth-child(4),
 .business-page .business-roles > li:nth-child(5) { grid-column: auto; margin: 0; }
 .business-page .business-roles > li:last-child { grid-column: 1 / -1; width: 50%; justify-self: center; }
 .business-page .business-role-copy h2 { font-size: 23px; }
 .business-page .business-role-copy p { font-size: 11px; }
 .business-page .business-strengths .business-strength-grid { margin-top: 40px; }
}
@media (max-width: 560px) {
 .business-page .business-roles { grid-template-columns: 1fr; max-width: 320px; margin: auto; gap: 15px; }
 .business-page .business-roles > li:last-child { grid-column: auto; width: 100%; }
 .business-page .business-role-copy h2 { font-size: 29px; }
 .business-page .business-role-copy p { font-size: 14px; }
 .business-page .business-strengths .business-strength-grid { grid-template-columns: 1fr; max-width: 310px; }
 .business-page .business-strength-grid p { font-size: 14px; }
}
