/* custom.css */

:root{
  --orange:#f29400;
  --dark:#3b3b3b;
  --text:#444;
  --muted:#666;
  --border:#e0dede;
  --peach:#f7dcc5;
  --max:1100px;
}



*{box-sizing:border-box}
body{margin:0;font-family: Arial, Helvetica, sans-serif;color:var(--text);background:#fff}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
.wrap{max-width:var(--max);margin:0 auto;padding:0 30px}

/* Header */
.topbar{background:var(--orange);color:#fff}
.topbar__inner{display:flex;align-items:center;justify-content:space-between;height:42px}
.topbar__left{display:flex;gap:14px;align-items:center}
.topbar__icon{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center}
.topbar__icon svg{width:18px;height:18px;fill:#fff}
.topbar__langs{display:flex;gap:0}
.topbar__lang{
  color:#fff;text-decoration:none;font-size:12px;letter-spacing:.5px;
  padding:0 14px;height:42px;display:inline-flex;align-items:center;
  border-left:1px solid rgba(255,255,255,.35);
}
.topbar__lang:last-child{border-right:1px solid rgba(255,255,255,.35)}
.topbar__lang.is-active{font-weight:700}

.header-main{background:#fff;border-bottom:1px solid var(--border)}
.header-main__inner{display:flex;align-items:center;gap:20px;min-height:120px}
.logo img{max-height:110px}

/* Nav */
.site-nav{margin-left:auto}
.menu{list-style:none;margin:0;padding:0;display:flex;gap:26px;align-items:center}
.menu > li > a{
  text-decoration:none;text-transform:uppercase;font-size:12px;
  letter-spacing:.8px;color:#6b6b6b;
  padding:10px 0;display:inline-block;
}
.menu > li.current-menu-item > a{color:var(--orange);font-weight:700}

/* Dropdown (1 level) */
.menu li{position:relative}
.menu .sub-menu{
  position:absolute;left:0;top:100%;
  background:#fff;border:1px solid var(--border);
  list-style:none;margin:0;padding:10px 0;min-width:180px;
  display:none;z-index:99;
}
.menu li:hover > .sub-menu{display:block}
.menu .sub-menu a{
  display:block;padding:8px 14px;text-decoration:none;color:#666;font-size:12px;
}
.menu .sub-menu a:hover{background:#f7f7f7}

/* Hero */
.hero{position:relative;height:430px;overflow:hidden}
.hero__bg{
  position:absolute;inset:0;
  background-size:cover;background-position:center center;
}
.hero__inner{position:relative;height:100%;display:flex;flex-direction:column;justify-content:center}
.hero__title{
  margin:0 0 12px 0;color:#fff;font-size:40px;line-height:46px;font-weight:700;
  text-shadow:0 2px 5px rgba(0,0,0,.5);
}
.hero__ribbons{display:flex;flex-direction:column;gap:10px;max-width:520px}

/* Ribbon block like revslider (with triangles) */
.ribbon{
  position:relative;
  background:rgba(0,0,0,.5);
  color:#fff;
  padding:8px 14px;
  font-size:20px;line-height:34px;
  width:fit-content;
  margin-left:40px;
}

.ribbon--small{margin-left:80px}
.ribbon--small::before,.ribbon--small::after{
  border-top-width:24px;border-bottom-width:24px;
}

/* Home top grid */
.home-top{padding:40px 0 10px}
.home-top__grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}

.box{padding:20px}
.box--peach{background:var(--peach)}
.box--plain{background:#fff}
.box__title{margin:0 0 18px 0;font-size:28px;font-weight:700;color:#333}
.box__text p{margin:0 0 14px 0}
.box__logos{display:flex;gap:18px;align-items:center;margin:18px 0 18px}
.muted{color:var(--muted);margin:0 0 18px}

/* Buttons */
.btn{
  display:flex;align-items:center;gap:12px;
  background:var(--orange);color:#fff;text-decoration:none;
  border-radius:2px;padding:12px 14px;
  font-weight:700;font-size:14px;
}
.btn--full{width:100%}
.btn__icon{
  width:22px;height:22px;border-radius:50%;
  background:rgba(255,255,255,.2);
  display:inline-flex;align-items:center;justify-content:center;
  font-style:normal;font-weight:800;
  flex:0 0 22px;
}
.btn__text{flex:1}
.spacer-10{height:10px}

/* Posts list */
.posts{display:flex;flex-direction:column;gap:18px;margin:10px 0 18px}
.post{display:grid;grid-template-columns:177px 1fr;gap:16px;text-decoration:none}
.post__img{width:177px;height:auto}
.post__title{margin:0 0 6px 0;font-size:16px;color:#333}
.post__excerpt{margin:0;color:#666;font-size:13px;line-height:1.45}

/* Dividers */
.divider{border:0;border-top:1px solid var(--border);margin:5px 0 0}

/* Cards */
.home-cards{padding:20px 0}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.card{background:var(--orange);text-decoration:none;display:block}
.card img{width:100%;height:auto}
.card__cap{
  color:#fff;text-align:center;font-weight:800;
  letter-spacing:1px;text-transform:uppercase;
  padding:18px 10px;font-size:18px;
}

/* Partners */
.partners{padding:10px 0 40px}
.partners__title{margin:20px 0 20px;font-size:28px;color:#333}
.partners__grid{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:30px;align-items:center;
}
.partners__grid a{display:flex;align-items:center;justify-content:center}
.partners__grid img{max-height:70px;width:auto}

/* Footer */
.site-footer{background:var(--dark);color:#d8d8d8}
.footer-widgets{padding:40px 0}
.footer-widgets__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;align-items:start}
.footer-title{margin:0 0 14px;font-size:14px;letter-spacing:.6px;text-transform:uppercase;color:#fff}
.footer-col p{margin:0;color:#bdbdbd;line-height:1.6}
.footer-col a{color:#fff}

.newsletter-card{
  background:#0000003d;
  padding:18px;
  max-width:380px;
  margin:0 auto;
  box-shadow:0 10px 30px rgba(0,0,0,.25);
}
.newsletter-card__title{color:#fff;font-size:28px;text-align:center;margin:0 0 10px}
.newsletter-card__subtitle{color:#d5d5d5;text-align:center;margin:0 0 12px;line-height:1.4}
.newsletter-iframe{border:0;display:block;width:100%}

.tweets{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:18px}
.tweet{display:grid;grid-template-columns:26px 1fr;gap:12px}
.tweet__icon svg{width:18px;height:18px;fill:#bdbdbd;margin-top:2px}
.tweet__body p{margin:0;color:#bdbdbd;line-height:1.5;font-size:13px}
.tweet__body a{color:#fff;text-decoration:none}
.tweet__date{display:inline-block;margin-top:6px;color:#bdbdbd;font-size:12px;text-decoration:none}

.footer-bottom{
  border-top:1px solid rgba(255,255,255,.08);
  padding:18px 0;
}
.footer-bottom__inner{display:flex;align-items:center;justify-content:space-between;gap:20px}
.footer-copy{color:#bdbdbd;font-size:13px}
.footer-copy a{color:#fff;text-decoration:none}
.footer-social{display:flex;gap:14px;align-items:center}
.footer-social__icon{width:18px;height:18px;display:inline-flex}
.footer-social__icon svg{width:18px;height:18px;fill:#bdbdbd}

/* Responsive */
@media (max-width: 980px){
  .home-top__grid{grid-template-columns:1fr;gap:20px}
  .cards{grid-template-columns:1fr;gap:20px}
  .partners__grid{grid-template-columns:repeat(2,1fr)}
  .footer-widgets__grid{grid-template-columns:1fr;gap:30px}
}

@media (max-width: 860px){
.logo img {max-width: 180px;}

  .wrap{padding:0 18px}
  .header-main__inner{min-height:92px}
  .logo img{max-height:78px}

  /* Mobile menu */
  .burger{display:flex}
  .site-nav{
    position:fixed;left:0;right:0;top:84px;
    background:#fff;border-top:1px solid var(--border);
    transform:translateY(-120%);
    transition:transform .25s ease;
    padding:18px;
    z-index:999;
  }
  .site-nav.is-open{transform:translateY(0)}
  .menu{flex-direction:column;align-items:flex-start;gap:10px}
  .menu .sub-menu{position:static;display:block;border:0;padding:6px 0 0 10px}
  .menu .sub-menu a{padding:6px 0}

  .hero{height:360px}
  .hero__title{font-size:34px;line-height:40px}
  .ribbon{font-size:18px;line-height:30px}
}

@media (max-width: 520px){
  .hero{height:320px}
  .hero__title{font-size:28px;line-height:34px}
  .ribbon{margin-left:20px}
  .ribbon--small{margin-left:40px}
  .post{grid-template-columns:120px 1fr}
  .post__img{width:120px}
}

/* Footer newsletter visual form */
.newsletter-form{display:flex;flex-direction:column;gap:10px;margin-top:8px}
.newsletter-input{
  width:100%;
  height:44px;
  border-radius:4px;
  border:2px solid #2b7cff;
  background:#fff;
  padding:0 14px;
  font-size:14px;
  outline:none;
}
.newsletter-input::placeholder{color:#7a7a7a}
.newsletter-btn{
  height:44px;
  border:0;
  border-radius:4px;
  background:#ffc94a;
  color:#333;
  font-weight:800;
  letter-spacing:.6px;
  cursor:pointer;
  padding: 2px;
}
.newsletter-note{font-size:12px;color:#bdbdbd;opacity:.9}

/* Fake contacts block */
.fake-contacts{margin-top:14px;color:#bdbdbd;font-size:13px;line-height:1.5}
.fake-contacts__row{margin:4px 0}

/* Visually hidden label */
.sr-only{
  position:absolute!important;
  width:1px;height:1px;
  padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);
  white-space:nowrap;border:0;
}

/* ===== Dropdown (2nd level) ===== */

.site-nav .menu li {
  position: relative;
}

/* прячем подменю по умолчанию */
.site-nav .menu li.menu-item-has-children > ul,
.site-nav .menu li.page_item_has_children > ul {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 280px;
  background: #f7f7f7;        /* как в рефе (светло-серый/белый) */
  border: 1px solid #e6e6e6;
  box-shadow: 0 10px 24px rgba(0,0,0,.12);
  padding: 14px 0;
  margin: 0;
  list-style: none;
  z-index: 999;
}

/* оранжевая полоска сверху */
.site-nav .menu li.menu-item-has-children > ul::before,
.site-nav .menu li.page_item_has_children > ul::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: #f29400;
}

/* показываем на ховере (desktop) */
@media (min-width: 961px) {
  .site-nav .menu li.menu-item-has-children:hover > ul,
  .site-nav .menu li.menu-item-has-children:focus-within > ul,
  .site-nav .menu li.page_item_has_children:hover > ul,
  .site-nav .menu li.page_item_has_children:focus-within > ul {
    display: block;
  }
}

/* пункты подменю */
.site-nav .menu li.menu-item-has-children > ul > li,
.site-nav .menu li.page_item_has_children > ul > li {
  margin: 0;
}

.site-nav .menu li.menu-item-has-children > ul > li > a,
.site-nav .menu li.page_item_has_children > ul > li > a {
  display: block;
  padding: 14px 22px;
  font-size: 22px;            /* примерно как на скрине */
  line-height: 1.2;
  color: #2b2b2b;
  text-decoration: none;
}

.site-nav .menu li.menu-item-has-children > ul > li > a:hover,
.site-nav .menu li.page_item_has_children > ul > li > a:hover {
  background: #ffffff;
}

/* чтобы dropdown не уезжал, если пункт справа */
.site-nav .menu li.menu-item-has-children > ul {
  left: auto;
  right: 0; /* если хочешь справа как в скрине */
}

/* ===== Mobile (внутри бургера) ===== */
@media (max-width: 960px) {
  /* на мобиле подменю не абсолютное */
  .site-nav.is-open .menu li.menu-item-has-children > ul,
  .site-nav.is-open .menu li.page_item_has_children > ul {
    position: static;
    display: block; /* проще: всегда показывать внутри бургера */
    box-shadow: none;
    border: 0;
    padding: 0;
    margin: 6px 0 0;
    background: transparent;
  }

  .site-nav.is-open .menu li.menu-item-has-children > ul::before,
  .site-nav.is-open .menu li.page_item_has_children > ul::before {
    display: none;
  }

  .site-nav.is-open .menu li.menu-item-has-children > ul > li > a,
  .site-nav.is-open .menu li.page_item_has_children > ul > li > a {
    padding: 10px 0 10px 14px;
    font-size: 16px;
    color: #444;
  }
}




/* ===== Burger (hamburger -> X) ===== */
.burger{
  display:none;               /* включим на мобиле ниже */
  margin-left:auto;
  position:relative;
  width:44px;height:44px;
  border:0;background:transparent;
  cursor:pointer;
}

.burger__lines,
.burger__close{
  position:absolute; inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  transition: opacity .18s ease;
}

.burger__lines span{
  position:absolute;
  width:24px;height:2px;
  background:#333;border-radius:2px;
}
.burger__lines span:nth-child(1){ transform: translateY(-7px); }
.burger__lines span:nth-child(2){ transform: translateY(0); }
.burger__lines span:nth-child(3){ transform: translateY(7px); }

.burger__close{ opacity:0; }
.burger__close span{
  position:absolute;
  width:24px;height:2px;
  background:#333;border-radius:2px;
}
.burger__close span:nth-child(1){ transform: rotate(45deg); }
.burger__close span:nth-child(2){ transform: rotate(-45deg); }

.burger.is-open .burger__lines{ opacity:0; }
.burger.is-open .burger__close{ opacity:1; }

/* показываем бургер на мобиле */
@media (max-width: 860px){
  .burger{display:block;}

.burger__close {
    opacity: 0;
z-index: 999999999;

}
}


@media (max-width: 860px){

  /* когда бургер открыт — фиксируем меню как оверлей */
  .site-nav{
    position: fixed;
    left: 0;
    right: 0;
    top: 0;                 /* было top:84px */
    bottom: 0;              /* важно */
    background: #fff;
    border-top: 0;
    transform: translateY(-120%);
    transition: transform .25s ease;
    padding: 110px 18px 18px; /* сверху место под шапку/лого */
    z-index: 999;
    overflow-y: auto;       /* скролл внутри меню */
    -webkit-overflow-scrolling: touch;
  }

  .site-nav.is-open{
    transform: translateY(0);
  }

  /* фикс: чтобы страница под меню не скроллилась */
  body.menu-open{
    overflow: hidden;
  }
}

/* ===== Header full width fix ===== */

/* убираем ограничение ширины у хедера */
.site-header .wrap{
  max-width: none;
  padding-left: 40px;
  padding-right: 40px;
}

/* но логотип + меню держим аккуратно */
.header-main__inner{
  max-width: 1400px;   /* можно 1440 */
  margin: 0 auto;
}

/* topbar тоже на всю ширину */
.topbar__inner{
  max-width: 1400px;
  margin: 0 auto;
}

.entry-content {
    word-wrap: break-word;
    padding: 15px;
}

/* ===== Header font: DOSIS ===== */

.site-header,
.site-header a,
.site-header .menu > li > a {
  font-family: 'Dosis', Arial, Helvetica, sans-serif;
}

.ngg-galleryoverview {
  display: flex;
  flex-wrap: wrap-reverse;
  gap: 10px;
}

.ngg-gallery-thumbnail-box {
  min-width: 250px;
  height: auto;
}

.ngg-navigation {
  display: none;
}

.fusion-builder-row.fusion-row {
  display: flex;
}