/* =======================
   Palette & base
   ======================= */
:root{
  --fst-cream:#eae9e4;
  --fst-gold:#fbb932;
  --fst-sky:#87bcde;
  --fst-ink:#011423;           /* darkest blue */
  --fst-blue:#034078;          /* brand blue */
  --fst-header-h:100px;        /* header height (tune 96–110 if needed) */
}

html,body{ background:#fff; color:var(--fst-ink); }
a{ color:var(--fst-blue); }
a:hover{ text-decoration:underline; }
h1{ font-weight:700; line-height:1.15; }
h2{ font-weight:700; line-height:1.2; }
p { line-height:1.6; }

.container{ max-width:1200px; margin:0 auto; padding:0 16px; }

/* =======================
   Utility bar (global)
   ======================= */
.utility-bar{
  background:var(--fst-ink);
  color:#fff;
  font-size:14px;
}
.utility-inner{
  display:flex; align-items:center; justify-content:space-between;
  padding:8px 16px; gap:12px;
}
.utility-left,.utility-right{
  display:flex; align-items:center; gap:16px;
}

/* Круглые социальные кнопки (как в мокапе) */
.util-social{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  border-radius:50%;
  background:#fff;                 /* белый фон */
  color:#034078;                   /* синие иконки */
  font-size:14px;
  text-decoration:none !important; /* убираем подчёркивание */
  transition:all .2s ease;
}

.util-social i{
  line-height:1;
}

.util-social:hover,
.util-social:focus{
  background:#034078;  /* синий фон */
  color:#fff;          /* белые иконки */
  text-decoration:none !important; /* на hover тоже без подчёркивания */
  transform:translateY(-1px);
}


/* Ссылки справа пока скрыты — оставить как есть */
.util-link{ display:none !important; }
.util-link:hover{ display:none !important; }

@media (max-width:640px){
  .utility-inner{ flex-direction:column; align-items:flex-start; }
}

/* =======================
   Header (white, no blue stripe)
   ======================= */
.site-header{ background:#fff; }
.site-header__initial{ display:none !important; }               /* убираем служебную полосу */
.header-nav-overlay{ display:none !important; }                 /* не нужен оверлей */
.site-header__inner::before,
.site-header__inner__container::before{ content:none !important; }

/* Единая высота и центрирование на всех страницах */
.site-header__fixable,
.site-header__inner__container{
  display:flex !important;
  align-items:center !important;
  min-height:var(--fst-header-h);
  padding:0;
  max-width: 95%;
}

/* Логотип */
.site-branding{ margin:0; background:transparent; box-shadow:none; }
.site-branding__text{ display:none; }
.site-branding__logo img{ height:56px; width:auto; vertical-align:middle; display:block; }

/* =======================
   Primary menu (Bitter 400, underline text only)
   ======================= */
.region-primary-menu{ margin-left:auto; display:flex; align-items:center; }
.primary-nav{ display:flex; align-items:center; margin:0 !important; }

/* «Белый бокс» и подчёркивающая плашка Olivero — убрать */
.primary-nav,
.primary-nav__menu,
.primary-nav__menu--level-1{
  margin:0 !important; padding:0 !important;
  background:transparent !important; box-shadow:none !important; border-radius:0 !important;
}
.primary-nav{ --primary-nav-underline-size:0 !important; }
.primary-nav__menu-link::after,
.primary-nav__menu-link--level-1::after,
.primary-nav__menu-link--active::after,
.primary-nav__menu-link--active-trail::after{ content:none !important; display:none !important; height:0 !important; }

/* Список меню */
.primary-nav__menu{
  display:flex; align-items:center; gap:28px;
  margin: 70px 0 0 0 !important; 
  padding:0 !important; 
  flex-wrap:wrap;
}
.primary-nav__menu-item{ list-style:none; display:flex; align-items:center; margin:0; }

/* Ссылки меню и внутренние спаны — без вертикальных паддингов */
.primary-nav__menu-link,
.primary-nav__menu-link-inner{
  display:inline-flex; align-items:center;
  padding-top:0 !important; padding-bottom:0 !important;
  line-height:1.2 !important;
}

/* Типографика меню */
.primary-nav__menu-link,
.primary-nav__menu-link-inner,
.region-primary-menu nav a{
  font-family:"Bitter", Georgia, "Times New Roman", serif !important;
  font-weight:400;
  font-size:16px;
  letter-spacing:.2px;
  color:var(--fst-blue);
  text-decoration:none;
}
.region-primary-menu nav a:hover,
.region-primary-menu nav a:focus{
  text-decoration:underline;
  text-underline-offset:3px;
}

/* Разделители между пунктами (тонкие) */
.primary-nav__menu-item + .primary-nav__menu-item{ position:relative; }
.primary-nav__menu-item + .primary-nav__menu-item::before{
  content:""; position:absolute; left:-14px; top:50%;
  width:1px; height:14px; background:rgba(3,64,120,.25);
  transform:translateY(-50%);
}
@media (max-width:980px){
  .primary-nav__menu{ gap:18px; }
  .primary-nav__menu-item + .primary-nav__menu-item::before{ display:none; }
}

/* =======================
   Front page sections (hero etc.)
   ======================= */
.path-frontpage .layout-container,
.path-frontpage .container{ max-width:none; }

/* HERO — оставить твои значения */
.fst-hero{
  position: relative;
  background: url('/themes/custom/fst_theme/images/hero-image.webp') center/cover no-repeat;
  background-size: cover !important;
  background-position: center top !important;
  min-height: 800px !important;
  max-width: 100%;
}

.fst-hero__overlay{
  position: absolute;
  left: 50%;
  transform: translateX(-50%);   /* ← строго по центру страницы */
  bottom: 30%;
  background: var(--fst-blue);
  color:#fff;
  padding: 24px 28px;
  box-shadow: 0 8px 24px rgba(0,0,0,.15);
  text-align: center;
  width: max-content;             /* под размер текста, без растягивания */
  max-width: min(90vw, 960px);    /* не вылезает на узких экранах */
}
@media (max-width: 768px){
  .fst-hero__overlay{ bottom: 20%; padding: 18px 20px; }
}

.fst-hero__overlay h1{ margin:0; line-height:1.1; color:#fff; font-weight:400; }

/* About/Promo/Actions/Latest (как было) */
.fst-about{ display:grid; grid-template-columns:1fr 1fr; gap:24px; padding:40px 16px; }
.fst-about__left h2{ margin-top:0; }
.fst-slider{ background:var(--fst-cream); min-height:240px; display:flex; align-items:center; justify-content:center; }

.fst-promo{ padding:32px 16px; }
.fst-video{ background:#000; color:#fff; min-height:280px; display:flex; align-items:center; justify-content:center; }

.fst-actions{ display:flex; gap:24px; padding:32px 16px; }
.fst-circle{
  display:flex; align-items:center; justify-content:center;
  width:180px; height:180px; border-radius:50%;
  background:var(--fst-sky); color:#000; text-decoration:none; font-weight:700;
  text-align:center; padding:16px;
}
.fst-circle:hover{ filter:brightness(.95); }

.fst-latest{ padding:40px 16px; }
.fst-latest h2{ margin-top:0; }

.fst-footer{ background:#fff; }

/* Скрыть заголовок и хлебные на фронте */
.path-frontpage .page-title,
.path-frontpage .breadcrumb{ display:none !important; }

/* Ширина контейнера в шапке на фронте — как на внутренних */
.path-frontpage .site-header__inner__container{ max-width:1200px; margin-inline:auto; }

/* =======================
   Internal pages menu hack (сохранить)
   ======================= */
body:not(:has(.fst-hero)) #block-fst-main-menu-primary{
  margin-bottom:70px !important;
}

.primary-nav__menu-link-inner::after {
  border-top: none !important;
}
