/* =========================================================
   Civic Kindergarten UI v1 – global (extended)
   ========================================================= */

html { box-sizing: border-box; }
*, *::before, *::after { box-sizing: inherit; }

body{
  margin:0;
  background: var(--wp--preset--color--bg-warm);
  color: var(--wp--preset--color--text-primary);
  font-family: var(--wp--preset--font-family--base, system-ui);
}

a{ color: inherit; text-underline-offset: .18em; }
a:focus-visible{ outline:none; box-shadow: var(--civic-focus-ring); border-radius: 6px; }

/* Section rhythm */
.civic-section{ padding-block: var(--wp--preset--spacing--48); }
@media (min-width: 900px){ .civic-section{ padding-block: var(--wp--preset--spacing--64);} }

.civic-section__head{
  display:flex; align-items:baseline; justify-content:space-between;
  gap: var(--wp--preset--spacing--16);
  margin-bottom: var(--wp--preset--spacing--24);
}
.civic-section__title{
  font-size: var(--wp--preset--font-size--2xl);
  font-weight: 800;
  letter-spacing: -0.01em;
  margin:0;
}
.civic-section__lead{
  color: var(--wp--preset--color--text-secondary);
  font-size: var(--wp--preset--font-size--md);
  margin-top: var(--wp--preset--spacing--8);
}

/* Buttons */
.civic-btn,
.wp-block-button__link{
  border-radius: var(--civic-btn-radius) !important;
  padding: var(--civic-btn-pad-y) var(--civic-btn-pad-x) !important;
  font-weight: var(--civic-btn-font-weight) !important;
  line-height: 1.1;
  transition: transform .12s ease, box-shadow .12s ease, background-color .12s ease, border-color .12s ease;
}
.civic-btn:focus-visible,
.wp-block-button__link:focus-visible{
  outline:none;
  box-shadow: var(--civic-focus-ring);
}
.civic-btn:hover,
.wp-block-button__link:hover{ transform: translateY(-1px); }

.wp-block-button.is-style-fill .wp-block-button__link{
  background: var(--civic-primary) !important;
  border: 1px solid var(--civic-primary) !important;
  color:#fff !important;
}
.wp-block-button.is-style-fill .wp-block-button__link:hover{
  background: var(--civic-primary-dark) !important;
  border-color: var(--civic-primary-dark) !important;
  box-shadow: var(--civic-shadow-card-hover);
}

.wp-block-button.is-style-outline .wp-block-button__link{
  background: transparent !important;
  border: 2px solid var(--civic-primary) !important;
  color: var(--civic-primary) !important;
}
.wp-block-button.is-style-outline .wp-block-button__link:hover{
  background: rgba(43,140,255,.08) !important;
}

/* Cards */
.civic-card{
  background: var(--civic-card-bg);
  border: 1px solid var(--civic-card-border);
  border-radius: var(--civic-radius-md);
  box-shadow: var(--civic-shadow-card);
  overflow:hidden;
  transition: transform .14s ease, box-shadow .14s ease;
}
.civic-card:hover{ transform: translateY(-2px); box-shadow: var(--civic-shadow-card-hover); }
.civic-card:focus-within{ box-shadow: var(--civic-shadow-card-hover), var(--civic-focus-ring); }
.civic-card__pad{ padding: var(--civic-card-pad); }
.civic-card__media img{ display:block; width:100%; height:auto; }

/* Badges + accents */
.civic-badge{
  display:inline-flex; align-items:center; gap:.45rem;
  padding:.25rem .55rem;
  border-radius: 999px;
  font-size:.8125rem;
  font-weight: 700;
  border: 1px solid var(--civic-card-border);
  background: rgba(255,255,255,.7);
}
.civic-dot{ width:.55rem; height:.55rem; border-radius:999px; background: currentColor; }

.civic-accent{ height:6px; width:100%; background: var(--civic-card-border); }
.civic-accent--vel{ background: var(--civic-provoz-vel); }
.civic-accent--mb{ background: var(--civic-provoz-mb); }
.civic-accent--brez{ background: var(--civic-provoz-brez); }

/* Hero (hybrid) */
.civic-hero{
  position:relative;
  border-radius: var(--civic-radius-lg);
  overflow:hidden;
  background: var(--wp--preset--color--bg-card);
  border: 1px solid var(--civic-card-border);
  box-shadow: var(--civic-shadow-card);
}
.civic-hero__overlay{
  position:absolute; inset:0;
  background: linear-gradient(90deg,
    rgba(253,248,242,.96) 0%,
    rgba(253,248,242,.88) 40%,
    rgba(253,248,242,.66) 100%);
  pointer-events:none;
}
.civic-hero__inner{ position:relative; padding: var(--wp--preset--spacing--48); }
@media (min-width: 900px){ .civic-hero__inner{ padding: var(--wp--preset--spacing--64); max-width: 62rem; } }

.civic-hero h1{
  font-size: var(--wp--preset--font-size--h1);
  font-weight: 900;
  letter-spacing: -0.02em;
  margin: 0 0 var(--wp--preset--spacing--16);
}
.civic-hero p{
  font-size: var(--wp--preset--font-size--lg);
  color: var(--wp--preset--color--text-secondary);
  margin: 0 0 var(--wp--preset--spacing--24);
}

.civic-chips{ display:flex; flex-wrap:wrap; gap:.5rem; margin-top: var(--wp--preset--spacing--16); }
.civic-chip{
  display:inline-flex; align-items:center;
  padding:.45rem .7rem;
  border-radius: 999px;
  border: 1px solid var(--civic-card-border);
  background: rgba(255,255,255,.75);
  font-weight: 700;
  font-size: .9375rem;
}
.civic-chip:hover{ box-shadow: var(--civic-shadow-card); }

/* Fail-safe navigation visibility */
.site-header, .wp-block-navigation{
  opacity:1 !important;
  visibility:visible !important;
}
