/* Ken1338: selected Big Five. Scoped to this homepage section; prototypes stay frozen. */
.big-five {
  --bf-paper:#FCFBF8; --bf-ink:#1A1C20; --bf-muted:#3D4148;
  --bf-link:#245b8b; --bf-line:#cbd1d4;
  --bf-gradient:linear-gradient(145deg,#4c91d6 12%,#7eafd0 45%,#effe8b 90%);
  margin:0; padding:clamp(64px,7vw,108px) clamp(16px,4.5vw,68px);
  min-width:0; position:relative; isolation:isolate;
  background:var(--bf-paper); color:var(--bf-ink);
  font-family:'PPFraktionSans',system-ui,sans-serif; font-weight:300;
  line-height:1.5; text-align:left; text-shadow:none;
}
.big-five,.big-five *,.big-five *::before,.big-five *::after { box-sizing:border-box; }
.big-five[id] { scroll-margin-top:calc(var(--site-nav-height,70.4px) + 0px + 16px); }
.big-five :focus-visible { outline:3px solid var(--bf-link); outline-offset:5px; }
.bf-inner { max-width:1440px; min-width:0; margin:0 auto; }
.big-five .bf-photo { display:block; margin:0 0 clamp(32px,4.5vw,64px); padding:0; }
.big-five .bf-photo img { display:block; width:100%; height:auto; aspect-ratio:5504/3072; object-fit:cover; object-position:26% center; }
@media(max-width:599px) { .big-five .bf-photo img { aspect-ratio:4/3; } }
.bf-heading {
  display:block; position:static; inset:auto; width:auto; height:auto; min-height:0;
  max-width:860px; margin:0 0 clamp(32px,4vw,56px); padding:0; border:0;
  background:transparent; box-shadow:none; text-align:left;
}
.bf-eyebrow { display:block; margin:0 0 16px; color:var(--bf-link); font-size:12px; font-weight:700; line-height:1.6; letter-spacing:.12em; text-transform:uppercase; }
.bf-heading h2 { max-width:21ch; margin:0; color:var(--bf-ink); font-size:clamp(32px,4.5vw,66px); font-weight:700; line-height:1.06; letter-spacing:-.04em; overflow-wrap:break-word; text-wrap:balance; }
.bf-reasons { display:grid; grid-template-columns:minmax(0,1fr); gap:28px; min-width:0; margin:0; padding:0; list-style:none; }
.bf-reason { display:grid; grid-template-columns:66px minmax(0,1fr); align-items:start; gap:18px; position:relative; min-width:0; margin:0; padding:24px 0 0; border-top:1px solid var(--bf-line); list-style:none; }
.bf-number { display:block; width:max-content; max-width:100%; padding-right:.07em; color:var(--bf-link); font-size:100px; font-weight:700; line-height:.9; letter-spacing:-.065em; font-variant-numeric:lining-nums; user-select:none; transform-origin:center bottom; }
@supports ((background-clip:text) or (-webkit-background-clip:text)) {
  .bf-number { background-image:var(--bf-gradient); background-repeat:no-repeat; -webkit-background-clip:text; background-clip:text; color:transparent; -webkit-text-fill-color:transparent; }
}
.bf-copy { position:relative; min-width:0; }
.bf-copy h3 { max-width:19ch; margin:0 0 12px; color:var(--bf-ink); font-size:clamp(23px,2.15vw,30px); font-weight:700; line-height:1.14; letter-spacing:-.025em; overflow-wrap:break-word; text-wrap:balance; }
.bf-copy p { max-width:34ch; margin:0; color:var(--bf-muted); font-size:clamp(16px,1.25vw,18px); line-height:1.6; overflow-wrap:break-word; text-wrap:pretty; }
.bf-footnote { display:flex; flex-direction:column; flex-wrap:wrap; align-items:flex-start; justify-content:space-between; gap:4px 24px; position:static; width:auto; min-width:0; margin:clamp(32px,4vw,56px) 0 0; padding:18px 0 0; border:0; border-top:1px solid var(--bf-line); border-radius:0; background:transparent; box-shadow:none; text-align:left; }
.bf-footnote p { margin:0; color:#48545f; font-size:13px; line-height:1.6; }
.bf-footnote a { display:inline-flex; align-items:center; gap:8px; min-height:44px; padding:9px 0; color:var(--bf-link); font-size:13px; font-weight:700; line-height:1.5; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:4px; }
.bf-footnote a:hover { text-decoration-thickness:2px; }
@media(min-width:480px) {
  .bf-reason { grid-template-columns:86px minmax(0,1fr); gap:24px; }
  .bf-number { font-size:124px; }
}
@media(min-width:600px) {
  .bf-footnote { flex-direction:row; align-items:center; gap:8px 24px; }
  .bf-reasons { grid-template-columns:repeat(2,minmax(0,1fr)); gap:44px 28px; }
  .bf-reason { display:block; padding-top:28px; }
  .bf-number { margin-bottom:28px; font-size:clamp(148px,17vw,208px); }
}
@media(min-width:960px) { .bf-reasons { grid-template-columns:repeat(3,minmax(0,1fr)); gap:48px 32px; } }
@media(min-width:1280px) {
  .bf-reasons { grid-template-columns:repeat(5,minmax(0,1fr)); gap:clamp(24px,2.6vw,40px); }
  .bf-number { font-size:clamp(168px,14vw,224px); margin-bottom:32px; }
  .bf-copy h3 { font-size:clamp(25px,2vw,30px); }
}
@media(prefers-reduced-motion:reduce) {
  .big-five * { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
  .bf-number { transform:none!important; opacity:1!important; }
}
@media(forced-colors:active) {
  .big-five { --bf-paper:Canvas; --bf-ink:CanvasText; --bf-muted:CanvasText; --bf-link:LinkText; --bf-line:CanvasText; forced-color-adjust:auto; }
  .bf-number { background:none; color:CanvasText; -webkit-text-fill-color:currentColor; }
  .bf-footnote p { color:CanvasText; }
}
@media print { .bf-reason { break-inside:avoid; } .bf-number { opacity:1!important; transform:none!important; } }
