@import url('https://fonts.googleapis.com/css?family=Cabin:400,500,600,700|Montserrat:300,400,500,600,700,800,900|Open+Sans:300,400,600,700,800');
/* ---------------------------------------------------------------------------- */
/* ------------------------------------Reset----------------------------------- */
/* ---------------------------------------------------------------------------- */
a,abbr,acronym,address,applet,article,aside,audio,b,blockquote,big,body,center,canvas,caption,cite,code,command,datalist,dd,del,details,dfn,dl,div,dt,em,embed,fieldset,figcaption,figure,font,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,keygen,label,legend,li,meter,nav,object,ol,output,p,pre,progress,q,s,samp,section,small,span,source,strike,strong,sub,sup,table,tbody,tfoot,thead,th,tr,tdvideo,tt,u,ul,var{background:transparent;border:0 none;font-size:100%;margin:0;padding:0;border:0;outline:0;vertical-align:top;}ol, ul {list-style:none;}blockquote, q {quotes:none;}table, table td {padding:0;border:none;border-collapse:collapse;}img {vertical-align:top;}embed {vertical-align:top;}
article, aside, audio, canvas, command, datalist, details, embed, figcaption, figure, footer, header, hgroup, keygen, meter, nav, output, progress, section, source, video {display:block;}
mark, rp, rt, ruby, summary, time {display:inline;}
input, textarea {border:0; padding:0; margin:0; outline: 0;}
iframe {border:0; margin:0; padding:0;}
input, textarea, select {margin:0; padding:0px;}


/* ---------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------- */
* {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}

