/* Table of Content
==================================================
1.    Typography
2.    Sambutan
3.    Berita
4.    Galeri
5.    FAQ & Testimoni
6.    Jam Kerja & Kontak
7.    Global Styles
8.    Top Bar
9.    Header area
10.    Slider
11.    Features
12.    Service
13.    Projects
14.    Intro Area
15.   Call To Action
16.   Content Area
17.   Client
18.   Latest News
19.   Footer
20.   Sub Pages
21.   Pricing Table
22.   Quote Area
23.   Contact Us
24.   News Single
25.   Sidebar
26.   Error Page
27.   Profile Desa(struktur, visimisi, sejarah, dan peta)
*/


/* Typography
================================================== */
body {
  background: #fff;
  color: #626c84;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-family: 'Roboto', sans-serif;
  font-size: 16px;
  line-height: 30px;
}

p {
  font-family: 'Fira Sans', sans-serif;
  font-size: 14px;
  line-height: 24px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: #252a37;
  font-family: 'Roboto', sans-serif;
  font-weight: 700;
}

h1 {
  font-size: 48px;
  line-height: 48px;
}

h2 {
  font-size: 36px;
  line-height: 36px;
}

h3 {
  font-size: 22px;
  margin-bottom: 20px;
}

h4 {
  font-size: 18px;
  line-height: 28px;
}

h5 {
  font-size: 14px;
  line-height: 24px;
}


/* Global styles
================================================== */
html {
  overflow-x: hidden;
  text-rendering: optimizeLegibility;
}

body {
  border: 0;
  margin: 0;
  padding: 0;
}

.body-inner {
  position: relative;
  overflow: hidden;
}

.preload {
  position: fixed;
  background: #fff url(../images/preload.gif) center center no-repeat;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  z-index: 99999;
}

a {
  color: #da0f32;
}
a:link, a:visited {
  text-decoration: none;
}
a:hover {
  text-decoration: none;
  color: #ff0000;
}

.link-more {
  font-weight: 700;
}
.link-more i {
  font-weight: 700;
  top: 2px;
  margin-left: 5px;
  position: relative;
  font-size: 16px;
}
.link-more.color {
  color: #fc6a2a;
}

section,
.section-padding {
  padding: 80px 0;
  position: relative;
  z-index: 3;
}

.no-padding {
  padding: 0 !important;
}

.no-border {
  border: none !important;
}

.ts-padding {
  padding: 70px 50px;
}

.media > .pull-left {
  margin-right: 20px;
}

.gap-100 {
  clear: both;
  height: 100px;
}

.gap-80 {
  clear: both;
  height: 80px;
}

.gap-60 {
  clear: both;
  height: 60px;
}

.gap-40 {
  clear: both;
  height: 40px;
}

.gap-30 {
  clear: both;
  height: 30px;
}

.gap-20 {
  clear: both;
  height: 20px;
}

.gap-15 {
  clear: both;
  height: 15px;
}

.mrtb-40 {
  margin-top: 40px;
  margin-bottom: 40px;
}

@media screen and (min-width: 992px) {
  .mrt-225 {
    margin-top: 225px;
  }
}

@media screen and (min-width: 992px) {
  .mrt-190 {
    margin-top: 190px;
  }
}

@media screen and (min-width: 992px) {
  .mrt-140 {
    margin-top: 140px;
  }
}

@media screen and (min-width: 992px) {
  .mrt-110 {
    margin-top: 110px;
  }
}

.mrt-60 {
  margin-top: 60px;
}

.mrt-40 {
  margin-top: 40px;
}

.mrt-85 {
  margin-top: 85px;
}

.mrt-20 {
  margin-top: 20px;
}

.mrb-20 {
  margin-bottom: 20px;
}

.mrb-40 {
  margin-bottom: 40px;
}

.mrb-60 {
  margin-bottom: 60px;
}

.mr-0 {
  margin: 0 !important;
}

.mrt-0 {
  margin-top: 0 !important;
  margin-bottom: 20px !important;
}

.patb-100 {
  padding: 100px 0 !important;
}

.pab-120 {
  padding-bottom: 120px !important;
}

.pab {
  padding-bottom: 0;
}

a:focus {
  outline: 0;
}

img.pull-left {
  margin-right: 20px;
  margin-bottom: 20px;
}
img.pull-right {
  margin-left: 20px;
  margin-bottom: 20px;
}

.unstyled,
ul,
ol,
li {
  list-style: none;
  margin: 0;
  padding: 0;
}

.solid-bg {
  background: #f5f5f5;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.dark-bg {
  background: #252525;
  color: #fff;
}
.dark-bg h2,
.dark-bg h3 {
  color: #fff;
}

.solid-row {
  background: #f0f0f0;
}

.media-left,
.media > .pull-left {
  padding-right: 20px;
}

/* Background overlay */
.bg-overlay {
  position: relative;
}
.bg-overlay .container {
  position: relative;
  z-index: 1;
}
.bg-overlay:after {
  background-color: rgba(0, 0, 0, 0.75);
  z-index: 0;
  position: absolute;
  content: '';
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.bg-overlay.overlay-color:after {
  background-color: rgba(15, 39, 101, 0.85);
}

/* Pattern */
.bg-pattern-1 {
  position: relative;
  z-index: 2;
}
.bg-pattern-1:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  background: url("../images/pattern/bg_pattern1.png") 100% 100%;
  z-index: -1;
}
@media screen and (max-width: 991px) {
  .bg-pattern-1:after {
    display: none;
  }
}

.bg-pattern-2 {
  position: relative;
  z-index: 2;
}
.bg-pattern-2:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  background: url("../images/pattern/pattern_arrow.png") no-repeat top left;
}
.bg-pattern-2:after {
  background: url("../images/pattern/pattern_box.png") no-repeat bottom right;
  content: "";
  width: 100%;
  height: 100%;
  right: 0;
  bottom: 0;
  position: absolute;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .bg-pattern-2:before, .bg-pattern-2:after {
    display: none;
  }
}

.bg-pattern-3 {
  position: relative;
  z-index: 2;
}
.bg-pattern-3:after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  background: url("../images/pattern/bg_pattern2.png");
  background-size: 100%;
  background-position: center;
  z-index: -1;
}
@media screen and (max-width: 991px) {
  .bg-pattern-3:after {
    display: none;
  }
}

/* Dropcap */
.dropcap {
  font-size: 48px;
  line-height: 60px;
  padding: 0 7px;
  float: left;
  font-weight: 700;
  margin: 5px 15px 5px 0;
  position: relative;
  text-transform: uppercase;
}
.dropcap.primary {
  background: #da0f32;
  color: #fff;
}
.dropcap.secondary {
  background: #3a5371;
  color: #fff;
}

/* Primary Box */
.ts-intro .border-left {
  border-left: 2px solid #dee2e6 !important;
}

.box-primary {
  background-color: #da0f32;
}

.box-dark {
  background-color: #222222;
}

.box-secondary {
  background-color: #0F2765;
}

.intro-details {
  padding-left: 20px;
}

.intro-title {
  font-size: 24px;
  line-height: 34px;
  margin: 0;
}

.intro-sub-title {
  font-weight: 900;
  font-size: 36px;
  line-height: 46px;
  margin: 15px 0 25px;
  color: #1c1c24;
}

section .title-white {
  color: #fff !important;
}

/* Section verticle title */
.section-title-vertical {
  position: relative;
  height: 0;
}
.section-title-vertical .section-title {
  position: absolute;
  left: -190px;
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
  top: 203px;
  font-size: 40px;
  display: inline-block;
  margin-bottom: 70px;
  color: #c7d4f3;
  margin-top: 0;
}
.section-title-vertical .section-title:after {
  top: 15px;
  left: -95px;
  z-index: 0;
  width: 155px;
  border-bottom: 2px solid #c7d4f3;
}
@media screen and (max-width: 1024px) {
  .section-title-vertical .section-title {
    display: none;
  }
}

/* Column title */
.column-title {
  font-size: 28px;
  line-height: 30px;
  margin: 0 0 40px;
}
.column-title span {
  font-size: 18px;
  line-height: 20px;
  margin: 0 0 10px 0;
  display: block;
  font-weight: 400;
}
.column-title.title-small {
  font-size: 30px;
}

/* Column title small */
/* Video responsive */
.embed-responsive {
  padding-bottom: 56.25%;
  position: relative;
  display: block;
  height: 0;
  overflow: hidden;
}
.embed-responsive iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

/* Input form */
.form-control {
  -webkit-box-shadow: none;
  box-shadow: none;
  border: 1px solid #eaeaea;
  padding: 5px 20px;
  height: 50px;
  background: none;
  color: #626c84;
  font-size: 14px;
  border-radius: 0;
  font-weight: normal;
}
.form-control:focus {
  -webkit-box-shadow: none;
  box-shadow: none;
  border-color: #F1F1F1;
}

input:focus,
textarea:focus {
  -webkit-box-shadow: none;
  box-shadow: none;
  border-color: #F1F1F1;
}

.form-message {
  height: auto;
}

@media screen and (min-width: 992px) {
  .qutoe-form-inner-left {
    padding-right: 40px;
  }
}

@media screen and (min-width: 992px) {
  .qutoe-form-inner-right {
    padding-left: 40px;
  }
}

.quote_form .form-control:focus {
  -webkit-box-shadow: none;
  box-shadow: none;
  border: 1px solid #da0f32;
}

.widget .form-control {
  z-index: 0;
  position: relative;
}

hr {
  background-color: #e7e7e7;
  border: 0;
  height: 1px;
  margin: 40px 0;
}

blockquote {
  position: relative;
  color: #fff;
  background: #1E2227;
  padding: 40px;
  border: 0;
  margin: 30px 0 40px;
}
blockquote:before {
  padding: 28px 0 22px;
  content: "\e937";
  font-family: 'iconfont';
  color: #fff;
  font-size: 44px;
}
blockquote p {
  font-size: 18px;
  line-height: 28px;
  position: relative;
  z-index: 1;
  font-style: italic;
  font-weight: 600;
}

cite {
  display: block;
  font-size: 14px;
  margin-top: 10px;
  text-align: right;
}

/* Button */
.btn.focus, .btn:focus,
.btn-primary:not(:disabled):not(.disabled).active:focus, .btn-primary:not(:disabled):not(.disabled):active:focus, .show > .btn-primary.dropdown-toggle:focus {
  outline: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.btn-primary.focus, .btn-primary:focus {
  -webkit-box-shadow: none;
  box-shadow: none;
}

button:focus {
  outline: 0 solid;
}

.btn.btn-primary,
.btn-dark,
.btn-border,
.btn-white {
  font-size: 13px;
  font-weight: 700;
  padding: 10px 25px;
  line-height: 1.33;
  border-radius: 3px;
  border: 0;
  -webkit-transition: color 400ms, background-color 400ms, border-color 400ms;
  transition: color 400ms, background-color 400ms, border-color 400ms;
  transition: color 400ms, background-color 400ms, border-color 400ms;
}

.btn-white.btn-primary {
  background: #fff;
  color: #da0f32;
}

.btn.btn-primary {
  background: #da0f32;
  border: 2px solid transparent;
}
.btn.btn-dark {
  background: #242427;
  border: 2px solid transparent;
}
.btn.btn-white {
  background: #fff;
  border: 2px solid transparent;
}
.btn.btn-white:hover {
  background-color: #242427;
  color: #fff;
}

.btn-border {
  border: 2px solid #fff;
  background: none;
  color: #fff;
}

.btn-primary:hover,
.btn-dark:hover,
.btn-white.btn-primary:hover {
  background: #ff0000;
  color: #fff;
}

.btn-border:hover {
  background: #ff0000;
  border: 2px solid transparent;
  color: #fff;
}

.general-btn {
  clear: both;
  margin-top: 60px;
}

.intro-content .btn-border {
  margin-right: 15px;
}

/* box button */

.btn-box {
    background: #1e2227;
    color: #fff;
    padding: 15px;
}

.btn-box:hover {
    background: #000;
    color: #fff;
}

/* Ul, Ol */
.list-round,
.list-arrow,
.list-dash {
  list-style: none;
  margin: 0;
  padding: 0;
}

.list-round li {
  line-height: 34px;
}
.list-round li:before {
  font-family: FontAwesome;
  content: "\f111";
  margin-right: 10px;
  color: #252a37;
  font-size: 8px;
  position: relative;
  top: -3px;
}

.list-arrow {
  padding: 0;
}

ul.list-dash li:before {
  font-family: FontAwesome;
  content: "\f068";
  margin-right: 10px;
  color: #da0f32;
  font-size: 10px;
}

/* Bootstrap */
.nav-tabs > li.active > a {
  border: 0;
}
.nav-tabs > li > a {
  border: 0;
}
.nav-tabs > li > a:hover {
  border: 0;
}

.nav > li > a:focus, .nav > li > a:hover {
  background: none;
}

.pattern-bg {
  background: #f5f5f5 url(../images/crossword.png);
}

a[href^=tel] {
  color: inherit;
  text-decoration: none;
}

/*-- Owl slide common --*/
.owl-carousel.page-slider .owl-nav {
  margin: 0;
}

.owl-carousel .owl-nav {
  text-align: center;
}

.owl-carousel.owl-theme .owl-nav [class*=owl-] {
  background: #da0f32;
  color: #fff;
  position: absolute;
  bottom: 0;
  right: 0;
  width: 40px;
  height: 40px;
  line-height: 42px;
  font-size: 20px;
  text-align: center;
  margin: 0;
  border-radius: 0;
  -webkit-transition: 400ms;
  transition: 400ms;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.owl-carousel.owl-theme .owl-nav [class*=owl-prev] {
  right: 40px;
}

.owl-carousel.owl-theme .owl-nav > div:hover {
  background: #272d33;
}

.owl-theme .owl-dots {
  text-align: center;
  margin-top: 40px;
  position: relative;
  z-index: 1;
}

.owl-theme .owl-dots .owl-dot {
  display: inline-block;
}

.owl-theme .owl-dots .owl-dot span {
  width: 30px;
  height: 4px;
  margin: 5px 4px;
  background: #000;
  opacity: .2;
  display: inline-block;
}

.owl-theme .owl-dots .owl-dot.active span {
  background: #da0f32;
  opacity: 1;
}

/*-- Section title --*/
.section-title {
  font-size: 40px;
  margin-top: 0;
  display: inline-block;
  margin-bottom: 90px;
  position: relative;
}
.section-title span {
  font-size: 18px;
  margin-bottom: 15px;
  color: #333;
  text-align: center;
  display: block;
  font-weight: 500 !important;
  line-height: normal;
}
.section-title:after {
  content: '';
  position: absolute;
  bottom: -30px;
  height: 1px;
  width: 50px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 0;
  border-bottom: 2px solid #da0f32;
}

/* Content title */
.content-title {
  font-size: 44px;
  margin-top: 0;
  border-left: 5px solid #da0f32;
  padding-left: 15px;
  margin-bottom: 40px;
  line-height: 32px;
}
.content-title span {
  display: block;
  font-size: 24px;
  line-height: 34px;
  margin: 0 0 10px 0;
  display: block;
  font-weight: 400 !important;
}

.content-title-medium {
  font-size: 36px;
  line-height: 44px;
}

.list-column-title {
  font-size: 24px;
  color: #252a37;
}

/* Border left */
.section-title.border-title-left {
  padding-left: 140px;
}
.section-title.border-title-left:before {
  content: '';
  position: absolute;
  top: 50%;
  margin-top: -22px;
  height: 1px;
  width: 115px;
  left: 0;
  z-index: 0;
  border-bottom: 2px solid #da0f32;
}
.section-title.border-title-left:after {
  border: 0;
}
.section-title.border-title-left span {
  text-align: right;
  margin: 10px 0 0;
}

/* Top Bar
================================================== */
.site-top {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999;
}

@media screen and (min-width: 992px) {
  .site-top-2.header-transparent {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999;
  }
}

.top-bar {
  padding: 12px 0 15px;
  position: relative;
  background: #2d3559;
  color: #fff;
  line-height: normal;
}
.top-bar.solid-bg {
  color: #626c84;
  background: #fafafa;
}
.top-bar.solid-bg ul.top-menu li {
  border-right: 1px solid rgba(0, 0, 0, 0.2);
}
.top-bar.solid-bg ul.top-menu li:last-child {
  border-right: 0;
}
.top-bar.solid-bg ul.top-menu li a {
  color: #626c84;
}
.top-bar.solid-bg .top-social a {
  color: #626c84;
}
.top-bar.solid-bg ul.top-menu li a:hover,
.top-bar.solid-bg .top-social a:hover {
  color: #da0f32;
}

/* Top menu */
ul.top-menu li {
  display: inline-block;
  font-size: 14px;
  border-right: 1px solid #4c5372;
  margin-right: 10px;
  padding-right: 10px;
  line-height: 10px;
}
ul.top-menu li:last-child {
  border-right: 0;
}
ul.top-menu li a {
  color: #999999;
}
ul.top-menu li a:hover {
  color: #da0f32;
}

/* Top social */
.top-social {
  list-style: none;
  margin: 0;
  padding: 0;
}
.top-social a {
  font-size: 14px;
  margin-left: 20px;
  color: #fff;
}
.top-social a:hover {
  color: #fff;
}

/* Top bar transparent */
.topbar-transparent {
  color: #fff;
  background: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  padding: 12px 0;
  line-height: normal;
  -webkit-transition: 350ms;
  transition: 350ms;
}
.topbar-transparent ul li a {
  color: #fff;
  font-weight: 600;
}
.topbar-transparent.border-down {
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  line-height: normal;
}


/* Topbar Taransparent with border */
/* Topbar highlight */
.top-bar.highlight {
  background: #0f2765;
  color: #fff;
}
.top-bar.highlight ul.top-menu li {
   border-right: 1px solid rgba(0, 0, 0, 0.2);
}
.top-bar.highlight ul.top-menu li a {
  color: #fff;
  font-weight: 600;
}
.top-bar.highlight ul.top-menu li:last-child {
  border-right: 0;
}

/* Topbar info */
#top-bar .top-info {
  margin: 0;
  float: left;
}
#top-bar .top-info p {
  color: #fff;
  font-weight: 400;
  font-size: 15px;
}
#top-bar .top-info i {
  color: #fff;
  font-weight: 400;
  font-size: 15px;
  font-size: 16px;
}
#top-bar .top-info .info-icon {
  top: 0;
  margin-right: 5px;
}
#top-bar .top-info .info-wrapper:after {
  height: 15px;
  top: 2px;
  background: rgba(255, 255, 255, 0.2);
}
#top-bar .top-info li.last .info-wrapper:after {
  background: none;
}

