/**
 * Opercons — redesign 2025
 * Palette: oak wood + olive green
 */

/*** fonts ***/
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400&family=DM+Sans:wght@300;400;500;600&display=swap');

/*** core ***/
html {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  scroll-behavior: smooth; }

body {
  background: #F7F2EB;
  font-family: "DM Sans", Arial, Helvetica, sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #3D2B1F;
  line-height: 1.65em;
  width: 100%;
  height: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

h1, h2, h3, h4, h5, h6 {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-weight: 400;
  color: #2C1A0E; }

h1 {
  font-size: 64px;
  font-weight: 300;
  margin: 35px 0;
  letter-spacing: 0.02em; }

h2 {
  font-size: 42px;
  font-weight: 400;
  margin: 30px 0;
  letter-spacing: 0.06em; }

h3 {
  font-size: 32px;
  font-weight: 400;
  margin: 5px 0 20px 0; }

h4 {
  font-size: 22px;
  font-weight: 500;
  margin-bottom: 15px; }

h5 {
  font-size: 18px; }

h6 {
  font-size: 16px; }

a {
  color: #6B7A3A;
  text-decoration: none;
  outline: none; }

a:hover, a:focus {
  color: #8A9E4A;
  text-decoration: none;
  outline: none; }

hr {
  border-color: #D9CFC4; }

input[type="radio"], input[type="checkbox"] {
  margin: 4px 5px 0 0; }

label {
  font-weight: normal; }

/*** global ***/
/* a- */
.a-default {
  color: #3D2B1F; }

.a-default:hover, .a-default:focus {
  color: #6B7A3A; }

.a-primary {
  color: #2C1A0E; }

.a-primary:hover, .a-primary:focus {
  color: #6B7A3A; }

.a-sec {
  color: #6B7A3A; }

.a-sec:hover, .a-sec:focus {
  color: #8A9E4A;
  text-decoration: underline;
  outline: none; }

.a-ter {
  color: #A89070; }

.a-ter:hover, .a-ter:focus {
  color: #3D2B1F; }

.a-underline {
  text-decoration: underline; }

.a-underline:hover {
  text-decoration: none; }

/* bold */
.bold {
  font-weight: 600; }

/* btn- */
.btn {
  padding: 11px 34px;
  border-radius: 0;
  font-family: "DM Sans", sans-serif;
  font-size: 13px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 500;
  transition: all 0.2s ease; }

.btn:focus, .btn:active:focus, .btn.active:focus, .btn.focus, .btn:active.focus,
.btn.active.focus {
  outline: none; }

.btn:active, .btn.active {
  background-image: none;
  box-shadow: none;
  outline: 0 none; }

.btn-default {
  background-color: #ffffff;
  border-color: #D9CFC4;
  color: #3D2B1F; }

.btn-default:hover, .btn-default:focus, .btn-default.focus, .btn-default:active,
.btn-default.active, .open > .dropdown-toggle.btn-default {
  background-color: #EDE5D8;
  border-color: #D9CFC4;
  color: #2C1A0E; }

/* btn-primary — solid olive */
.btn-primary {
  color: #fff;
  background-color: #6B7A3A;
  border-color: #6B7A3A; }

.btn-primary:hover {
  color: #fff;
  background-color: #8A9E4A;
  border-color: #8A9E4A; }

.btn-primary:active,
.btn-primary:focus,
.btn-primary:active:hover,
.btn-primary:active:focus {
  color: #fff;
  background-color: #6B7A3A;
  border-color: #6B7A3A; }

/* btn-sec — outlined dark oak */
.btn-sec {
  border: 2px solid #2C1A0E;
  color: #2C1A0E;
  background: transparent; }

.btn-sec:hover, .btn-sec:focus {
  background: #2C1A0E;
  border-color: #2C1A0E;
  color: #F7F2EB; }

/* btn-ter — white outline for dark backgrounds */
.btn-ter {
  border: 2px solid rgba(255,255,255,0.7);
  padding: 11px 34px;
  color: #fff;
  font-size: 13px;
  font-family: "DM Sans", sans-serif;
  border-radius: 0;
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: 0.1em; }

.btn-ter:hover, .btn-ter:focus {
  background: #fff;
  border-color: #fff;
  color: #2C1A0E; }

/* btn-facebook */
.btn-facebook {
  color: #ffffff;
  background-color: #3b5998;
  box-shadow: 0 3px 0 0 #23355b; }

.btn-facebook i.fa {
  font-size: 22px;
  padding-right: 20px; }

.btn-facebook:hover, .btn-facebook:focus {
  color: #ffffff;
  background: #3878d8;
  box-shadow: 0px 3px 0px 0.00px #2d60ad; }

/* btn-google */
.btn-google {
  color: #ffffff;
  background-color: #b0120a;
  box-shadow: 0 3px 0 0 #dd191d; }

.btn-google i.fa {
  font-size: 22px;
  padding-right: 20px; }

.btn-google:hover, .btn-google:focus {
  color: #ffffff;
  background: #d01716 none repeat scroll 0 0;
  box-shadow: 0 3px 0 0 #e84e40; }

/* btn-lg */
.btn-lg {
  padding: 13px 40px;
  font-size: 15px; }

/* btn-margin- */
.btn-margin-bottom { margin-bottom: 10px; }
.btn-margin-left   { margin-right: 10px; }
.btn-margin-right  { margin-right: 15px; }
.btn-margin-top    { margin-top: 10px; }

/* font- */
.font-sec {
  font-family: "Cormorant Garamond", Georgia, serif; }

/* form-control */
.form-control {
  color: #3D2B1F;
  font-size: 16px;
  border-radius: 0;
  height: 48px;
  border: 1px solid #D9CFC4;
  background: #FDFAF6;
  box-shadow: none; }

.form-control:focus {
  border-color: #6B7A3A;
  background: #fff;
  box-shadow: none;
  outline: 0 none; }

.form-control-block {
  display: block;
  width: 100%;
  color: #3D2B1F;
  font-size: 16px;
  border-radius: 0;
  height: 48px;
  padding: 10px 0 0 0; }

.form-control-sm {
  font-size: 16px;
  padding: 6px 12px;
  height: auto; }

/* form-group */
.form-group {
  margin-bottom: 22px;
  position: relative; }

.form-required {
  color: #cc2222; }

/* h */
.h1-primary   { margin-top: 50px; }
.h1-margin-top { margin-top: 60px; }

/* hr- */
.hr {
  width: 100%;
  height: 20px; }

.hr-short-primary {
  height: 2px;
  width: 50px;
  background: #6B7A3A;
  margin: 0 auto 30px auto;
  display: inline-block; }

.hr-short-sec {
  height: 2px;
  width: 50px;
  background: rgba(255,255,255,0.6);
  margin: 0 auto 30px auto;
  display: inline-block; }

/* img */
.img-center { margin: 0 auto; }

/* margin */
.margin-bottom     { margin-bottom: 30px; }
.margin-left       { margin-left: 30px; }
.margin-right      { margin-right: 30px; }
.margin-top        { margin-top: 30px; }
.margin-top-sec    { margin-top: 15px; }
.margin-right-sec  { margin-right: 15px; }
.margin-left-sec   { margin-left: 15px; }
.margin-bottom-sec { margin-bottom: 15px; }

/* middot */
.middot {
  padding-left: 5px;
  padding-right: 5px; }

/* no- */
.no-margin  { margin: 0; }
.no-padding { padding: 0; }

/* pagination */
.pagination > li > a, .pagination > li > span {
  padding: 6px 12px;
  color: #3D2B1F;
  background-color: #ffffff;
  border: 1px solid #EDE5D8;
  margin-left: 5px; }

.pagination > li > a:hover, .pagination > li > span:hover, .pagination > li > a:focus,
.pagination > li > span:focus {
  color: #2C1A0E;
  background-color: #EDE5D8;
  border-color: #D9CFC4; }

.pagination > .active > a, .pagination > .active > span, .pagination > .active > a:hover,
.pagination > .active > span:hover, .pagination > .active > a:focus,
.pagination > .active > span:focus {
  color: #fff;
  background-color: #6B7A3A;
  border-color: #6B7A3A; }

.pagination > .disabled > span, .pagination > .disabled > span:hover,
.pagination > .disabled > span:focus, .pagination > .disabled > a,
.pagination > .disabled > a:hover, .pagination > .disabled > a:focus {
  color: #A89070;
  background-color: #ffffff;
  border-color: #EDE5D8; }

.pagination-page-of {
  display: block;
  margin-top: 20px; }

/* row-grid */
.row.row-grid [class*="col-"] {
  margin-bottom: 20px; }

@media (min-width: 1200px) {
  .row.row-grid [class*="col-lg-"] { margin-bottom: 0; } }
@media (min-width: 992px) {
  .row.row-grid [class*="col-md-"] { margin-bottom: 0; } }
@media (min-width: 768px) {
  .row.row-grid [class*="col-sm-"] { margin-bottom: 0; } }

/* row-table */
.row-table { display: table; }

.row-table .col-table-cell {
  float: none;
  display: table-cell;
  vertical-align: top;
  position: relative; }

/* text- */
.text-default { color: #2C1A0E; }
.text-primary { color: #2C1A0E; }
.text-sec     { color: #7A6655; }
.text-ter     { color: #A89070; }
.text-lg      { font-size: 18px; }

.text-subheader {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 20px;
  font-weight: 300;
  font-style: italic;
  margin-bottom: 60px;
  color: #7A6655;
  line-height: 1.6em; }

/* validation */
.validation-error {
  width: 100%;
  background: #ffffff;
  color: #ca4045;
  border: 1px solid #ca4045;
  text-align: left;
  border-radius: 2px;
  margin-bottom: 20px;
  padding: 10px; }

.validation-error.text-center { text-align: center; }

.validation-error span {
  display: inline-block;
  font-weight: bold;
  padding-top: 10px;
  padding-left: 10px; }

.validation-error ul {
  margin: 5px 10px 10px 10px;
  padding-left: 20px; }

.validation-error a {
  color: #ca4045;
  text-decoration: underline; }

.validation-error p:last-child { margin-bottom: 0; }

.validation-error-field {
  font-size: 12px;
  font-weight: normal;
  color: #f42156;
  text-align: right;
  display: block;
  padding-top: 5px;
  float: none; }

.validation-info {
  width: 100%;
  background: #ffffd8;
  border: 1px solid #CACA9D;
  text-align: left;
  border-radius: 2px;
  margin-bottom: 20px;
  padding: 10px; }

.validation-info span {
  display: inline-block;
  color: #DCCA00;
  font-weight: bold;
  padding-top: 10px;
  padding-left: 10px; }

.validation-info ul {
  margin: 5px 10px 10px 10px;
  padding-left: 20px; }

/*** template ***/
/* navbar */
.navbar > .container .navbar-brand, .navbar > .container-fluid .navbar-brand {
  margin-left: -15px; }

/* navbar-default: transparent peste hero-ul paginii cat timp esti in varf,
   devine bara plina (bej) cand se aplica .navbar-scrolled (adaugata din JS,
   vezi public/js/app/navbar-scroll.js, la scroll > 40px) */
.navbar-default {
  background: transparent;
  border: none;
  border-bottom: 1px solid transparent;
  box-shadow: none;
  transition: background 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease; }

.navbar-default.navbar-scrolled {
  background: #F7F2EB;
  border-bottom: 1px solid #EDE5D8;
  box-shadow: 0 1px 12px rgba(44, 26, 14, 0.06); }

.navbar-default .navbar-brand {
  display: inline-block;
  position: relative;
  width: 155px;
  height: 70px;
  margin: 5px 0;
  padding: 0;
  float: left;
  border: 0 none;
  text-decoration: none;
  overflow: visible; }

.navbar-default .navbar-brand img {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  height: 96px;
  width: auto;
  max-width: none;
  /* siglă e maro/bej-închis din palete -- pe fundal transparent peste
     hero-ul întunecat devine deschisă (beige/alb) prin filtru CSS, ca sa
     ramana vizibila; la scroll (bara plina), filtrul se elimina si revine
     la culorile ei native */
  filter: brightness(0) invert(1);
  transition: filter 0.3s ease; }

.navbar-default.navbar-scrolled .navbar-brand img { filter: none; }

.navbar-default .navbar-nav { margin-top: 15px; }

.navbar-default .navbar-nav > li { margin-right: 4px; }

.navbar-default .navbar-nav > li:last-child { margin-right: 0px; }

.navbar-default .navbar-nav > li > a {
  text-transform: uppercase;
  color: #F7F2EB;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.06em;
  padding-left: 6px;
  padding-right: 6px;
  transition: color 0.3s ease; }

.navbar-default.navbar-scrolled .navbar-nav > li > a { color: #3D2B1F; }

.navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover,
.navbar-default .navbar-nav > .active > a:focus {
  background: none;
  color: #6B7A3A; }

.navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover,
.navbar-default .navbar-nav > .open > a:focus {
  background: none;
  color: #6B7A3A; }

/* hamburger mobil: 2 linii (nu 3) care se transforma in X la deschidere --
   vezi public/js/app/navbar-mobile-menu.js pentru toggle (nu mai foloseste
   data-toggle="collapse" al lui Bootstrap, care anima inaltimea si nu se
   preta la un overlay fullscreen; JS-ul propriu doar comuta clase) */
.navbar-default .navbar-toggle.mobile-menu-toggle {
  border: none;
  background: none;
  padding: 0;
  width: 36px;
  height: 26px;
  position: relative;
  -webkit-tap-highlight-color: transparent;
  outline: none; }

.navbar-default .navbar-toggle.mobile-menu-toggle:hover,
.navbar-default .navbar-toggle.mobile-menu-toggle:focus { background: none; }

.mobile-menu-toggle-line {
  display: block;
  position: absolute;
  left: 0; right: 0;
  height: 2px;
  background: #F7F2EB;
  transition: transform .3s ease, top .3s ease, background-color .3s ease; }

.mobile-menu-toggle-line--top { top: 3px; }
.mobile-menu-toggle-line--bottom { top: 21px; }

.navbar-default.navbar-scrolled .mobile-menu-toggle-line { background: #3D2B1F; }

/* deschis: cele doua linii se rotesc pe centru si formeaza un X --
   ramane deschis la culoare indiferent de navbar-scrolled (vezi mai jos,
   body.mobile-menu-open forteaza toata bara sa arate ca "nescrollata") */
.mobile-menu-toggle.is-open .mobile-menu-toggle-line { background: #F7F2EB; }
.mobile-menu-toggle.is-open .mobile-menu-toggle-line--top { top: 12px; transform: rotate(45deg); }
.mobile-menu-toggle.is-open .mobile-menu-toggle-line--bottom { top: 12px; transform: rotate(-45deg); }

/* cat timp meniul mobil e deschis, bara ramane inchisa la culoare (maro-
   inchis, ca fundalul overlay-ului de mai jos) in loc de bej-plina sau
   transparenta -- logo-ul si X-ul raman deschise la culoare, continuu cu
   overlay-ul de dedesubt, indiferent cat s-a scrollat pagina pana atunci */
body.mobile-menu-open { overflow: hidden; }

body.mobile-menu-open .navbar-default {
  background: #2C1A0E;
  border-bottom-color: transparent; }

body.mobile-menu-open .navbar-default .navbar-brand img { filter: brightness(0) invert(1); }

/* navbar-header (logo + buton X) trebuie sa ramana deasupra overlay-ului
   full-screen de mai jos -- #navbar (care devine overlay-ul) e mai jos in
   DOM si, fara asta, s-ar picta peste logo/X (ambele sunt in acelasi
   context de stivuire creat de .navbar-fixed-top, z-index:1030) */
body.mobile-menu-open .navbar-header {
  position: relative;
  z-index: 2; }

/* meniul mobil: overlay fullscreen in stil "Neuralink" -- fundal maro-
   inchis plin, iteme mari centrate, sub bara cu logo+X care ramane vizibila
   (vezi regulile de mai sus). #navbar pastreaza clasele Bootstrap
   navbar-collapse/collapse (pentru .collapse{display:none}/.collapse.in --
   vezi JS), mobile-menu-open doar adauga stilul de overlay peste asta. */
@media (max-width: 767px) {
  #navbar.navbar-collapse.mobile-menu-open {
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: fixed;
    top: 0; right: 0; bottom: 0; left: 0;
    width: 100%; height: 100%;
    margin: 0;
    padding: 110px 30px 50px;
    background: #2C1A0E;
    overflow-y: auto;
    border: none;
    box-shadow: none; }

  /* iOS/Safari arata implicit un dreptunghi de "tap highlight" (gri/alb
     deschis) peste orice link atins -- vizibil mai ales pe linkul limbii
     curente (singurul care nu navigheaza la click, doar desface randul
     RO/EN/FR, deci evenimentul de "apasare" ramane mai vizibil pe ecran
     decat la un link normal care incarca imediat alta pagina) */
  #navbar.mobile-menu-open a {
    -webkit-tap-highlight-color: transparent;
    outline: none; }

  #navbar.mobile-menu-open .navbar-nav {
    float: none;
    margin: 0;
    width: 100%; }

  #navbar.mobile-menu-open .navbar-nav > li {
    float: none;
    text-align: center;
    margin: 0; }

  #navbar.mobile-menu-open .navbar-nav > li > a {
    display: block;
    padding: 14px 0;
    font-family: "Cormorant Garamond", serif;
    font-size: 30px;
    font-weight: 500;
    text-transform: none;
    letter-spacing: 0;
    color: #F7F2EB; }

  #navbar.mobile-menu-open .navbar-nav > li > a .caret { display: none; }

  #navbar.mobile-menu-open .navbar-nav .dropdown-menu {
    position: static;
    float: none;
    width: 100%;
    padding: 0 0 10px;
    margin: 0;
    background: none;
    border: none;
    box-shadow: none; }

  #navbar.mobile-menu-open .navbar-nav .dropdown-menu > li {
    border-bottom: none;
    text-align: center; }

  #navbar.mobile-menu-open .navbar-nav .dropdown-menu > li > a {
    display: block;
    padding: 8px 0;
    font-family: "DM Sans", sans-serif;
    font-size: 18px;
    text-transform: none;
    text-align: center;
    color: rgba(247, 242, 235, 0.7); }

  /* Bootstrap pune implicit un fundal gri-deschis (#f5f5f5) pe orice link
     de dropdown la :hover/:focus (vezi .dropdown-menu > li > a:hover in
     bootstrap.css) -- pe desktop nu se observa (dropdown-ul e pe fundal
     deschis), dar in overlay-ul mobil apare ca o "cutie alba" peste link,
     mai vizibila pe linkul limbii curente (singurul care nu navigheaza la
     click, deci ramane cu :focus mai mult timp pe ecran) */
  #navbar.mobile-menu-open .navbar-nav .dropdown-menu > li > a:hover,
  #navbar.mobile-menu-open .navbar-nav .dropdown-menu > li > a:focus {
    background-color: transparent;
    color: rgba(247, 242, 235, 0.7); }

  /* categoriile de portofoliu au si o poza mica (menuImage()) langa nume --
     pe desktop e un icon discret, dar la scara mare a overlay-ului mobil
     devine o fotografie mare, nepotrivita cu restul listei -- mai simplu
     de ascuns aici decat de constrans la o dimensiune mica */
  #navbar.mobile-menu-open .navbar-nav .dropdown-menu > li > a img { display: none; }

  #navbar.mobile-menu-open .navbar-lang-switch {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid rgba(247, 242, 235, 0.15); }

  /* toggle-ul original (arata doar limba curenta, deschide un dropdown
     Bootstrap "plutitor" pe desktop) e ascuns pe mobil -- randul de mai
     jos (mereu RO/EN/FR, in aceasta ordine) ii ia locul complet */
  #navbar.mobile-menu-open .navbar-lang-switch > a.dropdown-toggle { display: none; }

  /* RO/EN/FR sunt mereu in DOM, in aceasta ordine fixa -- initial doar
     limba curenta (.is-current, marcata din Blade) e vizibila, centrata
     (celelalte doua sunt colapsate la max-width:0). Un click pe ea adauga
     .is-expanded pe .navbar-lang-switch (vezi navbar-mobile-menu.js) si
     celelalte doua "se desfac" pe orizontala, la 70% opacitate, cu o bara
     verticala subtire intre ele -- limba curenta ramane mereu opaca si isi
     pastreaza locul fix in ordine (nu sare in fata), deci randul se lateste
     in jurul ei catre stanga si/sau dreapta, in functie de pozitia ei */
  #navbar.mobile-menu-open .navbar-lang-switch .dropdown-menu {
    display: flex;
    flex-direction: row;
    justify-content: center;
    padding-left: 0; }

  #navbar.mobile-menu-open .navbar-lang-switch .dropdown-menu > li {
    box-sizing: border-box;
    flex: 0 0 auto;
    flex-basis: 0;
    opacity: 0;
    overflow: hidden;
    border-bottom: none;
    border-left: 1px solid rgba(247, 242, 235, 0.25);
    border-left-width: 0;
    transition: flex-basis .35s ease, opacity .35s ease, border-left-width .35s ease; }

  #navbar.mobile-menu-open .navbar-lang-switch .dropdown-menu > li.is-current {
    flex-basis: 64px;
    opacity: 1; }

  #navbar.mobile-menu-open .navbar-lang-switch.is-expanded .dropdown-menu > li {
    flex-basis: 64px;
    opacity: .7; }

  #navbar.mobile-menu-open .navbar-lang-switch.is-expanded .dropdown-menu > li.is-current {
    opacity: 1; }

  #navbar.mobile-menu-open .navbar-lang-switch.is-expanded .dropdown-menu > li + li {
    border-left-width: 1px; }

  #navbar.mobile-menu-open .navbar-lang-switch .dropdown-menu > li:not(.is-current) > a {
    pointer-events: none; }

  #navbar.mobile-menu-open .navbar-lang-switch.is-expanded .dropdown-menu > li > a {
    pointer-events: auto; }

  #navbar.mobile-menu-open .navbar-lang-switch .dropdown-menu > li > a {
    display: block;
    padding: 0 14px;
    text-align: center;
    font-size: 19px;
    white-space: nowrap; }

  #navbar.mobile-menu-open .navbar-cta {
    margin-top: 30px; }

  #navbar.mobile-menu-open .navbar-cta > a {
    display: inline-block;
    padding: 16px 40px;
    border-radius: 999px;
    font-size: 13px; }
}

/* navbar-cta: butonul "Contact", ultimul item din navbar-right, stil plin
   (identic ca limbaj vizual cu .btn-primary) -- ramane vizibil la fel in
   ambele stari (transparent/scrolled), nu are nevoie de variante separate */
.navbar-default .navbar-nav > li.navbar-cta { margin-left: 6px; }

.navbar-default .navbar-nav > li.navbar-cta > a {
  background: #6B7A3A;
  color: #fff !important;
  padding: 8px 16px;
  border-radius: 0; }

.navbar-default .navbar-nav > li.navbar-cta > a:hover,
.navbar-default .navbar-nav > li.navbar-cta > a:focus {
  background: #8A9E4A;
  color: #fff !important; }

/* dropdown-menu */
.navbar-right .dropdown-menu { font-size: 15px; }

.navbar-right > li > .dropdown-menu {
  left: -20px;
  right: auto;
  background: #FDFAF6;
  margin-top: 16px;
  border: none;
  box-shadow: 0 8px 30px rgba(44, 26, 14, 0.12);
  padding: 10px 30px;
  border-radius: 0;
  border-bottom: 2px solid #6B7A3A;
  min-width: 350px; }

/* navbar-lang-switch: comutator de limba (RO/EN/FR) duplicat din footer,
   direct in bara de meniu, ca ultim item din lista -- compact (font mai mic,
   padding redus, doar separator vizual din border) ca sa incapa pe un rand
   alaturi de restul meniului si pe ro/fr, unde etichetele sunt mai lungi
   decat pe en; de-asta si restul itemilor de mai sus au acum spatiere usor
   mai stransa (margin/padding reduse de la 8px la 5px) fata de varianta
   initiala fara comutator */
.navbar-default .navbar-nav > li.navbar-lang-switch > a {
  font-size: 11px;
  letter-spacing: 0.08em;
  color: rgba(247, 242, 235, 0.8);
  border-left: 1px solid rgba(247, 242, 235, 0.35);
  margin-left: 3px;
  padding-left: 7px;
  transition: color 0.3s ease, border-color 0.3s ease; }

.navbar-default.navbar-scrolled .navbar-nav > li.navbar-lang-switch > a {
  color: #7A6655;
  border-left-color: #D9CFC4; }

.navbar-default .navbar-nav > li.navbar-lang-switch > a:hover,
.navbar-default .navbar-nav > li.navbar-lang-switch > a:focus {
  color: #6B7A3A; }

.navbar-lang-switch.open > a, .navbar-lang-switch.open > a:hover, .navbar-lang-switch.open > a:focus {
  color: #6B7A3A; }

.navbar-right > li.navbar-lang-switch > .dropdown-menu {
  min-width: 80px;
  left: auto;
  right: 0;
  padding: 5px 0; }

.navbar-right .navbar-lang-switch > .dropdown-menu > li > a {
  font-size: 12px;
  padding: 5px 20px; }

.navbar-right .dropdown-menu > li {
  border-bottom: 1px solid #EDE5D8; }

.navbar-right .dropdown-menu > li:last-child { border-bottom: none; }

.navbar-right .dropdown-menu > li > a {
  padding: 10px 0px;
  color: #3D2B1F; }

.navbar-right .dropdown-menu > li > a img { padding-right: 25px; }

/* header */
.header-bg {
  width: 100%;
  height: 450px;
  position: relative;
  overflow: hidden; }

.header-bg img {
  width: 100%;
  height: auto;
  top: -50%;
  position: absolute; }

/* footer- */
.footer {
  padding: 70px 0;
  background: #2C1A0E; }

.footer h5 {
  color: #EDE5D8;
  font-family: "DM Sans", sans-serif;
  font-size: 12px;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  margin-bottom: 28px; }

.footer ul {
  list-style: none;
  margin: 0;
  padding: 0; }

.footer .footer-links ul li a {
  color: #A89070;
  font-size: 14px;
  line-height: 2.2em;
  transition: color 0.15s ease; }

.footer .footer-links ul li a:hover { color: #EDE5D8; }

.footer .footer-links .footer-sn { margin-top: 21px; }

.footer .footer-links .footer-sn a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  color: #A89070;
  border: 1px solid #5A3D28;
  margin-right: 10px;
  font-size: 17px;
  transition: all 0.2s ease; }

.footer .footer-links .footer-sn a:hover {
  color: #EDE5D8;
  border-color: #A89070; }

.footer .footer-links .footer-sn a span { display: none; }

.footer .footer-copy {
  color: #7A6655;
  font-size: 13px;
  padding: 50px 0 10px 0;
  border-top: 1px solid #3D2B1F;
  margin-top: 40px; }

footer .footer-copy .footer-terms { color: #7A6655; }

.footer .footer-copy .footer-vsep {
  color: #5A3D28;
  padding: 0 14px; }

/* dropdown-language- */
.dropdown-languages { display: inline-block; }

.dropdown-languages .btn {
  background: none;
  padding: 0px 20px; }

.dropdown-languages .btn:hover, .dropdown-languages .btn:focus { color: #EDE5D8; }

.dropdown-languages .btn img { margin-right: 6px; }

.dropdown-languages .dropdown-menu {
  border-radius: 0;
  padding: 5px 0; }

.dropdown-languages .dropdown-menu img { margin-right: 6px; }

.dropdown-languages .dropdown-menu > li > a { padding: 5px 20px; }

/* section- */
.section {
  padding: 100px 0; }

.section-primary {
  background: #EDE5D8; }

.section-xl {
  padding: 130px 0; }

.section-padding-bottom {
  padding-bottom: 120px; }

/*** icomoon icon font ***/
@font-face {
  font-family: 'icomoon';
  src: url("fonts/icomoon.eot?3bfjgh");
  src: url("fonts/icomoon.eot?3bfjgh#iefix") format("embedded-opentype"),
       url("fonts/icomoon.ttf?3bfjgh") format("truetype"),
       url("fonts/icomoon.woff?3bfjgh") format("woff"),
       url("fonts/icomoon.svg?3bfjgh#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block; }

[class^="icon-"], [class*=" icon-"] {
  font-family: 'icomoon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon-facebook:before { content: "\e901"; }
.icon-twitter:before  { content: "\e902"; }
.icon-instagram:before { content: "\e900"; }

/*** main.res — responsive overrides ***/
@media (max-width: 767px) {
  h1 {
    font-size: 40px;
    margin: 35px 0; }

  h2 {
    font-size: 30px;
    margin: 30px 0; }

  .navbar > .container .navbar-brand, .navbar > .container-fluid .navbar-brand {
    margin-left: 10px; }

  .navbar-default .navbar-toggle {
    margin-top: 19px;
    margin-right: 18px; }

  /* meniul mobil desfasurat are mereu fundal bej plin (vezi mai jos), deci
     textul itemilor trebuie sa ramana mereu inchis la culoare aici, indiferent
     de .navbar-scrolled -- altfel textul bej de pe varianta transparenta
     devine ilizibil pe fundalul bej al meniului deschis */
  .navbar-default .navbar-nav > li > a { color: #3D2B1F; }

  .navbar-default .navbar-nav > li.navbar-lang-switch > a {
    color: #7A6655;
    border-left-color: #D9CFC4; }

  .navbar-default .navbar-collapse {
    background: #F7F2EB;
    /* Bootstrap limiteaza implicit meniul mobil la max-height:340px cu
       scroll intern -- cu toate itemii + comutatorul de limba, continutul
       depaseste usor acea inaltime si RO/EN/FR ajunge aproape invizibil,
       ascuns sub un scroll intern greu de observat. Eliminam limita ca
       intreg meniul sa curga normal, cu scroll pe pagina, nu intr-o cutie
       mica separata. */
    max-height: none; }

  .navbar-nav .open .dropdown-menu > li > a,
  .navbar-nav .open .dropdown-menu .dropdown-header {
    padding-left: 0px; }

  .navbar-right .dropdown-menu > li > a img {
    padding-right: 15px; }

  .navbar-nav .open .dropdown-menu {
    padding-left: 15px; }

  /* comutatorul de limba (RO/EN/FR) are propriile reguli de pozitionare
     pentru desktop (dropdown "plutitor", ancorat in dreapta) care castiga
     in fata resetului de mai sus facut de bootstrap pentru mobil (aceeasi
     specificitate, dar regulile de mai jos sunt definite in afara acestui
     media query, deci ies "in fata" la o simpla suprascriere) -- fara
     asta, pe mobil RO/EN/FR se lipeau de marginea stanga a ecranului, fara
     nicio indentare, spre deosebire de toate celelalte dropdown-uri */
  #navbar .navbar-lang-switch {
    position: static; }

  #navbar .navbar-lang-switch > .dropdown-menu {
    position: static;
    left: auto;
    right: auto;
    min-width: 0;
    width: 100%;
    padding-left: 15px; }

  #navbar .navbar-lang-switch > .dropdown-menu > li > a {
    padding-left: 0; } }

@media (min-width: 768px) and (max-width: 991px) {
  .navbar-default .navbar-nav > li {
    margin-right: 8px; } }

/* Intre 992-1199px (breakpoint-ul Bootstrap "md", container 970px), cele
   9 iteme + comutatorul de limba nu incapeau pe un rand cu spatierea
   normala -- restrans usor DOAR in acest interval (nu afecteaza deloc
   aspectul la >=1200px, unde arata identic cu productia). */
@media (min-width: 992px) and (max-width: 1199px) {
  .navbar-default .navbar-nav > li {
    margin-right: 1px; }
  .navbar-default .navbar-nav > li > a {
    padding-left: 3px;
    padding-right: 3px;
    font-size: 12px;
    letter-spacing: 0.03em; } }
