/* Team brands lead with their own artwork. Never crop a supplied banner. */
body .team-choice-grid:has(.team-feature){grid-template-columns:minmax(0,1fr)!important;gap:48px}
.editorial-team.team-feature{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(260px,1fr);gap:32px;align-items:start;padding-bottom:36px!important;border-bottom:1px solid #e1e8ed!important;overflow:visible}
.team-feature-visual{min-width:0}
body .team-feature .brand-banner{width:100%;aspect-ratio:16/9;height:auto;max-height:none;min-height:0;margin:0!important;border-radius:10px!important;padding:0!important;background:var(--team-tint)!important;box-shadow:none;overflow:hidden;text-align:left}
body .team-feature .brand-banner.has-artwork{display:block;aspect-ratio:auto;background:transparent!important}
body .team-feature .brand-banner .brand-artwork{display:block;width:100%;height:auto;object-fit:contain;object-position:center;transform:none;border-radius:0}
body .team-feature .brand-story-entry{display:flex;justify-content:space-between;align-items:center;gap:20px;width:100%;margin:0;padding:16px 2px;border:0;border-bottom:1px solid #e5ebef;border-radius:0;background:transparent!important;color:#31576e!important;font-size:13px;font-weight:550;text-align:left}
.team-feature .brand-story-entry:hover{color:var(--team-accent)!important}
.team-feature .team-card-body{min-width:0;padding:4px 0 0;background:transparent;border:0}
.team-feature .team-card-top{gap:12px;margin-bottom:20px;flex-wrap:wrap}
.team-feature .team-brand-header{margin-bottom:16px}
.team-feature .team-brand-header strong{font-size:27px;line-height:1.35;overflow-wrap:anywhere}
.team-feature .team-brand-logo{width:44px;height:44px;min-width:44px;padding:4px}
.team-feature .team-region-line{margin:12px 0}
.team-feature .team-detail-link{display:none}
.team-feature .team-card-body>[data-match],.team-feature .team-card-body>.team-select-link,.team-feature .team-card-body>[data-demo-select]{margin-top:20px}
.team-feature .empty-banner .cover-empty{min-height:180px;color:#667e8d;font-size:13px}
.team-story-dialog .detail-hero.brand-detail-banner{display:block;width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;border-radius:0}
/* Large admin upload and customer preview, using the same card renderer. */
.admin-photos .banner-field{grid-column:1/-1}
.admin-photo.banner-field [data-photo-preview]{width:100%;max-width:960px}
.admin-photo.banner-field img{width:100%;height:auto;max-height:none;aspect-ratio:16/9;object-fit:contain!important;background:#f4f7f9;border-radius:8px}
.banner-upload-guide{grid-column:1/-1;margin:0 0 18px;font-size:13px;color:#5c7587;line-height:1.9}
.banner-upload-guide b{color:#294b65}
#dialog:has(.team-feature){width:min(1180px,96vw);max-width:1180px}
#dialog .team-feature{margin-top:24px}
/* The team's own words are a primary part of its identity. */
.team-voice{position:relative;margin:24px 0 20px;padding:25px 26px 24px;background:var(--team-tint);border:0;border-top:3px solid var(--team-accent);border-radius:0 0 10px 10px;min-width:0;color:#1d344a}
.team-voice-label{display:flex;align-items:center;gap:14px;font-size:11px;font-weight:600;letter-spacing:.03em;color:#536d82}
.team-voice-label i{display:block;width:26px;height:2px;background:var(--team-accent)}
.team-voice blockquote{margin:22px 0 24px;padding:0;border:0;font-style:normal}
.team-voice blockquote p{font-size:30px!important;line-height:1.5!important;font-weight:750;letter-spacing:-.055em;color:#1c3349!important;margin:0!important;white-space:pre-wrap;word-break:keep-all;overflow-wrap:anywhere}
.team-voice figcaption{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:14px!important;color:#29485f!important;line-height:1.7}
.team-voice figcaption strong{font-weight:650}
.voice-sign-rule{display:block;width:22px;height:1px;background:var(--team-accent);flex:none}
.team-voice .voice-wordmark{width:100%;padding-left:32px;font-size:10px;letter-spacing:.14em;color:#607b8d;line-height:1.5;overflow-wrap:anywhere}
.team-voice .team-voice-note{margin:20px 0 0!important;padding-top:18px;border-top:1px solid #dce4e9;font-size:13px!important;line-height:1.85!important;color:#536e82!important;white-space:pre-wrap;overflow-wrap:anywhere}
.team-representative{font-size:16px;font-weight:600;color:#29485f;margin:24px 0}
.brand-editorial .team-voice{background:#fff;border-top-width:5px;border-bottom:1px solid #dfe6eb;border-radius:0;padding-inline:3px}
.brand-editorial .team-voice blockquote p{font-size:34px!important;font-weight:850;letter-spacing:-.065em;line-height:1.4!important}
.brand-atelier .team-voice{background:#f7f3ec;border-top-width:2px;border-radius:0}
.brand-atelier .team-voice blockquote p{font-family:Georgia,'Batang',serif;font-weight:500;letter-spacing:-.03em;line-height:1.65!important;color:#343d3e!important}
.team-story-dialog .team-voice.brand-manifesto{margin:36px 42px;padding:36px 40px;background:var(--team-tint);color:#1d344a}
.team-story-dialog .team-voice blockquote p{font-size:42px!important;line-height:1.5!important;max-width:860px}
.team-story-dialog.brand-editorial .team-voice{background:#fff}
.team-story-dialog.brand-atelier .team-voice{background:#f7f3ec}
@media(max-width:900px){
 .editorial-team.team-feature{grid-template-columns:minmax(0,1fr);gap:20px}
 .team-feature .team-card-body{padding:0 2px}
 .team-feature .team-brand-header strong{font-size:25px}
}
@media(max-width:600px){
 body .team-choice-grid:has(.team-feature){gap:38px}
 .editorial-team.team-feature{gap:18px;padding-bottom:28px!important}
 body .team-feature .brand-banner{border-radius:8px!important}
 .team-feature .brand-story-entry{font-size:12px;padding:13px 2px}
 .team-feature .team-card-top{margin-bottom:14px}
 .team-feature .team-brand-header strong{font-size:23px}
 .team-voice{padding:23px 24px;margin:22px 0 20px}
 .team-voice blockquote p{font-size:28px!important}
 .brand-editorial .team-voice blockquote p{font-size:30px!important}
 .team-voice blockquote{margin:20px 0 22px}
 .team-story-dialog .team-voice.brand-manifesto{margin:24px 20px;padding:25px 24px}
 .team-story-dialog .team-voice blockquote p{font-size:30px!important}
 #dialog:has(.team-feature){padding:18px;width:96vw}
}
