.site-header {
  position: fixed;                /* Закрепляем хедер */
  top: 0;
  left: 0;
  width: 100%;                    /* Растягиваем по ширине */
  background: rgba(255,255,255,.9);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--border);
  z-index: 1000;                  /* Поверх всех остальных элементов */
  box-shadow: 0 2px 6px rgba(0,0,0,0.05); /* Лёгкая тень */
  height: 80px;
}


.nav-wrap{
  max-width:1120px;
  margin:auto;
  display:flex;
  align-items:center;
  gap:16px;
  padding:10px 16px}

.brand{
  display:flex;
  align-items:center;
  gap:10px;
  font-family:'Playfair Display',serif;
  font-weight:700;
  letter-spacing:.3px}
.main-nav{display:flex;
  gap:14px;
  align-items:center;
  width:100%}

.main-nav a{
  padding:8px 10px;
  border-radius:10px;
  color:var(--muted)}

.main-nav a.active,.main-nav a:hover{
  color:var(--text);
  background:#f4f7fb}

.main-nav .spacer{flex:1}

.burger{
  display:none;
  margin-left:6px;
  background:transparent;
  border:none;
  cursor:pointer}

.burger span{
  display:block;
  width:22px;
  height:2px;
  background:#333;
  margin:4px 0}

.hero{
  position:relative;
  min-height:46vh;
  display:grid;
  place-items:center;
  background-image:var(--hero),linear-gradient(160deg,#e6f0ec,#f7f3e8);
  background-size:cover;
  background-position:center;
  border-bottom:1px solid var(--border)}

.hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(255,255,255,.3),rgba(255,255,255,.75))}

.hero-inner{
  position:relative;
  z-index:1;
  text-align:center;
  padding:64px 16px}

.hero-inner h1{
  font-family:'Playfair Display',serif;
  margin:0 0 10px;
  font-size:clamp(28px,5vw,56px)}

.hero-inner p{
  margin:0 0 16px;
  color:#2b2f36}

.hero-cta{margin-top:6px}

@media (max-width:900px){
  .main-nav{display:none}
  .burger{display:inline-block}
  body.menu-open .main-nav{
    display:flex;
    position:fixed;
    inset:auto 12px 12px 12px;
    top:62px;background:#fff;
    border:1px solid var(--border);
    border-radius:14px;
    padding:12px;
    flex-direction:column;
    gap:8px;
    z-index:20}
}

.site-footer{
  border-top:1px solid var(--border);
  padding:26px 0;
  background:#fafbfd}

.footer-inner{
  max-width:1120px;
  margin:auto;
  display:grid;
  gap:16px;
  grid-template-columns:2fr 1fr 1fr;
  padding:0 16px}

.footer-inner .fcol h4{margin:8px 0}

.logo-mini{font-size:22px}

@media (max-width:900px){
  .footer-inner{grid-template-columns:1fr}
}