::-moz-selection{background: #777783 none repeat scroll 0 0;color: #fff;text-shadow:none}
::selection{background: #777783 none repeat scroll 0 0;color: #fff;text-shadow:none}

/* ---------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------- */

html {-webkit-text-size-adjust: none;}
.video embed,.video object,.video iframe {width: 100%;height: auto;}
img{max-width:100%;	height: auto;width: auto\9; /* ie8 */}

a{color: #777783;text-decoration: none;-moz-transition: 0.3s;
    -ms-transition: 0.3s;
    transition: 0.3s;
	transition-duration: 0.3s;}
a:hover {color: #777783;}

h1, h2 	{font-size: 25px;line-height: 25px;}
h3, h4	{font-size: 20px;line-height: 20px;}
h5, h6	{font-size: 16px;line-height: 16px;}
h1,h2,h3,h4,h5,h6{letter-spacing: 2.5px;font-weight: 500;line-height:1.1; color: #141414;}

p{margin: 10px 0;color: #777;}

input:not([type]), input[type="color"], input[type="email"], input[type="number"], input[type="password"], input[type="tel"], input[type="url"], input[type="text"], input[type="search"], textarea, select {height: 45px;padding-left: 20px;border: 1px solid #ddd;border-radius: 0;box-shadow: none;line-height: 22px;letter-spacing: .5px;-webkit-transition: border-color 0.5s;transition: border-color 0.5s;width: 100%;margin: 7px 0;}
input:focus, input:hover, textarea:hover, select:hover, textarea:focus, select:focus {outline: none;box-shadow: none;border-color: #777;}

/* .post{} */
.post:after, .post:before, article:after, article:before, section:after, section:before{clear: both; content: '\0020'; display: block; visibility: hidden; width: 0; height: 0;}

.clear{content: "\0020"; display: block; height: 0; clear: both; visibility: hidden; }
.clearfix:after, .clearfix:before{clear: both; content: '\0020'; display: block; visibility: hidden; width: 0; height: 0;}

.list-inline li{display: inline-block;}

/* --Line-- */
hr{ margin: 20px auto 0; padding: 0; max-width: 210px;border: 0; border-top: double 4px;text-align: center;display: block; line-height: 1px; height: auto;-webkit-box-sizing: content-box;-moz-box-sizing: content-box;-ms-box-sizing: content-box;-o-box-sizing: content-box;box-sizing: content-box;}

hr.line01:after, 
hr.line02:after,
hr.line03:after{content: url(../images/rose.png);display: inline-block;position: relative;top: -12px;padding: 0 10px;}

hr.line01 {border-color: #111;}
hr.line01:after {color: #111;background-color: #F7F7F7;}

hr.line02 {border-color: #111;}
hr.line02:after {color: #111;background-color: #ffffff;}

hr.line03 {border-color: #fff;}
hr.line03:after {color: #fff;background-color: #303231;}



/* ---------------------------------------------------------------------------- */
/* ----------------------------------Html-Body--------------------------------- */
/* ---------------------------------------------------------------------------- */
html, body {height: 100%;width:100%; padding:0; margin:0;}
body {background: #fff;font-family: "Montserrat", Helvetica, sans-serif;font-size: 14px;font-weight: 300;letter-spacing: 0.2px;line-height: 1.7em;color: #777;}

/* body.index-page{}
body.sub-page{} */
/*Значення "center/cover" вказує браузеру центрувати зображення по горизонталі та масштабувати його так, щоб воно повністю покривало заданий фоновий елемент, зберігаючи при цьому співвідношення сторін */
body.sub-page header .main-header{height: 40vh;background: url(../images/hero.jpg) center / cover;}
/* body.sub-page header .main-header{height: 40vh;background: url(../images/hero.jpg) center center;} */
body.sub-page-ers header .main-header{height: 40vh;background: url(../images/hero_ers.jpg) center / cover;}
body.sub-page-onmu header .main-header{height: 40vh;background: url(../images/hero_onmu.jpg) center / cover;}
body.sub-page-dry header .main-header{height: 40vh;background: url(../images/hero_dry.jpg) center / cover;}
body.sub-page-oil header .main-header{height: 40vh;background: url(../images/hero_oil.jpg) center / cover;}
body.sub-page-ferry header .main-header{height: 40vh;background: url(../images/hero_ferry.jpg) center / cover;}
body.sub-page-pass header .main-header{height: 40vh;background: url(../images/hero_pass.jpg) center / cover;}
body.sub-page-spec header .main-header{height: 40vh;background: url(../images/hero_spec.jpg) center / cover;}
body.sub-page-tech header .main-header{height: 40vh;background: url(../images/hero_tech.jpg) center / cover;}
body.sub-page-tugs header .main-header{height: 40vh;background: url(../images/hero_tugs.jpg) center / cover;}
body.sub-page-fish header .main-header{height: 40vh;background: url(../images/hero_fish.jpg) center / cover;}
body.sub-page-lstcrs header .main-header{height: 40vh;background: url(../images/hero_lstcrs.jpg) center / cover;}
body.sub-page-cont header .main-header{height: 40vh;background: url(../images/hero-wow.jpg) center / cover;}
body.sub-page header .main-header .hero-lead{margin-bottom: 0}
body .wrap-body{position: relative;}


body .wrap-body #page-top{position: fixed;right: 40px;bottom: 40px;z-index: 999;}

@media screen and (max-width: 768px) {
    body .wrap-body #page-top {
        right: 20px; /* такой же отступ, как у кнопки вниз */
        bottom: 20px; /* можно уменьшить, чтобы не перекрывались */
    }
}


/* ---------------------------------------------------------------------------- */
/* -----------------------------------Header----------------------------------- */
/* ---------------------------------------------------------------------------- */

/* Десктоп-версия */
@media (min-width: 769px) {
  .location-intro {
    position: fixed;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 99999;
    pointer-events: none;    /* не мешает кликам */
    isolation: isolate;      /* важное: создаёт отдельный blend-контекст */
    background: rgba(0,0,0,0.85);
    overflow: hidden;
    animation: mebContainerFade 3.5s ease forwards;
    animation-delay: 0.5s;
  }

  .location-intro h1 {
    font-family: 'Anton', sans-serif;
    font-size: clamp(48px, 11vw, 220px);
    line-height: 1;
    margin: 0;
    letter-spacing: .02em;
    text-transform: uppercase;

    /* ====== Ключи для "дырки" ======
       - Заливка у этого элемента должна быть НЕпрозрачной (alpha > 0),
         чтобы mix-blend-mode: destination-out мог вырезать её из оверлея.
       - Заполняющий слой вырежет фон, но мы его не увидим (слой будет вычтен).
    */
    color: #ffffff;                    /* must be opaque */
    mix-blend-mode: destination-out;   /* вырезает форму текста из overlay */

    position: relative;
    transform: translateX(100%);
    animation: mebSlideIn 4s cubic-bezier(.22,.9,.35,1) forwards;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }

  /* Псевдоэлемент поверх для видимой белой обводки (без заливки) */
  .location-intro h1::after {
    content: attr(data-text);
    position: absolute;
    inset: 0;
    color: transparent;               /* внутри букв — прозрачный */
    -webkit-text-stroke: 3px white;   /* обводка (для Chrome/Safari) */
    /*text-stroke: 3px white;            запас, может подчёркиваться в VSCode */
    pointer-events: none;
    transform-origin: 50% 50%;
    animation: mebSlideIn 4.5s cubic-bezier(.22,.9,.35,1) forwards; /* синхронизируем анимацию */
    
  }

  /* Анимация: выезд справа -> центр -> масштаб -> растворение */
  @keyframes mebSlideIn {
    0%   { transform: translateX(100%) scale(1); opacity: 0; }
    40%  { transform: translateX(0)    scale(1); opacity: 1; }
    100% { transform: translateX(0)    scale(3.6); opacity: 0; }
  }

  /* Контейнер исчезает в конце (чтобы снять overlay) */
  @keyframes mebContainerFade {
    0%   { opacity: 1; visibility: visible; }
    85%  { opacity: 1; visibility: visible; }
    100% { opacity: 0; visibility: hidden; }
  }
}

/* Мобильные — отключаем */
@media (max-width: 768px) {
  .location-intro { display: none; }
}





/* логотип закріпляти у шапці? */
.logo {
	position: relative;
	top: 30px;
	left: 0;
	right: 0;
	z-index: 776;
  }

  /* додаємо стиль для лінії */
  .scroll-line {
	height: 5px;
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	background: linear-gradient(to right, transparent 0%, transparent 100%);
  }
  
header{z-index: 2;position: relative;}

.logo img {
	filter: blur(0.1px); /* ефект розмиття */
	opacity: 0.78; /* Зменшення прозорості */
	padding: 20px;
  }

  @media screen and (max-width: 768px) {
  .logo {
    width: 100%;
    text-align: left; /* вирівнює вліво */
    margin-top: 30px; /* ⬅️ Ось ця частина опускає логотип вниз */
    padding-left: 10px; /* ⬅️ трохи відступити від краю */
    position: relative; /* вместо static */
  }

  .logo img {
    max-width: 120px;
    height: auto;
    padding: 0;
    filter: blur(0);
    opacity: 1;
  }
}
/* Общие стили для видео */

.desktop-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
object-fit: cover; /* Видео заполняет контейнер, обрезая излишки */
    z-index: 700; /* Чтобы видео было под контентом */
    display: none; /* По умолчанию видео скрыто */
}

/* Стили для мобильных устройств (до 768px) */
@media (max-width: 768px) {
    .desktop-video {
        display: none; /* Видео остается скрытым на мобильных */
    }

    header .main-header {
        background: url(../images/main.jpg) center center;
        background-size: cover; /* Картинка используется на мобильных */
    }
}

/* Стили для десктопов (от 769px) */
@media (min-width: 769px) {
    .desktop-video {
        display: block; /* Видео показывается на десктопах */
    }

    header .main-header {
        background: none; /* Убираем фоновую картинку */
    }
}


/* header .wrap-header{} */
/* Улучшаем читаемость и стиль текста */
.main-header .h-alt.hero-subheading {
  margin-bottom: 20px;
  color: #fff;
  font-weight: 500;
  font-size: 1.6em;
  letter-spacing: 4px;
  text-transform: uppercase;
  text-shadow: 0px 3px 8px rgba(0,0,0,0.6); /* лёгкая тень */
  opacity: 0;
  transform: translateY(30px);
  animation: fadeUp 8.8s ease forwards 1s; /* плавное появление */
}

/* Анимация */
@keyframes fadeUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

header .main-header{position: relative;height: 100vh;width: 100%;background: url(../images/main.jpg) center center;background-size: cover;}

.main-header .bg-overlay{position: absolute;background: rgba(45, 50, 56, 0.4);width: 100%;height: 100%;top: 0;left: 0;}

.main-header .hero-content-wrapper{display: table;position: absolute;top: 0;left: 0;width: 100%;height: 100%;padding-left: 10%;transition: opacity 1s ease 0s, transform 1s ease 0s;opacity: 1;z-index: 701;}
.main-header .hero-content-wrapper .hero-content{display: table-cell;width: 100%;height: 100%;vertical-align: middle;}
.main-header .hero-lead{font-size: 6em;font-weight: 700;letter-spacing: 2px;color: #ececec;margin-bottom: 50px;}
.main-header .h-alt{margin-bottom: 20px;color: #fff;font-weight: 400;font-size: 1.3em;letter-spacing: 3px;text-transform: uppercase}
/* .main-header .button-skin{background: #777783;border:2px solid #777783;}
.main-header .button-skin:hover{background: transparent;color: #fff;border:2px solid #fff;} */
.main-header .button-skin {
  background: transparent;
  color: #fff;
  border: 2px solid #fff;
  transition: all 0.4s ease; /* плавный переход */
}

.main-header .button-skin:hover {
  background: linear-gradient(135deg, #777783, #a1a1aa); /* серый градиент */
  border: 2px solid transparent; /* убираем резкий бордер */
  color: #fff; /* текст остаётся белым */
  box-shadow: 0 4px 12px rgba(0,0,0,0.3); /* лёгкая тень */
}

/* Только на десктопах */
@media (min-width: 769px) {
  .main-header .button-skin {
    font-weight: 700; /* жирный */
  }
}

/* На мобилках — обычный */
@media (max-width: 768px) {
  .main-header .button-skin {
    font-weight: 400; /* нормальный */
  }
}

@media screen and (max-width: 768px) {
  .main-header .button-skin {
    margin-top: -5px; /* ⬅️ Підіймає кнопку вгору на 20px */
  }
}

@media (max-width: 768px) {
  header .main-header {
    background: url(../images/main-mobile.jpg) center top / cover no-repeat;
  }
}

.main-header .hero-content-wrapper.remove {-moz-transform: translateY(3rem);-webkit-transform: translateY(3rem);-ms-transform: translateY(3rem);transform: translateY(3rem);-moz-transition: all 0.5s ease-in-out;-webkit-transition: all 0.5s ease-in-out;-ms-transition: all 0.5s ease-in-out;transition: all 0.5s ease-in-out;opacity: 0;visibility: hidden;}

.main-header .scroller {bottom: 15px;color: rgba(235, 235, 235, 0.5);display: inline-block;font-size: 40px;left: 0;margin: 0 auto;position: absolute;right: 0;text-align: center;width: 120px;}
.main-header .scroller:focus {color: inherit;text-decoration: none;}
.main-header .scroller:hover {color: #ebebeb;}
.main-header .scroller:hover .scroller-text {opacity: 1;transform: translateY(-10px);}
.main-header .scroller:hover .scroller-button {border: 2px solid #ebebeb;}
.main-header .scroller .scroller-text {display: block;font-size: 10px;letter-spacing: 2.5px;text-transform: uppercase;color: #ececec;-webkit-transform: translateY(5px);-ms-transform: translateY(5px);transform: translateY(5px);opacity: 0;-webkit-transition: all 0.3s;transition: all 0.3s;}
.main-header .scroller .scroller-button{border: 2px solid rgba(235, 235, 235, 0.5);display: inline-block;padding: 8px 3px 5px;border-radius: 20px;font-size: 0.8em;}

@media screen and (max-width: 768px) {
    .main-header .hero-content-wrapper {
        padding-left: 5%; /* Уменьшить отступы */
        top: 10%; /* Опустить контент ниже */
    }
    .main-header .hero-lead {
        font-size: 3em; /* Уменьшить размер текста */
    }
    .main-header .h-alt {
        font-size: 1em;
    }
    .main-header .button-skin {
        font-size: 0.9em;
    }
	.main-header .scroller {
    left: auto;
    right: 20px; /* регулируемый отступ справа */
    margin: 0;
    text-align: right;
	z-index: 999;
  }
}

@media (max-width: 992px) {
  .main-header .hero-lead{font-size: 4.7em;}
.main-header .h-alt{font-size: 1em;}
}
@media (max-width: 767px) {
	header .main-header{height: 70vh;}
  .main-header .hero-lead{font-size: 3em;}
}
@media (max-width: 400px) {
  .main-header .hero-lead{font-size: 2.5em;}
}

/* ---------------------------------------------------------------------------- */
/* ----------------------------table --> "grid" format------------------------- */
/* ---------------------------------------------------------------------------- */
@media (max-width: 768px) {
  table, thead, tbody, th, td, tr {
    all: unset;
  }

  table {
    width: 100%;
  }

  tbody tr {
    display: grid;
    grid-template-columns: 1fr 2fr;
    row-gap: 8px;
    column-gap: 10px;
    margin-bottom: 15px;
    padding: 10px;
    border: 1px solid #ccc;
    background: #f9f9f9;
  }

  td {
    padding: 2px 0;
  }

  td.label {
    font-weight: bold;
    color: #333;
    background: #f0f0f0;
  }
}


/* ---------------------------------------------------------------------------- */
/* ----------------------------------News--------------------------------- */
/* ---------------------------------------------------------------------------- */
.imagenews {
	display: block; /* Встановлюємо відображення картинки як блоковий елемент */
	max-width: 100%; /* Встановлюємо максимальну ширину картинки на випадок, якщо вона буде більшою, ніж 640 пікселів */
	height: auto; /* Встановлюємо автоматичну висоту, щоб зберегти пропорції зображення */
	margin: 0 auto; /* Встановлюємо автоматичний відступ зверху та знизу в 0, а відступи ліворуч та праворуч будуть обчислені автоматично, щоб розмістити картинку по центру */
	margin-bottom: 20px; /* Додаємо відступ вниз від картинки для поділу її від тексту */
  }

  .news-list {
	padding: 20px;
	border: 1px solid #ccc;
	border-radius: 5px;
	background-color: #f9f9f9;
  }
  
  .news-list-heading {
	margin: 0;
	font-size: 24px;
	font-weight: bold;
  }
  
  .news-list-item {
	margin-bottom: 10px;
	padding: 10px;
	background-color: #fff;
	box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  }
  
  .news-list-item-date {
	display: block;
	margin-bottom: 5px;
	font-size: 18px;
	font-weight: bold;
  }
  
  .news-list-subitems {
	list-style: none;
	padding: 0;
	margin: 0;
  }
  
  .news-list-subitem {
	margin-bottom: 5px;
  }
  
  .news-list-subitem a {
	color: #333;
	text-decoration: none;
	font-size: 16px;
  }
  
  .news-list-subitem a:hover {
	text-decoration: underline;
  }
  
  .modal {
	display: none; 
	position: fixed; 
	z-index: 1; 
	padding-top: 100px; 
	left: 0;
	top: 0;
	width: 100%; 
	height: 100%; 
	overflow: auto; 
	background-color: rgba(0,0,0,0.5); 
  }
  
  .modal-content {
	margin: auto;
	display: block;
	width: 80%;
	max-width: 700px;
  }
  
  .modal-image {
	width: 100%;
	height: auto;
  }
  
  
/* ---------------------------------------------------------------------------- */
/* ----------------------------------Container--------------------------------- */
/* ---------------------------------------------------------------------------- */
.search-input {
  margin: 10px 0;
  padding: 5px;
  width: 100%;
  
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  color: inherit;
  
  border: 1px solid #ccc;
  border-radius: 3px;
  box-sizing: border-box;

  transition: border-color 0.7s ease, box-shadow 0.3s ease; /* Плавный переход */
}

.search-input:focus {
  outline: none;
  border-color: #007acc; /* синий цвет */
  box-shadow: 0 0 8px rgba(0, 122, 204, 0.5);
}

 /* Встановлюємо параметри таблиці */
  table {
	border-collapse: collapse;
	width: 100%;
	margin: 0 auto;
  }
  
  th, td {
	border: 1px solid #ccc;
	padding: 10px;
	text-align: center;
  }
  
  th {
	background-color: #f0f0f0;
	font-weight: bold;
 }
  
  tr:nth-child(even) {
	background-color: #f9f9f9;
  }
  
  tr:hover {
	background-color: #ddd;
  }
  
  td:hover {
	background-color: rgb(235, 232, 77);
  }
   
#page-content {
    position: relative;
    overflow: visible;
    z-index: 1;
    background: #ffffff;
    box-shadow: none; /* ← убирает серый градиент */
}
#container .wrap-container{background: #ffffff;}

/* ---content-box--- */
/* .content-box {} */
.content-box .wrap-box {padding:100px 10px; position: relative;}
.content-box .header {text-align: center; margin: 20px 0 90px;text-transform: uppercase;}
.content-box .header h2{font-size: 1.5em;letter-spacing: 4px;color: #111;}
.content-box .header .wrapper{padding: 5px; display: inline-block;}
.content-box .header .intro {display: block;font-weight: 300;color: #999;margin-top: 25px;letter-spacing: 2.5px;}

.content-box.box-style-1{background: #f7f7f7;}
.content-box.box-style-2{background: url(../images/bg-2.jpg) no-repeat center center;position: relative;}
.content-box.box-style-2:before{position: absolute;content: ""; height: 100%; width: 100%;top: 0;left: 0;right: 0;bottom: 0;visibility: initial;}
.content-box.box-style-3{background: url(../images/bg-3.jpg) fixed no-repeat center center;position: relative;}
.content-box.box-style-3:before{position: absolute;content: "";background: rgba(79, 90, 128, 0.4); height: 100%; width: 100%;top: 0;left: 0;right: 0;bottom: 0;visibility: initial;}

/* ---------------------------------------------------------------------------- */
/* ------------------------------------Box 1----------------------------------- */
/* ---------------------------------------------------------------------------- */
/* .content-box.box-1 {} */
.content-box.box-1 .ft-item{padding: 0 20px 40px;}
.content-box.box-1 .ft-icon{display:inline-block;margin: 10px 0;width: 70px;height: 70px;font-size: 28px;line-height: 28px;text-align: center;box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.2);border: 1px solid #f8f8f8;border-radius: 50%;background: #fff;}
@media only screen and (max-width: 767px) {
	.ft-image-center{max-width: 400px;margin: 30px auto;display: block;}
}
/* ---------------------------------------------------------------------------- */
/* ------------------------------------Box 2----------------------------------- */
/* ---------------------------------------------------------------------------- */
.full-width-bg {
	position: relative;
	overflow: hidden;
}

.background-image {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 450px; /* Увеличьте по желанию: 700px, 800px и т.д. */
	background-image: url(../images/bg-2.jpg);
	background-size: cover;
	background-position: center;
	z-index: 1;
}

.content-box.box-2 .wrap-box {
	position: relative;
	z-index: 2;
	padding: 0;
	height: 450px;
	display: flex;
	justify-content: center; /* центрируем */
	align-items: flex-start;
}

.content-box.box-2 blockquote {
	position: relative;
	color: #ffffff;
	text-align: center;
	background: rgba(20, 20, 20, 0.4); /* тёмно-серый с лёгкой прозрачностью */
	backdrop-filter: blur(6px);        /* эффект стекла (поддерживается в большинстве браузеров) */
	padding: 30px 40px;
	font-size: 28px;
	font-weight: 500;
	width: 100%;
	max-width: 700px;
	margin: 0 auto;
	border-radius: 16px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2); /* мягкая тень */
	line-height: 1.4;
	letter-spacing: 0.3px;
	transition: all 0.3s ease-in-out;
}

.content-box.box-2 blockquote p {
	margin: 0 0 15px 0;
	font-size: 22px;
	color: #f0f0f0;
}

.content-box.box-2 blockquote p:first-child {
	font-weight: 600;
	font-size: 26px;
	color: #ffffff;
}


.full-width-text {
	width: 100%;
}

.content-box.box-2 blockquote:before,
.content-box.box-2 blockquote:after {
	display: none; /* Убираем кавычки */
}

/* Адаптация под мобильные устройства */
@media only screen and (max-width: 768px) {
	.background-image {
		height: 300px; /* уменьшаем высоту фото на маленьких экранах */
	}

	.content-box.box-2 .wrap-box {
		height: 300px; /* тоже уменьшаем */
		justify-content: center; /* текст по центру */
		align-items: flex-start;
	}

	.content-box.box-2 blockquote {
		position: relative; /* убираем absolute — пусть идёт по потоку */
		width: 100%;
		max-width: 100%;
		padding: 20px 20px;
		text-align: center;
		font-size: 20px;
		color: #007BFF !important;
		text-shadow: 0 0 5px #ffffff;
	}
	
	.content-box.box-2 blockquote p {
		font-size: 18px;
		line-height: 1.4;
	}
}
  

/* ---------------------------------------------------------------------------- */
/* ------------------------------------Box 3----------------------------------- */
/* ---------------------------------------------------------------------------- */
/* .content-box.box-3 {} */
.product{background: #fff;transition: .3s;overflow: hidden;margin: 0 auto 30px;max-width: 400px}	
.product:hover{box-shadow: 0 20px 60px 0 rgba(0, 0, 0, 0.1);transform: translateY(-5px);}
.product h2.product-title{font-size: 16px;letter-spacing: -.3px;float: left;margin: 0 0 15px 25px;width: auto;text-transform: uppercase;max-width: calc(100% - 150px);overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}
.product h2.product-title a{color: #141414;}
.product h2.product-title a:hover{color: #777783;}	
.product .categories {max-width: calc(100% - 125px);overflow: hidden;text-overflow: ellipsis;white-space: nowrap;float: left;margin: 0 6px 0 25px;display: block;font-size: 13px;text-transform: capitalize;}
.product .product-rating{float: right;font-size: 15px;margin-right: 25px;color: #777783;letter-spacing: -1px;line-height: 1;}
.product .price {display: block;font-weight: 800;font-size: 16px;float: right;color: #141414;margin-right: 25px;}
.product-content{padding: 20px 0 30px;}

@media (max-width: 1200px) {
	.product h2.product-title,
	.product .categories{margin-left: 30px;}
	.product .product-rating,
	.product .price{margin-right: 30px;}
}

/* ---------------------------------------------------------------------------- */
/* ------------------------------------Box 4----------------------------------- */
/* ---------------------------------------------------------------------------- */
.content-box.box-4 .wrap-box{padding: 100px 0 0;}
.content-box.box-4 .button-skin {background: #fff;color: #111;border:2px solid #fff;}
.content-box.box-4 .button-skin:hover{background: transparent;color: #fff;border:2px solid #fff;}

/* Мобільні пристрої */
@media screen and (max-width: 767px) {
	.sm-1-2 {
		width: 100%;
		float: none;
		margin-bottom: 20px;
	}
}

/* Планшети */
@media screen and (min-width: 768px) and (max-width: 991px) {
	.md-1-3 {
		width: 33.3333%;
		float: left;
	}
}

/* Десктоп */
@media screen and (min-width: 992px) {
	.lg-1-4 {
		width: 25%;
		float: left;
	}
}


/* ---------------------------------------------------------------------------- */
/* ------------------------------------Box 5----------------------------------- */
/* ---------------------------------------------------------------------------- */
.content-box.box-5 .box-entry {color: #4d4d4d; margin: 0 auto 30px;background: #fff;transition: all 300ms ease 0s;border: 1px solid #eee;max-width: 400px;}
.content-box.box-5 .box-entry .box-entry-inner{position: relative;z-index: 1;}
.content-box.box-5 .box-entry img{border: none; width: 100%;}
/* .content-box.box-5 .box-entry .entry-details{} */
.content-box.box-5 .box-entry .entry-des {padding: 20px 40px;}
.content-box.box-5 .box-entry .entry-des h3{margin-bottom: 20px;font-size: 1.5em;font-weight: 500;}
.content-box.box-5 .box-entry .entry-des h3 a{color: #141414;}
.content-box.box-5 .box-entry .entry-des span a{margin: 10px 0; display:block;color: #aaa;font-size: 1em;}
.content-box.box-5 .box-entry {
	height: 400px; /* фиксированная высота в пикселях */
	/* или */
	height: 100%; /* фиксированная высота в процентах */
  }
  
.content-box.box-5 .pro-price-content{display: inline-block;font-size: 24px;font-weight: 500;margin-bottom: 0;margin-top: 7px;}
.content-box.box-5 .box-entry:hover{box-shadow: 0 20px 60px 0 rgba(0, 0, 0, 0.15);margin-top: -5px;}

.content-box.box-5 .button-skin {margin: 30px 0 10px;}

/* ---------------------------------------------------------------------------- */
/* ------------------------------------Box 6----------------------------------- */
/* ---------------------------------------------------------------------------- */
/* .content-box.box-6{} */
.content-box.box-6 .clients-logo{text-align: center;}
.content-box.box-6 .clients-logo img{max-width: 140px;}
.content-box.box-6 .header h2{color: #fff;}

/* ---------------------------------------------------------------------------- */
/* ------------------------------------Box 7----------------------------------- */
/* ---------------------------------------------------------------------------- */
.content-box.box-7 {text-align: center;}
.content-box.box-7 .wrap-box{padding: 50px 10px 20px;}
/* .content-box.box-7 h3{} */
.content-box.box-7 p{font-size: 15px;}
.content-box.box-7 i.fas{font-size: 24px; height: 65px; width: 65px; background: #777783; color: #fff;border-radius: 50%;margin: 0 20px 30px 0;padding-top: 20px;float:right;}
@media  (max-width: 767px){
	.content-box.box-7 i.fas{float: none; margin: 20px 0 10px 0;}
}

/* ---------------------------------------------------------------------------- */
/* ------------------------------------Анімація Font Awesome------------------- */
/* ---------------------------------------------------------------------------- */
.fa-envelope {
	animation: shake 3s infinite;
}

@keyframes shake {
	0% {
	  transform: translateX(0) rotate(0);
	}
	20% {
	  transform: translateX(-5px) rotate(-5deg);
	}
	40% {
	  transform: translateX(5px) rotate(5deg);
	}
	60% {
	  transform: translateX(-5px) rotate(-5deg);
	}
	80% {
	  transform: translateX(5px) rotate(5deg);
	}
	100% {
	  transform: translateX(0) rotate(45deg);
	}
  }
 
  .fa-map-marker {
	animation: beat-fade 2s infinite;
}

@keyframes beat-fade {
	0% {
	  opacity: 0;
	  transform: scale(1) rotate(0deg);
	}
	50% {
	  opacity: 1;
	  transform: scale(1.1) rotate(45deg);
	}
	100% {
	  opacity: 0;
	  transform: scale(1) rotate(0deg);
	}
  }
  
  .animated-beat-fade {
	animation-name: beat-fade;
	animation-duration: 2s;
	animation-timing-function: ease-in-out;
	animation-delay: 0s;
	animation-iteration-count: infinite;
	animation-direction: alternate;
	animation-fill-mode: both;
  }
  
  .fa-mobile-alt {
	animation: bounce 2s infinite;
  }
  
  @keyframes bounce {
	0% {
	  transform: translateY(0);
	}
	50% {
	  transform: translateY(-10px);
	}
	100% {
	  transform: translateY(0);
	}
  }
  
  .animated-bounce {
	animation-name: bounce;
	animation-duration: 1s;
	animation-fill-mode: both;
	animation-iteration-count: infinite;
	animation-timing-function: ease-in-out;
  }
  
/* ---------------------------------------------------------------------------- */
/* ------------------------------------PDF bulletin---------------------------- */
/* ---------------------------------------------------------------------------- */
.pdf-thumbnails {
	display: grid;
	grid-template-columns: repeat(8, 1fr);
	grid-gap: 20px;
  }
  
  .pdf-thumbnails a {
	display: block;
	/* border: 1px solid #ccc; */
	border: none;
	width: 86px; /* здесь указываем ширину миниатюры */
  	height: 60px; /* здесь указываем высоту миниатюры */
  }
  
  .pdf-thumbnails img {
	width: 100%;
	height: 100%;
	object-fit: cover; /* эта строка позволяет увеличивать или уменьшать размеры изображения, чтобы оно заполняло рамку */
  }

  .pdf-thumbnails a:hover {
  transform: scale(1.05);
  transition: transform .2s;
  z-index: 1;
  }

.pdf-thumbnails button {
  background-color: #477bad;
  color: white;
  border: none;
  border-radius: 4px;
  padding: 5px 10px;
  font-size: 12px;
  cursor: pointer;
  transition: background-color 0.2s, transform 0.2s;
}

.pdf-thumbnails button:hover {
  background-color: #376090;
  transform: scale(1.05);
}

@media (max-width: 480px) {
  .pdf-thumbnails button {
    padding: 4px 8px;
    font-size: 11px;
  }
}

  @media (max-width: 1024px) {
  .pdf-thumbnails {
    grid-template-columns: repeat(6, 1fr);
  }
}

@media (max-width: 768px) {
  .pdf-thumbnails {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 480px) {
  .pdf-thumbnails {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* ---------------------------------------------------------------------------- */
/* ------------------------------------Projects images------------------------- */
/* ---------------------------------------------------------------------------- */
.gallery {
	display: flex;
	flex-direction: column;
	align-items: center;
  }
  
  .main-image {
	max-width: 100%;
	height: auto;
  }
  
  .thumbnails {
	display: flex;
	justify-content: center;
	margin-top: 20px;
	display: grid;
	grid-template-columns: repeat(5, 5fr); /* П'ять стовпців з рівним розміром */
	grid-gap: 10px; /* Відступ між мініатюрами */
  }
  
  .thumbnail {
	width: 120px;
	height: 80px;
	margin-right: 10px;
	filter: grayscale(100%);
	cursor: pointer;
	transition: filter 0.5s ease; /* Добавляем плавное затухание (transition) для свойства filter */
  }
  
  .thumbnail:hover {
	filter: grayscale(0%); /* При наведении убираем затухание */
  }
  
  .active-thumbnail {
	filter: grayscale(0%);
  }
  
  @media screen and (max-width: 768px) {
	.thumbnail {
	  width: 80px;
	  height: 80px;
	}
  }

/* ---------------------------------------------------------------------------- */
/* ------------------------------------Contacts---------------------------- */
/* ---------------------------------------------------------------------------- */
.contact-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  justify-content: space-between;
}

.contacts {
  flex: 1;
  min-width: 280px;
  max-width: 40%;
  background-color: #fff;
  padding: 20px;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.05);
}
  .contacts h2 {
  font-size: 28px;
  margin-bottom: 20px;
  color: #222;
  border-bottom: 2px solid #0077b5;
  padding-bottom: 5px;
}

.contacts h2 {
  font-size: 28px;
  margin-bottom: 20px;
  color: #222;
  border-bottom: 2px solid #0077b5;
  padding-bottom: 5px;
}

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

.contacts li {
  font-size: 18px;
  margin-bottom: 15px;
  display: flex;
  align-items: center;
  gap: 10px;
}

.contacts li i {
  font-size: 20px;
  color: #0077b5;
}

.contact-form {
  flex: 1;
  min-width: 280px;
  max-width: 55%;
  background-color: #fff;
  padding: 20px;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.05);
}

.contact-form form label {
  display: block;
  margin-bottom: 5px;
  font-weight: bold;
  font-size: 16px;
}

.contact-form input,
.contact-form textarea {
  width: 100%;
  padding: 10px;
  font-size: 16px;
  margin-bottom: 15px;
  border: 1px solid #ccc;
  border-radius: 5px;
}

.crumbs-btn {
  display: block;
  float: left;
  background: #777783;
  text-align: center;
  padding: 10px 30px 10px 40px; /* увеличили вертикальные отступы */
  position: relative;
  margin: 0 20px 0 0;
  font-size: 16px;
  text-decoration: none;
  color: #fff;
  border: none;          /* убираем рамку кнопки */
  cursor: pointer;
  line-height: 1;        /* фиксируем высоту текста */
  height: 40px;          /* задаём фиксированную высоту как у .crumbs ul li a */
}

.crumbs-btn:after {
  content: "";
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
  border-left: 20px solid #777783;
  position: absolute;
  right: -20px;
  top: 0;
  z-index: 1;
  transition: border 0.3s, transform 0.3s;
}

.crumbs-btn:before {
  content: "";
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
  border-left: 20px solid #fff;
  position: absolute;
  left: 0;
  top: 0;
}

.crumbs-btn:hover {
  background: #222;
  color: #fff;
}

.crumbs-btn:hover:after {
  border-left-color: #222;
}



@media screen and (max-width: 768px) {
  .contact-wrapper {
    flex-direction: column;
    gap: 20px;
  }

  .contacts,
  .contact-form {
    max-width: 100%;
  }

  .contact-form input,
  .contact-form textarea {
    padding: 8px;
    font-size: 15px;
  }
}

  
/* ---Article--- */
article.single-post .wrap-post,
.comments-are {
  padding: 30px 20px;
  margin-top: 30px;
}

article {
  border-bottom: 1px solid #ddd;
  margin: 30px 0 40px;
  padding-bottom: 30px;
}
article:last-child {
  border-bottom: none;
}
article:after,
article:before {
  clear: both;
  content: '\0020';
  display: block;
  visibility: hidden;
  width: 0;
  height: 0;
}

article .post-thumbnail-wrap {
  text-align: center;
  width: 100%;
  margin-bottom: 20px;
}
article .post-thumbnail-wrap img {
  width: 100%;
  height: auto;
}

article h2.entry-title {
  font-size: 2em;
  font-weight: 400;
}
article h2.entry-title a {
  color: #141414;
}
article h2.entry-title a:hover {
  color: #555;
}

article .entry-header {
  margin-bottom: 30px;
}
article.single-post .entry-header {
  text-align: center;
}
article.single-post .entry-header h1.entry-title {
  font-size: clamp(1.8rem, 4vw, 2.5rem);
  font-weight: 500;
  color: #004080;
}

article .entry-header .entry-meta {
  margin: 10px 0 20px;
}
article .entry-header .entry-meta a {
  color: #777;
  margin: 5px;
  display: inline-block;
}
article .entry-header .entry-meta a:hover {
  color: #777783;
}
article .entry-header .entry-meta i {
  margin: 3px 5px;
}

article.single-post .entry-content {
  max-width: 1200px;
  margin: 0 auto;
  padding: 30px 20px;
}
article .entry-content p {
  color: #333;
  line-height: 1.7;
  margin-bottom: 1em;
}
article .entry-content blockquote {
  border-left: 3px solid #1c7791;
  margin: 0 50px;
  font-style: italic;
  color: #666;
  padding-left: 20px;
}
article .entry-content ol,
article .entry-content ul {
  margin: 15px 30px;
  padding-left: 0;
}

article .entry-content li {
  margin-bottom: 8px;
  position: relative;
  padding-left: 25px;
}
article .entry-content li::before {
  content: "✔";
  position: absolute;
  left: 0;
  color: #0078d7;
}

.comments-are textarea {
  height: 170px;
}

/* --- Responsive improvements --- */

/* Tablets (<=1024px) */
@media (max-width: 1024px) {
  article.single-post .entry-content {
    max-width: 95%;
    padding: 25px 15px;
  }
  article .entry-content blockquote {
    margin: 0 20px;
  }
}

/* Small tablets / large phones (<=768px) */
@media (max-width: 768px) {
  article.single-post .entry-header h1.entry-title {
    font-size: 1.8rem;
  }
  article h2.entry-title {
    font-size: 1.4rem;
  }
  article .entry-content blockquote {
    margin: 0 15px;
    font-size: 0.95rem;
  }
  article .entry-content ol,
  article .entry-content ul {
    margin: 10px 20px;
  }
}

/* Smartphones (<=540px) */
@media (max-width: 540px) {
  article.single-post .entry-content {
    max-width: 100%;
    padding: 20px 15px;
  }
  article.single-post .entry-header h1.entry-title {
    font-size: 1.5rem;
    line-height: 1.3;
  }
  article .entry-content p {
    font-size: 0.95rem;
  }
  article .entry-content li {
    padding-left: 20px;
  }
}

/* Extra small phones (<=360px) */
@media (max-width: 360px) {
  article.single-post .entry-content {
    padding: 15px 10px;
  }
  article .entry-content p {
    font-size: 0.9rem;
  }
  article.single-post .entry-header h1.entry-title {
    font-size: 1.3rem;
  }
}


/* ---------------------------------------------------------------------------- */
/* ------------------------------------Footer---------------------------------- */
/* ---------------------------------------------------------------------------- */
footer#page-footer{background: #1b1512;position: fixed;top: auto;bottom: 0;left: 0;width: 100%;display:block;}
footer a{color:#999;font-weight: bold;text-shadow: none;}
footer a:hover{color:#fff;}
.widget-title{font-weight: bold;text-transform: uppercase;line-height: 1.38;margin-bottom: 20px;font-size: 14px;color: #eee;}
footer .wrap-footer{padding: 20px 0;}
footer .wrap-footer ul li {margin-bottom: 5px;padding: 10px 0 15px;}
footer .logo img{max-width: 170px;margin-top: 30px;}

@media all and (max-width: 767px){
	footer#page-footer{position: relative;}
	/* footer .col-footer-1,
	footer .col-footer-2,
	footer .col-footer-3,
	footer .col-footer-4 {margin-bottom: 40px;} */
}


/* ---------------------------------------------------------------------------- */
/* --------------------------------Contact-Area-------------------------------- */
/* ---------------------------------------------------------------------------- */
#contact-area{padding-top: 40px;}
#contact-area h1{font-size: 2.5em;margin-bottom: 30px; color: #141414;text-align: center}
#contact-area textarea {height:120px;}

.contact-main_wrapper{padding: 60px 0;}
.contact-main_wrapper h3{margin-top: 30px;font-size: 2.4em;margin-bottom: 20px}
.contact-main_wrapper p{font-size: 1.2em}
.contact-main_wrapper .button-skin{font-size: 1em}
.contact-main_wrapper .success {background: #D8FFC0;padding: 5px 10px 5px 10px;margin: 0px 0px 5px 0px;border: none;font-weight: bold;color: #2E6800;border-left: 3px solid #2E6800;}

.contact-map_wrapper {position: relative;}
.contact-map_wrapper .contact-info-wrapper {background: #fff;left: 0;margin: 0 auto;padding: 70px 110px 40px;position: absolute;right: 0;top: 80px;transition: opacity 0.5s ease 0s, visibility 0.6s ease 0s, margin-top 0.5s ease 0s;}
.contact-map_wrapper .contact-info-wrapper address .address-group {margin-bottom: 40px;}
.contact-map_wrapper .contact-info-wrapper address .address-group span {display: block;margin-bottom: 10px;margin-top: 0;color: #333;}
.contact-map_wrapper .contact-info-wrapper address .address-group a, 
.contact-map_wrapper .contact-info-wrapper address .address-group p {color: #777;display: block;font-weight: 300;margin-bottom: 3px;}
.contact-map_wrapper .contact-info-wrapper address .show-map-link a {display: block;color: #141414;}
.contact-map_wrapper .contact-info-wrapper address .show-map-link a:hover, 
.contact-map_wrapper .contact-info-wrapper address .show-map-link a:focus{text-decoration: none;color: #777;}
.contact-map_wrapper .contact-info-wrapper address .show-map-link i{display:inline-block;padding-right:15px;font-size: 1.6em;}

.contact-map_wrapper .map-open {margin-top: 30px;opacity: 0;visibility: hidden;}
.contact-map_wrapper .show-info-link {height: 50px;left: 0;margin: 0 auto;opacity: 0;position: absolute;right: 0;text-align: center;top: -20px;transition: opacity 0.5s ease 0s, visibility 0.6s ease 0s, top 0.5s ease 0s;visibility: hidden;width: 200px;}
.contact-map_wrapper .show-info-link a {background: #fff;color: #111;display: block;height: 100%;padding-top: 8px;width: 100%;}
.contact-map_wrapper .show-info-link a:hover {background: #F7F7F7;}
.contact-map_wrapper .show-info-link a i {display: inline-block;padding-right: 15px;font-size: 1.6em;}
.contact-map_wrapper .info-open {opacity: 1;top: 0;visibility: visible;}
.contact-map_wrapper form .alert {margin-top: 30px;}

/* ---------------------------------------------------------------------------- */
/* -----------------------------------Button----------------------------------- */
/* ---------------------------------------------------------------------------- */
.button{
	cursor: pointer;
	font-size: 0.8em;
	border:1px solid #ffffff; 
	display: inline-block;
	text-decoration: none;
	margin: 10px 0 5px;
	color: #fff;
	padding: 10px 15px;
	-webkit-transition: all .35s;
	-moz-transition: all .35s;
	transition: all .35s;
	text-shadow: none;
	text-align: center;
}
.button:hover{text-decoration: none; background: #303030;}

.button-skin {background: #777783;color: #fff;padding: 5px 30px;border:2px solid #ffffff;letter-spacing: 2.5px;text-transform: uppercase;font-weight: 300;}
.button-skin:hover{background: transparent;color: #111;border:2px solid #111;}
.button-toTop{font-size: 1.7em;height: 42px;width: 42px;padding: 7px 0 0;border: 2px solid #777783;margin: 0;color: #777783;}
.button-toTop:hover{background: #777783;color: #fff;}


/* ---------------------------------------------------------------------------- */
/* ------------------------------Portfolio Box--------------------------------- */
/* ---------------------------------------------------------------------------- */	
.portfolio-box {display: block;position: relative;margin: auto;overflow: hidden;max-width: 400px}

/****** Zoom Effect ******/
.portfolio-box.zoom-effect .portfolio-box-caption{background: rgba(45, 50, 56,0.2);}
.portfolio-box.zoom-effect img{-webkit-transition: 0.5s ease;transition: 0.5s ease;}
.portfolio-box:hover.zoom-effect img{-webkit-transform:scale(1.1); /* Safari and Chrome */-moz-transform:scale(1.1); /* Firefox */-ms-transform:scale(1.1); /* IE 9 */-o-transform:scale(1.1); /* Opera */transform:scale(1.1);}


.portfolio-box .portfolio-box-caption {display: block;position: absolute;bottom: 0;width: 100%;height: 100%;text-align: center;color: #fff;-webkit-transition: all .35s;-moz-transition: all .35s;transition: all .35s;}
.portfolio-box .portfolio-box-caption .portfolio-box-caption-content {position: absolute;top: 50%;width: 100%;text-align: center;transform: translateY(-50%);}

.portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-button,
.portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-category,
.portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-name {padding: 0 15px;text-transform: uppercase;font-weight: 600;letter-spacing: 2px;text-shadow: 2px 2px #111;}
.portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-category {font-size: 0.85em;color: #f8f8f8;margin-bottom: 10px;}
.portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-name {font-size: 1.5em;margin-bottom: 3px;}
.portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-button{transition: all 1s ease;opacity: 0; height: 0;overflow: hidden;}

.portfolio-box:hover .portfolio-box-caption {opacity: 1;background: rgba(0, 0, 0, .6);}
.portfolio-box:hover .portfolio-box-caption .portfolio-box-caption-content .project-button{opacity: 1;height: auto;}
.portfolio-box:hover .portfolio-box-caption .portfolio-box-caption-content .project-category,
.portfolio-box:hover .portfolio-box-caption .portfolio-box-caption-content .project-name{display: none;}

@media(min-width:768px) {
    
}
@media only screen and (min-width: 450px) and (max-width: 767px){
	.portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-category {
        font-size: 1.2em;
    }
    .portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-name {
        font-size: 2em;
    }
}

/* ---------------------------------------------------------------------------- */
/* ------------------------------------Crumbs---------------------------------- */
/* ---------------------------------------------------------------------------- */
.crumbs {border-bottom: 1px solid #ddd;padding:70px 0 20px 30px;margin-bottom: 40px;}
.crumbs ul {list-style: none;display: inline-table;}
.crumbs ul li {display: inline;}
.crumbs ul li a {display: block;float: left;background: #777783;text-align: center;padding: 7px 30px 8px 40px;position: relative;margin: 0 20px 0 0; font-size: 16px;text-decoration: none;color: #fff;}
.crumbs ul li a:after {content: "";  border-top: 20px solid transparent;border-bottom: 20px solid transparent;border-left: 20px solid #777783;position: absolute; right: -20px; top: 0;z-index: 1;-webkit-transition: border 0.3s, -webkit-transform 0.3s;-moz-transition: border 0.3s, -moz-transform 0.3s;-o-transition: border 0.3s, -o-transform 0.3s;transition: border 0.3s, transform 0.3s;}
.crumbs ul li a:before {content: "";  border-top: 20px solid transparent;border-bottom: 20px solid transparent;border-left: 20px solid #fff;position: absolute; left: 0; top: 0;}
.crumbs ul li:first-child a {border-top-left-radius: 6px; border-bottom-left-radius: 6px;}
.crumbs ul li:first-child a:before {display: none; }
.crumbs ul li:last-child a {padding-right: 40px;padding-left: 50px;border-top-right-radius: 6px; border-bottom-right-radius: 6px;}
.crumbs ul li:last-child a:after {display: none; }		
.crumbs ul li a:hover {background: #222;color: #fff;}
.crumbs ul li a:hover:after {border-left-color: #222;}
.crumbs ul li a:hover:after {border-left-color: #222;}

/* Адаптивный стиль Crumbs */
@media screen and (max-width: 768px) {
  .crumbs {
    padding: 40px 10px 20px 10px;
  }

  .crumbs ul {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 0;
  }

  .crumbs ul li {
    display: block;
    margin: 0;
  }

.crumbs ul li a {
  float: none;
  display: inline-block;
  padding: 7px 15px 8px 15px;
  font-size: 16px;
  text-align: center;
  border-radius: 6px;
  position: relative;
  margin: 0 auto; /* центрирует по горизонтали */
  max-width: 90%;  /* ограничивает, чтобы не разрасталась */
  z-index: 999;
}

  .crumbs ul li a:after,
  .crumbs ul li a:before {
    display: none;
  }
}

@media screen and (max-width: 437px) {
.crumbs ul li a {
  font-size: 15px;
  padding: 6px 12px 7px 12px;
  max-width: 90%;
  margin: 0 auto;
}

  .crumbs {
    padding: 30px 5px 20px 5px;
  }

  .crumbs ul {
    gap: 14px;
  }
}

/* ---------------------------------------------------------------------------- */
/* ----------------------------------Carousel---------------------------------- */
/* ---------------------------------------------------------------------------- */
/* .owl-carousel{} */
.owl-controls .owl-buttons {text-align: center;margin-top: 20px; }
/* .owl-carousel:hover .owl-buttons div {} */
.owl-controls .owl-buttons .owl-prev,
.owl-controls .owl-buttons .owl-next {display: inline-block;margin: 10px 5px;color: #111;border: 2px solid #111;height: 35px;width: 35px;padding-top: 3px;transition: 0.3s;-o-transition: 0.3s;-moz-transition: 0.3s;transition-duration: 0.3s;}
.owl-carousel .owl-buttons i.fas {font-size: 1.8em;line-height: 1}
.owl-controls .owl-buttons .owl-prev:hover,
.owl-controls .owl-buttons .owl-next:hover {color: #fff;background: #777783;border-color: #777783}