.featured-brands { border-top:1px solid var(--line); }
.featured-brands .section-description { max-width:65ch; font-size:var(--reading-body,1.125rem); }
.featured-brand-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:14px; margin-top:32px; }
.featured-brand-card { display:flex; flex-direction:column; justify-content:space-between; gap:20px; min-width:0; min-height:132px; padding:16px; border:1px solid var(--line); border-radius:3px; background:#fff; transition:box-shadow .15s,border-color .15s; }
.featured-brand-card:hover { border-color:var(--accent); box-shadow:0 4px 16px #12382b12; }
.featured-brand-card:focus-visible { outline:3px solid #257bca; outline-offset:4px; }
.featured-brand-identity { display:flex; align-items:center; justify-content:center; min-height:52px; }
/* Hide the supplier image perimeter rule plus its resampling fringe. Originals remain untouched. */
.featured-brand-logo { display:block; width:208px; max-width:100%; height:auto; object-fit:contain; clip-path:inset(1.5px); }
.featured-brand-logo[src$="/port-authority.png"] { clip-path:inset(2.5px 1.5px); }
/* Crop the source perimeter before scaling where supported, preserving edge lettering. */
@supports(object-view-box:inset(3% 1%)){.featured-brand-logo{object-view-box:inset(3% 1%);clip-path:none}}
@supports(object-view-box:inset(3% 1%)){.featured-brand-logo[src$="/port-authority.png"]{object-view-box:inset(6% 1%);clip-path:none}}
.featured-brand-name { font-family:var(--display); font-size:1.25rem; font-weight:700; letter-spacing:-.04em; line-height:1.25; overflow-wrap:anywhere; }
.featured-brand-action { display:flex; align-items:center; justify-content:space-between; gap:8px; font-size:var(--reading-control,1rem); font-weight:600; color:var(--accent); }
.featured-brand-action svg { flex-shrink:0; }
.es-brand-empty { padding:32px; margin-bottom:40px; border:1px solid var(--line); background:#f7f8f5; }
.es-printing-callout { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:24px 48px; padding:32px; background:#edf3ef; border:1px solid var(--line); border-radius:3px; }
.es-printing-callout>div { flex:1 1 400px; min-width:0; }
.es-printing-callout .eyebrow { margin-bottom:12px; }
.es-printing-callout h2 { font-size:clamp(1.5rem,2.5vw,2rem); margin-bottom:14px; }
.es-printing-callout p:not(.eyebrow) { max-width:70ch; margin-bottom:0; font-size:var(--reading-control,1rem); line-height:1.75; }
.es-printing-callout>a { flex-shrink:0; max-width:100%; font-size:var(--reading-control,1rem); }
.es-printing-home { margin-bottom:80px; padding:44px; background:var(--navy); color:white; }
.es-printing-home .eyebrow { color:#b7d9cd; }
.es-printing-product,.es-printing-catalog { margin:0 0 32px; padding:24px; }
.es-printing-product { clear:both; }
.es-printing-product h2,.es-printing-catalog h2 { font-size:1.35rem; margin-bottom:8px; }
.es-printing-product .eyebrow,.es-printing-catalog .eyebrow { display:none; }
.es-printing-footer { border:0; border-radius:0; background:#f6f7f3; padding:32px 0; }
.es-printing-footer h2 { font-size:1.25rem; }
.print-referral>.container { display:block; }
.print-referral .es-printing-callout p { margin-bottom:0; }
.print-referral .es-printing-callout h2 { margin-bottom:8px; }
.es-printing-guide { margin-top:48px; }
.es-guide-shortcut { font-size:var(--reading-control,1rem); }
.es-guide-shortcut a { color:var(--accent); text-decoration:underline; text-underline-offset:.2em; }
@media(max-width:1200px){.featured-brand-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:1080px){.featured-brand-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:900px){.featured-brand-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:680px){.es-printing-callout{padding:24px;gap:20px}.es-printing-home{margin-bottom:48px}.es-printing-footer{padding:28px 0}.es-printing-callout>a.button{width:100%}}
@media(max-width:600px){.featured-brand-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.featured-brand-card{min-height:124px;padding:12px;gap:16px}}
