:root{
  --red:#d51021;
  --blue:#0b4ea2;
  --white:#ffffff;
  --black:#111111;
  --text:#1f2937;
  --muted:#6b7280;
  --bg:#ffffff;
  --container:1200px;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,'Noto Sans',Arial,'Apple Color Emoji','Segoe UI Emoji';color:var(--text);background:var(--bg)}

/* A headeren belüli konténer legyen flex, ne az egész oldalon */
.site-header .container{
  max-width:var(--container);
  margin:0 auto;
  padding:0 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}

/* Ha szűk a kijelző, engedjük törni a sort */
@media (max-width: 768px){
  .site-header .container{
    flex-wrap:wrap;
    row-gap:8px;
  }
}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:visible;clip:rect(0,0,0,0);border:0}

/* Utility bar (top red strip) */
.utility-bar{background:var(--red);color:#fff;font-weight:600}
.utility-bar .container{height:46px;font-size:15px}
.ub-left,.ub-right{display:flex;align-items:center;gap:10px}
.ub-left .pin{display:inline-flex}
.ub-link{color:#fff;text-decoration:underline}
.ub-phone{color:#fff;text-decoration:none;font-weight:800}
.ub-text{opacity:.95}

@media (max-width: 800px){
  .utility-bar .container{flex-direction:column;justify-content:center;gap:6px;height:auto;padding:8px 20px}
}

/* Main nav bar */
.main-bar{background:#fff;border-bottom:1px solid #e5e7eb;position:sticky;top:0;z-index:50}
.main-bar .container{height:72px;gap:16px}
.logo img{display:block;height:auto;max-height:56px;width:auto}

.primary-nav{flex:1}
.nav-list{list-style:none;margin:0;padding:0;display:flex;gap:22px;align-items:center;justify-content:center}
.nav-item a{color:var(--black);text-decoration:none;font-weight:600}
.nav-item a:hover{text-decoration:underline}

.btn-book{background:var(--red);color:#000;text-decoration:none;font-weight:900;padding:12px 18px;border-radius:10px;box-shadow:0 2px 0 rgba(0,0,0,.15)}
.btn-book:active{transform:translateY(1px)}

/* Mobile menu */
.menu-toggle{display:none;background:transparent;border:0;cursor:pointer}
@media (max-width: 1024px){
  .menu-toggle{display:inline-flex;align-items:center;justify-content:center}
  .primary-nav{position:absolute;left:0;right:0;top:72px;background:#fff;border-bottom:1px solid #e5e7eb;display:none}
  .primary-nav.open{display:block}
  .nav-list{flex-direction:column;align-items:flex-start;padding:12px 20px;gap:12px}
}

.site-footer .container{height:80px;justify-content:center;color:var(--muted);font-size:14px}


/* === Brand updates: white-blue-red, framed header with checkered pattern === */
.site-header{
  border:2px solid var(--black);
  border-radius:8px;
  overflow:visible;
  box-shadow:0 6px 18px rgba(0,0,0,.12);
  margin:12px auto;
  max-width:calc(var(--container) + 40px);
  background:var(--white);
}

/* Top red utility bar stays dominant red */
.utility-bar{background:var(--red);color:#fff}

/* Main bar gets subtle checkered pattern */
.main-bar{
  background:
    linear-gradient(var(--white), var(--white)),
    conic-gradient(from 45deg, #f4f6fb 0 25%, transparent 0 50%, #f4f6fb 0 75%, transparent 0);
  background-size: auto, 16px 16px;
  background-blend-mode: normal, normal;
  border-top:1px solid #e5e7eb;
  border-bottom:1px solid #e5e7eb;
}

/* Blue text accents */
.nav-item a{color:var(--blue)}
.nav-item a:hover{color:var(--red);text-decoration:none}

/* Book button now red-on-white */
.btn-book{background:var(--red);color:#fff;border:2px solid #9a0d18}
.btn-book:hover{filter:brightness(1.05)}

/* Phone on red bar gets pill style */
.ub-phone{
  background:#b90e1d;
  padding:6px 10px;
  border-radius:8px;
}

/* Logo size tweak for balance */
.logo img{max-height:60px}

/* Lightning bullet icon next to every nav item */
.nav-item a .bolt{margin-right:8px;display:inline-flex;vertical-align:middle}
.nav-item a{display:inline-flex;align-items:center;gap:6px}

/* Mobile nav background remains readable over pattern */
@media (max-width:1024px){
  .primary-nav{
  position:absolute;
  left:0;
  right:0;
  top:72px;
  background:#fff;
  border-bottom:1px solid #e5e7eb;
  display:none;
  z-index:50;
}
}


/* === Brand gradient override (strong) === */
.brand-gradient, .brand-gradient.card, .brand-gradient.quote, .brand-gradient-scope .card, .brand-gradient-scope .quote {
  background: linear-gradient(135deg, #d51021 0%, #0b4ea2 100%) !important;
  color: #fff !important;
  border: none !important;
}
.brand-gradient * { color: inherit !important; }
.brand-gradient a { text-decoration: underline; }
