:root{
  --ws-bg:#fff;
  --ws-text:#101828;
  --ws-muted:#475467;
  --ws-line:rgba(16,24,40,.12);
  --ws-yellow:#f4c400;
  --ws-yellow2:#ffd84d;
  --ws-surface:#ffffff;
  --ws-surface2:#f6f7fb;
  --ws-radius:18px;
  --ws-shadow:0 18px 50px rgba(16,24,40,.12);
  --ws-max:1100px;
}

.ws{background: radial-gradient(900px 420px at 15% 0%, rgba(244,196,0,.18), transparent 60%),
                 radial-gradient(700px 360px at 85% 10%, rgba(244,196,0,.10), transparent 55%);
}
.ws-wrap{max-width:var(--ws-max); margin:0 auto; padding:0 18px;}
.ws-card{background:var(--ws-surface); border:1px solid var(--ws-line); border-radius:var(--ws-radius); box-shadow:var(--ws-shadow);}
.ws-muted{color:var(--ws-muted);}
.ws-kicker{margin:0 0 10px; font-weight:800; letter-spacing:.2px; color:rgba(16,24,40,.7);}
.ws-h1{margin:0 0 10px; font-size:clamp(30px,3vw,46px); line-height:1.05;}
.ws-h2{margin:0; font-size:22px;}
.ws-h3{margin:0 0 8px; font-size:16px;}

.ws-hero{padding:34px 0 10px;}
.ws-hero__grid{display:grid; grid-template-columns: 1.15fr .85fr; gap:14px; align-items:stretch;}
@media (max-width: 900px){ .ws-hero__grid{grid-template-columns:1fr;} }

.ws-hero__card{padding:26px;}
.ws-lead{margin:0 0 16px; font-size:16px; line-height:1.55; color:var(--ws-muted);}
.ws-actions{display:flex; gap:10px; flex-wrap:wrap; margin-top:6px;}
.ws-badges{display:flex; gap:10px; flex-wrap:wrap; margin-top:16px;}

.ws-pill{display:inline-block; padding:7px 10px; border-radius:999px; border:1px solid var(--ws-line); background:rgba(244,196,0,.14); font-weight:700;}
.ws-pill b{font-weight:900;}

.ws-hero__side{padding:18px; background:linear-gradient(180deg, rgba(244,196,0,.12), rgba(244,196,0,.04));}
.ws-info{display:grid; gap:10px;}
.ws-info__row{padding:12px; border-radius:16px; border:1px solid rgba(16,24,40,.10); background:rgba(255,255,255,.9);}
.ws-info__row b{display:block; margin-bottom:4px;}
.ws-info__row a, .ws-info__row span{color:var(--ws-text); text-decoration:none;}
.ws-mini{margin-top:12px; padding:14px; border-radius:16px; border:1px solid rgba(16,24,40,.10); background:rgba(255,255,255,.9);}

.ws-section{padding:18px 0;}
.ws-section--alt{background:rgba(246,247,251,.7); border-top:1px solid rgba(16,24,40,.06); border-bottom:1px solid rgba(16,24,40,.06);}

.ws-title{display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin:0 0 10px;}
.ws-grid3{display:grid; gap:12px; grid-template-columns:repeat(3,1fr);}
@media (max-width: 900px){ .ws-grid3{grid-template-columns:1fr;} }
.ws-grid2{display:grid; gap:12px; grid-template-columns:repeat(2,1fr);}
@media (max-width: 900px){ .ws-grid2{grid-template-columns:1fr;} }

.ws-tile{overflow:hidden;}
.ws-tile__img{height:220px; background-size:cover; background-position:center; border-bottom:1px solid var(--ws-line);}
.ws-tile__body{padding:14px;}

.ws-price{padding:18px;}
.ws-price__big{margin:0 0 8px; font-size:32px; font-weight:900;}
.ws-price__big span{font-size:14px; font-weight:800;}

.ws-contact{padding:18px;}
.ws-contact__row{padding:12px; border-radius:14px; border:1px solid rgba(16,24,40,.10); background:var(--ws-surface2); margin-bottom:10px;}
.ws-contact__row b{display:block; margin-bottom:4px;}
.ws-contact a{color:var(--ws-text); text-decoration:none; font-weight:800;}