/* Top Info No telp dan E-mail di atas Modifikasi
================================================== */
@media (max-width: 620px) {
  .top-info {
  margin: 0;
  display: none;
}
  }

/* Header area
================================================== */
/* Sticky Menu  */

/* ini adalah file css yang tinggal di update di dalam file style.css. NAMUN PASTIKAN BAHWA CSS LAMANYA SUDAH DIHAPUS. 
HARUS HATI-HATI JANGAN HAPUS SEMUA ISI FILENYA NANTI TAMPILAN CSSMU YANG TERGANGGU*/

/* ======= NAVBAR UTAMA ======= */
.navbar {
  background-color: #3D2D13;
  padding: 0.5rem 1rem;
  display: flex;
  justify-content: space-between;
  align-items: center;

  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
}

body {
  padding-top: 81px; /* untuk menghindari konten tertutup navbar */
}

.navbar-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

/* Logo & Info */
.kampung-info {
  display: flex;
  align-items: center;
}

.kampung-info .logo {
  height: 65px;
  margin-left: 20px;
}

.kampung-info .text-info {
  color: #ffffff;
  font-family: 'Inter', sans-serif;
  line-height: 1.5;
}

.kampung-info .text-info .text-bold {
  font-weight: bold;
  font-size: 20px;
  color: white;
}

.kampung-info .text-info div:last-child {
  font-size: 15px;
  color: white;
}

/* Menu Tengah */
.navbar-main-wrapper {
  flex-grow: 1;
  display: flex;
  justify-content: right;
}

.navbar-nav {
  display: flex;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
  flex-direction: row;
}

.navbar-nav > li {
  position: relative;
  margin: 0 0px;
}

.navbar .nav-link {
  color: #ffffff !important;
  font-weight: 600;
  font-size: 14px;
  text-transform: uppercase;
  padding: 5px 0;
  position: relative;
  margin-right: 20px;
}

.navbar .nav-link:hover,
.navbar .nav-link:focus,
.navbar .nav-link.active {
  color: #ffffff !important;
  background-color: transparent;
}

.navbar-nav > li > a::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  border-bottom: 3px solid transparent;
  transform: scaleX(0);
  transition: 0.4s ease;
}

.navbar-nav > li > a:hover::before,
.navbar-nav > li > a.active::before {
  border-color: #da0f32;
  transform: scaleX(1);
}

/* Dropdown Menu */
.navbar-nav .dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  background-color: #ffffff;
  border: none;
  box-shadow: 0 4px 12px #3D2D13;
  display: none;
  min-width: 180px;
  z-index: 1000;
}

.navbar-nav li:hover > .dropdown-menu {
  display: block;
}

.dropdown-menu .dropdown-item {
  color: #3D2D13 !important;
  font-size: 14px;
  padding: 10px 20px;
  white-space: nowrap;
  transition: background-color 0.2s ease;
}

.dropdown-menu .dropdown-item:hover {
  background-color: #3D2D13;
  color: #ffffff !important;
}

/* Tombol Logout */
.logout-wrapper {
  margin-right: 20px;
  margin-left: 10px;
}

/* ======= RESPONSIVE MENU ======= */

/* Tombol hamburger */
.hamburger {
  display: none;
  background: none;
  border: none;
  font-size: 28px;
  color: white;
  cursor: pointer;
}

/* Tampilan Mobile & Tablet */
@media screen and (max-width: 1350px) {
  .navbar-container {
    flex-direction: column;
    align-items: flex-start;
  }

  .hamburger {
    display: block;
    align-self: flex-end;
    margin: 10px 20px;
  }

  .navbar-main-wrapper {
    display: none !important;
  }

  .navbar-main-wrapper.active {
    display: flex;
    flex-direction: column;
    width: 100%;
    background-color: #3D2D13;
  }

  .navbar-nav {
    flex-direction: column;
    width: 100%;
  }

  .navbar-nav > li {
    width: 100%;
    border-top: 1px solid rgba(255,255,255,0.1);
  }

  .navbar-nav > li > a {
    display: block;
    padding: 12px 20px;
    margin-right: 0;
  }

  .nav-link {
    width: 100%;
  }

  .navbar-nav .dropdown-menu {
    position: static;
    background-color: #3D2D13;
    box-shadow: none;
    display: none;
    padding-left: 15px;
  }

  .navbar-nav li.dropdown:hover > .dropdown-menu {
    display: block;
  }

  .dropdown-menu .dropdown-item {
    color: #fff !important;
    padding: 10px 20px;
  }

  .logout-wrapper {
    width: 100%;
    text-align: right;
    padding: 10px 20px;
  }

  .top-right-btn {
    margin-top: 10px;
  }
}

/* Ukuran Font Responsive */
@media screen and (max-width: 480px) {
  .kampung-info .text-info .text-bold {
    font-size: 16px;
  }
  .kampung-info .text-info div:last-child {
    font-size: 13px;
  }
  .navbar .nav-link {
    font-size: 13px;
  }
}

/*Akhir Navbar*/

/* Sidebar Style */
.sidebar {
  position: fixed;
  top: 0;
  left: -280px;
  width: 280px;
  height: 100%;
  background-color: #3D2D13;
  color: white;
  transition: left 0.3s ease;
  z-index: 1100;
  padding: 20px;
  overflow-y: auto;
}

.sidebar.active {
  left: 0;
}

.sidebar .close-btn {
  background: none;
  border: none;
  font-size: 28px;
  color: white;
  position: absolute;
  top: 15px;
  right: 20px;
  cursor: pointer;
}

.sidebar-nav {
  list-style: none;
  padding: 0;
  margin-top: 60px;
}

.sidebar-nav li {
  margin-bottom: 10px;
}

.sidebar-nav > li > a {
  color: white;
  text-decoration: none;
  display: block;
  padding: 10px 15px;
  font-weight: 600;
  background-color: transparent;
  border-radius: 5px;
}

.sidebar-nav li a:hover {
  background-color: #3D2D13;
}

