/* Shared collections use the existing paper, ink, blue and wine design tokens. */
.is-editorial #main .ec-eyebrow { color:var(--ed-wine); font:600 10px/1.6 var(--ed-sans); letter-spacing:.12em; margin:0 0 18px; }
.ec-eyebrow::before { content:''; display:inline-block; width:3px; height:9px; margin-right:12px; border-left:1px solid var(--ed-wine); }
.ec-section-head { display:grid; grid-template-columns:1.1fr .8fr; gap:70px; align-items:end; margin-bottom:35px; }
.is-editorial #main .ec-section-head h2,.is-editorial #main .ec-countries h2 { font:500 clamp(40px,4.5vw,62px)/.98 var(--ed-serif); letter-spacing:-.04em; color:var(--ed-ink); margin:0; }
.ec-section-head h2 em,.ec-countries h2 em { color:var(--ed-blue); font-style:normal; }
.is-editorial #main .ec-section-head>p,.is-editorial #main .ec-institutions__aside>p { font:400 13px/1.9 var(--ed-sans); color:#625a50; margin:0 0 4px; max-width:390px; }
.is-editorial #main .ec-section-note { color:#6c6256; font:400 10px/1.85 var(--ed-sans); margin:21px 0 0; }

/* Consistent paper specimens: no checkerboard backgrounds or poster thumbnails. */
.consulting-editorial .ec-references { background:var(--ed-paper)!important; padding-block:64px; }
.ec-reference-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.consulting-editorial .ec-reference-card { position:relative; display:flex; flex-direction:column; justify-content:flex-start; gap:0; padding:27px 25px 18px; min-height:177px; margin:0; border:1px solid #cfc5b4; background:var(--ed-white); }
.ec-reference-card::after { content:''; position:absolute; top:0; left:0; width:38px; height:2px; background:var(--ed-wine); }
.ec-reference-card__number { position:absolute; top:13px; left:15px; font:500 10px var(--ed-serif); color:#8c8171; }
.ec-reference-card__logo { width:100%; height:103px; display:flex; align-items:center; justify-content:center; }
.consulting-editorial .ec-reference-card .ec-reference-card__logo img { display:block; width:100%; max-width:205px; height:76px; max-height:none; object-fit:contain; filter:none; mix-blend-mode:normal; }
.consulting-editorial .ec-reference-card--ink .ec-reference-card__logo img { filter:brightness(0); }
.consulting-editorial .ec-reference-card--tall .ec-reference-card__logo img { height:88px; width:auto; max-width:100%; }
.ec-reference-card figcaption { margin-top:14px; padding-top:12px; width:100%; border-top:1px solid var(--ed-line); color:#716657; text-align:center; font:500 10px/1.6 var(--ed-sans); }
.consulting-editorial.is-references-in-view .lp-form-fab { visibility:hidden; opacity:0; pointer-events:none; }

/* All published support types, shared by the three consulting pages. */
.ec-support-catalog { margin-top:38px; }
.ec-support-catalog__caption { display:flex; justify-content:space-between; gap:20px; border-block:1px solid var(--ed-ink); padding:13px 0; font:600 9px/1.6 var(--ed-sans); letter-spacing:.08em; color:var(--ed-wine); }
.ec-support-catalog__caption>span:last-child { color:#6e6354; font-weight:500; text-align:right; }
.ec-support-index { list-style:none; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 38px; padding:0; margin:0; }
.ec-support-index li { border-bottom:1px solid var(--ed-line); }
.ec-support-index li:last-child:nth-child(odd) { grid-column:1/-1; }
.ec-support-index a { display:grid; grid-template-columns:35px 1fr 22px; gap:16px; align-items:start; color:var(--ed-ink); text-decoration:none; padding:25px 8px 24px 0; height:100%; transition:background .2s; }
.ec-support-index a:hover { background:var(--ed-paper); }
.ec-support-index__number { color:var(--ed-wine); font:500 28px/1 var(--ed-serif); padding-top:2px; }
.is-editorial #main .ec-support-index h3 { color:var(--ed-ink); font:500 28px/1.08 var(--ed-serif); letter-spacing:-.025em; margin:0 0 11px; max-width:520px; }
.is-editorial #main .ec-support-index p { color:#665d51; font:400 12px/1.8 var(--ed-sans); margin:0; max-width:720px; }
.ec-support-index__arrow { color:var(--ed-blue); font-size:22px; line-height:1.2; }
.ec-support-index a:hover h3 { color:var(--ed-blue)!important; }

/* Homepage target markets: stable, lazy-loaded local flags instead of a marquee. */
.ec-countries { padding:52px 0; border-top:1px solid var(--ed-line); border-bottom:1px solid var(--ed-line); }
.ec-countries__grid { display:grid; grid-template-columns:.8fr 1.2fr; align-items:center; gap:65px; }
.is-editorial #main .ec-countries__copy>p:not(.ec-eyebrow):not(.ec-section-note) { font:400 14px/1.8 var(--ed-sans); color:#665d50; max-width:420px; margin:24px 0; }
.ec-countries__copy .ed-text-link { display:inline-flex; align-items:center; gap:17px; font-size:12px; }
.ec-country-board { padding:24px; border:1px solid #d4c9b7; border-top:3px solid var(--ed-blue); background:var(--ed-white); box-shadow:6px 8px 14px #33261a0c; }
.ec-country-board__caption { display:flex; justify-content:space-between; gap:20px; padding-bottom:18px; border-bottom:1px solid var(--ed-line); font:600 9px/1.5 var(--ed-sans); letter-spacing:.1em; color:#706656; }
.ec-country-board__caption>span:last-child { color:var(--ed-wine); white-space:nowrap; }
.ec-country-grid { list-style:none; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:0; padding:0; margin:0; }
.ec-country-grid li { display:flex; align-items:center; justify-content:flex-start; flex-direction:column; gap:11px; padding:20px 7px 15px; border-bottom:1px solid var(--ed-line); min-height:93px; text-align:center; }
.ec-country-grid li:nth-last-child(-n+5) { border-bottom:0; }
.ec-country-grid img { display:block; width:36px; height:26px; object-fit:contain; border:1px solid #1515150f; }
.ec-country-grid li>span:last-child { font:500 10px/1.5 var(--ed-sans); color:#534b40; }
.ec-country-grid abbr { cursor:help; text-decoration:none; }
.ec-country-grid__fallback { display:grid; place-content:center; width:36px; height:26px; background:var(--ed-paper); color:var(--ed-wine); font-size:10px; }

/* Homepage official-source carousel, readable and swipeable without JavaScript. */
.ec-institutions { padding:58px 0 42px; border-top:1px solid var(--ed-line); border-bottom:1px solid var(--ed-line); background:var(--ed-white); }
.ec-institutions__head { margin-bottom:30px; }
.ec-institutions__aside { justify-self:end; width:100%; max-width:390px; }
.ec-slider-controls { display:flex; align-items:center; gap:9px; margin-top:21px; }
.ec-slider-controls button { min-height:42px; min-width:44px; border:1px solid #a99b875c; border-radius:0; color:var(--ed-ink); background:transparent; cursor:pointer; font:500 19px/1 var(--ed-serif); }
.ec-slider-controls button[data-institution-toggle] { padding-inline:16px; min-width:100px; font:500 10px var(--ed-sans); }
.ec-slider-controls button:hover { border-color:var(--ed-wine); color:var(--ed-wine); }
.ec-institution-track { --ec-visible:4; display:flex; gap:18px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:thin; scrollbar-color:#b9ac98 transparent; padding:1px 1px 16px; }
.ec-institution-card { flex:0 0 calc((100% - 54px)/4); display:flex; flex-direction:column; align-items:flex-start; min-width:0; padding:25px 22px 20px; border:1px solid #d6cdbf; scroll-snap-align:start; background:var(--ed-paper); color:var(--ed-ink); }
.ec-institution-card:hover { border-color:var(--ed-blue); }
.ec-institution-card__logo { display:flex; align-items:center; justify-content:center; width:100%; height:103px; margin-bottom:22px; }
.ec-institution-card__logo img { display:block; width:auto; max-width:100%; height:88px; object-fit:contain; }
.ec-institution-card__logo--ink img { filter:brightness(0); }
.ec-institution-card__logo.is-ushas img { max-width:175px; height:auto; max-height:80px; }
.ec-institution-card__logo.is-sgk img { max-width:140px; }
.ec-institution-card__name { font:500 25px/1.05 var(--ed-serif); letter-spacing:-.025em; margin-bottom:10px; }
.ec-institution-card__note { font:400 10px/1.7 var(--ed-sans); color:#6c6253; margin-bottom:21px; }
.ec-institution-card__link { display:flex; align-items:center; justify-content:space-between; gap:25px; margin-top:auto; padding-top:13px; width:100%; border-top:1px solid var(--ed-line); font:500 10px var(--ed-sans); color:var(--ed-wine); }
.ec-institutions__foot { display:flex; align-items:start; justify-content:space-between; gap:25px; margin-top:8px; }
.ec-institutions__foot .ec-section-note { max-width:850px; margin:0!important; }
.ec-slider-status { white-space:nowrap; font:500 11px/1.8 var(--ed-sans); color:var(--ed-wine); }
@media(max-width:1100px) {
 .ec-section-head { gap:40px; }.ec-reference-grid { gap:15px; }.consulting-editorial .ec-reference-card { padding-inline:20px; }
 .ec-countries__grid { grid-template-columns:.85fr 1.15fr; gap:35px; }.ec-country-board { padding:19px; }.ec-country-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }.ec-country-grid li:nth-last-child(-n+5) { border-bottom:1px solid var(--ed-line); }.ec-country-grid li:nth-last-child(-n+4) { border-bottom:0; }
 .ec-institution-track { --ec-visible:3; }.ec-institution-card { flex-basis:calc((100% - 36px)/3); padding-inline:20px; }
}
@media(max-width:820px) {
 .ec-section-head,.ec-countries__grid { grid-template-columns:1fr; gap:26px; }.ec-section-head>p { max-width:620px!important; }.ec-institutions__aside { justify-self:start; max-width:none; }.ec-institutions__aside>p { max-width:620px!important; }
 .ec-countries__copy { max-width:660px; }.ec-country-grid { grid-template-columns:repeat(5,minmax(0,1fr)); }.ec-country-grid li:nth-last-child(-n+4) { border-bottom:1px solid var(--ed-line); }.ec-country-grid li:nth-last-child(-n+5) { border-bottom:0; }
 .ec-institution-track { --ec-visible:2; }.ec-institution-card { flex-basis:calc((100% - 18px)/2); }
 .ec-reference-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }.consulting-editorial .ec-reference-card { padding-inline:16px; min-height:159px; }.consulting-editorial .ec-reference-card .ec-reference-card__logo img { height:62px; }.ec-reference-card__logo { height:83px; }
 .ec-support-index { gap:0 25px; }.ec-support-index a { grid-template-columns:28px 1fr 18px; gap:10px; }.is-editorial #main .ec-support-index h3 { font-size:25px; }
}
@media(max-width:560px) {
 .consulting-editorial .ec-references { padding-block:43px; }
 .is-editorial #main .ec-section-head h2,.is-editorial #main .ec-countries h2 { font-size:42px; }.is-editorial #main .ec-eyebrow { font-size:9px; letter-spacing:.08em; line-height:1.8; }
 .ec-section-head { gap:21px; margin-bottom:26px; }.ec-reference-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
 .consulting-editorial .ec-reference-card { padding:23px 14px 14px; min-height:156px; }.ec-reference-card__logo { height:82px; }.consulting-editorial .ec-reference-card .ec-reference-card__logo img { max-width:100%; height:61px; }.consulting-editorial .ec-reference-card--tall .ec-reference-card__logo img { height:75px; }.ec-reference-card figcaption { font-size:9px; margin-top:11px; padding-top:10px; min-height:37px; }
 .ec-support-catalog { margin-top:28px; }.ec-support-catalog__caption { gap:15px; font-size:8px; }.ec-support-catalog__caption>span:last-child { max-width:185px; }
 .ec-support-index { grid-template-columns:1fr; gap:0; }.ec-support-index li:last-child:nth-child(odd) { grid-column:auto; }.ec-support-index a { gap:13px; grid-template-columns:30px 1fr 18px; padding-block:23px; }.is-editorial #main .ec-support-index h3 { font-size:28px; }.is-editorial #main .ec-support-index p { font-size:12px; }
 .ec-countries { padding-block:38px; }.ec-countries__grid { gap:29px; }.is-editorial #main .ec-countries__copy>p:not(.ec-eyebrow):not(.ec-section-note) { font-size:13px; }.ec-country-board { padding:17px 14px 8px; }.ec-country-board__caption { font-size:8px; }.ec-country-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }.ec-country-grid li { padding:19px 6px 13px; min-height:94px; }.ec-country-grid li:nth-last-child(-n+5) { border-bottom:1px solid var(--ed-line); }.ec-country-grid li:nth-last-child(-n+2) { border-bottom:0; }.ec-country-grid li>span:last-child { font-size:10px; }
 .ec-institutions { padding:38px 0 30px; }.ec-institutions__head { gap:24px; }.ec-slider-controls { margin-top:18px; }.ec-institution-track { --ec-visible:1; gap:14px; }.ec-institution-card { flex-basis:calc(100% - 28px); padding:25px 23px 20px; }.ec-institution-card__logo { height:94px; }.ec-institution-card__logo img { height:82px; }.ec-institution-card__name { font-size:28px; }.ec-institutions__foot { gap:17px; }.ec-slider-status { font-size:10px; }
}
@media(prefers-reduced-motion:reduce) { .ec-support-index a { transition:none; }.ec-institution-track { scroll-behavior:auto; } }
