:root{
  /* Палитра */
  --brand-600:#0a3b67;
  --brand-500:#0f4c81;
  --brand-300:#cfe3f3;
  --accent-500:#f5b301;

  --ink-900:#0f172a;
  --ink-700:#334155;
  --ink-600:#475569;
  --ink-400:#94a3b8;

  --bg:#ffffff;
  --bg-alt:#f6f8fb;
  --card:#ffffff;

  --radius-xl:1.25rem;
  --shadow:0 10px 25px rgba(2,6,23,.08);

  --ff-display:"Poppins",system-ui,-apple-system,Segoe UI,Inter,Arial,sans-serif;
  --ff-base:"Inter",system-ui,-apple-system,Segoe UI,Arial,sans-serif;

  /* Buttons */
  --gold: var(--accent-500);
  --pale-gold: #f2de77;
  --hover-border: #b8891a;   /* FIX: валиден hex */
  --btn-dark-text: #545050;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;color:var(--ink-900);background:var(--bg);font:20px/1.6 var(--ff-base);}
img{max-width:100%;height:auto;display:block}
a{color:var(--brand-500);text-decoration:none}
a:hover{text-decoration:none}

.container{width:min(1120px,92%);margin-inline:auto}
.section{padding:6px 0}
.section--alt{background:var(--bg-alt)}
.section__head{display:flex;gap:16px;justify-content:space-between;align-items:end;margin-bottom:14px}

/* Header / Brand */
.site-header{position:sticky;top:0;background:rgba(255,255,255,.9);backdrop-filter:saturate(180%) blur(10px);border-bottom:1px solid #e5eaf1;z-index:10}
.site-header{ position: fixed; top:0; left:0; right:0; height: 110px; z-index: 1000; }
body{ margin:0;  }

.site-header .brand{display:flex;align-items:center;gap:10px;padding:10px 0}
.brand__logo{height:32px;width:auto}
.brand__name{font-family:var(--ff-display);font-weight:700;letter-spacing:.2px}
.brand__logo--tall { max-height: 120px; }

.nav{display:flex;gap:18px;align-items:center}
.nav a{padding:10px 6px;border-radius:.5rem}
.nav a:hover{background:var(--brand-300);text-decoration:none}

/* Campaign strip (pyramid / QR campaign) */
.campaign-strip{
  background: linear-gradient(180deg, #d4b04a 0%, #b8891a 100%);
  border-bottom: 1px solid rgba(0,0,0,.18);
}
.campaign-strip__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:10px 0;
}
.campaign-strip__text{display:flex;flex-direction:column;gap:2px;color:#111}
.campaign-strip__badge{
  display:inline-flex;align-self:flex-start;
  padding:3px 10px;
  border-radius:999px;
  background:rgba(0,0,0,.10);
  border:1px solid rgba(0,0,0,.18);
  font-size:.78rem;
  font-weight:700;
}
.campaign-strip__headline{font-weight:800;letter-spacing:.2px}
.campaign-strip__copy{color:#111}
.campaign-strip__hint{font-size:.86rem;color:rgba(0,0,0,.75)}
.campaign-strip__actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}

@media (max-width: 820px){
  .campaign-strip__inner{flex-direction:column;align-items:flex-start}
}

/* Hero */
.hero{background:linear-gradient(180deg, rgba(15,76,129,.08), transparent 60%), radial-gradient(1200px 600px at 20% -10%, rgba(245,179,1,.08), transparent);padding:72px 0}
.hero__content{display:grid;gap:16px}
.hero h1{font-family:var(--ff-display);font-weight:700;line-height:1.15;margin:0}
.hero p{max-width:60ch;color:var(--ink-700);margin:0 0 8px}
.hero__cta{display:flex;gap:12px;flex-wrap:wrap}

/* Layout */
.grid-2{display:grid;gap:24px;grid-template-columns:1.2fr .8fr}
@media (max-width:900px){.grid-2{grid-template-columns:1fr}}

.card{background:var(--card);border:1px solid #e7ecf3;border-radius:var(--radius-xl);box-shadow:var(--shadow);padding:20px}
.muted{color:var(--ink-600);font-size:.95rem}

/* KPIs */
.kpis{display:flex;gap:18px;flex-wrap:wrap;margin:8px 0 6px}
.kpi{display:flex;flex-direction:column;align-items:start}
.kpi__num{font:700 28px/1 var(--ff-display);color:var(--brand-600)}
.kpi__lbl{color:var(--ink-600);font-weight:500}

/* Filters */
.filters{display:flex;gap:8px;flex-wrap:wrap}
.chip{border:1px solid #d7deea;background:#fff;padding:8px 12px;border-radius:999px;cursor:pointer;font-weight:600}
.chip.is-active, .chip:hover{border-color:var(--brand-500);background:var(--brand-300)}

/* Projects */
.project-card__label{
  width:100%;
  text-align:center;
  font-weight:800;
  font-size:.82rem;
  letter-spacing:.10em;
  text-transform:uppercase;
  color:#c40000;
  padding:6px 0 4px;
}

.projects-grid{display:grid;gap:18px;grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:1000px){.projects-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.projects-grid{grid-template-columns:1fr}}

.project-card{display:flex;flex-direction:column;border:1px solid #e7ecf3;border-radius:var(--radius-xl);background:#fff;overflow:hidden}
.project-card__media{ display:flex; align-items:center; justify-content:center; background:#f3f4f6; }
.project-card__media img{aspect-ratio:16/10;object-fit:cover; width:100%; height:100%}
.project-card__body{ padding:16px 16px 10px; margin:0; }
.project-card__body h3{margin:.2rem 0 .4rem;font-family:var(--ff-display)}
.project-card__meta{display:flex;gap:16px;margin:0;padding:12px 16px;border-top:1px solid #eef2f7;color:var(--ink-600);list-style:none}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border-radius:.9rem;border:1px solid transparent;cursor:pointer;font-weight:700}
.btn--primary{background:#000;color:#ffd700;border-color:#000}
.btn--primary:hover{background:var(--pale-gold);color:var(--btn-dark-text);border-color:var(--hover-border)}
.btn--ghost{background:#000;color:#ffd700;border-color:#000}
.btn--ghost:hover{background:var(--pale-gold);color:var(--btn-dark-text);border-color:var(--hover-border)}
.btn--small{padding:8px 12px;font-size:.9rem}
/* === Offers button (inverted) === */
.btn.btn--offers {
  background: #f2de77;      /* светъл фон */
  color: #111;              /* тъмен текст */
  border: 1px solid #111;   /* черна рамка */
  border-radius: 10px;
  text-decoration: none;
  transition: background .2s ease, color .2s ease, border-color .2s ease;
}

.btn.btn--offers:hover,
.btn.btn--offers:focus-visible {
  background: #000;
  color: #ffd700;           /* златен текст */
  border-color: #000;
  outline: none;
  text-decoration: none;    /* без подчертаване */
}


/* Values list */
.values-list{ list-style:none; padding:0; margin:1rem 0; }
.values-list li{ margin-bottom:8px; padding-left:24px; position:relative; }
.values-list li::before{ content:"✔"; color:var(--accent-500); position:absolute; left:0; font-weight:bold; }

/* Modal (gallery) — LAYERING FIX */
.modal{
  position: fixed;
  inset: 0;
  display: none;
  z-index: 9999;   /* върхов слой */
}

.modal.is-open{
  display: block;
}
.modal__backdrop{position:absolute;inset:0;background:rgba(15,23,42,.6);z-index:1;}  /* отзад */
.modal__dialog{
  position:absolute; inset:10% 6%; background:#000; border-radius:1rem;
  display:flex; align-items:center; justify-content:center;
  overflow:hidden; z-index:2;                                       /* над backdrop */
}
.modal__dialog img{max-height:70vh;width:auto;display:block}
.modal__controls{
  position:absolute; bottom:12px; left:50%; transform:translateX(-50%);
  display:flex; gap:10px; z-index:3;                                /* най-отгоре */
}
.modal__close{
  position:absolute; top:8px; right:12px; background:#fff; border:0; border-radius:.6rem;
  padding:6px 10px; font-size:20px; cursor:pointer; z-index:3;      /* над всичко */
}

/* Footer */
.footer__logo{height:24px}

.footer__grid{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.footer__links a{margin-left:12px}

/* Mobile tweaks */
@media (max-width: 768px){
  .site-header{ height: 110px; }
  body{   margin:0; }
}
/* === HEADER: Dark preset (revert) === */
.site-header{
  position: sticky; top: 0; left: 0; right: 0;
  background: #111; color: #fff;          /* тъмен фон */
  border-bottom: 1px solid #000;
  height: auto !important;                /* махаме фиксираната височина */
  z-index: 1000;
}
body{   margin:0; }        /* махаме компенсиращия отстъп */

.header__inner{
  display: flex; align-items: center; justify-content: space-between;
  padding: 12px 0;
}

/* Лого – по-голямо (смени 56px на 48/64 по вкус) */
.brand__logo{ height: 56px; width: auto; }

/* Навигация – златни „бутони“ */
.nav{ display: flex; gap: 12px; align-items: center; }
.btn-nav{
  display: inline-flex; align-items: center; justify-content: center;
  padding: 8px 14px; border-radius: 999px;
  font-weight: 600; letter-spacing: .2px;
  color: #ffd700; background: transparent; border: 1px solid #ffd700;
  transition: background .2s ease, color .2s ease, border-color .2s ease;
  text-decoration: none;
}
.btn-nav:hover{
  background: #ffd700; color: #111; border-color: #ffd700; text-decoration: none;
}

/* По желание: „stacked“ подредба (лого отгоре, меню отдолу, центрирано) */
.site-header--stacked .header__inner{ flex-direction: column; gap: 8px; }
.site-header--stacked .nav{ justify-content: center; }
/* === HEADER: Gold (вчерашната версия) === */
.site-header{
  position: sticky; top: 0; left: 0; right: 0; z-index: 1000;
  background: #fff; /* дефолт, за всеки случай */
}
.site-header--gold{
  background: linear-gradient(180deg, #d4b04a 0%, #b8891a 100%);
  border-bottom: 1px solid rgba(0,0,0,.15);
}
body{   margin:0; } /* премахва фиксирания отстъп от dark варианта */

.header__inner{
  display: flex; align-items: center; justify-content: space-between;
  padding: 12px 0;
}
.brand{ display:flex; align-items:center; gap: 14px; }
.brand__logo{ height: 150px; width: auto; border-radius: 12px; }  /* ↑↓ смени 64–84px по вкус */
.brand__name{
  font-weight: 800; letter-spacing: .28em; color: #111;
  font-size: clamp(18px, 2.2vw, 26px);
}

.nav{ display: flex; gap: 12px; align-items: center; }
.btn-nav{
  display:inline-flex; align-items:center; justify-content:center;
  padding: 8px 14px; border-radius: 999px; font-weight: 700;
  background: #f0d37a; color: #111; border: 0;
  box-shadow: 0 1px 0 rgba(0,0,0,.12) inset;
  transition: background .2s ease, transform .05s ease;
  text-decoration: none;
}
.btn-nav:hover{ background: #e6c668; text-decoration: none; }
.btn-nav:active{ transform: translateY(1px); }

/* мобилни дреболии */
@media (max-width: 640px){
  .brand__logo{ height: 60px; }
  .brand__name{ letter-spacing: .22em; }
}
/* === HEADER tweaks === */
/* 1) Цвят на хедъра = същия като текста на CTA бутоните (#ffd700) */
.site-header--gold{
  background: linear-gradient(180deg, #f3cd5b 0%, #dbb539 100%);
  border-bottom: 1px solid rgba(0,0,0,.12);
}

/* 2) Бутони в хедъра с еднаква ширина */
:root{
  --nav-btn-w: 200px;                  /* промени при нужда: 110–140px */
}
.nav{ display:flex; gap:12px; align-items:center; }
.btn-nav{  
  justify-content: center;
  text-align: center;
  white-space: nowrap;                 /* да не пренася текста */
}

/* По-добро поведение на мобилни – там не фиксираме ширина */
@media (max-width: 560px){
  .btn-nav{ width: auto; padding-inline: 14px; }
}
/* По-тънък hero */
.hero--compact{
  padding: 32px 0;               /* беше ~72px; намалено наполовина */
}

/* Нулиране на вътрешните отстояния */
.hero__content > h1{
  margin: 6px 0 8px;             /* беше по-голямо по подразбиране */
}
.hero__content > p{
  margin: 0 0 12px;
}

/* По-малък hero и на мобилен */
@media (max-width: 640px){
  .hero--compact{ padding: 24px 0; }
  .hero__content > h1{ margin: 4px 0 6px; }
  .hero__content > p{ margin: 0 0 10px; }
}
/* Равномерно отстояние между елементите в meta списъка */
.project-card__meta.meta{
  display: flex;
  flex-direction: column;
  gap: 10px;                 /* еднаква дистанция между всяко <li> */
  padding-top: 12px;         /* може да пипнеш при нужда */
}
.project-card__meta.meta li{
  margin: 0;                 /* нулира евентуални margin-bottom от преди */
  display: grid;
  gap: 2px;                  /* разстояние между label и value */
}
.meta__label{
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--ink-600);
}
.meta__value{
  font-weight: 600;
  color: var(--ink-900);
}
.hero--dark{
  background:
    linear-gradient(180deg, #fbfbf4 0%, #f4f3db 100%),
    radial-gradient(1200px 600px at 20% -10%, rgba(245,179,1,.05), transparent);
}
.hero--dark .hero__content h1{ color:#1b1a1a; }
.hero--dark .hero__content p{ color:#2d3947; }

/* Временно скриване на филтрите в Избрани проекти */
.section__head .filters{ display:none !important; }

/* === FINAL PRODUCTION OVERRIDES (propertiesai.bg) — sticky header, no body padding === */
:root{ --header-h: 130px; }
.site-header{ position: sticky !important; top: 0 !important; height: var(--header-h) !important; z-index: 1000 !important; }
body{ margin: 0 !important; padding-top: 0 !important; }

/* === Mobile-first overrides (added by assistant) === */
:root { --header-h: 130px; }        /* desktop default */
.site-header{ position: sticky; top:0; height: var(--header-h); z-index:1000; }
.brand__logo{ height:80px; }
.nav-toggle{ display:none; }

.project-card__media{ aspect-ratio: 16 / 9; overflow:hidden; border-radius:14px; }
.project-card__media img{ width:100%; height:100%; object-fit:cover; display:block; }

/* Badge over project images */
.project-card__media{ position: relative; }
.project-card__badge{
  position:absolute;
  top: 0; left: 0; right: 0;
  z-index: 2;
  padding: 10px 12px;
  background: rgba(255,255,255,.92);
  color: #c00000;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
  text-align: center;
  border-bottom: 1px solid rgba(0,0,0,.08);
}


.btn, .btn-nav, .nav a, .nav-toggle{ min-height:44px; padding:10px 14px; }

/* tablet */
@media (max-width: 992px){
  :root { --header-h: 90px; }
  .brand__logo{ height:56px; }
  .brand__name{ font-size:18px; }
  .header__inner{ gap:12px; }
}

/* phone */
@media (max-width: 640px){
  :root { --header-h: 88px; }

  .brand__logo{
  height: clamp(42px, 6.5vw, 56px);
}
  .brand__name{ font-size:16px; letter-spacing:.06em; }

  .nav-toggle{
    display:inline-flex; align-items:center; justify-content:center;
    font-size:22px; line-height:1; border:0; border-radius:12px;
    background:#000; color:#D4AF37;
  }

  .nav{
    position:absolute; left:0; right:0; top: var(--header-h);
    display:none; background:#d4af37; padding:8px;
    box-shadow:0 10px 30px rgba(0,0,0,.15);
  }
  .nav.is-open{ display:block; }
  .nav a{ display:block; color:#000; background:#f6e6a8; border-radius:12px; margin:6px 8px; }

  .container{ padding-inline:16px; }
  .hero h1 {
    line-height: 1.1;
  }
  .hero p{ font-size:15px; }

  .section .grid{ display:block; }
  .kpis.card{ margin-top:16px; }

  .project-card{ margin-bottom:18px; }
  .project-card__body{ padding-top:10px; }
  .btn.btn--ghost.btn--small{ width:100%; }
}

/* === Навигация: финални правила (универсални) === */
#site-nav{ display:flex; }       /* по подразбиране – десктоп */
.nav-toggle{ display:none; }

/* Мобилно и таблет (показваме бургер; скриваме хоризонталното меню) */
@media (max-width: 991.98px){
  .nav-toggle{ display:inline-flex !important; }
  #site-nav{
    display:none !important;
    position:absolute; left:0; right:0; top:var(--header-h);
    background:#d4af37; padding:8px 10px; box-shadow:0 10px 30px rgba(0,0,0,.15);
  }
  #site-nav.is-open{ display:block !important; }
  #site-nav a{ display:block; margin:6px 8px; background:#f6e6a8; border-radius:12px; }
}

/* Десктоп и лаптоп (скриваме бургер; хоризонтално меню) */
@media (min-width: 992px){
  .nav-toggle{ display:none !important; }
  #site-nav{
    display:flex !important; position:static !important;
    background:transparent !important; box-shadow:none !important;
  }
  #site-nav a{ display:inline-flex; margin:0 6px; }
}

/* Hero compact override */
.hero{ padding-top: 8px !important; padding-bottom: 8px !important; }
.hero--dark{ padding-top: 8px !important; padding-bottom: 8px !important; }



/* === Header: +15px top & bottom, keep logo 10px from edges === */
.site-header{
  padding: 25px 0 !important;
  height: auto !important;
  transition: transform .28s ease;
}
.header__inner{ margin-top: -15px !important; margin-bottom: -15px !important; }
.brand{ padding: 0 !important; }
.brand__logo{ display:block; margin:0; }



/* === Hero compact: smaller title === */
.hero.hero--compact h1{ font-size: 0.9em !important; line-height: 1.1; }



/* === Hero compact: tighter vertical spacing (no buttons) === */
.hero.hero--compact{ padding-top: 6px !important; padding-bottom: 6px !important; }
.hero.hero--compact .container{ padding-top: 0 !important; padding-bottom: 0 !important; }



/* === Sync hero title to header "PROPERTIES AI" size === */
/*.hero.hero--compact h1{ font-size: 16px !important; line-height: 1.1; }*/
.hero.hero--compact h1{
  font-size: clamp(18px, 2.2vw, 26px) !important;
  line-height: 1.1;
}



/* === Header auto-hide state === */
.site-header{ transition: transform .28s ease; }
.site-header.header--hidden{ transform: translateY(-100%); }



/* === Offers button (inverse logic) === */
.btn.btn--offers{
  background: #f2de77;
  color: #111;                     /* тъмен надпис */
  border: 1px solid #111;
  transition: background .2s ease, color .2s ease, border-color .2s ease;
}
.btn.btn--offers:hover,
.btn.btn--offers:focus-visible{
  background: #000 !important;
  color: #ffd700 !important;
  border-color: #000 !important;
  outline: none;
  transition: background .2s ease, color .2s ease, border-color .2s ease;
}

.btn.btn--offers.btn--small{
  border-radius: 10px;
}

/* === Split actions for project cards === */
.section__actions--split{
  display:flex; align-items:center; justify-content:space-between; gap:12px;
}
.section__actions--split .btn{ min-width:140px; text-align:center; }
@media (max-width:640px){
  .section__actions--split{ flex-wrap:wrap; }
  .section__actions--split .btn{ flex:1 1 48%; }
}


/* === Atrium Residence: offers listing page === */
.grid-3{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:16px; }
@media (max-width: 1024px){ .grid-3{ grid-template-columns:repeat(2, minmax(0,1fr)); } }
@media (max-width: 640px){ .grid-3{ grid-template-columns:1fr; } }

.card.offer{
  border:1px solid #e5eaf1; border-radius:14px; overflow:hidden; background:#fff;
  box-shadow:0 2px 6px rgba(0,0,0,.05);
}

/* =========================================================
   Listings / Предложения
========================================================= */

.offers-grid{
  display:grid;
  gap:18px;
  grid-template-columns:repeat(3,minmax(0,1fr));
}
@media (max-width:1000px){.offers-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.offers-grid{grid-template-columns:1fr}}

.listing{padding:0; overflow:hidden}
.listing__link{display:block;color:inherit;text-decoration:none}
.listing__media{background:#f3f4f6}
.listing__media img{width:100%;height:100%;aspect-ratio:16/10;object-fit:cover;display:block}
.listing__body{padding:14px 16px 16px}
.listing__kicker{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:6px}
.listing__deal{font-weight:800;font-size:.85rem;letter-spacing:.2px;color:#111;background:rgba(245,179,1,.25);border:1px solid rgba(0,0,0,.12);padding:4px 10px;border-radius:999px}
.listing__price{font-weight:900;font-family:var(--ff-display)}
.listing__title{margin:6px 0 4px;font-family:var(--ff-display);font-size:1.05rem}
.listing__loc{margin:0 0 10px;color:var(--ink-600)}
.listing__meta{display:flex;justify-content:space-between;gap:10px;color:var(--ink-600);font-size:.95rem}
.listing__id{opacity:.9}

/* Property details */
.property__top{display:flex;align-items:flex-start;gap:14px;margin-bottom:14px}
.property{display:grid;gap:18px;grid-template-columns:1.35fr .65fr;align-items:start}
@media (max-width: 920px){.property{grid-template-columns:1fr}}

.property__hero{position:relative;border-radius:var(--radius-xl);overflow:hidden;border:1px solid #e7ecf3;background:#f3f4f6;cursor:pointer}
.property__hero img{width:100%;height:100%;aspect-ratio:16/10;object-fit:cover;display:block}
.property__hint{position:absolute;left:12px;bottom:12px;background:rgba(0,0,0,.65);color:#fff;padding:8px 10px;border-radius:999px;font-size:.85rem}

.property__meta{position:sticky;top:20px}
@media (max-width: 920px){.property__meta{position:static}}

.property__priceRow{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}
.property__badge{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;background:rgba(245,179,1,.25);border:1px solid rgba(0,0,0,.12);font-weight:900}
.property__price{font:900 22px/1.2 var(--ff-display)}

.specs{display:grid;gap:10px;margin:0}
.spec{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px 0;border-top:1px solid #eef2f7}
.spec:first-child{border-top:none}
.spec dt{margin:0;color:var(--ink-600);font-weight:700}
.spec dd{margin:0;text-align:right;font-weight:800;color:#111}

.h2{margin:0 0 10px;font-family:var(--ff-display)}

/* ==== Offer plan thumbnail rules (auto-added) ==== */
.offer__thumb {display:block;
  aspect-ratio: 16 / 9;          /* резервира височина за всички снимки */
  background:#f5f7fb;
  border-radius:12px;
  overflow:hidden;}

/* По подразбиране (за фотографии) */
.offer__thumb img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

/* За планове/чертежи */
.offer__thumb--plan { aspect-ratio: 16 / 11;         /* по-висока „карта“ за план */
  min-height: 180px;             /* допълнителна защита за 0px височина */ }
.offer__thumb--plan img {
  width: 100%;
  height: 100%;          /* ← важно за object-fit да действа */
  object-fit: contain;
  max-height: none;      /* не ограничаваме допълнително */
}
/* ==== End auto rules ==== */

/* Campaign banner – single CTA */
.campaign-strip__inner--single{
  display:flex;
  justify-content:center;
  align-items:center;
}

.campaign-strip__main-link{
  display:inline-block;
  padding:14px 28px;
  font-size:1.6rem;           /* ~2x спрямо нормален текст */
  font-weight:700;
  text-align:center;
  text-decoration:underline;
  color:#0f172a;              /* тъмен текст */
  background:#f5f2c5;         /* светъл фон */
  border:2px solid #0f4c81;   /* ограждащ контур */
  border-radius:12px;
  transition:all .2s ease;
}

.campaign-strip__main-link:hover{
  background:#e5eef6;
  transform:translateY(-1px);
}

/* Mobile optimisation – preventive */
@media (max-width: 600px){
  .campaign-strip__main-link{
    font-size:1.2rem;
    padding:14px 18px;
  }
}

/* ===== Header nav buttons: framed like the campaign banner ===== */
.site-header .btn-nav{
  display: inline-flex;              /* позволява центриране */
  align-items: center;
  justify-content: center;

  width: var(--nav-btn-w);           /* еднаква широчина */
  padding: 10px 22px;                /* вътрешен комфорт */

  border: 2px solid #0f4c81;
  border-radius: 12px;
  background: #f5f2c5;
  color: #111;

  text-align: center;
  white-space: nowrap;
  box-shadow: none;

  transition: background 0.2s ease, border-color 0.2s ease;
}

.site-header .btn-nav:hover{
  background: #e5eef6;
  border-color: #0c3e66;       
}
.site-header .btn-nav.is-active{
  background: #e5eef6;       /* леко различим фон */
  border-color: #0f4c81;
  box-shadow: 0 0 0 2px rgba(15,76,129,.12);
}
/* ===== Header shrink on scroll ===== */
.site-header{
  transition: padding .18s ease, box-shadow .18s ease;
}

.site-header.is-shrunk{
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  box-shadow: 0 10px 30px rgba(0,0,0,.10);
}

/* Леко смалява логото при shrink */
.site-header.is-shrunk .brand__logo{
  transform: scale(.92);
  transform-origin: left center;
  transition: transform .18s ease;
}


/* =========================================================
   Offers pages (Top / Sales / Rent)
========================================================= */
.top-offers-header{
  text-align:center;
  margin: 18px 0 6px;
}
.top-offers-header h1{ 
  margin: 0;
  font-family: var(--ff-display);
}
.top-offers-header p{
  margin: 6px 0 0;
  color: var(--ink-600);
}
html, body { height: 100%; }
body{ min-height: 100vh; display: flex; flex-direction: column; }
main{ flex: 1 0 auto; }

/* =========================
   Footer (canonical)
========================= */

.site-footer {
  margin-top: auto;              /* sticky footer */
  border-top: 1px solid #e5eaf1;
  padding: 24px 0;
  background: #fff;
  color: #1f2937;
  font-size: 14px;
}

.site-footer .container {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
}

.site-footer a {
  color: #1f2937;
  text-decoration: none;
}

.site-footer a:hover {
  text-decoration: underline;
}


/* =========================================================
   City Garden project page
========================================================= */
.section__head--row{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
}
@media (max-width:640px){
  .section__head--row{ align-items:flex-start; flex-direction:column; }
}

.plans-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:14px;
}
@media (max-width:1100px){ .plans-grid{ grid-template-columns:repeat(3,1fr); } }
@media (max-width:820px){ .plans-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:520px){ .plans-grid{ grid-template-columns:1fr; } }

.plan-card{
  margin:0;
  background: var(--surface, #fff);
  border: 1px solid rgba(0,0,0,.10);
  border-radius: 14px;
  overflow:hidden;
  box-shadow: 0 6px 16px rgba(0,0,0,.06);
}
.plan-card img{
  width:100%;
  height:auto;
  display:block;
  cursor:pointer;
}
/* ===============================
   Language Switch (Utility menu)
================================= */

.site-header {
  position: relative;
}

.lang-switch {
  position: absolute;
  top: 12px;
  right: 24px;
  font-size: 14px;
  font-weight: 500;
  z-index: 10;
}

.lang-link {
  text-decoration: none;
  color: #000;
  opacity: 0.6;
  transition: 0.25s ease;
}

.lang-link:hover {
  opacity: 1;
}

.lang-link.active {
  font-weight: 700;
  opacity: 1;
}

.lang-separator {
  margin: 0 6px;
  opacity: 0.4;
}
.form-row {
  display: flex;
  gap: 20px;
}

.form-group {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.form-group label {
  display: block;
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 6px;
  color: #1a1a1a;
}

.form-group input {
  width: 100%;
  height: 52px;
  padding: 0 16px;

  border-radius: 12px;
  border: 1px solid #e0e0e0;
  background-color: #f5f5f5;

  font-size: 14px;
  transition: all 0.2s ease;
}

.form-group input:hover {
  border-color: #cfcfcf;
}

.form-group input:focus {
  outline: none;
  border-color: #c8a951;
  background-color: #ffffff;
  box-shadow: 0 0 0 2px rgba(200, 169, 81, 0.15);
}

.hint {
  font-size: 12px;
  color: #777;
  margin-top: 6px;
}

.hint.invisible {
  visibility: hidden;
}

@media (max-width: 768px) {
  .form-row {
    flex-direction: column;
  }
}


/* About / leadership */
.about-block{display:grid;gap:28px}
.about-intro{max-width:900px}
.leaders-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.leaders-stack--duo{align-items:stretch}
.leader-card{display:flex;flex-direction:column;gap:18px;padding:24px;border:1px solid #e5eaf1;border-radius:24px;background:var(--card);box-shadow:var(--shadow);height:100%}
.leader-card__photo-frame{width:100%;max-width:320px;aspect-ratio:4/5;min-height:auto;border:2px dashed #d4b04a;border-radius:20px;display:flex;align-items:center;justify-content:center;background:#fbf8ef;overflow:hidden;margin:0 auto}
.leader-card__photo-frame img{width:100%;height:100%;object-fit:cover;display:block}
.leader-card__content{display:flex;flex-direction:column;gap:10px}
.leader-card__content h4{margin:0;font-size:1.5rem;line-height:1.25}
.leader-card__role{margin:0;font-size:1rem;font-weight:700;color:var(--ink-700)}
.leader-card__bio{margin:0;color:var(--ink-700);line-height:1.72}
.leader-card__link{display:inline-flex;align-items:center;gap:8px;font-weight:700;margin-top:2px}
.about-meta-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:22px;align-items:start}
@media (max-width: 860px){
  .leaders-stack{grid-template-columns:1fr}
  .leader-card{padding:22px}
  .leader-card__photo-frame{max-width:100%}
  .about-meta-grid{grid-template-columns:1fr}
}


/* =========================================================
   Ultra-clean header layout for proposals / evaluation pages
========================================================= */
.site-header--search .header__inner{
  display:grid;
  grid-template-columns:max-content minmax(0,1fr);
  align-items:center;
  column-gap:52px;
}

.site-header--search .brand{
  flex-shrink:0;
  min-width:max-content;
}

.site-header--search .brand__name{
  font-size:clamp(18px,1.95vw,26px);
  letter-spacing:.20em;
}

.site-header--search .nav{
  justify-content:flex-end;
  gap:14px;
  margin-left:10%;
  min-width:0;
}

.site-header--search .btn-nav{
  width:auto;
  min-width:175px;
  padding:10px 18px;
}

.site-header--search .btn-nav:last-child{
  min-width:215px;
}

.site-header--search .lang-switch{
  right:16px;
}

@media (max-width: 1260px){
  .site-header--search .header__inner{
    column-gap:34px;
  }

  .site-header--search .brand__name{
    letter-spacing:.14em;
  }

  .site-header--search .nav{
    gap:10px;
    margin-left:6%;
  }

  .site-header--search .btn-nav{
    min-width:150px;
    padding:10px 14px;
  }

  .site-header--search .btn-nav:last-child{
    min-width:186px;
  }
}

@media (max-width: 992px){
  .site-header--search .header__inner{
    display:flex;
  }

  .site-header--search .brand__name{
    letter-spacing:.08em;
    font-size:18px;
  }

  .site-header--search .nav{
    margin-left:0;
  }

  .site-header--search .btn-nav,
  .site-header--search .btn-nav:last-child{
    min-width:auto;
  }
}
.leaders-stack{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}
.leaders-stack {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  align-items: stretch;
}

.leader-card {
  width: 100%;
  height: 100%;
}


@media (max-width:1100px){
  .leaders-stack{
    grid-template-columns:repeat(2,1fr);
  }
}

@media (max-width:768px){
  .leaders-stack{
    grid-template-columns:1fr;
  }
}
@media (max-width: 1100px) {
  .leaders-stack {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .leaders-stack {
    grid-template-columns: 1fr;
  }
}
.leaders-stack {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  align-items: stretch;
}

.leader-card {
  width: 100%;
  height: 100%;
}
