.zc-distributor-finder { max-width:1120px; margin:0 auto; padding:48px 24px; color:var(--zc-color-text-primary,#111820); font-family:var(--zc-font-family-primary,"Questrial",Arial,sans-serif); }
.zc-distributor-finder * { box-sizing:border-box; }
.zc-distributor-finder [hidden] { display:none!important; }
.zc-distributor-finder__header { max-width:760px; margin-bottom:36px; }
.zc-distributor-finder .zc-distributor-finder__eyebrow { font-size:13px; font-weight:600; letter-spacing:0; text-transform:uppercase; color:var(--zc-color-brand-primary,#263746); margin:0 0 16px; }
.zc-distributor-finder__header .zc-distributor-finder__eyebrow::before,
.zc-distributor-results > .zc-distributor-finder__eyebrow::before {
    display:block; width:38px; height:2px; margin-bottom:16px;
    background:var(--zc-color-brand-accent,#50a8e1); content:"";
}
.zc-distributor-finder h2 { font-size:34px; line-height:1.2; font-weight:600; margin:0 0 18px; color:var(--zc-color-brand-primary,#263746); }
.zc-distributor-finder p { font-size:16px; line-height:1.6; }
.zc-distributor-finder__header > p:last-child { margin:0; color:var(--zc-color-text-secondary,#4b5a66); }
.zc-distributor-finder__label { display:block; margin-bottom:10px; font-size:14px; font-weight:600; color:var(--zc-color-brand-primary,#263746); }
.zc-distributor-finder .zc-distributor-finder__select {
    width:100%; max-width:760px; height:60px; padding:0 52px 0 18px;
    appearance:none; -webkit-appearance:none;
    font:inherit; font-size:16px; color:var(--zc-color-brand-primary,#263746);
    background-color:var(--zc-color-surface,#fff);
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='m3 6 5 5 5-5' stroke='%23263746' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat:no-repeat; background-position:right 20px center;
    border:1px solid var(--zc-color-border,#71808c); border-radius:7px;
    cursor:pointer; transition:border-color .18s ease, box-shadow .18s ease;
}
.zc-distributor-finder .zc-distributor-finder__select:hover { border-color:var(--zc-color-brand-secondary,#6389aa); }
.zc-distributor-finder .zc-distributor-finder__select:focus-visible {
    outline:2px solid var(--zc-color-brand-accent,#50a8e1); outline-offset:2px;
    border-color:var(--zc-color-brand-secondary,#6389aa);
    box-shadow:0 0 0 4px rgb(80 168 225 / 18%);
}
.zc-distributor-locations, .zc-distributor-results { margin-top:56px; }
.zc-distributor-finder__status { color:var(--zc-color-text-secondary,#4b5a66); margin:0 0 20px; font-size:14px!important; }
.zc-distributor-finder .zc-distributor-results__heading { font-size:28px; line-height:1.25; font-weight:600; margin:0 0 18px; color:var(--zc-color-brand-primary,#263746); }
.zc-distributor-results__grid { display:grid; grid-template-columns:minmax(0,1fr); gap:24px; }
.zc-distributor-card {
    position:relative; overflow:hidden; min-width:0; padding:30px;
    border:1px solid rgb(38 55 70 / 15%); border-top:4px solid var(--zc-color-brand-secondary,#6389aa);
    border-radius:7px; background:var(--zc-color-surface,#fff);
    box-shadow:0 6px 20px rgb(38 55 70 / 8%);
    display:flex; flex-direction:column; gap:12px;
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.zc-distributor-card:hover { transform:translateY(-2px); box-shadow:0 10px 24px rgb(38 55 70 / 11%); border-color:rgb(38 55 70 / 24%); }
.zc-distributor-card--production { border-top-color:var(--zc-color-brand-accent,#50a8e1); }
.zc-distributor-card__top { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.zc-distributor-card__scope { font-size:12px; font-weight:600; letter-spacing:0; text-transform:uppercase; color:var(--zc-color-brand-secondary,#6389aa); }
.zc-distributor-card h4 { font-size:22px; font-weight:600; line-height:1.3; color:var(--zc-color-brand-primary,#263746); margin:4px 0 0; overflow-wrap:anywhere; }
.zc-distributor-card p { margin:0; }
.zc-distributor-card__location { color:var(--zc-color-brand-primary,#263746); }
.zc-distributor-card__address { color:var(--zc-color-text-secondary,#4b5a66); }
.zc-distributor-card a { color:var(--zc-color-brand-secondary,#6389aa); overflow-wrap:anywhere; text-underline-offset:3px; }
.zc-distributor-card a:hover { color:var(--zc-color-brand-primary,#263746); }
.zc-distributor-card__contact { display:flex; flex-direction:column; gap:8px; margin:8px 0 0; padding-top:16px; border-top:1px solid rgb(38 55 70 / 12%); }
.zc-distributor-card__contact a { min-height:44px; display:flex; align-items:center; }
.zc-distributor-card__subtitle { color:var(--zc-color-brand-secondary,#6389aa); font-weight:600; }
.zc-distributor-card__detail { display:flex; align-items:flex-start; gap:12px; min-width:0; }
.zc-distributor-card__detail svg { flex:none; color:var(--zc-color-brand-secondary,#6389aa); margin-top:2px; }
.zc-distributor-card__detail p, .zc-distributor-card__detail a { min-width:0; }
.zc-distributor-card__detail .zc-distributor-card__address span { display:block; }
.zc-distributor-card__cage { color:var(--zc-color-text-secondary,#4b5a66); }
.zc-distributor-card__fax { color:var(--zc-color-text-secondary,#4b5a66); font-size:14px!important; }
.zc-distributor-card__website { display:flex; align-items:center; min-height:44px; margin-top:auto; font-weight:600; }
.zc-distributor-finder a:focus-visible { outline:2px solid var(--zc-color-focus,#005fcc); outline-offset:4px; }
@media (min-width:768px) { .zc-distributor-results__grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (min-width:900px) { .zc-distributor-results__grid:has(> .zc-distributor-card:only-child) { grid-template-columns:minmax(0,min(64%,720px)); } }
@media (max-width:767px) { .zc-distributor-finder { padding:32px 16px; } .zc-distributor-finder h2 { font-size:28px; } .zc-distributor-finder .zc-distributor-results__heading { font-size:24px; } .zc-distributor-locations, .zc-distributor-results { margin-top:44px; } .zc-distributor-card { padding:24px; } }
@media (prefers-reduced-motion:reduce) { .zc-distributor-card, .zc-distributor-finder .zc-distributor-finder__select { transition:none; } .zc-distributor-card:hover { transform:none; } }
