/* TLC Contact Cards – colours via CSS variables set by the plugin */
.tlc-cc{--cc-cols:2;--cc-green:#3f8f2f;--cc-gold:#f5a623;--cc-dark:#14230f;--cc-text:#4a5a42;
  box-sizing:border-box;width:100%;max-width:1320px;margin:0 auto;padding:clamp(16px,3vw,32px) clamp(14px,3vw,24px);
  font-family:var(--tlc-font,'Plus Jakarta Sans',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif);color:var(--cc-dark);line-height:1.5}
.tlc-cc *,.tlc-cc *::before,.tlc-cc *::after{box-sizing:border-box}

.tlc-cc__head{text-align:center;max-width:720px;margin:0 auto clamp(24px,4vw,44px)}
.tlc-cc .tlc-cc__title{margin:0;font-family:inherit;font-size:clamp(28px,3.6vw,44px);line-height:1.1;font-weight:800;letter-spacing:-.02em;color:var(--cc-dark);text-transform:none}
.tlc-cc__title::after{content:"";display:block;width:64px;height:4px;border-radius:4px;background:var(--cc-gold);margin:16px auto 0}
.tlc-cc .tlc-cc__intro{margin:16px 0 0;font-size:clamp(15px,1.3vw,17px);color:var(--cc-text)}

.tlc-cc__grid{display:grid;grid-template-columns:repeat(var(--cc-cols),minmax(0,1fr));gap:clamp(16px,2vw,28px)}

.tlc-cc__card{position:relative;display:flex;flex-direction:column;gap:20px;padding:clamp(20px,2.4vw,30px);background:#fff;border:1px solid color-mix(in srgb,var(--cc-green) 16%,transparent);border-radius:22px;
  box-shadow:0 14px 34px -22px color-mix(in srgb,var(--cc-dark) 55%,transparent);overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;animation:tlc-cc-rise .6s both;animation-delay:calc(var(--i,0) * .08s)}
.tlc-cc__card::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,var(--cc-green),var(--cc-gold))}
.tlc-cc__card:hover{transform:translateY(-6px);box-shadow:0 26px 44px -24px color-mix(in srgb,var(--cc-dark) 60%,transparent)}

.tlc-cc__top{display:flex;align-items:center;gap:14px}
.tlc-cc__code{flex:none;width:52px;height:52px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:15px;font-weight:800;letter-spacing:.04em;color:#fff;background:linear-gradient(145deg,var(--cc-green),color-mix(in srgb,var(--cc-green) 55%,var(--cc-dark)));box-shadow:0 8px 16px -8px var(--cc-green)}
.tlc-cc .tlc-cc__name{margin:0;font-family:inherit;font-size:clamp(20px,2vw,24px);line-height:1.15;font-weight:800;color:var(--cc-dark);text-transform:none}
.tlc-cc__tag{display:inline-block;margin-top:6px;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--cc-dark);background:color-mix(in srgb,var(--cc-gold) 30%,#fff)}

.tlc-cc__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}
.tlc-cc__list li{display:flex;align-items:flex-start;gap:12px;margin:0;padding:0;list-style:none;font-size:15px;color:var(--cc-text)}
.tlc-cc__list address{margin:0;font-style:normal;overflow-wrap:anywhere}
.tlc-cc__list li>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.tlc-cc__ico{flex:none;width:36px;height:36px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;color:var(--cc-green);background:color-mix(in srgb,var(--cc-green) 12%,#fff)}
.tlc-cc__list a{color:var(--cc-dark);font-weight:600;text-decoration:none;box-shadow:none;overflow-wrap:anywhere;transition:color .2s}
.tlc-cc__list a:hover{color:var(--cc-green);text-decoration:underline}

.tlc-cc__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto;padding-top:4px}
.tlc-cc__btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 20px;border-radius:999px;font-size:14px;font-weight:700;text-decoration:none;box-shadow:none;color:#fff;background:var(--cc-green);border:2px solid var(--cc-green);transition:background .2s,color .2s,transform .2s}
.tlc-cc__btn:hover{background:color-mix(in srgb,var(--cc-green) 85%,#000);border-color:color-mix(in srgb,var(--cc-green) 85%,#000);color:#fff;transform:translateY(-2px)}
.tlc-cc__btn--ghost{background:transparent;color:var(--cc-green)}
.tlc-cc__btn--ghost:hover{background:var(--cc-green);color:#fff}
.tlc-cc a:focus-visible{outline:3px solid var(--cc-gold);outline-offset:3px;border-radius:8px}

/* highlighted headquarters card */
.tlc-cc__card--feat{background:linear-gradient(160deg,color-mix(in srgb,var(--cc-green) 70%,var(--cc-dark)),var(--cc-dark));border-color:transparent;color:#fff}
.tlc-cc__card--feat::before{background:linear-gradient(90deg,var(--cc-gold),#ffe9a8)}
.tlc-cc__card--feat .tlc-cc__name{color:#fff}
.tlc-cc__card--feat .tlc-cc__code{background:var(--cc-gold);color:var(--cc-dark);box-shadow:0 8px 16px -8px var(--cc-gold)}
.tlc-cc__card--feat .tlc-cc__tag{background:rgba(255,255,255,.16);color:#ffe9a8}
.tlc-cc__card--feat .tlc-cc__list li{color:rgba(255,255,255,.88)}
.tlc-cc__card--feat .tlc-cc__ico{background:rgba(255,255,255,.14);color:#ffe9a8}
.tlc-cc__card--feat .tlc-cc__list a{color:#fff}
.tlc-cc__card--feat .tlc-cc__list a:hover{color:#ffe9a8}
.tlc-cc__card--feat .tlc-cc__btn{background:var(--cc-gold);border-color:var(--cc-gold);color:var(--cc-dark)}
.tlc-cc__card--feat .tlc-cc__btn:hover{background:#fff;border-color:#fff;color:var(--cc-dark)}
.tlc-cc__card--feat .tlc-cc__btn--ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.7)}
.tlc-cc__card--feat .tlc-cc__btn--ghost:hover{background:#fff;color:var(--cc-dark);border-color:#fff}

@keyframes tlc-cc-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

@media (max-width:1100px){.tlc-cc__grid{grid-template-columns:repeat(min(var(--cc-cols),2),minmax(0,1fr))}}
@media (max-width:720px){
  .tlc-cc__grid{grid-template-columns:minmax(0,1fr)}
  .tlc-cc__actions .tlc-cc__btn{flex:1 1 auto}
}
@media (prefers-reduced-motion:reduce){
  .tlc-cc__card{animation:none;transition:none}
  .tlc-cc__card:hover{transform:none}
  .tlc-cc__btn{transition:none}
}
