/* Kader: royal blue picture-forward layout, original fan-magazine styling. */
.sq-container{padding:28px 0 86px}.sq-heading{border-bottom:4px solid var(--blue);padding:25px 0 24px;margin-bottom:24px}
.sq-heading h1{font:900 clamp(54px,10vw,96px)/.95 var(--display);color:var(--theme-heading,#061c40);margin:8px 0 17px}
.sq-heading h1 span{color:var(--blue)}.sq-heading p{max-width:660px;font-size:14px;color:var(--theme-muted,#657691);line-height:1.6}
.sq-count{display:flex;gap:18px;align-items:center;color:var(--theme-heading,#061c40);margin:0 0 26px}
.sq-count>strong{font:900 58px/.95 var(--display);color:var(--blue)}.sq-count span{font:900 16px/1.2 var(--display)}.sq-count small{display:block;font:700 10px/2 var(--display);color:var(--theme-muted,#647790)}
.sq-section{margin:28px 0 45px}.sq-section-top{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:2px solid var(--blue);padding:10px 0;margin-bottom:18px}
.sq-section-top h2{font:900 clamp(28px,4vw,40px) var(--display);margin:0;color:var(--theme-heading,#092457)}.sq-section-top>span{font:800 12px var(--display);color:var(--theme-muted,#5e7696)}
.sq-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.sq-card{background:var(--theme-surface,#fff);color:var(--theme-heading,#122d55);border:1px solid var(--theme-line,#d8e3f2);text-decoration:none;overflow:hidden;transition:transform .16s,border-color .16s;min-width:0}
.sq-card:hover{transform:translateY(-4px);border-color:var(--blue)}.sq-card:focus-visible{outline:3px solid var(--blue)}
.sq-photo{aspect-ratio:4/4.3;position:relative;background:linear-gradient(140deg,#ddeaf9,#e8f1fb);overflow:hidden;display:flex;align-items:flex-end;justify-content:center}
.sq-photo img{width:100%;height:100%;object-fit:cover;object-position:center center;display:block;image-rendering:auto}
.sq-empty{font:900 100px/.9 var(--display);color:#bed7f3;margin:auto}.sq-shirt{position:absolute;left:10px;top:10px;background:white;color:#074da6;font:900 23px var(--display);padding:2px 8px;box-shadow:0 3px 9px #00152f18}
.sq-info{padding:12px 13px 17px}.sq-info h3{font:900 24px/1.08 var(--display);margin:5px 0 10px;overflow-wrap:anywhere}
.sq-position{font:900 11px var(--display);letter-spacing:1px;color:var(--blue)}.sq-loan{display:block;font:850 11px/1.4 var(--display);background:#e4f0ff;color:#064a98;padding:7px;margin:7px 0}
.sq-link{display:block;font:800 11px var(--display);letter-spacing:.4px;color:var(--blue);margin-top:12px}.sq-source{font-size:12px;line-height:1.6;color:var(--theme-muted,#657691)}.sq-source a{color:var(--blue)}
@media(max-width:900px){.sq-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.sq-container{padding:16px 0 60px}.sq-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sq-info{padding:9px 10px 12px}.sq-info h3{font-size:19px}.sq-shirt{font-size:19px}.sq-empty{font-size:62px}}

/* Erweiterter Profikader – Fotoquellen vom Seitenbetreiber */
.sq-extended{margin-top:58px;padding-top:16px;border-top:4px solid var(--blue)}
.sq-extended-lead{font-size:14px;line-height:1.6;max-width:760px;color:var(--theme-muted,#647790);margin:0 0 22px}
.sq-extended-photo{background:#cac9cb}
.sq-extended-photo img{object-fit:contain;object-position:center bottom}

/* Foto darf die Karte ganz ausfüllen; Rückennummer bleibt oben links. */
.sq-photo img{filter:none;transform:none}.sq-card .sq-shirt{z-index:2}

/* Rückennummer: schlicht blau direkt auf dem Foto, ohne weiße Kachel. */
.sq-shirt,.sq-card .sq-shirt{color:#0052aa;background:transparent;box-shadow:none;padding:0;left:11px;top:9px;font-size:29px;text-shadow:-1px -1px white,1px -1px white,-1px 1px white,1px 1px white,0 2px 6px #fff}
@media(max-width:650px){.sq-shirt,.sq-card .sq-shirt{font-size:24px;left:8px;top:8px}}

/* Version 4: größere Porträts, kein breiter grauer Bildrand. */
.sq-extended-photo{aspect-ratio:4/4.7;background:#c9c9cc;}
.sq-extended-photo img{width:100%;height:100%;object-fit:cover!important;object-position:center 17%!important;transform:scale(1.23)!important;transform-origin:50% 16%;}
.sq-heading{padding:10px 0 19px;margin-bottom:22px;}
.sq-heading-art{display:block;width:min(640px,85vw);height:auto;max-height:185px;object-fit:contain;object-position:left center;margin:12px 0 9px;filter:drop-shadow(0 1px 0 #00123f14)}
.sq-heading h1.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
:root[data-theme=dark] .sq-heading-art{filter:drop-shadow(0 0 4px #ffffff22)}
@media(max-width:650px){.sq-heading-art{width:min(330px,94vw);max-height:105px}.sq-extended-photo img{transform:scale(1.18)!important}}

/* Kader-Grafik: weiße Wortmarke auf stets königsblauem Hintergrund. */
.sq-heading{background:#062e72!important;color:#fff!important;padding:20px 22px 25px!important;border-bottom:4px solid #1979d8!important;border-radius:2px;}
.sq-heading .pp-eyebrow,.sq-heading p{color:#e3f2ff!important;}
.sq-heading-art{width:min(640px,100%);max-width:100%;height:auto;filter:none!important;}
@media(max-width:650px){.sq-heading{padding:16px 14px 21px!important}.sq-heading-art{width:100%;max-height:105px;object-fit:contain}}

/* Header graphic visually matches the category headlines; compact spacing. */
.sq-heading{padding:13px 18px 16px!important;margin-bottom:15px!important}
.sq-heading-art{width:min(355px,100%)!important;max-height:120px!important;margin:1px 0 5px!important}
.sq-heading p{line-height:1.45;font-size:13px}
.sq-extended-photo{overflow:hidden}
.sq-extended-photo img{transform:scale(1.32)!important;object-position:center 14%!important;transform-origin:center 14%!important}
@media(max-width:650px){.sq-heading-art{max-height:86px!important;width:min(295px,100%)!important}.sq-extended-photo img{transform:scale(1.22)!important}}


/* In der Dunkelansicht lesbare weiße Positionsangaben und Profil-Links. */
:root[data-theme=dark] .sq-card .sq-position,
:root[data-theme=dark] .sq-card .sq-link,
:root[data-theme=dark] .sq-card .sq-link:visited{color:#ffffff!important;opacity:1!important}
:root[data-theme=dark] .sq-card .sq-info h3{color:#ffffff!important}
