/* Shared settings control actual buttons, including their preview and icon contrast. */
body .button-highlighted.button-highlighted{background-color:var(--button-color)!important;border-color:var(--button-color)!important;color:var(--button-text-color,var(--background-color))!important}
body .button-highlighted.button-highlighted svg path{fill:currentColor!important}
body .button-highlighted.button-highlighted:hover,body .button-highlighted.button-highlighted:focus,body .button-highlighted.button-highlighted:active{box-shadow:none!important;text-decoration:none!important}
body a.button-highlighted,a.carousel-btn,a.button-white{ text-decoration:none!important }

/* Consistent inverse hover colours, driven by the administration palette. */
body .button-highlighted.button-highlighted:hover,body .button-highlighted.button-highlighted:focus-visible,body .button-highlighted.button-highlighted:active{background-color:var(--button-text-color,#fff)!important;color:var(--button-color)!important;border-color:var(--button-color)!important;box-shadow:none!important}
body .button-highlighted.button-highlighted:hover svg path,body .button-highlighted.button-highlighted:focus-visible svg path,body .button-highlighted.button-highlighted:active svg path{fill:currentColor!important}
.section-block-team-item:not(a) .section-block-team-name h3{font-size:18px;font-weight:700;line-height:1.5}
.section-block-references .filters-button-group{display:flex;flex-wrap:wrap;gap:20px;align-items:stretch}
.section-block-references .filters-button-group>.button{display:flex;flex:1 1 220px;max-width:340px;min-width:200px;width:auto;height:auto;min-height:180px;flex-direction:column;justify-content:center;align-items:center;padding:16px;gap:14px}
.section-block-references .filters-button-group>.button>span{display:block;width:100%;white-space:nowrap;font-size:15px;line-height:1.5;margin:0}
.section-block-references .filters-button-group>.button>img{width:100%;height:150px;max-width:none;max-height:none;object-fit:cover;margin:0;border-radius:4px}
@media(max-width:575px){.section-block-references .filters-button-group>.button{flex-basis:100%;max-width:none}.section-block-references .filters-button-group>.button>img{height:190px}}



/* Category captions participate in the card layout, including editable nested spans. */
body .section-block-references .filters-button-group{margin:0}
body .section-block-references .filters-button-group>.button{margin:0}
body .section-block-references .filters-button-group .button span{position:static;inset:auto;transform:none;font-size:15px;line-height:1.5;white-space:nowrap}
body .section-block-references .filters-button-group .button>span{flex:none;text-align:center}

/* Mobile download cards: use the block width and one shared centre line. */
@media (max-width:768px){
 body .section-block-download-item{width:100%;min-width:0;flex-direction:column;align-items:center;gap:8px}
 body .section-block-download-name{width:100%;min-width:0;flex-direction:column;align-items:center;text-align:center;gap:4px}
 body .section-block-download-name>div{max-width:100%}
 body .section-block-download-name p{overflow-wrap:anywhere}
 body .section-block-download-iconFile{margin:0;flex-shrink:0}
 body .section-block-download-iconDownload{margin:0;gap:8px}
 body .section-block-download-iconDownload span{padding-left:0}
 body .section-block-download-iconDownload svg{flex-shrink:0}
}

/* Gallery previews use the same compact scale as category cards. */
body .gallery-cards .gallery-row{display:flex;flex-wrap:wrap;gap:20px;margin:0}
body .gallery-cards .gallery-row>div{flex:0 1 260px;width:260px;max-width:100%;padding:0}
body .gallery-cards .section-block-team-item{width:100%;padding:14px;border-radius:8px}
body .gallery-cards .section-block-team-image{width:100%;height:150px;margin:0 0 14px}
body .gallery-cards .section-block-team-image img{width:100%;height:100%;object-fit:cover;border-radius:5px}
body .gallery-cards .section-block-team-name h2,body .gallery-cards .section-block-team-name h2 span{font-size:15px;line-height:1.5;font-weight:600;margin:0}
body .gallery-cards .section-block-team-body{padding:0}
@media(max-width:575px){body .gallery-cards .gallery-row>div{flex-basis:100%;width:100%;max-width:340px}body .gallery-cards .section-block-team-image{height:190px}}
