:root{
  --navy:#1D2D44;
  --gold:#C5A253;
  --grey:#EDEDED;
  --ink:#0E1726;
  --bg:#F0EFEC;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;line-height:1.6}
a{color:var(--navy);text-decoration:none}
.container{max-width:1100px;margin:0 auto;padding:0 20px}
.row{display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand-logo{height:auto;width:160px;display:block}
.brand-logo--big{width:520px;max-width:90vw}
.brand-logo--sm{width:140px}
@media (max-width: 600px){.brand-logo{width:140px}.brand-logo--big{width:340px}.brand-logo--sm{width:120px}}
.topbar{position:sticky;top:0;background:rgba(255,255,255,.85);backdrop-filter:saturate(1.2) blur(8px);border-bottom:1px solid var(--grey);z-index:10}
.nav a{margin-left:18px;opacity:.9}.nav a:hover{opacity:.6}
.hero{padding:64px 0}
.grid{display:grid;grid-template-columns:1fr;gap:28px}
@media(min-width:900px){.grid{grid-template-columns:7fr 5fr}}
.lead{margin-top:16px;max-width:58ch}
.cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.btn{padding:12px 18px;border-radius:12px;font-weight:600;font-size:14px;border:2px solid transparent;display:inline-block}
.btn-primary{background:var(--navy);color:#fff}
.btn-outline{border-color:var(--navy);color:var(--navy);background:transparent}
.contact-card{background:var(--navy);color:#fff;border-radius:22px;padding:28px}
.contact-card .label{opacity:.85;font-size:13px}
.contact-card .card-title{margin-top:6px;font-size:20px;font-weight:700}
.muted{opacity:.75}
.subs{padding:48px 0}
.subs h2,.about h2{color:var(--navy)}
.cards{display:grid;grid-template-columns:1fr;gap:16px;margin-top:18px}
@media(min-width:700px){.cards{grid-template-columns:1fr 1fr 1fr 1fr}}
.card{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid var(--grey);border-radius:18px;padding:16px;transition:box-shadow .2s ease}
.card:hover{box-shadow:0 8px 24px rgba(0,0,0,.06)}
.logo{height:56px;width:56px;border-radius:12px;background:var(--grey);display:flex;align-items:center;justify-content:center;overflow:hidden}
.logo img{height:100%;width:100%;object-fit:contain}
.card-title{font-weight:700}
.visit{margin-left:auto;color:var(--gold);font-weight:600;opacity:0;transition:opacity .2s}
.card:hover .visit{opacity:1}
.about{background:var(--grey);padding:48px 0}
.about p{max-width:70ch}
.footer{background:#fff;border-top:1px solid var(--grey);padding:28px 0}
.links a{font-weight:600}
.narrow{max-width:800px}

/* Fix pro odkazy na tmavé kontakt kartě */
.contact-card a { color: #fff; text-decoration: none; }
.contact-card a:hover { opacity: .85; }

/* Pro jistotu i běžný text v kartě, ať je kontrastní */
.contact-card, .contact-card .label, .contact-card .card-title, .contact-card .muted { color: #fff; }
.contact-card .muted { opacity: .9; }            /* lehce světlejší než body text */
.contact-card .muted + .muted { margin-top: 6px; }  /* drobný rozestup řádků */