/* Dropdown */
.sidebar-dropdown > a {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.sidebar-submenu {
  display: none;
  padding-left: 15px;
}


/* TAMPILKAN submenu secara otomatis saat hover */
.sidebar-dropdown:hover .sidebar-submenu {
  display: block;
   background-color: #ffffff;
}

.sidebar-submenu li a {
  display: block;
  width: 100%;
  padding: 10px 10px; /* ubah dari 15px jadi 20px agar lebih rata */
  background-color: transparent;
  color: #000;
  text-decoration: none;
  box-sizing: border-box;
  text-align: left; /* pastikan rata kiri */
}

.sidebar-submenu {
  display: none;
  margin: 0;
  padding: 0;
}
.sidebar-submenu li {
  margin: 0;
  width: 100%;
}



.sidebar-dropdown .sidebar-submenu:hover {
  background-color: #ffffff;
  color: #ffffff !important;
}

.sidebar-dropdown .sidebar-submenu li a:hover {
  color: white !important;
    background-color: #3D2D13;
  color: #fff;
}

/* Tampilkan submenu saat aktif */
.sidebar-dropdown.active .sidebar-submenu {
  display: block;
}

/* Login Button */
.sidebar-login {
  margin-top: 30px;
}

.sidebar-overlay {
  position: fixed;
  top: 0;
  left: 280px; /* dimulai dari ujung sidebar */
  width: calc(100% - 280px); /* sisa layar di luar sidebar */
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 1099;
  display: none;
}

.sidebar-overlay.active {
  display: block;
}

/*Akhir NAvbar*/



/*=====================================
  BERANDA
===================================== */
/* Reset ringan */
* { margin: 0; padding: 0; box-sizing: border-box; }

:root {
  --primary-green: #2caa50;
  --primary-dark: #249144;
  --text-dark: #2c3e50;
  --text-muted: #7f8c8d;
  --bg-soft: #f9fafb;
}

html, body {
  height: 100%;
  font-family: 'Segoe UI', sans-serif;
  color: #222;
  background: #fff;
}

/* ================================================
   HERO SECTION (slider halaman pertama)
   ================================================ */
.hero-section {
  background-image: linear-gradient(
      rgba(0, 0, 0, 0.4),
      rgba(0, 0, 0, 0.4)
    ),
    url('../images/lb.jpg');
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #fff;
  height: 100vh;                 /* full viewport */
  min-height: 560px;             /* jaga di layar kecil */
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding-top: 80px;             /* kompensasi navbar fixed */
}

.hero-content h2 {
  font-size: 22px;
  font-weight: 400;
  color: #fff;
}

.hero-content h1 {
  font-size: 50px;
  font-weight: 700;
  color: #fff;
}

.hero-content p {
  font-size: 14px;
  margin-bottom: 30px;
}

.highlight {
  background-color: #006400;
  padding: 2px 6px;
  border-radius: 4px;
  font-weight: 700;
}

/* Ikon menu bundar */
.menu-icons {
  display: flex;
  justify-content: center;
  gap: 30px;
  flex-wrap: wrap;
  margin-top: 30px;
}

.icon-item {
  background-color: rgba(255, 255, 255, 0.85);
  border-radius: 50%;
  width: 140px;
  height: 140px;
  display: flex; flex-direction: column;
  align-items: center; justify-content: center;
  box-shadow: 0 4px 12px rgba(0,0,0,.1);
  color: #000;
  transition: transform .3s ease, box-shadow .3s ease;
  text-align: center;
  padding: 10px;
}
.icon-item:hover { transform: translateY(-4px); box-shadow: 0 8px 18px rgba(0,0,0,.12); }
.icon-item img { width: 50px; height: 50px; margin-bottom: 8px; }
.icon-item p   { font-weight: 700; font-size: 14px; margin: 0; }

/* ================================================
   JUDUL GLOBAL (semua bagian 30px)
   ================================================ */
.section-title,
.faq-title {
  font-size: 30px;            /* <- sesuai permintaan */
  line-height: 1.25;
  font-weight: 700;
  color: var(--primary-green);
  margin-bottom: 15px !important;
  padding-bottom: 0 !important;
  position: relative;
  border: none;
  text-decoration: none;
  outline: none;
}

/* Hindari underline default pseudo dari beberapa theme */
.section-title::after,
.section-title:after { content: none !important; display: none !important; }

/* ================================================
   SAMBUTAN
   ================================================ */
.sambutan-section {
  padding-top: 50px;
  padding-bottom: 50px;
  background-color: #fff;
}

/* Batasi border hanya untuk gambar sambutan */
.sambutan-section .img-fluid {
  border: 5px solid #f1f8e9;
  box-shadow: 0 5px 15px rgba(0,0,0,.1);
}

/* Teks nama/jabatan */
.fw-bold { font-size: 24px; margin-bottom: 5px; }

/* Konten sambutan yang bisa discroll */
.scrollable-text {
  max-height: 200px;
  overflow-y: auto;
  padding-right: 10px;
}

/* ================================================
   BERITA (diperkecil & seragam tinggi card)
   ================================================ */
.news { padding: 80px 0; background-color: var(--bg-soft); }
.subtitle { font-size: 18px; color: var(--text-muted); margin-bottom: 40px; }

.latest-post {
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 5px 15px rgba(0,0,0,.05);
  transition: box-shadow .3s ease, transform .3s ease;
  display: flex;               /* flex agar seragam */
  flex-direction: column;
}
.latest-post:hover { transform: translateY(-6px); box-shadow: 0 12px 25px rgba(0,0,0,.1); }

/* tubuh card sebagai kolom fleksibel */
.latest-post .post-body {
  display: flex; 
  flex-direction: column; 
  flex: 1;
  min-height: 360px;          /* jangkar tinggi minimum agar seragam */
  gap: 8px;
}

/* gambar diperkecil */
.latest-post-img { display: block; height: 180px; overflow: hidden; }
.latest-post-img .img-fluid { width: 100%; height: 100%; object-fit: cover; }

/* Judul: clamp 2 baris */
.post-title { padding: 16px 20px 0; }
.post-title h4 { margin-bottom: 8px; line-height: 1.3; }
.post-title h4 a {
  color: var(--text-dark);
  font-size: 18px;
  text-decoration: none;
  transition: color .3s ease;
  display: -webkit-box;
  -webkit-line-clamp: 2;      /* tampil max 2 baris */
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.post-title h4 a:hover { color: var(--primary-green); }

/* Tanggal posting */
.post-item-date {
  padding: 0 20px 2px;
  font-size: 12px;
  color: #95a5a6;
}

/* Ringkasan: clamp 3 baris */
.post-text {
  padding: 0 20px 0;
  color: #34495e;
  display: -webkit-box;
  -webkit-line-clamp: 3;      /* tampil max 3 baris */
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 12px;
}

/* Tombol selalu di bawah */
.btn-readmore {
  margin: auto 20px 16px;     /* dorong ke bawah */
  background-color: var(--primary-green);
  color: #fff;
  padding: 10px;
  border-radius: 6px;
  text-align: center;
  text-decoration: none;
  font-weight: 600;
  transition: all .3s ease;
}
.btn-readmore:hover { background-color: #249a45; color: #fff; transform: translateY(-2px); }

/* Tombol lihat berita */
.btn-secondary {
  background-color: #2c3e50;
  border-color: #2c3e50;
  margin-top: 30px;
  padding: 12px 30px;
}
.btn-news-more {
  background-color: var(--primary-green);
  color: #fff;
  font-weight: 600;
  padding: 12px 28px;
  border-radius: 8px;
  text-decoration: none;
  transition: all .3s ease-in-out;
  display: inline-block;
  box-shadow: 0 4px 12px rgba(44,170,80,.3);
}
.btn-news-more:hover {
  background-color: var(--primary-dark);
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(44,170,80,.4);
}

/* ================================================
   GALERI (diperkecil & dibuat menarik)
   ================================================ */
.main-container { background-color: #fff; }

.gallery-img {
  position: relative;
  overflow: hidden;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 6px 16px rgba(0,0,0,.06);
  transition: transform .25s ease, box-shadow .25s ease;
  will-change: transform;
}
.gallery-img img {
  width: 100%;
  height: 200px !important;       /* override inline style 240px */
  object-fit: cover;
  transition: transform .3s ease, filter .3s ease;
  border-radius: inherit;
}
.gallery-img::before{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(to bottom, rgba(0,0,0,.0), rgba(0,0,0,.08));
  opacity: 0; transition: opacity .25s ease;
}
.gallery-img:hover { transform: translateY(-4px); box-shadow: 0 12px 24px rgba(0,0,0,.08); }
.gallery-img:hover img { transform: scale(1.04); filter: brightness(.95); }
.gallery-img:hover::before { opacity: 1; }

/* ikon kaca pembesar di tengah gambar */
.gallery-icon {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}
.gallery-img:hover .gallery-icon { opacity: 1; }

.btn-gallery-more {
  background-color: var(--primary-green);
  color: #fff;
  font-weight: 600;
  padding: 12px 28px;
  border-radius: 8px;
  text-decoration: none;
  transition: all .3s ease-in-out;
  display: inline-block;
  box-shadow: 0 4px 12px rgba(44,170,80,.3);
  border: none;
}
.btn-gallery-more:hover {
  background-color: var(--primary-dark);
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(44,170,80,.4);
}

/* ================================================
   FAQ (Accordion) & TESTIMONI  — FINAL
   ================================================ */

.testimoni-area { padding: 60px 0; background-color: #f9f9f9; }

.testimoni-form-wrapper {
  background-color: #fff;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,.08);
  padding: 24px;
}
.testimoni-form-wrapper .form-control { margin-bottom: 15px; height: auto; font-size: 14px; }

.testimonial-wrapper { position: relative; }
.testimonial-card {
  background-color: #fff;
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(0,0,0,.05);
  padding: 15px 10px;
  height: 100%;
  transition: transform .3s ease, box-shadow .3s ease;
  margin: 5px;
}
.testimonial-card:hover { transform: translateY(-4px); box-shadow: 0 10px 16px rgba(0,0,0,.08); }

.testimonial-img img {
  width: 65px; height: 65px; object-fit: cover;
  border-radius: 50%;
  border: 2px solid var(--primary-green);
  margin-bottom: 10px;
}
.testimonial-name {
  font-size: 13px; font-weight: 700; color: #2c2c2c;
  margin-bottom: 4px; text-transform: uppercase;
}
.testimonial-text { font-size: 12px; color: #555; line-height: 1.4; font-style: italic; margin: 0; }

/* Navigasi carousel testimoni */
.testimonial-nav { text-align: center; margin-top: 8px; }
.testimonial-nav button {
  border: 1px solid #cbd5e1;
  background: #fff;
  padding: 6px 12px;
  border-radius: 6px;
  transition: background .2s ease, transform .2s ease;
}
.testimonial-nav button:hover { background: #f3f4f6; transform: translateY(-1px); }

/* ===============================
   ACCORDION (Bootstrap) — rapi,
   ikon +/– tidak menimpa teks
   =============================== */
.accordion-area .card { border: 1px solid #e5e7eb; border-radius: 10px; overflow: hidden; }
.accordion-area .card + .card { margin-top: 12px; }

.accordion-area .card-header {
  background: #fff;
  border-bottom: 1px solid #e5e7eb;
  padding: 0; /* padding dipegang oleh tombol agar konsisten */
}

/* Tombol header: beri ruang kiri untuk ikon */
.accordion-area .card-header .btn,
.accordion-area h5.mb-0 a,
.accordion-area h5.mb-0 button {
  display: block;
  width: 100%;
  text-align: left;
  color: #111827;
  text-decoration: none;
  position: relative;
  padding: 12px 16px 12px 56px !important; /* ruang untuk ikon 36px + gutter */
  line-height: 1.4;
  min-height: 40px;
}
.accordion-area .card-header .btn:hover { color: var(--primary-green); }

/* IKON kotak merah di kiri */
.accordion-area h5.mb-0 a::before,
.accordion-area h5.mb-0 button::before {
  content: "\f068";                    /* minus */
  font-family: "FontAwesome";
  position: absolute;
  left: 12px;                           /* posisi ikon */
  top: 50%;
  transform: translateY(-50%);
  width: 36px; height: 36px; line-height: 36px;
  text-align: center;
  background: #da0f32;
  color: #fff;
  border-radius: 4px;
}

/* Saat collapsed: ganti jadi tanda plus */
.accordion-area h5.mb-0 a.collapsed::before,
.accordion-area h5.mb-0 button.collapsed::before {
  content: "\f067";                     /* plus */
}

/* Matikan ikon <i> lama (kalau ada di markup tema lama) */
.accordion-area .card-header i { display: none !important; }

/* Sembunyikan indikator bulatan kecil (faq-icon) */
.accordion-area .faq-icon { display: none !important; }



/* ================================================
   INFO / JAM KERJA (judul 30px)
   ================================================ */
.info-section {
  background-color: #f9f9f9;
  padding: 60px 20px;
  font-family: 'Segoe UI', sans-serif;
}
.container-info { max-width: 600px; margin: 0 auto; }

.info-card {
  background: #fff;
  padding: 30px;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,.08);
  text-align: center;
}
/* gunakan .section-title global (30px) */
.info-section .section-title { margin-bottom: 20px; }

.office-icon { width: 120px; margin: 20px 0; }

.worktime-table {
  margin: 0 auto; border-collapse: collapse; width: 100%;
  max-width: 300px; font-size: 16px;
}
.worktime-table th,
.worktime-table td { padding: 8px 12px; text-align: center; }
.worktime-table tr { border-bottom: 1px solid #ddd; }
.worktime-table th { color: var(--text-dark); font-weight: 700; }
.holiday td { color: red; font-weight: 600; }

.cta-button { margin-top: 20px; }
.btn-contact {
  background: #da0f32;
  color: #fff !important;
  text-decoration: none;
  padding: 12px 20px;
  border-radius: 8px;
  display: inline-block;
  transition: background .3s ease, color .3s ease;
}
.btn-contact:hover { background: var(--primary-green); color: #fff !important; }

/* ================================================
   UTILITAS KECIL
   ================================================ */
.text-center { text-align: center; }
.container { margin: 0 auto; }



      
/* Features
================================================== */
.ts-features [class*=col] {
  height: 360px;
  padding: 0;
}

.feature-box1,
.feature-box2,
.feature-box3 {
  position: relative;
  background-size: cover;
  background-position: center;
}

.ts-features-col {
  padding-top: 0;
}
.ts-features-col .feature-box1,
.ts-features-col .feature-box2,
.ts-features-col .feature-box3 {
  overflow: hidden;
}
.ts-features-col .feature-box1:after,
.ts-features-col .feature-box2:after,
.ts-features-col .feature-box3:after {
  background: #222222;
}
.ts-features-col .feature-box1:after {
  background: #da0f32;
}
.ts-features-col .feature-box2:after {
  background: #0f2765;
}

.feature-box1:after,
.feature-box2:after,
.feature-box3:after {
  position: absolute;
  content: '';
  background: rgba(34, 34, 34, 0.85);
  width: 100%;
  height: 100%;
  top: 0;
}

.ts-feature-info {
  color: #fff;
  z-index: 1;
  position: relative;
  padding: 50px;
}

.ts-feature-title {
  font-size: 28px;
  margin: 30px 0 20px;
  color: #fff;
}

.ts-feature-info i {
  font-size: 60px;
}

.feature-box1:after {
  background: rgba(33, 84, 207, 0.85);
}

.feature-box2:after {
  background: rgba(15, 39, 101, 0.85);
}

/* Feature Icon Left */
.ts-feature-info.icon-left .feature-icon {
  float: left;
  color: #3261D3;
}
.ts-feature-info.icon-left .feature-icon i {
  font-size: 50px;
}

.ts-feature-info.icon-left .feature-content {
  margin-left: 80px;
}
.ts-feature-info.icon-left .feature-content h3 {
  color: #252a37;
}
.ts-feature-info.icon-left .feature-content p {
  color: #626c84;
}

.ts-feature-info.icon-left .ts-feature-title {
  font-size: 22px;
  margin: 0 0 5px 0;
}

/*-- ts-features-row --*/

.feature-light-row {
    margin-top: -15%;
    background: #fff;
    box-shadow: 0px 2px 20px 0 rgba(0, 0, 0, 0.05);
}

.feature-light-row .text-center {
    padding: 30px;
}
/* Ts-Service-Area
===================================================*/

/* ts-service-box */

.ts-service-box-img {
    float: left;
}

.ts-service-area h2 {
    margin-bottom: 50px;
}

.ts-service-box-info h3 {
    margin-bottom: 5px;
    font-size: 18px;
}

.ts-service-area .text-center {
    margin-bottom: 40px;
}

.ts-service-box-info p {
    line-height: 25px;
    font-size: 15px;
    line-height: 24px;
}

.ts-service-box-info {
    margin-left:  100px;
}

.ts-service-box {
    margin-bottom: 0px;
}

.ts-service-box:after {
    content:  "";
    clear:  both;
    display:  block;
}
/*Project
===========================================*/

/* Project All */

.projects .latest-post .post-cat{
   font-size: 20px;
   font-weight: 700;
   font-style: normal;
}

/* Single project */

.single-project #main-slide .carousel-item{
   min-height: 500px;
}

.complete-project-bg .ts-progress-bar {
    width: 100%;
    margin-left: 20px;
}

h5.mb-0 .project-btn:before{
   content: "\f107";
}

h5.mb-0 .project-btn.collapsed:before {
    content: "\f106";
}

h5.mb-0 .project-btn:before, h5.mb-0 .project-btn.collapsed:before {
    font-family: "FontAwesome";
    position: absolute;
    z-index: 0;
    font-size: 16px;
    right: 0px;
        padding: 0 5px;
    text-align: center;
    top: 50%;
    background: none;
    color: #000;
}

h5.mb-0 .project-btn{
   display: block;
    width: 100%;
    text-align: left;
}

.project-accordion .card-header{
   border: 1px solid rgba(0,0,0,.125);
}

.project-accordion .card {
    margin-bottom: 10px;
}

.btn-block{
   margin-top: 30px;
   background: #da0f32;
   color: #fff !important;
   border-radius: 8px;
}
.btn-block:hover{
  background: #2caa50;
  color: #fff !important;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(44, 170, 80, 0.3);
}
.tag{
   margin-top: 30px;
}

.project-accordion .card-header {
    padding: 5px 0 10px;
}

.project-accordion .card-body{
   padding: 10px 60px 0px;
}

.project-right-side {
    margin-top: 65px;
}


/* Project All */

.projects .latest-post.post-large .post-body {
    position: absolute;
    bottom: 25px;
    color: #fff;
    padding: 80px 30px 30px 30px;
    background: rgba(0,0,0,0.5);
    display: inline-block;
    width: 80%;
    left: 30px;
}

.projects .latest-post .post-cat{
   font-size: 20px;
   font-weight: 700;
   font-style: normal;
}


/* Single project */

.single-project #main-slide .carousel-item{
   min-height: 500px;
}

.complete-project-bg .ts-progress-bar {
    width: 100%;
    margin-left: 20px;
}

h5.mb-0 .project-btn:before{
   content: "\f107";
}

h5.mb-0 .project-btn.collapsed:before {
    content: "\f106";
}

h5.mb-0 .project-btn:before, h5.mb-0 .project-btn.collapsed:before {
    font-family: "FontAwesome";
    position: absolute;
    z-index: 0;
    font-size: 16px;
    right: 0px;
    padding: 5px 15px;
    text-align: center;
    top: 0;
    background: none;
    color: #000;
}

h5.mb-0 .project-btn{
   display: block;
    width: 100%;
    text-align: left;
}

h5.mb-0 .project-btn span{
   padding-left:10px;
}

.project-accordion .card-header{
   border: 1px solid rgba(0,0,0,.125);
}

.project-accordion .card {
    margin-bottom: 10px;
}

.btn-block{
   margin-top: 30px;
   background: #da0f32;
   color: #fff !important;
   border-radius: 8px;
}
.btn-block:hover{
  background: #2caa50;
  color: #fff !important;
  border-radius: 8px;
}


.tag{
   margin-top: 30px;
}

.project-accordion .card-header {
    padding: 5px 0 10px;
}

.project-accordion .card-body{
   padding: 10px 12px 0px;
}

.project-right-side {
    margin-top: 65px;
}

/* Services
======================================*/

/* Service All */

.ts-services {
    padding: 80px 0;
}

.ts-service-content .service-title{
   margin-bottom: 10px;
}

/* Single Service */

.single-service-img img{
   width: 100%;
   height: auto;
   margin-bottom: 30px;
}

.service-blocknumber .block-number {
    width: 40px;
    height: 40px;
    line-height: 40px;
    background-color: #da0f32;
    color: #FFFFFF;
    border-radius: 100px;
    margin-right: 10px;
    display: inline-block;
    text-align: center;
}

.service-content-area .service-text {
    margin-left: 50px;
}

.service-content-area h3{
   margin-bottom: 5px;
}


.news-post .post-body{
   background: none;
}


/* ts-service-box */

.ts-service-row-box .ts-service-box {
    background:  #fff;
    border: 1px solid #eaeaea;
}

.ts-service-row-box .ts-service-content {
    padding:  20px;
    text-align:  center;
}

.no-padding .ts-service-pattern {
  padding: 100px 0;
}

.ts-service-pattern {
  position: relative;
  z-index: 2;
}
.ts-service-pattern:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  background: url("../images/pattern/pattern_arrow.png") no-repeat top left;
}
.ts-service-pattern:after {
  background: url("../images/pattern/pattern_box.png") no-repeat bottom right;
  content: "";
  width: 100%;
  height: 100%;
  right: 0;
  bottom: 0;
  position: absolute;
  z-index: -1;
}
@media screen and (max-width: 991px) {
  .ts-service-pattern:before, .ts-service-pattern:after {
    display: none;
  }
}

.ts-service-content {
  position: relative;
}
.ts-service-content p {
  margin-bottom: 0;
}
.ts-service-content p .link-more {
  margin-top: 10px;
  display: block;
}

.ts-service-icon i {
  font-size: 70px;
  position: absolute;
  right: 0;
  color: #f2f2f2;
  z-index: -1;
}

.service-title {
  margin-top: 25px;
}

/* Service Single */
.sidebar .download-btn {
  border: 1px solid #eaeaea;
  padding: 20px 30px;
  font-size: 22px;
  margin: 0;
}

.how-to-apply h3 {
  font-size: 24px;
  color: #fff;
}
.how-to-apply p {
  color: #fff;
}

.widget.box-primary {
  padding: 30px;
}

.box-primary .btn {
  font-size: 16px;
  font-weight: 600;
}

.service-menu {
  margin: 0;
  padding: 0;
  list-style: none;
}
.service-menu li a {
  display: block;
  background: #f7f9fd;
  padding: 15px 20px;
  margin-bottom: 8px;
  color: #626c84;
  position: relative;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.service-menu li a:hover {
  background: #da0f32;
  color: #fff !important;
}
.service-menu li a:before {
  content: "\f105";
  font-family: FontAwesome;
  padding-right: 10px;
  font-weight: normal;
}
.service-menu li:last-child a {
  margin-bottom: 0;
}

/*Service area */

.ts-service-wrapper {
    max-width: 350px;
    display: flex;
    flex-wrap: wrap;
}

.justify-content-self-center {
    padding-right: 100px;
}

.ts-service-area {
   position: relative;
}

/* testimonial */
.testimonial-static .quote-item {
  padding: 0;
}
.testimonial-static .quote-item .quote-text:after {
  display: none;
}
.testimonial-static .quote-item .quote-text:before {
  left: 50%;
  margin-left: -30px;
}
.testimonial-static .quote-item .quote-subtext {
  color: #626C84;
}
.testimonial-static .quote-item-footer {
  margin-top: 0;
  padding-bottom: 40px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.testimonial-static .quote-classic .quote-text {
  text-align: center;
}

.ts-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.ts-list li {
  display: block;
  margin-bottom: 20px;
  position: relative;
  padding-left: 25px;
}
.ts-list li a {
  display: block;
}
.ts-list li:last-child {
  margin-bottom: 0;
}
.ts-list li:before {
  font-family: fontAwesome;
  content: "\f0c8";
  font-size: 8px;
  color: #252a37;
  position: absolute;
  top: 0;
  left: 0;
}

.text-block blockquote.light {
  background: #f7f9fd;
  border-left: 5px solid #da0f32;
  color: #626c84;
  padding: 35px;
}
.text-block blockquote.light p {
  font-size: 16px;
  font-style: normal;
  font-weight: normal;
}
.text-block blockquote:before {
  display: none;
}

/* Testimonial Area
==================================================*/

.testimonial-area .testimonial-slide {
    padding: 0px ;
}

.testimonial-area .column-title span {
    font-size: 18px;
    line-height: 18px;
}

.testimonial-area .quote-item .quote-text {
    margin: 40px 0 10px;
    display: inline-block;
    padding: 50px 40px 30px 45px;
    background-color: #fff;
    background: #1e2227;
    color: #fff;
    position: relative;
    font-size: 16px;
    font-style: italic;
}

.testimonial-area .quote-item .quote-text:after {
    content: "";
    position: absolute;
    bottom: -20px;
    left: 55px;
    border-width: 0 0 20px 20px;
    border-style: solid;
    border-color: transparent #1e2227;
    display: block;
    width: 0;
}



/* Facts
================================================== */
/* Skills image*/
.skills-image {
  height: 565px;
  position: relative;
  overflow: hidden;
}
.skills-image img {
  height: 100%;
  width: 100%;
}

/* Intro video */
.intro-video {
  height: 585px;
  position: relative;
  overflow: hidden;
}
.intro-video:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  background: rgba(0, 0, 0, 0.35);
}
.intro-video:hover:after {
  opacity: 1;
  -webkit-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}
.intro-video img {
  height: 100%;
}

.ts-facts-area [class*=col] {
  padding: 0;
}
.ts-facts-area .ts-padding {
  padding: 70px 140px 40px 50px;
}
.ts-facts-area .column-title {
  font-size: 36px;
  line-height: 40px;
  margin-bottom: 10px;
}

.ts-facts i {
  font-size: 48px;
  color: #a4a7af;
}

.ts-facts-num {
  font-size: 30px;
  font-weight: 700;
  color: #252a37;
  margin-top: 15px;
  margin-bottom: 0;
  display: inline-block;
}

.facts h4 {
  font-size: 18px;
  margin-top: 8px;
  text-transform: uppercase;
}

/* Facts bg area */
.ts-facts-area-bg {
  background-image: url("../images/parallax/parallax1.jpg");
  padding: 60px 0;
  color: #ffffff;
  background-color: #ffc000;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
  background-position: 50% 50%;
}

.ts-facts-bg i {
  font-size: 48px;
  color: #fff;
}
.ts-facts-bg .ts-facts-num {
  color: #fff;
}

.column-left-title .column-title {
    color: #fff;
    font-size: 30px;
    line-height: 42px;
    padding-top: 30px;
    font-weight: 700;
}

/* Intro Area 
================================================== */
.ts-intro {
  padding-bottom: 80px;
}
.ts-intro .btn-primary {
  margin-top: 15px;
}
.ts-intro .column-title {
  font-size: 36px;
  line-height: 44px;
}
.ts-intro .pull-right.btn-primary {
  margin-right: 20px;
}

/* Intro Image Box */
.intro-image-box {
  position: relative;
  margin: 20px;
}

.intro-image-content {
  position: absolute;
  top: 20px;
  right: 20px;
  bottom: 20px;
  left: 20px;
  padding: 30px;
  z-index: 1;
  width: 345px;
  height: 460px;
  text-align: center;
  background: rgba(255, 255, 255, 0.9);
  -webkit-box-shadow: 0 20px 25px 15px rgba(0, 0, 0, 0.35);
  box-shadow: 0 20px 25px 15px rgba(0, 0, 0, 0.35);
  -webkit-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}
.intro-image-content h3 {
  font-size: 180px;
  line-height: 100%;
  margin: 50px 0 0;
}
.intro-image-content p {
  font-size: 24px;
  line-height: 30px;
  font-weight: 700;
}

.intro-shape:after {
  content: '';
  position: absolute;
  right: 0;
  z-index: -1;
  border-left: 400px solid transparent;
  border-right: 0 solid transparent;
  border-bottom: 400px solid #da0f32;
  bottom: -40px;
}

/* Call to action
================================================== */
.call-to-action-title {
  font-size: 30px;
  color: #252a37;
  line-height: 48px;
}

.call-to-action {
  padding: 70px 0;
}
.call-to-action p {
  font-size: 18px;
  font-weight: 500;
  color: #252a37;
  line-height: 28px;
}

.call-to-action .btn {
  font-weight: 800;
  margin-top: 10px;
}

/* Call To Action Solid bg */
.call-to-action h3 {
  margin-bottom: 10px;
}

.call-to-action-bg {
  padding: 20px;
  background: #da0f32;
}

.call-to-action-bg h3 {
  margin-bottom: 10px;
}
.call-to-action-bg h3,
.call-to-action-bg p {
  color: #fff;
}
.call-to-action-bg p {
  margin-bottom: 0;
}

.service-call-to-action {
    font-size: 24px;
    line-height: 26px;
}

/* Services
================================================== */

/*-- Featured Tab --*/
.featured-tab {
      margin: 0;
    padding: 0;
    list-style: none;
}

.featured-tab .nav-tabs {
    border-bottom: 0;
}

.featured-tab .nav-tabs > li > a {
 font-size: 14px;
    font-weight: bolder;
    line-height: 1.42857143;
    padding: 12px 15px;
    background: #f5f5f5;
    color: inherit;
    border: 1px solid #e5e5e5;
    border-right-width: 0;
}
.featured-tab .nav-tabs > li:last-child > a {
   border-right-width: 1px;
}
.featured-tab .nav-tabs > li > a.active {
    color: inherit;
    background-color: #fff;
    border-bottom-color: transparent;
    cursor: default;
}

.tab-text-title {
  display: block;
  margin-top: 20px;
}

.featured-tab .tab-content {
    margin-top: 5px;
    border: 1px solid #e5e5e5;
    background: #fff;
    padding: 15px;
}
@media screen and (min-width: 992px) {
  .featured-tab .bg-contain-verticle {
    min-height: 290px;
  }
}

.bg-contain-verticle {
  background-size: cover;
  background-repeat: no-repeat;
  vertical-align: middle !important;
  padding: 30px 25px;
  margin: -10px;
}

.img-center {
  display: block;
  margin-right: auto;
  margin-left: auto;
}

.tab-content-info {
  padding-left: 30px;
}
.tab-content-info .btn-light {
  font-weight: 800;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  background-color: transparent;
  border-color: transparent;
}
.tab-content-info .btn-light i {
  padding-left: 5px;
}
.tab-content-info .btn-light:hover {
  color: #da0f32;
  background-color: transparent;
}

.tab-content-title {
  font-size: 30px;
  line-height: 22px;
  margin-top: 40px;
  margin-bottom: 30px;
  display: inline-block;
}
@media screen and (max-width: 479px) {
  .tab-content-title {
    line-height: 36px;
  }
}

.featured-tab .tab-pane img.pull-left {
  margin: 0 40px 10px 0;
}
.featured-tab .tab-pane img.pull-right {
  margin: 0 0 0 40px;
}

.featured-tab .nav-link {
  position: relative;
  z-index: 2;
}
.featured-tab .nav-link.active:after {
  position: absolute;
  left: 50%;
  bottom: 0;
  content: "";
  width: 100px;
  height: 3px;
  background: #2154ce;
  margin-left: -50px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.featured-tab .nav-link.active .tab-head span {
  color: #2154ce;
}

.tab-head span {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  color: #222222;
}
.tab-head span i {
  font-size: 45px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  color: #2154ce;
}

/* Featured Project Slider
================================================== */
.ts-featured-projects {
  padding-top: 70px;
}

#featured-cases-slide {
  position: relative;
}
#featured-cases-slide .owl-stage-outer {
  padding-top: 75px;
}
#featured-cases-slide .item {
  min-height: 470px;
}

.featured-projects-content {
  min-height: 470px;
  padding: 0 45px;
  margin: 0 30px 20px;
  background: #f7f9fd;
  border-radius: 3px;
  position: relative;
  /*box-shadow: 0 1px 30px 0 rgba(0,0,0,.05);*/
  -webkit-box-shadow: none;
  box-shadow: none;
}

.featured-projects-text {
  max-width: 510px;
  padding: 50px 30px 0 0;
}
.featured-projects-text.pull-right {
  padding: 50px 0 0 30px;
}

.features-slider-img {
  margin-top: -75px;
}

.featured-projects-content .btn-primary {
  margin-top: 15px;
}

.content-title.border-none {
  border-left: 0;
  padding-left: 0;
  line-height: 44px;
  margin-bottom: 0;
  font-size: 36px;
}

.box-solid {
  background: #f7f9fd;
}

.list-style-classic {
  padding: 30px;
}
.list-style-classic ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.list-style-classic li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 15px;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.list-style-classic li div {
  width: 100%;
}
.list-style-classic li:last-child {
  margin-bottom: 0;
}
.list-style-classic .classic-title {
  font-size: 24px;
  font-weight: 600;
  line-height: 32px;
  margin-bottom: 45px;
}

.case-info-content {
  color: #626c84;
}

.case-info-label {
  font-weight: 900;
  color: #252a37;
}

.case-counter {
  margin: 25px 0;
}
.case-counter p {
  color: #da0f32;
  font-size: 30px;
}
.case-counter h3 {
  font-size: 24px;
  color: #252a37;
}

/* Owl Page slider */
.owl-carousel.featured-cases-slide.owl-theme .owl-nav > div {
  bottom: -40px;
  right: 78px;
  width: 60px;
  height: 60px;
  line-height: 56px;
  font-size: 26px;
}
.owl-carousel.featured-cases-slide.owl-theme .owl-nav > .owl-prev {
  right: 138px;
}
.owl-carousel.featured-cases-slide.owl-theme .owl-nav > .disabled {
  background: #90a9e7;
}

/* Team
================================================== */
.ts-team-wrapper {
  position: relative;
  overflow: hidden;
  -webkit-box-shadow: 0 3px 5px 0 rgba(0, 0, 0, 0.03);
  box-shadow: 0 3px 5px 0 rgba(0, 0, 0, 0.03);
  text-align: center;
  min-height: 380px;
}

.team-img-wrapper img {
  width: auto;
}

.ts-team-content {
  position: relative;
  left: 0;
  width: 100%;
  height: 100%;
  height: 95px;
  padding: 22px 25px;
  margin-top: 0;
  -webkit-transition: 350ms;
  transition: 350ms;
  transition: 350ms;
}

.team-img-wrapper {
  position: relative;
  -webkit-transition: 400ms;
  transition: 400ms;
  transition: 400ms;
}
.team-img-wrapper:after {
    position: absolute;
    content: '';
    background: rgba(31, 31, 31, 0.8);
    width: 100%;
    height: 100%;
    top: 0;
    bottom: 0;
    left: 0;
    opacity: 0;
    -webkit-transition: 400ms;
    transition: 400ms;
    transition: 400ms;
}

.ts-team-content .team-name {
  font-size: 20px;
  margin: 0;
  line-height: normal;
}
.ts-team-content .team-designation {
  font-size: 14px;
  font-style: italic;
}

.team-social-icons {
  display: none;
  -webkit-transition: 400ms;
  transition: 400ms;
  transition: 400ms;
}

.ts-team-info.team-list-border {
  border: 1px solid #f0f0f0;
  border-top: 0;
  padding: 20px 30px;
}

.ts-team-info.team-list-border .team-social-classic {
  border-top: 1px solid #f0f0f0;
  padding-top: 20px;
  margin-top: 20px;
}

/* Hover */
.ts-team-wrapper:hover .ts-team-content {
  position: absolute;
  top: 50%;
  margin-top: -95px;
  -webkit-transition: 400ms;
  transition: 400ms;
  transition: 400ms;
}
.ts-team-wrapper:hover .ts-team-content h3,
.ts-team-wrapper:hover .ts-team-content p {
  color: #fff;
}
.ts-team-wrapper:hover .team-img-wrapper:after {
  opacity: 1;
  right: 0;
}
.ts-team-wrapper:hover .team-social-icons {
  display: block;
  height: 95px;
  padding: 30px 0;
}

.team-social-icons a {
  color: #252a37;
  margin-right: 12px;
  text-align: center;
}

.team-social-classic a {
  display: inline-block;
  color: #000;
  padding-right: 20px;
}
.team-social-classic a:hover {
  color: #0F2765;
}

.ts-team-info {
  position: relative;
  left: 0;
  padding: 20px 0 0;
  margin-top: 0;
}
.ts-team-info h3 {
  font-size: 20px;
  margin-bottom: 0;
}
.ts-team-info p {
  margin-top: 0;
}
.ts-team-info .team-designation {
  font-size: 14px;
  font-style: italic;
}

/* Ts-Team */
.ts-team-bg {
  background-color: #F8F9FD;
}

/* Quote area
================================================== */

.quote_form {
  padding: 80px 0px 80px;
  margin-top: -80px;
  margin-bottom: -80px;
}

.quote_form .form-group {
  margin-bottom: 30px;
}

.quote-form-text {
  text-align: center;
  font-weight: 600;
  margin-bottom: 30px;
}

.quote_form input::input-placeholder,
.quote_form textarea::input-placeholder {
  color: #fff;
  color: rgba(255, 255, 255, 0.3);
}

.newsletter-form input::input-placeholder, .newsletter-form input:-moz-placeholder, .newsletter-form input::-moz-placeholder {
  color: #252a37;
}

.quote_form input:-moz-placeholder,
.quote_form textarea:-moz-placeholder,
.quote_form input::-moz-placeholder,
.quote_form textarea::-moz-placeholder {
  color: #fff;
}

.newsletter-form input::-moz-placeholder {
  color: #fff;
}

.quote_form input:-ms-input-placeholder,
.quote_form textarea:-ms-input-placeholder {
  color: #fff;
}

.newsletter-form input:-ms-input-placeholder {
  color: #fff;
}

.quote_form .form-control {
  border: 0;
  border-bottom: 1px solid #6d6d6d;
  padding-left: 0;
  color: #fff;
}
.quote_form .form-control:focus {
  border: 0;
  border-bottom: 1px solid #da0f32;
  background: none;
}
.quote_form .tag-line {
  text-align: center;
  color: #fff;
  clear: both;
  margin-top: 20px;
  margin-bottom: 0;
}
.quote_form .tag-line p {
  color: #fff;
  margin: 0;
  font-size: 14px;
}

/*-- Testimonial --*/
.testimonial-slide .owl-nav {
  position: absolute;
  right: 40px;
  bottom: 95px;
}

.testimonial-slide {
  padding: 50px 0;
}

@media screen and (min-width: 992px) {
  .quote-item.quote-left {
    padding-right: 50px;
  }
}
@media screen and (min-width: 992px) {
  .quote-item.quote-right {
    padding-left: 50px;
  }
}
.quote-item .quote-text {
  margin: 40px 0 10px;
  display: inline-block;
  padding: 50px 40px 30px 45px;
  background-color: #fff;
  background: #1e2227;
  color: #fff;
  position: relative;
  font-size: 16px;
  font-style: italic;
}
.quote-item .quote-text:before {
  content: "\f10d";
  font-family: FontAwesome;
  position: absolute;
  font-size: 20px;
  left: 45px;
  top: -20px;
  color: #fff;
  background: #da0f32;
  width: 50px;
  height: 50px;
  line-height: 50px;
  text-align: center;
  border-radius: 3px;
  font-style: normal;
}
.quote-item .quote-text:after {
  content: "";
  position: absolute;
  bottom: -20px;
  left: 55px;
  border-width: 0 0 20px 20px;
  border-style: solid;
  border-color: transparent #1e2227;
  display: block;
  width: 0;
}

.quote-item.quote-square .quote-text:before {
  content: "\e937";
  font-family: 'iconfont';
  font-size: 20px;
  width: 50px;
  height: 50px;
  border: 1px solid #da0f32;
  line-height: 50px;
  color: #fff;
  background: #da0f32;
  border-radius: 3px;
  left: 45px;
}

.ts-testimonial-static {
  padding: 100px 0;
}
.ts-testimonial-static .quote-classic {
  -webkit-box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.04);
  box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.04);
  border: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.ts-testimonial-static .quote-classic .quote-text {
  text-align: center;
}
.ts-testimonial-static .quote-classic:hover {
  -webkit-box-shadow: 0px 10px 15px 0px rgba(0, 0, 0, 0.06);
  box-shadow: 0px 10px 15px 0px rgba(0, 0, 0, 0.06);
}

/* Testimonial Slide classic */
.quote-item-area {
  max-width: 600px;
  margin: 0 auto;
}

.quote-item-area .quote-thumb {
  background: #da0f32;
  text-align: center;
  width: 190px;
  height: 190px;
  border-radius: 100%;
}

.quote-item-area .quote-thumb img {
  display: block;
  width: 180px;
  height: 180px;
  border-radius: 100%;
}

.quote-item-content .quote-name {
  margin: 0;
}

.quote-item-content .quote-name-desg {
  margin-bottom: 10px;
  display: block;
}

.quote-message {
  font-style: italic;
}

.testimonial-slide.owl-carousel.owl-theme .owl-nav [class*=owl-] {
  left: 0;
  top: 50%;
}

.testimonial-slide.owl-carousel.owl-theme .owl-nav [class*=owl-next] {
  left: 0;
  right: 0;
}

.testimonial-slide.owl-carousel.owl-theme .owl-nav [class*=owl-prev] {
  right: auto;
  left: -40px;
}

.ts-testimonial-slide.solid-bg .owl-nav {
  width: 100%;
  left: 0;
  bottom: 50%;
}

.ts-testimonial-slide.solid-bg .owl-nav .owl-next {
  left: auto;
  right: 0;
}

.ts-testimonial-slide.solid-bg .testimonial-slide.owl-carousel .owl-nav .owl-next {
  left: auto;
  right: 0;
}

.ts-testimonial-slide.solid-bg .testimonial-slide.owl-carousel .owl-nav .owl-prev {
  left: 0;
}

img.testimonial-thumb {
  max-width: 80px;
  float: left;
  margin-right: 20px;
  border-radius: 100%;
}

.quote-item-info {
  display: inline-block;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.quote-author {
  font-size: 20px;
  line-height: 20px;
  margin: 0 0 2px;
  font-weight: 600;
  display: block;
  color: #000;
}

.quote-subtext {
  color: #9e9e9e;
  font-size: 14px;
}

.quote-item-footer {
  margin-top: 40px;
  margin-left: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.ts-testimonial-slide {
  padding: 100px 0;
  margin-bottom: -40px;
}

.testimonial-slide.owl-carousel.owl-theme .owl-nav [class*=owl-] {
  bottom: 90px;
}
.testimonial-slide.owl-theme .owl-dots {
  text-align: center;
  margin-top: 60px;
  position: relative;
  z-index: 1;
}
.testimonial-slide.owl-theme .owl-dots .owl-dot {
  display: inline-block;
}
.testimonial-slide.owl-theme .owl-dots .owl-dot span {
  width: 10px;
  height: 10px;
  margin: 5px 4px;
  background: #fff;
  opacity: .45;
  display: inline-block;
}
.testimonial-slide.owl-theme .owl-dots .owl-dot.active span {
  background: #e50404;
  opacity: 1;
}

/* Clients
================================================== */
/*-- Partners carousel --*/
.owl-carousel.owl-theme.partners .owl-nav {
  margin: 0px;
}

.partners-carousel .owl-theme .owl-nav {
  margin-top: 0;
}

.clients-area {
  background: #f7f9fd;
  padding: 70px 0;
}

.partner-logo {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  min-height: 32px;
  margin-bottom: 0;
}
.partner-logo img {
  -webkit-transition: 350ms;
  transition: 350ms;
  transition: 350ms;
  width: auto !important;
}
.partner-logo:hover img {
  opacity: 1;
  -webkit-filter: grayscale(0%);
  filter: grayscale(0%);
  -moz-filter: grayscale(0%);
  -ms-filter: grayscale(0%);
  -o-filter: grayscale(0%);
  filter: grayscale(0%);
}

.owl-carousel.owl-theme.partners .owl-nav .owl-prev {
  left: -25px;
  right: auto;
  background: #da0f32;
  color: #fff;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.owl-carousel.owl-theme.partners .owl-nav .owl-prev:hover {
  background: #272D33;
}
.owl-carousel.owl-theme.partners .owl-nav [class*=owl-] {
  bottom: 0px;
  margin-bottom: -12px;
}

.owl-carousel .owl-item img {
    height: auto;
}

.owl-carousel.partners .owl-item img {
    height: 70px;
}

/* Content area
================================================== */
/* Accordion */
.accordion-title span {
  color: #333;
  font-weight: 400;
  font-size: 16px;
}

.panel-default > .panel-heading {
  background: none;
  border-radius: 0;
  position: relative;
  padding: 6px 20px;
}

.panel-group .panel {
  margin-bottom: 10px;
  border: none;
  border-bottom: 1px solid #000;
}

.panel-body {
  padding: 20px 20px 10px 20px;
  border: 1px solid #DDDDDD;
  border-radius: 0 11px 0 0;
  margin-left: 15px;
}
.panel-body > img {
  max-width: 100px;
  margin-bottom: 10px;
}

p.panel-title {
  font-size: 16px;
  background: none;
  border: 0;
  padding: 8px 0 8px 0;
  line-height: normal;
  border-radius: 0;
}
p.panel-title a {
  color: #da0f32;
}
p.panel-title span {
  float: right;
}
p.panel-title a.collapsed {
  color: #626c84;
}

/* Accordion classic */
.panel-classic .panel-heading {
  padding-left: 15px;
}
.panel-classic h4.panel-title a:before, .panel-classic h4.panel-title a.collapsed:before {
  position: relative;
  content: '';
  font-size: 0;
}
.accordion-area .card-header .btn {
   white-space: normal;
   text-align: left;
}

.accordion-area .card-header .btn-primary{
   background: none;
}

/* Clients */
.clients-logo {
  margin: 0 0 30px;
  border: 1px solid #dadada;
  min-height: 105px;
  padding: 0 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
}
.clients-logo img {
  -webkit-filter: grayscale(1);
  filter: grayscale(1);
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
  filter: grayscale(100%);
  -webkit-filter: gray;
  filter: gray;
}

/* Latest News section
================================================== */
.latest-post {
  position: relative;
  padding: 30px 20px 30px 30px;
  border: 1px solid #eaeaea;
  min-height: 345px;
}
.latest-post .image-angle:before {
  border-bottom: 20px solid #f9f9f9;
}
.latest-post .post-title {
  font-size: 22px;
  line-height: 28px;
  margin: 10px 0 5px;
}

.latest-post.post-large .post-body {
    position: absolute;
    bottom: 50px;
    color: #fff;
    padding: 30px;
    background: rgba(0,0,0,0.5);
    display: inline-block;
    width: 80%;
    left: 30px;
}

.latest-post .post-title a {
  color: #252a37;
}
.latest-post .post-title a:hover {
  color: #da0f32;
}

.latest-post-meta {
  font-size: 13px;
  text-transform: uppercase;
}

.latest-post .post-cat,
.latest-post .post-item-date {
  font-style: italic;
  font-size: 14px;
  display: block;
}
.latest-post .post-text {
  margin-top: 10px;
}
.latest-post .post-body {
  padding: 0;
  background: none;
  border: 0;
}
.latest-post.post-large {
  position: relative;
  padding: 0;
  border: 0;
  overflow: hidden;
}


.latest-post.post-large .post-cat {
  position: absolute;
  top: 15px;
  left: 30px;
  color: #fff;
  font-style: italic;
}
.latest-post.post-large .post-title {
  font-size: 20px;
  line-height: 26px;
  padding-top: 15px;
}
.latest-post.post-large .post-title a {
  color: #fff;
}
.latest-post.post-large .btn.btn-primary {
  padding: 12px 30px;
  margin-top: 15px;
}


/* Footer
================================================== */
/* (ISI FILE LAIN TETAP) */

/* Footer
================================================== */
.footer {
  background-color: #3D2D13;
  padding: 50px 5px;
  color: #fff;
  font-family: 'Inter', sans-serif;
  font-size: 14px;
  overflow: visible;
}

/* Layout helpers */
.footer .container .row {
  display: flex;
  justify-content: center; /* Geser semua kolom ke tengah */
}
.footer .container .row > [class*="col-"] {
  flex: unset; /* Biar ukuran kolom mengikuti isi */
  margin: 0 0px; /* Jarak antar kolom */
}

.footer-hero { display:flex; align-items:flex-start; gap:22px; }

/* ——— HANYA LOGO YANG DIKECILKAN + RESPONSIVE ——— */
.footer-logo-img {
  width: 150px;          /* was: 180px */
  max-width: 150px;
  height: auto;
  margin-left: -100px;   /* was: -150px (dikurangi supaya tidak kepotong) */
}

/* tablet besar / layar sedang */
@media (max-width: 1200px){
  .footer-logo-img{
    width: 140px;
    max-width: 140px;
    margin-left: -70px;
  }
}

/* tablet & mobile: hindari negative margin agar pasti tampil */
@media (max-width: 992px){
  .footer-logo-img{
    width: 120px;
    max-width: 120px;
    margin-left: 0;
  }
}

.footer-title {
  font-size: 18px;
  font-weight: 700;
  margin: 0 0 12px;
  color: #fff;
  gap: 30px;
}

/* Widgets */
.footer-widget-kampung { padding-left: 10px; max-width: 100%; }
.footer-widget-hubungi { padding-right: 10px; max-width: 100%; }
.footer-widget-jelajahi .footer-title { padding-left: 0; }

/* Links */
.footer-links-wrapper {
  display: grid;
  grid-template-columns: repeat(2, auto);
  gap: 10px 40px; /* baris x kolom */
}
.footer-links { list-style: none; padding: 0; margin: 0; }
.footer-links li { margin-bottom: 8px; }
.footer-links li a {
  color: #ffffff;
  text-decoration: none;
  display: inline-block;
  margin-bottom: 2px;
  transition: color 0.3s ease;
}
.footer-links li a:hover { color: #41cc3cff; font-weight: bold; }

/* Dropdown */
.footer .dropdown { position: relative; }
.footer .dropdown-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  transform: translateY(6px);
  z-index: 1060;
  margin: 0;
  padding: 8px 0;
  min-width: 200px;
  max-height: 280px;
  overflow: auto;
  background: #fff;
  border: 0;
  border-radius: 8px;
  box-shadow: 0 10px 24px rgba(0,0,0,.18);
}
.footer .dropdown:hover .dropdown-menu,
.footer .dropdown.show > .dropdown-menu { display: block; }
.footer .dropdown-menu .dropdown-item {
  color: #3D2D13;
  background: transparent;
  padding: 8px 14px;
  font-weight: 500;
}
.footer .dropdown-menu .dropdown-item:hover {
  background: #3D2D13;
  color: #fff;
}

/* Footer bottom */
.footer-bottom {
  background-color: #3D2D13;
  color: #fff;
  text-align: center;
  padding-top: 15px;
  font-size: 13px;
  border-top: 1px solid #4e3a20;
  margin-top: 20px;
}

/* Back to top */
#back-to-top { position: fixed; right: 25px; bottom: 25px; z-index: 2000; }


/* ==============================
   Hubungi Kami (dipertahankan)
   ============================== */
.footer-widget-hubungi p {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 8px;
}
.footer-widget-hubungi p i {
  margin-right: 8px;
  vertical-align: middle;
  width: 18px;
  text-align: center;
}
.footer .contact-line a.footer-mail {
  color: #fff;
  text-decoration: none;
}
.footer .contact-line a.footer-mail:hover {
  text-decoration: underline;
}

/* Sosial media (dipertahankan) */
.social-icons {
  display: flex;
  gap: 25px;
  font-size: 20px;
  margin-top: 15px;
}
.social-icons a {
  color: #fff;
  transition: 0.3s ease;
}
.social-icons a:hover {
  color: #41cc3cff;
  font-weight: bold;
}



/* ==============================
   Responsive footer
   ============================== */

/* Tablet kecil (880px – 991.98px) */
@media (min-width:880px) and (max-width:991.98px){
  /* wrapper: tambah jarak vertikal antar-baris + jarak horizontal antar-kolom */
  .footer .row{
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:flex-start !important;
    margin:0 !important;
    padding:0 10px !important;
    gap: 22px 20px !important;   /* row-gap 22px, column-gap 20px */
  }

  /* baris 1: kampung/alamat penuh + jarak ke baris bawah */
  .footer .footer-widget-kampung{
    order:1 !important;
    flex:0 0 100% !important;
    max-width:100% !important;
    margin:0 0 18px !important;  /* tambahan jarak vertikal */
  }

  /* logo */
  .footer .footer-logo-img{
    width:110px !important;
    height:auto !important;
    margin-left:-36px !important;
  }

  /* baris 2: Hubungi & Jelajahi sejajar */
  .footer .footer-widget-hubungi,
  .footer .footer-widget-jelajahi{
    order:2 !important;
    flex:0 0 calc(50% - 10px) !important;
    max-width:calc(50% - 10px) !important;
    margin:0 !important;
    padding:0 !important;
  }

  /* Warna teks dropdown sebelum hover */
  .footer .footer-links-wrapper a { color:#fff !important; }
  .footer .footer-links-wrapper a:hover { color:#fff !important; }

  /* Struktur Hubungi & posisi sosmed */
  .footer .footer-widget-hubungi{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
  }
  .footer .social-icons{
    margin-top: 15px !important;
    justify-content:flex-start !important;
  }
}

/* Ponsel & phablet (480px – 880px) */
@media (min-width:480px) and (max-width:880px) {
  .footer .row{
    display:flex !important;
    flex-wrap:wrap !important;
  }
  .footer .row > div{
    width:100% !important;
  }
  .footer .footer-logo-img{
    width:84px !important;
    height:auto !important;
    margin-left:0 !important;
  }

  /* Tambah jarak antara logo+pemerintah kampung dengan "Hubungi Kami" */
  .footer .footer-widget-hubungi{
    margin-top:15px !important;
  }

  /* Biar ikon sosmed tetap nempel di bawah Hubungi Kami */
  .footer .footer-widget-hubungi .social-icons{
    margin-top:10px !important;
    display:flex;
    gap:14px; /* jarak antar ikon */
    flex-wrap:wrap;
  }

  /* Dropdown tampilan kartu putih */
  .footer .dropdown-menu{
    background:#fff !important;
    border:1px solid rgba(0,0,0,.08) !important;
    border-radius:12px !important;
    box-shadow:0 10px 24px rgba(0,0,0,.18) !important;
    padding:10px 0 !important;
    min-width:220px !important;
    z-index:1060 !important;

    position:absolute !important;
    top:100% !important;
    left:0 !important;              /* ubah ke right:0 jika mau rata kanan */
    transform:translateY(6px) !important;
  }

  /* Teks item dropdown */
  .footer .dropdown-menu .dropdown-item{
    color:#222 !important;          /* hitam/gelap */
    background:transparent !important;
    padding:10px 14px !important;
    font-weight:500;
    line-height:1.25;
    white-space:nowrap;
  }

  /* Hover dropdown */
  .footer .dropdown-menu .dropdown-item:hover,
  .footer .dropdown-menu .dropdown-item:focus{
    background:#3D2D13 !important;
    color:#fff !important;
  }

  /* Grid link Jelajahi */
  .footer .footer-links-wrapper{
    display:grid !important;
    grid-template-columns:repeat(2, minmax(120px,1fr)) !important;
    column-gap:16px !important;
    row-gap:6px !important;
  }

  /* Sosmed tetap putih & satu baris */
  .footer .social-icons{
    display:flex !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    gap:16px !important;
    margin-top:10px !important;
  }
  .footer .social-icons a{ color:#fff !important; }
  .social-icons a:hover{ color:#41cc3c !important; }
}

/* === Footer desktop sizing & spacing (>=992px) === */
@media (min-width: 992px){
  .footer{
    padding: 72px 0 44px !important;
    font-size: 16px !important;
    line-height: 1.7 !important;
  }
  .footer .footer-title{
    font-size: 20px !important;
    margin-bottom: 16px !important;
  }
  .footer .container .row{
    gap: 0 56px !important;           /* Jarak antar kolom */
    justify-content: space-between !important;
    align-items: flex-start !important;
    flex-wrap: nowrap !important;
  }
  .footer .footer-links li{
    margin-bottom: 10px !important;
  }
  .footer .footer-logo-img{
    width: 190px !important;         
    max-width: 190px !important;
  }
  .footer .footer-widget-kampung{
    padding-right: 10px !important;
  }
  .footer .footer-widget-hubungi{
    padding: 0 10px !important;
  }
  .footer .footer-widget-jelajahi{
    padding-left: 10px !important;
  }
  .footer .social-icons{
    font-size: 22px !important;
    gap: 22px !important;
  }
}
.footer .footer-links li.dropdown > a.dropdown-toggle{
  display: inline-flex !important;
  align-items: center !important;
  white-space: nowrap !important;      /* cegah turun baris */
  padding-right: 0 !important;
}
.footer .footer-links li.dropdown > a.dropdown-toggle::after{
  margin-left: .4em !important;        /* jarak dari teks */
  vertical-align: middle !important;
  transform: none !important;
  position: static !important;
}

/*footer end*/


/* Sub Pages
================================================== */
/*-- Title border --*/
.main-container .border-left {
  margin-bottom: 30px;
}

/*-- Banner --*/
.banner-area {
  position: relative;
  min-height: 300px;
  color: #fff;
  background-position: 50% 50%;
  background-size: cover;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.banner-area .container {
  position: relative;
}

.banner-title {
  color: #fff;
  margin: 0;
  padding: 0;
  margin-bottom: 30px;
}

.banner-heading {
  width: 100%;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  min-height: 300px;
}

.breadcrumb {
    position: absolute;
    left: 45%;
    top: 55%;
    padding: 0;
    background: none;
    font-size: 16px;
    font-weight: 300;
}
.breadcrumb li:not(:last-child):after {
  content: "/";
  margin: 0 5px;
}
.breadcrumb a{
  color: #fff;
}

/*-- About us page --*/
.about-pattern {
    position: relative;
    z-index: 2;
    padding: 70px 0 70px 0;
    margin: 0 0 0;
    background-image: url("../images/pattern/bg_pattern1.png");
    background-repeat: no-repeat;
    background-size: inherit;
    background-attachment: inherit;
    background-position: 50% 50%;
}

.about-pattern .bold-text {
    font-size: 16px;
    font-weight: 600;
}

.about-pattern .bold-text a {
    color: #da0f32;
}

.about-desc p {
  font-weight: 500;
}

.ceo-designation {
  display: inline-block;
}
.ceo-designation p {
  margin: 0;
  font-size: 20px;
  font-weight: 700;
  margin-bottom: -10px;
}
.ceo-designation small {
  font-size: 14px;
}

.ceo-desc {
  display: inline-block;
}

.ceo-signature {
  margin-top: 35px;
}
.ceo-signature > img {
  float: right;
}
.ceo-signature:after {
  display: block;
  content: "";
  clear: both;
}

.ceo-desc img {
  width: 95px;
  height: 95px;
  border-radius: 50%;
}

/* ts progress */
.ts-skills-area .ts-padding {
  padding-bottom: 50px;
  padding-right: 80px;
}

.ts-progress-bar {
  margin-bottom: 30px;
}

.progress {
  height: 3px;
  position: relative;
  overflow: visible;
}
.progress .progress-value {
  display: block;
  font-size: 16px;
  color: #000;
  position: absolute;
  top: -25px;
  right: 0;
}

.ts-progress-bar h3 {
  font-size: 18px;
  text-align: left;
  margin: 0 0 10px 0;
}

/* Company Progress */

.percent-area{
   position: relative;
   margin-top: 30px;
}

.percent-area .chart p{
    position: absolute;
    top: 60px;
    left: 42%;
    font-size: 24px;
}

.percent-area .column-title {
    margin-top: 15px;
    color: #000;
}

.tw-service-value {
    padding: 60px 0 40px 0;
    margin: 0 0 0 0;
    background-image: url(../images/crossword.png);
    background-repeat: repeat;
    background-size: contain;
    background-attachment: inherit;
    background-position: 0 0;
}

/* ts feature box */
.ts-features-light .ts-feature-info i {
  color: #2B5CD1;
}

.ts-features-light .ts-feature-info h3 {
  font-size: 24px;
}

.ts-features-light .ts-feature-box .ts-feature-info {
  padding: 0 20px;
}

.ts-features-light .ts-feature-box .ts-feature-info p {
  margin-bottom: 0;
}

.ts-feature-box .ts-feature-title {
  font-size: 20px;
  margin: 20px 0 10px;
  color: #000;
}
.ts-feature-box .ts-feature-info {
  color: #000;
  z-index: 1;
  position: relative;
  padding: 15px;
}

.feature-text-box .column-title {
  font-size: 36px;
  line-height: normal;
  margin-bottom: 10px;
}

.feature-text-box .column-title span {
  font-size: 20px;
}

.feature-text-box .btn {
  padding: 15px 60px;
  margin-top: 10px;
}

/* FAQ page */
.panel-heading i {
  background: #da0f32;
  color: #fff;
  border-radius: 5px;
  font-size: 20px;
  height: 40px;
  width: 40px;
  text-align: center;
  line-height: 40px;
  margin-right: 15px;
}

.help-box,
.ts-testimonial-static {
  background-color: #FFFFFF;
  background-image: url(../images/services/service1.jpg);
}
.help-box .help,
.ts-testimonial-static .help {
   background-color: rgba(12, 12, 12, 0.75);
  padding: 70px;
  color: #fff;
  margin-top: 35%;
}
.help-box .quote-item,
.ts-testimonial-static .quote-item {
  padding-left: 0;
}
.help-box .quote-item .quote-text:before,
.ts-testimonial-static .quote-item .quote-text:before {
  left: 50%;
  margin-left: -35px;
}
.help-box .quote-item .quote-text:after,
.ts-testimonial-static .quote-item .quote-text:after {
  display: none;
}
.help-box .quote-item .quote-item-footer,
.ts-testimonial-static .quote-item .quote-item-footer {
  margin-top: 0;
  margin-left: 75px;
}
.help-box .quote-item .quote-item-info,
.ts-testimonial-static .quote-item .quote-item-info {
  padding-top: 20px;
}
.help-box .quote-item .quote-item-info .quote-author,
.ts-testimonial-static .quote-item .quote-item-info .quote-author {
  color: #252a37;
  font-size: 20px;
  font-weight: 700;
}
.help-box .quote-item .quote-item-info .quote-subtext,
.ts-testimonial-static .quote-item .quote-item-info .quote-subtext {
  color: #626c84;
  font-size: 14px;
}
.help-box .quote-classic,
.ts-testimonial-static .quote-classic {
  border: 1px solid #EAEAEA;
  padding-bottom: 25px;
}

.help h2 {
  color: #fff;
  font-size: 24px;
}

.brochure {
  border: 2px solid #EAEAEA;
  font-size: 24px;
  text-align: center;
  padding: 25px;
}
.brochure i {
  padding-left: 20px;
}

.quote-classic .quote-text {
  margin: 40px 0 10px;
  display: inline-block;
  padding: 50px 40px 30px 45px;
  color: #626c84;
  background: none;
  position: relative;
  font-size: 16px;
}

.quote-footer-classic .quote-author {
  font-size: 20px;
  line-height: 20px;
  margin: 0 0 2px;
  font-weight: 600;
  display: block;
  color: #1f1c1c;
}

/* Gallery */

.gallery-icon i{
   background: #0052a5;
   color: #fff;
   opacity: 0;
   position: absolute;
   text-align: center;
   top: 0;
   left: 50%;
   font-size: 16px;
   width: 36px;
   height: 36px;
   line-height: 36px;
   z-index: 1;
   -webkit-transition: all 0.3s;
   -moz-transition: all 0.3s;
   -o-transition: all 0.3s;
   transition: all 0.3s;
   margin-left: -18px;
   margin-top: -18px;
}

.gallery-img:hover .gallery-icon i{
   opacity: 1;
   top: 50%;
}

/* Pricing table
================================================== */

.pricing {
  padding-bottom: 80px;
}

.price-icon-wrapper {
  height: 40px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 100%;
  -moz-box-flex: 0;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 30px;
}

.plan {
  border: 1px solid #eaeaea;
}
.plan ul {
  background: #fff;
  padding: 0;
  margin-bottom: 0;
}
.plan li {
  list-style: none;
}
.plan .btn {
  margin: 25px 0 40px;
}
.plan.featured {
  background: #da0f32;
  color: #fff;
  padding: 40px 0;
  margin: -40px 0;
}
.plan.featured ul {
  background: none;
}
.plan.featured .plan-name {
  color: #fff;
}
.plan.featured .plan-price {
  color: #fff;
}
.plan.featured .btn {
  background: #fff;
  color: #da0f32;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.plan.featured .btn:hover {
  background: #ff0000;
  color: #fff;
}
.plan.plan-last {
  margin-bottom: 0;
}

.plan-name {
  display: block;
  font-size: 24px;
  line-height: 30px;
  font-weight: 700;
  padding: 20px 0;
  color: #252a37;
  margin-bottom: 0;
}
.plan-name small {
  display: block;
  font-size: 12px;
  font-weight: 700;
  line-height: normal;
}

.plan-price {
  font-size: 48px;
  padding: 0 0;
  position: relative;
  color: #252a37;
  margin: 0 0 25px;
}
.plan-price .currency {
  top: -0.9em;
  font-size: 50%;
  left: -0.01em;
  font-weight: 700;
}
.plan-price sub {
  font-size: 20px;
  left: -0.6em;
  position: relative;
}

.ts-price-box {
  margin-top: 100px;
  padding-top: 100px;
  padding-bottom: 100px;
  margin-bottom: -80px;
}

.pricing-boxed {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 100%;
  -moz-box-flex: 0;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.pricing-boxed:after {
  content: "";
  clear: both;
  display: block;
}

.single-price-box {
  width: 33.3333%;
  text-align: center;
}
.single-price-box .pricing-header {
  min-height: 145px;
  padding: 10px 0;
  margin-bottom: 70px;
  background: #000;
  position: relative;
  z-index: 3;
}
.single-price-box .pricing-header h3,
.single-price-box .pricing-header h2 {
  color: #fff;
}
@media screen and (min-width: 992px) {
  .single-price-box .pricing-header.border-left {
    border-top-left-radius: 5px;
  }
  .single-price-box .pricing-header.border-right {
    border-top-right-radius: 5px;
  }
}
.single-price-box.featured {
  position: relative;
  z-index: 2;
  -webkit-box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.1);
  padding-bottom: 30px;
  background: #fff;
  margin-top: -30px;
}
.single-price-box.featured .pricing-header {
  margin-bottom: 100px;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  background: #FC6B2A;
}
.single-price-box.featured .btn-primary {
  background: #FC6B2A;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.single-price-box.featured .btn-primary:hover {
  background: #000;
}
.single-price-box .pricing-plan .list-unstyled li {
  padding-bottom: 12px;
}
.single-price-box .pricing-plan .list-unstyled li:last-child {
  padding-bottom: 35px;
}
.single-price-box .pricing-plan {
  padding-bottom: 40px;
  background: #fff;
}

/* FAQ Page*/
/* Collapse */
.card {
  border: none;
}

.card-header {
  background: none !important;
  color: #626c84;
  padding: 20px 0 21px;
}

.card-header i {
  background: #da0f32;
  color: #fff;
  border-radius: 5px;
  font-size: 20px;
  height: 40px;
  width: 40px;
  text-align: center;
  line-height: 40px;
  margin-right: 15px;
}

.card-body {
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-top: none;
}

.btn-link {
  color: #626c84;
  padding: 0;
}

.btn-link:hover {
  text-decoration: none;
  color: #ff0000;
}

.btn:focus {
  text-decoration: none !important;
}

h5.mb-0 {
  margin-left: 0px;
}

h5.mb-0 a {
  position: relative;
  padding-left: 55px;
}

h5.mb-0 a.collapsed {
  color: #333;
}

h5.mb-0 a:before {
  color: #fff;
  width: 40px;
  height: 40px;
  line-height: 40px;
  border-radius: 3px;
}

h5.mb-0 a:before,
h5.mb-0 a .collapsed:before {
  font-family: "FontAwesome";
  position: absolute;
  z-index: 0;
  font-size: 16px;
  left: 0px;
  padding: 0 5px;
  text-align: center;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  background: #da0f32;
}


h5.mb-0 button p:hover {
  color: #2155CF;
}

h5.mb-0 a:before {
  content: "\f068";
}

h5.mb-0 a.collapsed:before {
  content: "\f067";
}

.card-header .collapsed .show {
  border-bottom: none;
}

/* Quote area */
.quote-item .quote-text:before {
  content: "\e937";
  font-family: 'iconfont';
  position: absolute;
  font-size: 35px;
  left: 105px;
  color: #da0f32;
  background: none;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

/* Slider pages */
.page-slider.small-bg .item {
  min-height: 330px;
}
.page-slider.small-bg .box-slider-content {
  left: 20%;
}
.page-slider.small-bg .box-slider-text {
  background: #fff;
  padding: 5px 20px;
}
.page-slider.small-bg .box-slide-title {
  font-size: 28px;
  color: #fff;
  font-weight: 900;
}

/*-- Get a quote page --*/
.page-quote-form {
  background: #f2f2f2;
  padding: 30px 50px 50px;
}

.get-a-quote-img {
  margin-bottom: -190px;
}

/*-- Pricing table  --*/
.ts-pricing-box {
  margin: 20px 0;
  padding: 0;
  text-align: center;
  background: #f9f9f9;
}

.ts-pricing-header {
  background: #252525;
  color: #fff;
  position: relative;
  padding: 30px 20px;
}

.ts-pricing-name {
  font-size: 18px;
  line-height: normal;
  margin: 0 0 5px 0;
  color: #fff;
}

.ts-pricing-price {
  font-size: 44px;
  color: #fff;
  margin: 15px 0 0;
  display: inline-block;
}
.ts-pricing-price > small {
  font-size: 16px;
  line-height: 16px;
  display: block;
  margin-top: 15px;
  color: #fff;
}

.ts-pricing-features {
  padding: 15px 0;
}
.ts-pricing-features > ul {
  padding: 0 20px;
}
.ts-pricing-features > ul > li {
  padding: 20px 0;
  border-top: 1px dotted #e5e5e5;
}
.ts-pricing-features > ul > li:first-child {
  border-top: 0;
}

.plan-action {
  padding-bottom: 40px;
}

.pricing-column {
    padding: 0;
}

/* Pricing featured */
.ts-pricing-box.ts-pricing-featured .ts-pricing-header {
  background: #ff9700;
}

/* Contact Us
================================================== */

.map {
  height: 405px;
  z-index: 1;
}

.contact-info-box {
  margin-top: 20px;
}
.contact-info-box i {
  float: left;
  font-size: 30px;
  color: #da0f32;
}

.contact-info-box-content {
  padding-left: 40px;
}
.contact-info-box-content h4 {
  font-size: 16px;
  margin-top: 0;
  line-height: normal;
  font-weight: 700;
}
.contact-info-box-content p {
  margin-bottom: 0;
}

label {
  font-weight: 400;
}

.box-border {
  border: 1px solid #eaeaea;
  padding: 20px 30px;
}

.ts-contact-info .ts-contact-icon {
  float: left;
  font-size: 20px;
  color: #fff;
}

.ts-contact-info .ts-contact-content {
   margin-left: 45px;
   margin-bottom: 35px;
}

.ts-contact-info .ts-contact-content p {
  margin: 0;
}

.ts-contact-info .ts-contact-title {
  font-size: 20px;
  margin: 0;
  color: #fff;
}

/* Contact page 2 */
.contact-box.info-box {
  position: relative;
  z-index: 2;
}

.contact-wrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 100%;
  -moz-box-flex: 0;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  background: #fff;
  -webkit-box-shadow: 0px 8px 15px 0px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 8px 15px 0px rgba(0, 0, 0, 0.1);
}


.contact-box.form-box {
  width: 100%;
}
.contact-box.info-box {
  padding-top: 25px;
  width: 100%;
}
.contact-box.info-box:after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  background: rgba(15, 39, 101, 0.9);
  z-index: -1;
}
.contact-box.info-box.form-box {
  padding: 40px;
}
.contact-box.info-box .ts-contact-content h3,
.contact-box.info-box .ts-contact-content p {
  color: #fff;
}
.contact-box.info-box .ts-contact-content .ts-contact-info i {
  color: #fff;
  font-size: 40px;
}

.contact-info-right h3 {
  color: #fff;
  margin-bottom: 40px;
  font-size: 30px;
}
.contact-info-right .ts-contact-content {
  padding-bottom: 30px;
}
.contact-info-right .ts-contact-content h3 {
  font-size: 20px;
}
.contact-info-right .ts-contact-content p {
  font-size: 14px;
}
.contact-info-right .ts-contact-info.last .ts-contact-content {
  padding-bottom: 15px;
}
.contact-info-right .ts-contact-info i {
  color: #fff;
  font-size: 40px;
}

.contact-info-social-links {
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: center;
  margin-left: -40px;
}
.contact-info-social-links li {
  display: inline-block;
}
.contact-info-social-links li a {
  display: block;
  color: #fff;
  padding: 10px;
}

.contact-map{
   padding: 0px 80px;
}

.contact-info-box .ts-contact-content h3, .contact-box.info-box .ts-contact-content p{
   color: #000 !important;
}

.contact-info-box:after{
   display: none;
}

.full-contact{
   background: none;
   box-shadow:none;
}



/* News Listing
================================================== */

.post {
  margin: 0 0 50px;
}

.post.last {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: 0;
}

.post-body {
  padding: 25px 40px 40px 25px;
  border: 0;
  border-top: 0;
}

/* Post Meta Left */
.post-meta-left {
  width: 15%;
  margin-top: -20px;
}
.post-meta-left span {
  display: inline-block;
  font-weight: 600;
  font-size: 14px;
}

/* Post content right */
.post-content-right {
  width: 80%;
  float: right;
}

.entry-header .entry-title {
  font-size: 30px;
  line-height: 40px;
  margin: 0 0 15px;
}
.entry-header .entry-title a {
  color: #252a37;
}
.entry-header .entry-title a:hover {
  color: #da0f32;
}

/* Post media */
.post-media.post-video {
  max-width: 100%;
  position: relative;
  overflow: hidden;
}
.post-media.post-video:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
}

.video-icon {
  text-align: center;
  color: #fff;
  display: block;
  top: 50%;
  margin-top: -50px;
  font-size: 78px;
  z-index: 1;
  position: absolute;
  left: 50%;
  margin-left: -40px;
  width: 80px;
  height: 80px;
  line-height: 65px;
  display: inline-block;
  border-radius: 100%;
}
.video-icon i {
  -webkit-transition: 400ms;
  transition: 400ms;
  transition: 400ms;
}
.video-icon i:hover {
  color: #da0f32;
}

/* Meta date */
.post-meta-date {
  background: #da0f32;
  color: #fff;
  width: 65px;
  height: 65px;
  line-height: 26px;
  padding: 10px 0;
  position: relative;
  top: -40px;
}
.post-meta-date span {
  font-size: 30px;
  font-weight: 600;
  display: block;
}

/* Post Quote */
.post-quote-wrapper {
  position: relative;
  color: #fff;
  background: #252a37;
  padding: 50px;
}

.post-quote-content:before {
  padding: 28px 0 22px;
  content: "\e937";
  font-family: 'iconfont';
  color: #fff;
  font-size: 44px;
}
.post-quote-content .entry-title {
  margin-top: 20px;
}
.post-quote-content .entry-title a {
  color: #fff;
}
.post-quote-content .meta-author {
  color: #ccc;
  font-weight: 700;
  font-size: 16px;
  position: relative;
  margin-bottom: 15px;
}
.post-quote-content .meta-author:before {
  content: '';
  position: absolute;
  top: 14px;
  height: 2px;
  width: 20px;
  background-color: #da0f32;
  margin-left: -30px;
}
.post-quote-content .post-meta {
  color: #fff;
}
.post-quote-content .post-meta a {
  color: #fff;
}

/* Author */
.post-author {
  position: relative;
}
.post-author:after {
  content: '';
  position: absolute;
  border-bottom: 1px solid #dedede;
  top: 0;
  left: 50%;
  right: 0;
  bottom: 0;
  width: 75px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  transform: translateX(-50%);
}
.post-author .avatar {
  width: 55px;
  height: 55px;
  line-height: 55px;
  border-radius: 100%;
  margin-bottom: 5px;
}

.post-meta-left span.post-author {
  display: block;
  padding-bottom: 5px;
  margin-bottom: 5px;
}

.post-author a {
  display: block;
}

.post-comment i {
  position: relative;
  bottom: -3px;
  margin-right: 5px;
}

/* Common post meta */
.post-meta {
  padding-bottom: 15px;
  color: #626c84;
  font-size: 14px;
}
.post-meta a {
  color: #626c84;
  position: relative;
  z-index: 1;
}

.post-meta-left a {
  color: #626c84;
  position: relative;
  z-index: 1;
}

.post-meta a:hover,
.post-meta-left a:hover {
  color: #da0f32;
}

.post-meta span {
  margin-right: 10px;
  padding-right: 10px;
  line-height: 12px;
  display: inline-block;
}
.post-meta i {
  padding-right: 0;
  margin-right: 6px;
  font-weight: 500;
}

.post-footer .btn.btn-primary {
  margin-top: 10px;
  padding: 10px 30px;
}

/* Pagination */
.paging {
  margin-bottom: -5px;
}

.pagination {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0;
}
.pagination > li > a,
.pagination > li > span {
  margin-right: 8px;
  line-height: 28px;
  color: #7c7c7c;
  border: 1px solid #f1f1f1;
  text-align: center;
  display: inline-block;

  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.pagination > .active > a {
  color: #fff;
  background: #da0f32;
  border: 1px solid transparent;
}
.pagination > .active > a:hover {
  color: #fff;
  background: #da0f32;
  border: 1px solid transparent;
}
.pagination > li > a:hover {
  color: #fff;
  background: #da0f32;
  border: 1px solid transparent;
}

/* News Single
================================================== */
.post-single {
  position: relative;
}
.post-single .post-body {
  border: 1px solid #f1f1f1;
  background: none;
  padding: 40px;
}
.post-single .post-meta-date {
  position: absolute;
  top: 30px;
  left: 35px;
  display: block;
  text-align: center;
}
.post-single .post-author .avatar {
  width: 30px;
  height: 30px;
}
.post-single .post-author a {
  display: inline-block;
  margin-left: 6px;
}
.post-single .post-author:after {
  border: 0;
}
.post-single .entry-header .entry-title {
  font-size: 36px;
}
.post-single .entry-content p {
  margin-bottom: 30px;
}
.post-single .entry-content h3 {
  margin: 30px 0;
}
.post-single .post-footer {
  border-top: 1px solid #f1f1f1;
  margin: 40px 0 0;
  padding-top: 40px;
}

.tags-area {
  margin: 20px 0;
}

.post-tags strong {
  margin-right: 5px;
}
.post-tags a {
  border: 1px solid #f1f1f1;
  color: #626c84;
  display: inline-block;
  font-size: 14px;
  padding: 3px 15px;
  margin-left: 3px;
  border-radius: 25px;
}
.post-tags a:hover {
  background: #da0f32;
  color: #fff;
  border: 1px solid transparent;
}

/* Post social */
.post-social-icons > li {
  display: inline-block;
}
.post-social-icons a {
  margin-left: 10px;
  font-size: 16px;
  color: #252a37;
  text-align: center;
}
.post-social-icons a:hover {
  color: #da0f32;
}

/* Post navigation */
.post-navigation span:hover,
.post-navigation h3:hover {
  color: #da0f32;
}
.post-navigation .post-previous,
.post-navigation .post-next {
  padding: 0 40px;
  width: 50%;
  border-left: 1px solid #f1f1f1;
  border-right: 1px solid #f1f1f1;
  display: table-cell;
  position: relative;
  vertical-align: middle;
}
.post-navigation i {
  margin: 0 5px;
  color: #da0f32;
}
.post-navigation span {
  font-size: 14px;
  color: #626c84;
  margin-bottom: 10px;
}
.post-navigation .post-previous {
  text-align: left;
  float: left;
  border-left: 0 none;
  border-right: 0 none;
  padding: 0 40px 0 0;
}
.post-navigation .post-next {
  text-align: right;
  float: left;
  border-right: 0 none;
  padding: 0 0 0 40px;
}
.post-navigation h3 {
  font-size: 20px;
  line-height: 26px;
  margin: 8px 0 0;
}

/* Author box */
.author-box {
  padding: 40px;
  margin: 40px 0;
}

.author-img img {
  width: 100px;
  height: 100px;
  margin-right: 30px;
  border-radius: 100%;
}

.author-info h3 {
  margin-top: 0;
  margin-bottom: 5px;
  font-size: 20px;
  font-weight: 600;
}
.author-info h3 span {
  font-size: 12px;
  color: #999;
  border-left: 1px solid #AFAFAF;
  padding-left: 10px;
  margin-left: 10px;
  font-weight: 500;
}
.author-info p {
  padding-left: 130px;
}

.author-url a {
  font-size: 14px;
  color: #626c84;
}

/* Comments area */
.comments-area {
  margin: 40px 0;
}

.comments-list .comment-content {
  margin: 15px 0;
}
.comments-list .comment-reply {
  color: #252a37;
  font-weight: 400;
  font-size: 14px;
}
.comments-list .comment-reply i {
  margin-right: 5px;
}
.comments-list .comment-reply:hover {
  color: #da0f32;
}

.comments-counter {
  font-size: 18px;
}
.comments-counter a {
  color: #323232;
}

.comments-list {
  list-style: none;
  margin: 0;
  padding: 20px 0;
}
.comments-list .comment {
  border-bottom: 1px solid #f1f1f1;
  padding-bottom: 20px;
  margin-bottom: 30px;
}
.comments-list .comment.last {
  border-bottom: 0;
  padding-bottom: 0;
  margin-bottom: 0;
}
.comments-list img.comment-avatar {
  width: 80px;
  height: 80px;
  border-radius: 100%;
  margin-right: 30px;
}
.comments-list .comment-body {
  margin-left: 110px;
}
.comments-list .comment-author {
  margin-bottom: 0;
  margin-top: 0;
  font-weight: 700;
  font-size: 18px;
  color: #252a37;
}
.comments-list .comment-date {
  color: #252a37;
  font-size: 14px;
  display: block;
  margin-top: -5px;
}

.comments-reply {
  list-style: none;
  margin: 0 0 0 70px;
}

.comments-form {
  margin-bottom: 0;
}
.comments-form .title-normal {
  margin-bottom: 20px;
}
.comments-form .btn.btn-primary {
  margin-top: 20px;
}

/* Sidebar
================================================== */
.sidebar .widget-title {
  font-size: 24px;
  position: relative;
  margin: 0 0 30px;
  padding-left: 15px;
  border-left: 3px solid #da0f32;
}
.sidebar .widget {
  margin-bottom: 40px;
  border: 1px solid #f1f1f1;
  padding: 40px;
}
.sidebar .widget.widget-ad {
  padding: 0;
  border: none;
}

/* Widget common */
.sidebar-left .widget {
  margin-right: 20px;
}

.sidebar-right .widget {
  margin-left: 20px;
}

.sidebar .widget.box {
  padding: 25px;
}

.widget.box.solid {
  background: #f2f2f2;
}
.widget.box.red {
  background: #ec483b;
  color: #fff;
}
.widget.box.red .widget-title {
  color: #fff;
}
.widget ul li {
  line-height: 30px;
}

.sidebar .widget ul li a:hover {
  color: #da0f32;
}
.sidebar .widget ul li i {
  margin-right: 5px;
  font-weight: 500;
}
.sidebar .btn {
  font-weight: 800;
  margin-top: 15px;
}

/* Widget search */
.widget.widget-search {
  background: none;
  position: relative;
  padding: 0;
}

.input-group-btn {
  background: #da0f32;
  color: #fff;
}

.widget-search .form-control {
  border: 0 !important;
  font-style: italic;
  background-color: none;
}
.widget-search .form-control:focus {
  border: 0 !important;
  font-style: italic;
  background-color: none;
}
.widget-search i {
  color: #fff;
  background: #da0f32;
  font-size: 18px;
  position: relative;
  top: 0;
  padding: 15px;
}

/* Sidebar nav */
.widget-nav-tabs {
  margin: 0;
  padding: 0;
  list-style: none;
}
.widget-nav-tabs li {
  display: block;
  padding-bottom: 20px;
  border-bottom: 1px dashed #EAEAEA;
  margin-bottom: 20px;
}
.widget-nav-tabs li a {
  font-size: 16px;
  color: #626c84;
  font-family: 'Fira Sans', sans-serif;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.widget-nav-tabs li span {
  float: right;
}
.widget-nav-tabs li:after {
  display: block;
  content: "";
  clear: both;
}
.widget-nav-tabs li:last-child {
  border: none;
  padding: 0;
  margin: 0;
}

/* Instagram Photos */
.instagram-photo li img {
  padding-right: 10px;
  padding-bottom: 10px;
  border-radius: 3px;
}

/* Recent News */
.widget.recent-posts .widget-title {
  margin-bottom: 35px;
}
.widget.recent-posts ul li {
  border-bottom: 1px dashed #f1f1f1;
  padding-bottom: 20px;
  margin-bottom: 20px;
  line-height: normal;
}
.widget.recent-posts ul li:last-child {
  border: 0;
  padding-bottom: 0;
  margin-bottom: 0;
}
.widget.recent-posts .media-left img {
  width: 93px;
  height: 65px;
}
.widget.recent-posts .entry-title {
  font-size: 16px;
  line-height: 20px;
  margin: 6px 0 0;
}
.widget.recent-posts .entry-title a {
  color: #303030;
  display: inline-block;
  padding: 5px 0;
}
.widget.recent-posts .entry-title a:hover {
  color: #da0f32;
}
.widget.recent-posts .entry-title small {
  color: #626c84;
  display: block;
  font-weight: 400;
  font-size: 14px;
  font-family: 'Fira Sans', sans-serif;
}
.widget.recent-posts .post-date {
  font-weight: 500;
  color: #626c84;
  font-size: 14px;
}
.widget.recent-posts .post-date a {
  color: #626c84;
}

/* Widget Ad */
.widget-ad p {
  color: #fff;
  font-weight: 800;
  font-size: 30px;
  line-height: 40px;
}
.widget-ad .btn {
  padding: 18px 60px;
  font-size: 16px;
  font-weight: 800;
  background: #fff;
  color: #da0f32;
}
.widget-ad .btn:hover {
  background: #0f2765;
  color: #fff;
}

.widget-ad-bg {
  position: relative;
  z-index: 2;
  background-image: url("../images/services/service5.jpg");
  background-size: cover;
  background-position: right;
  padding: 145px 0;
  text-align: center;
}
.widget-ad-bg.bg-overlay:after {
  z-index: -1;
}
.widget-ad-bg.overlay-color:after {
  background: rgba(43, 84, 182, 0.85);
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(43, 84, 182, 0.85)), to(rgba(43, 84, 182, 0.85)));
  background: linear-gradient(to bottom, rgba(43, 84, 182, 0.85) 0%, rgba(43, 84, 182, 0.85) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='rgba(#2b54b6,.85)', endColorstr='rgba(#2b54b6,.85)', GradientType=0);
  z-index: -1;
}

/* Widget tags */
.widget-tags ul > li {
  float: left;
  margin: 3px;
}

.sidebar .widget-tags ul > li a {
  border: 1px solid #f1f1f1;
  color: #626c84;
  display: inline-block;
  font-size: 14px;
  padding: 5px 20px;
  margin: 0 3px 3px 0;
  border-radius: 25px;
  -webkit-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}
.sidebar .widget-tags ul > li a:hover {
  background: #da0f32;
  color: #fff;
  border: 1px solid transparent;
}

/* Error page
================================================== */
.not-found {
  padding-top: 0;
}

.error-page .error-code {
  display: block;
  font-size: 150px;
  line-height: 150px;
  color: #333;
  margin-bottom: 20px;
  text-shadow: 5px 5px 1px rgba(0, 0, 0, 0.1);
}

.error-page .error-body .btn {
  margin-top: 30px;
  font-weight: 700;
}


/* 3. TRANDING NEWS
================================================== */
.trending-bar-dark {
  background: #292931;
  color: #fff;
  padding: 5px 5px;
}

.trending-bar-title {
  background: #dc3545;
  color: #fff;
  display: inline-block;
  font-size: 11px;
  padding: 5px 10px;
  line-height: 100%;
  text-transform: uppercase;
  margin: 0px 10px 0 0;
  border-radius: 2px;
}
.tn-mobile {
  display: none;

}

.trending-bar-dark .post-content, .trending-light .post-content {
    padding: 5px 5px;
}

.trending-news-slider .post-title a {
  color: #fff;
  font-weight: 600; 
}

.trending-news-slider .post-title.title-sm {
  font-weight: 400;
  margin: 0;
  font-size: 12px;
  line-height: 16px;
}

#marquee{
	overflow:hidden;
	color: #333;
	}

.close-search {
  font-size: 20px;
}
.site-search {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  transition: 0.3s;
  background-color: #fff;
  opacity: 0;
  visibility: hidden;
  z-index: 10;
  top: 0;
}
.site-search input {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  padding: 0 3%;
  border: 0;
  background-color: #fff;
  color: #dc3545;
  font-size: 17px;
  font-family: "Poppins", sans-serif;
}
.site-search input:focus {
  outline: 0;
  box-shadow: none;
  border: none;
}
.site-search .search-close {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 5;
  right: 3%;
  cursor: pointer;
}

.site-search.visible {
  opacity: 1;
  visibility: visible;
}
@media (max-width: 360px) {

.trending-bar-dark {
  background: #292931;
  color: #fff;
  padding: 5px 0px;
}

.trending-bar-title {
  display: none;
}
.tn-mobile {
  background: #dc3545;
  color: #fff;
  display: inline-block;
  font-size: 11px;
  padding: 5px 10px;
  line-height: 100%;
  text-transform: uppercase;
  margin: 0px 10px 0 0;
  border-radius: 2px;
}
}

/* Efek hover untuk teks merah agar menjadi putih */
.red-text, .holiday td, .btn-box {
  color: #da0f32;
  transition: color 0.3s ease;
}


/* Sejarah
=================================*/
:root{
  --primary-green:#2caa50;
}

.sejarah-section{
  padding: 80px 20px;
  background-color:#ffffff;
  font-family:'Segoe UI', Tahoma, sans-serif;
}

/* Judul */
.sejarah-title{
  font-size:30px;
  font-weight:700;
  text-align:center;
  text-transform:none;
  color:var(--primary-green);
  margin:0 0 40px;
  line-height:1.25;
}

/* Isi teks */
.sejarah-text{
  font-size:20px;
  line-height:1.75;
  color:#333;
  text-align:justify;
  max-width:800px;
  margin:0 auto;

  /* Wrapping aman linting & kompatibel */
  overflow-wrap: break-word;  /* standar */
  word-wrap: break-word;      /* legacy alias */
  word-break: normal;         /* hindari break-all berlebihan */

  /* Hyphenation (aktif jika browser + kamus bahasa mendukung).
     Pastikan <html lang="id"> di dokumen. */
  -webkit-hyphens: auto;     /* Safari/iOS lama */
  -ms-hyphens: auto;         /* IE/Edge lama */
  hyphens: auto;
}

/* Box fallback ketika belum ada data */
.no-data-box{
  display:inline-flex;
  gap:10px;
  align-items:center;
  padding:14px 16px;
  border-radius:12px;
  background:#f9fafb;
  border:1px solid #e8edf3;
  color:#5f6b7a;
  font-weight:600;
  box-shadow:0 4px 10px rgba(0,0,0,.04);
}
.no-data-box i{
  color:var(--primary-green);
  font-size:1.1em;
}



/* =======================
   Struktur
   ======================= */

.struktur-section {
  padding: 80px 20px;
  background-color: #ffffff;
  font-family: 'Segoe UI', Tahoma, sans-serif;
}

.judul-bagan {
  font-size: 30px;
  font-weight: bold;
  text-align: center;
  text-transform: none;
  color: #2caa50;
  line-height: 1.25;       
  margin: 0 0 40px;        
}

.struktur-text {
  font-size: 20px;
  line-height: 1.75;
  color: #333;
  text-align: justify;
  max-width: 800px;
  margin: 0 auto;
}

/* Opsional: kecilkan judul di layar sempit */
@media (max-width: 576px) {
  .judul-bagan { font-size: 30px; }
}
.struktur-section .judul-bagan{
  font-size: 30px !important;
  font-weight: bold;
  text-align: center;
  text-transform: none !important;
  color: #2caa50 !important;
  line-height: 1.25;
  margin: 0 0 40px;
}
@media (max-width: 576px){
  .struktur-section .judul-bagan{ font-size: 25px !important; }
}
@media (max-width: 576px){
  .struktur-section .struktur-text{ font-size: 15px !important; }
}

/* =======================
   Visi Misi 
   ======================= */
.visimisi-section {
  padding: 40px 20px;
  background-color: #ffffff;
  color: #222;
  font-family: 'Poppins', sans-serif; /* hanya halaman ini */
}

.visimisi-section .container {
  max-width: 960px;
  margin: 0 auto;
}

.visimisi-wrapper {
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.visimisi-section .card-box {
  background-color: #3d2d13;            /* seragam dg footer */
  padding: 30px;
  border-radius: 20px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}

.visimisi-section .card-box .title {
  text-align: center;
  font-size: 2em;
  color: #2caa50;
  font-weight: 700;
  margin: 0 0 20px;
}

.visimisi-section .card-box .content {
  font-size: 1.1em;
  color: #ffffff;
  line-height: 1.7;
  padding-left: 15px;
  margin: 0;
}

/* beri jarak antar item misi, tapi biarkan penomoran dihandle inline PHP */
.visimisi-section .card-box .content .misi-list {
  margin: 0;      /* inline PHP sudah atur penomoran/counter */
  padding: 0;
}

.visimisi-section .card-box .content .misi-list li {
  margin-bottom: 10px;
}



/* =======================
   Peta Desa 
   ======================= */
.section-peta {
  padding: 80px 20px;
  background-color: #ffffff;
  font-family: 'Segoe UI', Tahoma, sans-serif;
}
.section-peta .container {
  max-width: 1100px;
  margin: 0 auto;
}

/* Judul */
.peta-title {
  font-size: 22px;          /* ganti ke 30px kalau mau lebih besar */
  font-weight: bold;
  text-align: center;
  text-transform: none;
  color: #2caa50;
  line-height: 1.25;
  margin: 0 0 40px;
}

/* Kartu & grid */
.peta-grid {
  display: grid;
  grid-template-columns: 1fr 1.2fr;   /* info | peta (peta sedikit lebih lebar) */
  gap: 24px;
  align-items: start;
}
.card-soft {
  background: #fff;
  border: 1px solid #eef2f7;
  border-radius: 14px;
  box-shadow: 0 6px 18px rgba(0,0,0,.05);
}
.card-soft__body { padding: 18px; }

/* Konten info batas & statistik */
.peta-group-title {
  font-weight: 700;
  color: #374151;
  margin-bottom: 12px;
}
.peta-cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px 24px;
}
.peta-item {
  display: flex;
  align-items: baseline;
  gap: 8px;
  padding: 6px 0;
  border-bottom: 1px dashed #eef2f7;
}
.peta-item:last-child { border-bottom: 0; }
.peta-label { min-width: 64px; font-weight: 600; color: #111827; }
.peta-value { color: #374151; }

.peta-divider {
  border: 0;
  border-top: 1px solid #eef2f7;
  margin: 12px 0 16px;
}

.peta-row {
  display: flex;
  gap: 8px;
  margin: 6px 0;
}
.peta-row .strong { font-weight: 700; color: #111827; min-width: 140px; }

/* Map */
.peta-map-card { padding: 0; overflow: hidden; }
.peta-map {
  width: 100%;
  height: 420px;
  display: block;
  border: 0;
  border-radius: 14px;
}
.peta-map.placeholder {
  display: grid;
  place-items: center;
  background: #f9fafb;
  color: #6b7280;
  border: 1px dashed #e5e7eb;
  height: 420px;
  border-radius: 14px;
  text-align: center;
  padding: 16px;
}

/* Breakpoints */
@media (max-width: 992px) {
  .peta-grid { grid-template-columns: 1fr; }
  .peta-map { height: 360px; }
}
@media (max-width: 576px) {
  .peta-title { font-size: 20px; }
  .peta-cols { grid-template-columns: 1fr; }
  .peta-row { flex-direction: column; }
  .peta-row .strong { min-width: 0; }
  .peta-map { height: 300px; }
}

.no-data-box {
   display: inline-block;
   background-color: #f8f9fa;
   color: #6c757d;
   padding: 12px 20px;
   border-radius: 10px;
   font-size: 15px;
   border: 1px solid #e1e1e1;
   box-shadow: 0 2px 6px rgba(0, 0, 0, 0.03);
}

.no-data-box i {
   margin-right: 6px;
   font-size: 16px;
}


/* =======================
   Bagan & Struktur 
   ======================= */
:root {
  --primary-green: #2caa50;
}

.struktur-section {
  padding: 80px 20px;
  background-color: #ffffff;
  font-family: 'Segoe UI', Tahoma, sans-serif;
}

/* Judul */
.judul-bagan{
  color: var(--primary-green) !important;
  font-size: 36px;
  font-weight: 700;
  text-align: center;
  margin-bottom: 30px;
  text-transform: uppercase;
  line-height: 1.25;
}

/* Gambar bagan/struktur organisasi */
.struktur-img{
  width: 100%;
  height: auto;
  display: block;
  margin: 0 auto 24px;
  border-radius: 12px;
  background: #fff;
  border: 4px solid #f1f8e9;
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
  object-fit: contain;
}

/* Grid profil perangkat */
.profil-grid{
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 30px;
  justify-content: center;
}

/* Kartu profil */
.profil-card{
  background-color: #ffffff;
  border-radius: 16px;
  box-shadow: 0 6px 15px rgba(0, 0, 0, 0.05);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  height: 100%;
  transition: transform 0.3s ease;
}
.profil-card:hover{ transform: translateY(-5px); }

/* Area foto */
.foto-wrapper{
  display: flex;
  justify-content: center;
  align-items: center;
  height: 180px;
  padding: 20px;
  background-color: #eaf7ef; /* latar foto hijau muda */
}
.profil-foto{
  max-height: 100%;
  max-width: 100%;
  object-fit: contain;
  border-radius: 8px;
}

/* Info di bawah foto */
.profil-info{
  padding: 15px;
  text-align: center;
  background-color: var(--primary-green);
  color: #fff;
}
.profil-nama{
  font-size: 16px;
  font-weight: 700;
  margin: 0;
  color: #fff;
}
.profil-jabatan{ 
  font-size: 14px; 
  margin: 4px 0 0; 
  line-height: 1.4; 
}

/* opsional jika suatu saat dipakai */
.profil-jabatan-box{
  background-color: var(--primary-green);
  padding: 12px;
  text-align: center;
  color: #fff;
  border-bottom-left-radius: 16px;
  border-bottom-right-radius: 16px;
  min-height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
}



/* Social-icons */
.social-icons {
    display: flex;
    align-items: center;
    justify-content: center; /* biar rapi di tengah */
    gap: 8px; /* jarak antar ikon */
}

.social-icons a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    margin: 0; /* hilangkan margin bawaan */
    padding: 0;
}

.social-icons a img,
.social-icons a i {
    font-size: 20px; /* ukuran ikon */
    line-height: 1;
}