.ws-btn{
  border:1px solid var(--ws-line);
  background:#fff;
  color:var(--ws-text);
  padding:10px 12px;
  border-radius:12px;
  cursor:pointer;
  text-decoration:none;
  font-weight:800;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
}
.ws-btn--primary{
  background:linear-gradient(135deg, var(--ws-yellow), var(--ws-yellow2));
  border:1px solid rgba(16,24,40,.12);
  box-shadow:0 18px 40px rgba(244,196,0,.25);
}
.ws-btn--block{width:100%;}
.ws-btn--small{padding:8px 10px; border-radius:10px; font-weight:800;}

.ws-note{margin:10px 0 0; font-size:13px; color:rgba(16,24,40,.65);}

/* Modal */
.ws-modal{position:fixed; inset:0; display:none; align-items:center; justify-content:center; padding:18px; background:rgba(16,24,40,.55); z-index:9999;}
.ws-modal.is-open{display:flex;}
.ws-modal__panel{width:min(980px,100%); background:#fff; border:1px solid rgba(16,24,40,.14); border-radius:18px; overflow:hidden; box-shadow:0 30px 90px rgba(16,24,40,.35);}
.ws-modal__top{display:flex; align-items:center; justify-content:space-between; padding:12px 14px; background:rgba(244,196,0,.18); border-bottom:1px solid rgba(16,24,40,.10);}
.ws-iconbtn{border:1px solid rgba(16,24,40,.14); background:rgba(255,255,255,.9); border-radius:10px; padding:8px 10px; cursor:pointer; font-weight:900;}

.ws-tabs{display:flex; align-items:center; gap:8px; padding:10px 12px; border-bottom:1px solid rgba(16,24,40,.10); background:#fff;}
.ws-tabs__spacer{flex:1;}
.ws-tab{border:1px solid rgba(16,24,40,.12); background:var(--ws-surface2); padding:8px 10px; border-radius:12px; cursor:pointer; font-weight:900;}
.ws-tab.is-active{background:rgba(244,196,0,.18); border-color:rgba(244,196,0,.45);}

.ws-modal__body{max-height:70vh; overflow:auto;}
.ws-tabpanel{display:none;}
.ws-tabpanel.is-active{display:block;}
.ws-pad{padding:10px 14px; margin:0;}

.ws-mapimg img{width:100%; height:auto; display:block;}
.ws-embed iframe{width:100%; height:520px; border:0; display:block;}

/* Header navigation (wp_nav_menu outputs a UL list) */
header nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 12px;
  align-items: center;
}

header nav li {
  margin: 0;
  padding: 0;
}

header nav a {
  display: inline-flex;
  align-items: center;
  padding: 8px 10px;
  border-radius: 12px;
  text-decoration: none;
  color: var(--ws-text);
  font-weight: 800;
  border: 1px solid transparent;
}

header nav a:hover {
  background: rgba(244,196,0,.18);
  border-color: rgba(244,196,0,.35);
}

/* Fallback selectors for WP menu markup */
.menu,
.menu ul,
.menu-primary-menu-container ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
/* Header menu styling */
.ws-nav {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex;
  gap: 12px;
  align-items: center;
}

.ws-nav > li {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.ws-nav a {
  display: inline-flex;
  align-items: center;
  padding: 8px 10px;
  border-radius: 12px;
  text-decoration: none;
  color: var(--ws-text);
  font-weight: 800;
  border: 1px solid transparent;
}

.ws-nav a:hover {
  background: rgba(244,196,0,.18);
  border-color: rgba(244,196,0,.35);
}
/* Header nav menu (WordPress default output: ul.menu) */
header nav ul.menu{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
  display:flex;
  gap:12px;
  align-items:center;
}

header nav ul.menu > li{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
}

header nav ul.menu a{
  display:inline-flex;
  align-items:center;
  padding:8px 10px;
  border-radius:12px;
  text-decoration:none;
  color: var(--ws-text);
  font-weight:800;
  border:1px solid transparent;
}

header nav ul.menu a:hover{
  background: rgba(244,196,0,.18);
  border-color: rgba(244,196,0,.35);
}
