:root{
  --primary:#0a3cff; /* синий из логотипа */
  --accent:#a11919;  /* бордовый */
  --text:#111827;    /* ← чуть темнее основной */
  --muted:#4b5563;   /* ← затемнённый второстепенный */
  --bg:#ffffff;
  --bgSoft:#f6f8ff;
}

/* База */
*{box-sizing:border-box}
body{
  margin:0;
  font:17.5px/1.68 "Inter",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--text);

  /* Светлый медицинский фон */
  background-color:#f3f8ff;
  background-image:
    radial-gradient(1100px 700px at -10% -10%, rgba(10,60,255,0.10) 0%, rgba(10,60,255,0.00) 55%),
    radial-gradient(900px 700px at 110% 0%, rgba(161,25,25,0.06) 0%, rgba(161,25,25,0.00) 60%),
    linear-gradient(135deg, #eaf3ff 0%, #ffffff 60%, #f6faff 100%);
  background-repeat:no-repeat;
  background-size:cover, cover, 100% 100%;
  background-attachment:fixed, fixed, fixed;
}
a{color:var(--primary);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;display:block}

.container{max-width:1180px;margin:0 auto;padding:0 16px}

/* Header — логотип крупнее */
.site-header{position:sticky;top:0;background:#fff;border-bottom:4px solid var(--accent);z-index:10}
.header-inner{display:flex;align-items:center;gap:24px;padding:12px 0}
.logo img{height:58px;transition:transform .25s ease}
@media (max-width: 720px){
  .logo img{height:48px}
}
.nav{margin-left:auto;display:flex;gap:16px}
.nav a{padding:10px 14px;border-radius:10px;font-weight:600}
.nav a:hover{background:var(--bgSoft)}
.burger{display:none;margin-left:8px;font-size:24px;background:none;border:0}

/* Hero */
.hero{
  background: linear-gradient(90deg, var(--bgSoft), #fff);
  padding:62px 0 34px; border-bottom:1px solid #e5e7eb
}
.kicker{color:var(--accent);font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.hero h1{margin:8px 0 10px;font-size:42px;line-height:1.12;color:var(--primary)}
.hero p{color:#374151;max-width:820px;font-size:18px}
.hero-top{display:grid;grid-template-columns:1fr 360px;gap:24px;align-items:center}
@media (max-width:1100px){ .hero-top{grid-template-columns:1fr 320px} }
@media (max-width:720px){ .hero-top{grid-template-columns:1fr} }

/* Buttons / Inputs */
.btn{display:inline-flex;align-items:center;gap:10px;padding:12px 18px;border-radius:12px;font-weight:700;border:2px solid var(--primary);color:#fff;background:var(--primary)}
.btn-outline{background:#fff;color:var(--primary)}
.btn:hover{opacity:.92}
.btn-outline:hover{background:#f0f4ff}
.btn .ico{width:18px;height:18px;display:inline-block}

.wa-btn{border-color:#25D366;color:#fff;background:#25D366}
.wa-btn.btn-outline{background:#fff;color:#25D366}

.input, .select{
  padding:10px 12px;border:1px solid #d1d5db;border-radius:10px;outline:0;font-size:16px
}

/* Sections */
.section{padding:52px 0}
.section h2{font-size:30px;margin:0 0 20px;color:var(--primary)}
.divider{height:4px;width:84px;background:var(--accent);border-radius:3px;margin:10px 0 18px}

/* Cards */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;overflow:hidden;box-shadow:0 4px 16px rgba(10,60,255,.05)}
.card img{width:100%;height:200px;object-fit:cover;background:#f8fafc}
.card .pad{padding:16px}
.card h3{margin:6px 0 4px}
.card p{color:var(--muted);margin:6px 0 12px}
.badge{display:inline-block;background:var(--bgSoft);border:1px solid #dbeafe;color:#1e3a8a;padding:3px 8px;border-radius:9999px;font-size:12px;margin-right:8px}

/* Grids */
.grid2{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;align-items:center}
.figure{border-left:6px solid var(--accent);padding-left:16px}

/* Contacts */
.kontakt{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.kontakt .box{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:16px}

/* Footer */
.site-footer{margin-top:36px;border-top:4px solid var(--accent);background:#fff}
.foot{display:flex;justify-content:space-between;align-items:center;padding:16px 0}
.wa{font-weight:700}

/* Catalog */
.product-card{display:flex;flex-direction:column}
.product-card .btn{margin-top:auto}

/* Heartbeat animation */
.logo img.beat{ animation: heartbeat .9s ease-in-out 1; }
@keyframes heartbeat{
  0%{transform:scale(1)}
  15%{transform:scale(1.18)}
  30%{transform:scale(1)}
  45%{transform:scale(1.12)}
  60%{transform:scale(1)}
  100%{transform:scale(1)}
}

/* Page fade overlay */
.page-fade{
  position: fixed;
  inset: 0;
  background: #fff;
  opacity: 0;
  pointer-events: none;
  transition: opacity .35s ease;
  z-index: 9999;
  border-top: 4px solid var(--accent);
}
.page-fade.show{opacity: 1;pointer-events: auto;}

/* —— Бренд-карточка —— */
.brand-card{
  align-self: start;
  background: #fff;
  border:2px solid var(--accent);
  border-radius:20px;
  padding:10px;
  box-shadow:0 12px 34px rgba(161,25,25,.12), 0 4px 10px rgba(10,60,255,.08);
  position:relative;
  overflow:hidden;
}
.brand-inner{
  position:relative;
  display:grid;
  place-items:center;
  padding:10px;
  border-radius:16px;
  background: linear-gradient(180deg,#ffffff 0%,#f7f9ff 100%);
}
.brand-logo{
  width:100%;
  height:auto;
  max-height:320px;
  object-fit:contain;
  filter: drop-shadow(0 6px 14px rgba(10,60,255,.15));
  animation: brandFloat 4s ease-in-out infinite;
}
@keyframes brandFloat{0%{transform:translateY(0)}50%{transform:translateY(-6px)}100%{transform:translateY(0)}}
@media (max-width:1100px){ .brand-logo{max-height:280px} }
@media (max-width:720px){ .brand-logo{max-height:240px} }
.brand-pulse{
  position:absolute; inset:-50px;
  background: radial-gradient(120px 120px at 50% 50%, rgba(161,25,25,.08), transparent 60%);
  animation: brandPulse 2.6s ease-in-out infinite;
}
@keyframes brandPulse{0%{opacity:.35;transform:scale(1)}50%{opacity:.15;transform:scale(1.08)}100%{opacity:.35;transform:scale(1)}}

/* Articles grid */
.articles-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
  margin-top:18px;
}
.article-card .article-img{width:100%;height:260px;object-fit:cover;background:#f8fafc}
.article-actions{margin-top:12px;display:flex;gap:10px;flex-wrap:wrap}

/* Media grid */
.media-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.media-card .media{width:100%;height:320px;object-fit:cover;background:#f8fafc;border-bottom:1px solid #e5e7eb}

/* Gallery grid */
.gallery-grid{grid-template-columns: repeat(3, 1fr);gap:14px}
.gallery-grid .media{height:180px}
.gallery-grid .card{border-radius:12px;box-shadow:0 6px 18px rgba(0,0,0,.08)}
.gallery-grid .card .pad{padding:10px}
.gallery-grid .card h3{margin:4px 0 2px;font-size:16px;line-height:1.25}
.gallery-grid .card p{margin:4px 0 0;font-size:13px;color:#64748b}

/* Адаптив */
@media (max-width: 1100px){
  .cards{grid-template-columns:repeat(2,1fr)}
  .gallery-grid{grid-template-columns: repeat(2, 1fr)}
}
@media (max-width: 720px){
  .header-inner{padding:10px 0}
  .burger{display:block}
  .nav{display:none;position:absolute;right:16px;top:70px;background:#fff;border:1px solid #e5e7eb;border-radius:14px;box-shadow:0 16px 32px rgba(10,60,255,.08)}
  .nav.open{display:flex;flex-direction:column;min-width:220px}
  .nav a{padding:12px 14px}
  .hero{padding:42px 0 26px}
  .hero h1{font-size:32px}
  .section{padding:34px 0}
  .cards{grid-template-columns:1fr}
  .articles-grid{grid-template-columns:1fr}
  .media-grid{grid-template-columns:1fr}
  .media-card .media{height:220px}
  .card img{height:180px}
  .card .pad{padding:12px}
  .input,.select{padding:10px 12px}
  .hero-top{grid-template-columns:1fr}
  .brand-card{order:-1;margin-bottom:12px}
}
