:root {
    --primary-dark: #121826;
    --brand-gold: #c28e46;
    --brand-orange-start: #e07222;
    --brand-orange-end: #dc4828;
    --bg-light: #f6f8fa;
    --text-dark: #1a202c;
    --text-muted: #718096;
}
@font-face {
     font-family: 'proxima_novaregular';
     src: url('font/proximanova-regular-webfont.woff2') format('woff2'), url('font/proximanova-regular-webfont.woff') format('woff');
     font-weight: normal;
     font-style: normal;
}
 body {
     font-family: 'proxima_novaregular',sans-serif;
     font-weight: normal;
     font-size: 16px;
     line-height: 1.6;
}
 .carousel-item {
     max-height: 470px;
}
 .owl-carousel .owl-item img {
     max-height: 255px;
}
 .logo {
      width: auto;
      max-height: 45px;
}
 .navbar-custom {
     min-height: 71px;
}
 .navbar-custom .navbar-nav {
     text-transform: uppercase;
}
 .navbar-custom .navbar-nav .nav-link {
     padding-right: 1rem;
     padding-left: 1rem;
}
 .about {
     background-color: #F2F6FF;
     padding: 80px 0;
}
 #about p {
     font-weight: 300;
     line-height: 1.58;
     letter-spacing: .025em;
     padding: 0 0 1.5em;
}
 .section-room {
     padding: 50px 0 70px 0;
    /*background-image: url("assets/images/bg/pw_maze_white.png");
    */
     background-color: #FFFFFF;
     background-repeat: repeat;
}
 .mt-6 {
     margin-top: 56px;
}
 .mt-10 {
     margin-top: 100px;
}
 .mt-8 {
     margin-top: 80px;
}
 .mt-7 {
     margin-top: 70px;
}
 .mt-12 {
     margin-top: 120px;
}
 .mt-min10 {
     margin-top: -40px;
}
 .sticky-top {
     top: 70px !important;
}
 .bg-primary-dark {
     background-color: #2F416D !important;
}
 .navbar-bg {
     background-color: #2F416D !important;
}
 .navbar-bg a {
     color: #fff !important;
}
 .navbar-bg .dropdown-menu a {
     color: #212529 !important;
}
/*promo*/
 .promo {
     background-color: #2F416D;
     opacity: .65;
}
 .promo .promo-card-button {
     color: #fff;
     font-size: 14px;
     font-weight: 400;
     width: 250px;
     height: 40px;
     border-radius: 3px;
     background-color: rgba(0,0,0,.2);
     border: 1px solid #fff;
     text-align: center;
     margin: 0 54px;
     padding: 10px 0;
     top: 200px;
     left: -8px !important;
     position: absolute;
     text-decoration: none;
}
/*footer*/
 .footer {
 	 background:#24375C;
 	 color:#d9e1f2;
     border-top: 1px solid #ccc;
     padding-top: 1.2rem;
}

.footer-top{
    padding:70px 0 50px;
}

.footer h5{
    color:#FFF;
    font-weight:600;
    margin-bottom:25px;
}

.footer ul{
    list-style:none;
    padding:0;
}

.footer li{
    margin-bottom:12px;
}

.footer a{
    color:#d9e1f2;
    transition:.3s;
}

.footer a:hover{
    color:#FFC107;
    text-decoration:none;
    padding-left:5px;
}

.footer-contact i{
    width:24px;
    color:#FFC107;
}

.footer-social a{
    width:42px;
    height:42px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:rgba(255,255,255,.08);
    margin-right:10px;
    color:#FFF;
    transition:.3s;
}

.footer-social a:hover{
    background:#FFC107;
    color:#24375C;
    transform:translateY(-4px);
}

.footer-book{
    font-weight:600;
    border-radius:8px;
    padding:14px 20px;
    box-shadow:0 8px 20px rgba(255,193,7,.25);
    margin-top: 20px;
    color: #000 !important;
}
.footer-menu{
    list-style:none;
    padding:0;
}
.footer-menu li{
    margin-bottom:22px;
}
.footer-menu a{
    color:#FFF;
    font-size:18px;
    transition:.3s;
}
.footer-menu a i{
    color:#FFC107;
    margin-right:12px;
}
.footer-menu a:hover{
    color:#FFC107;
    padding-left:6px;
}

.contact-item{
    display:flex;
    align-items:flex-start;
    gap:15px;
    padding:14px 0;
    border-bottom:1px solid rgba(255,255,255,.08);
}

.contact-item:last-child{
    border-bottom:none;
}

.contact-item i{
    color:#FFC107;
    font-size:20px;
    margin-top:4px;
    width:24px;
}

.contact-item strong{
    color:#fff;
    display:block;
    margin-bottom:4px;
}

.contact-item p{
    margin:0;
    color:#cbd5e1;
    line-height:1.5;
}

.footer-bottom{
    background:#1A2744;
    padding:20px 0;
    font-size:14px;

}

.footer-bottom a{
    margin-right:20px;
}
 .border-bottom {
     border-bottom: 1px solid #e7eaf3 !important;
}
 .space-1, .space-bottom-1 {
     padding-bottom: 2rem !important;
}
 .space-1, .space-top-1 {
     padding-top: 2rem !important;
}
 .space-2, .space-bottom-2 {
     padding-bottom: 4rem !important;
}
 .space-2, .space-top-2 {
     padding-top: 4rem !important;
}
 .justify-content-md-between {
     -ms-flex-pack: justify !important;
     justify-content: space-between !important;
}
 .font-weight-semi-bold {
     font-weight: 600 !important;
}
 .list-group {
     list-style: none;
}
 .mb-0, .my-0 {
     margin-bottom: 0px !important;
}
/* Flush */
 .list-group-flush .list-group-item {
     padding-left: 0;
     padding-right: 0;
}
 .list-group-flush .list-group-item.active {
     color: #377dff;
     background-color: transparent;
     border-color: transparent;
}
/* Borderless */
 .list-group-borderless .list-group-item {
     border: none;
}
 .btn-dark {
     color: #fff;
     background-color: #1e2022;
     border-color: #1e2022;
}
 .transition-3d-hover {
     transition: all 0.2s ease-in-out;
}
 .btn-xs {
     font-size: 0.6875rem;
     font-weight: 400;
     padding: 0.4375rem 0.9375rem;
}
 .btn-wide {
     min-width: 9.6875rem;
}
 .mr-1, .mx-1 {
     margin-right: 0.25rem !important;
}
 .c-go-top {
     background: none repeat scroll 0 0 padding-box #4f8bf9;
     bottom: 20px;
     border: 1px solid #4f8bf9;
     border-radius: 4px;
     color: #eee;
     display: none;
     font-size: 12px;
     opacity: 0.8;
     padding: 10px;
     position: fixed;
     left: 5%;
     text-decoration: none;
     z-index: 999;
}
 .c-go-top:hover, .c-go-top:focus, .c-go-top:active, .c-go-top:visited {
     background: none repeat scroll 0 0 padding-box #377DFF;
     color: #fff;
     outline: 0;
     text-decoration: none;
}
/*form book*/
 .form-booking {
     position: fixed;
     left: 0;
     bottom: 0;
     width: 100%;
     background-color: #2F416D;
     color: white;
     text-align: center;
     z-index: 998;
}
 .form-booking .btn-link {
     color: #fff !important;
}
 .form-booking .btn-link:hover {
     text-decoration: none 
}
 .form-booking .btn-link:focus {
     text-decoration: none 
}
 [data-toggle="collapse"] .fa:before {
     content: "\f13a";
}
 [data-toggle="collapse"].collapsed .fa:before {
     content: "\f139";
}
 .heading-lg {
     position: absolute;
     top: -36px;
     left: 89.2%;
}
 .btn-showhide {
     background-color: #E0A800;
     border-radius: 2px;
}
/*form book not fixed*/
 .form-book {
     padding: 25px 50px 25px 50px;
    /*background-color: #2F416D;
    */
     background-color: #FFF;
     border: solid 1px #e6e6e6;
     color: #000;
     text-align: center;
     border-radius: 2px;
}
/*subscribe*/
 .subscribe {
     background-color: #f2f6ff;
     padding:25px 0;
}
/*gallery*/
 .h4-gallery-area {
     padding: 0;
}
 .h4-gallery-head {
     margin: 0 0 77px;
}
 .h4-gallery-head .section-title {
}
 .h4-gallery-content-area {
     overflow: hidden;
}
 .h4-gallery-content {
     float: left;
     margin: 0;
     width: 25%;
     max-height: 254px;
}
 .h4-gallery-content .gallery-box-content {
     width: 80%;
}
 .gallery-area {
     padding: 80px 0 50px;
}
 .gallery-contents {
}
 .gallery-box {
     position: relative;
}
 .gallery-box::before {
     background: #394e7f none repeat scroll 0 0;
     content: "";
     height: 100%;
     left: 0;
     opacity: 0;
     position: absolute;
     top: 0;
     -webkit-transition: all 0.3s ease 0s;
     -o-transition: all 0.3s ease 0s;
     transition: all 0.3s ease 0s;
     width: 100%;
     z-index: 5;
}
 .gallery-box:hover::before {
     opacity: 0.8;
}
 .gallery-box>img {
     max-width: 100%;
}
 .gallery-box .gallery-box-content {
     display: inline-block;
     left: 50%;
     opacity: 0;
     position: absolute;
     text-align: center;
     top: 50%;
     -webkit-transform: translateY(-50%) translateX(-50%);
     -ms-transform: translateY(-50%) translateX(-50%);
     -o-transform: translateY(-50%) translateX(-50%);
     transform: translateY(-50%) translateX(-50%);
     -webkit-transition: all 0.3s ease 0s;
     -o-transition: all 0.3s ease 0s;
     transition: all 0.3s ease 0s;
     visibility: hidden;
     z-index: 9;
}
 .gallery-box:hover .gallery-box-content {
     opacity: 1;
     visibility: visible;
}
 .gallery-box .gallery-box-content .gbc-img-link {
     color: #fff;
     display: inline-block;
     font-size: 20px;
     line-height: 20px;
     margin: 0 0 18px;
     transform: rotate(45deg);
}
 .gallery-box .gallery-box-content a i {
}
 .gallery-box .gallery-box-content .gb-title {
     color: #fff;
     font-weight: 400;
     font-family: 'Playfair Display', serif;
     font-size: 16px;
     display: block;
     letter-spacing: 0;
     line-height: 20px;
     margin: 0 0 11px;
}
 .gallery-box .gallery-box-content .gb-text {
     color: #fff;
     line-height: 24px;
}
/*room*/
 #list-room {
     margin-top: 40px;
}
 #list-room .card .card-header {
     padding: 7px 15px;
     font-weight: 600;
}
 .card .room-img .ri-content {
     background: rgba(7, 14, 19, 0.8) none repeat scroll 0 0;
     left: 0;
     overflow: hidden;
     padding: 15px 20px;
     position: relative;
     right: 0;
     -webkit-transition: all 0.3s ease 0s;
     -o-transition: all 0.3s ease 0s;
     transition: all 0.3s ease 0s;
}
 .card .room-img .ri-content p {
     margin-bottom: 0;
}
 .card:hover .room-img .ri-content {
     background-color: #2F416D;
     opacity: 80%;
}
 .card .room-img .ri-content .ri-content-name {
     color: #fff;
     float: left;
     font-size: 16px;
     line-height: 20px;
}
 .card .room-img .ri-content .ri-content-name i {
     margin-right: 14px;
}
 .card .btn-group {
     position: relative;
     bottom: 0px;
}
 .card .btn-group .btn {
     border-top-right-radius: 0;
     border-top-left-radius: 0;
}
 .card .card-body .room-info {
     position: relative;
     top: 0;
    /*padding : 10px 20px;
    */
}
 .card .card-body .room-info p {
     line-height: 10px;
     color: #f96d01;
     font-weight: 600;
}
 .card .card-body .room-info i {
     color: #2F416D;
}
 .card .card-body .room-info span {
     font-size: 13px;
     line-height: 10px;
     font-weight: 300;
     color: #2F416D;
}
 .card .blockquote {
     font-size: 16px;
}
 .card .blockquote i {
     color: #CCC;
}
 .card .testimoni-img {
     padding:40px 60px 10px 60px;
}
 .crt p {
     margin-bottom: 0;
     font-size: 13px;
     line-height: 2rem;
}
 .crt a {
     font-size: 12px;
     text-decoration: none;
}
 .crt .price-before {
     font-size: 17px;
     color: #565656;
     font-weight: 300;
}
 .crt .price {
     font-size: 20px;
     color: #f96d01;
     font-weight: 600;
}
 .crt .card-footer {
     padding: 5px 10px;
}
 .card .room-capacity {
     padding:15px;
}
 .card .room-capacity .room-list {
     display: flex;
     margin-top: 10px;
}
 .card .room-capacity .room-list .photo {
     -webkit-box-flex: 1;
     -ms-flex: 1;
     flex: 1;
     height: 50px;
     margin-right: 2px;
}
 .card .room-capacity .room-ctext {
     padding-top: 25px;
}
.card .room-capacity .room-ctext p {
     line-height: 15px;
}
.card .room-capacity .room-ctext i {
     line-height: 15px;
     font-size: 17px;
}
 .card .card-footer .btn-sm{
     padding: .15rem .5rem;
     font-size: 13px;
}
 .card .card-footer p {
     color: #e12d2d;
}
 .without-breakfast {
     border: 1px solid #e12d2d !important;
     background-color: #e12d2d21 !important;
     color: #e12d2d !important;
     font-size: 13px;
     padding: 1px 4px;
     border-radius: 5px;
}
 .with-breakfast {
     border: 1px solid #8bbdef !important;
     background-color: #CCE5FF !important;
     color: #8bbdef !important;
     font-size: 13px;
     padding: 1px 4px;
     border-radius: 5px;
}
 .book-summary {
     line-height: 12px;
     border-bottom: 1px solid #BBB;
     text-transform: uppercase;
}
 .book-summary p {
     font-size: 13px;
}
 .book-summary i {
     color: #0bbc5b;
}
 .book-summary-pay {
     line-height: 12px;
     text-transform: uppercase;
}
 .book-summary-pay i {
     color: #0bbc5b;
}
 .banner-area {
     background: url(../images/bg/bg.jpg) no-repeat scroll;
     background-attachment: fixed;
     background-size: cover;
     background-position: 50%, 25%;
     padding: 130px 0px 60px;
     z-index: 1;
     position: relative;
}
 .banner-area:before {
     content: '';
     width: 100%;
     height: 100%;
     top: 0;
     left: 0;
     position: absolute;
     background-image: -moz-linear-gradient(-15deg, #3a7bd5 0%, #0064D3 100%);
     background-image: -webkit-linear-gradient(-15deg, #3a7bd5 0%, #0064D3 100%);
     background-image: -ms-linear-gradient(-15deg, #3a7bd5 0%, #0064D3 100%);
     z-index: -1;
     opacity: 0.55;
}
 .banner-area .banner-content {
     color: #FFF;
}
 .content-general {
     margin-top: 100px;
     margin-bottom: 40px;
}
 .content .flex-direction-nav a:before {
    font-size: 25px;
}
 .blog .card {
    border: 1px solid #fff;
}
 .blog .card .card-blog-c {
    padding: 20px 0 0;
}
 .blog .blog-item {
    margin-bottom: 3rem;
}
 .blog .post-t {
     margin-top: 20px;
}
 .blog-detail .card {
    border: 1px solid #fff;
}
 .blog-detail .post-t {
     margin-top: 20px;
}
 .blog-detail img {
     width: 100%;
 }
 .navigasi {
     padding: 0;
     margin-bottom: 25px;
}
 .navigasi .card-body {
     padding: 2rem 1.30rem;
}
 .navigasi .bg-second {
     background-color: #F2F6FF;
}
 .navigasi .recent-post {
     margin-bottom: .8rem;
}
 .navigasi .recent-post img {
     width: 70px;
     height: 70px;
     margin-right: 15px;
}
 .navigasi .recent-post a {
     text-decoration: none;
     color: #000000;
     font-size: 17px;
}
 .navigasi .recent-post span {
     color: #0069D9;
     font-size: 13px;
}
 .navigasi .post-category .nav-item {
     border-bottom: 1px solid #e2e2e2;
}
 .navigasi .post-category a {
     color: #0069D9;
}
 .navigasi .post-category i {
     color: #007bff;
     font-size: 13px;
}
 .navigasi .post-tags li {
     display: inline-block;
     margin-bottom: 10px;
}
.navigasi .post-tags li a:hover {
     background-color: #007bff;
     color: #ffffff;

}
 .navigasi .post-tags li a {
     padding: 6px 15px;
     border: 1px solid #0069D9;
     font-size: 13px;
     color: #0069D9;
     border-radius: 2px;
     text-decoration: none;
}
 .pagination li {
     margin-left: .25rem;
     margin-right: .25rem;
}
 .paging-custom .page-link {
     position: relative;
     display: block;
     padding: .5rem .85rem;
     margin-left: -1px;
     line-height: 1.25;
     color: #007bff;
     background-color: #fff;
     border: 1px solid #dee2e6;
}
 .text-dropcap {
     color: #101f41;
     float: left;
     font-size: 75px;
     line-height: 3.75rem;
     padding-top: 0.25rem;
     padding-right: 0.5rem;
}

/*======================================*/
/*event*/
/*======================================*/
 .event {}
 .event .icon {
     margin-right: 15px;
     font-weight: 500;
     font-size: 15px;
}
 .event .icon.icon-map i {
     color: #f14b59;
     font-size: 20px;
}
 .event .icon.icon-calendar i {
     color: #00E399;
     font-size: 20px;
}
 .event .icon.icon-clock i {
     color: #454AB4;
     font-size: 20px;
}
 .event .icon.icon-marker i {
     color: #FFA200;
     font-size: 20px;
}
 .event .btn {
     padding: .375rem 20px;
     text-transform: uppercase;
     font-size: 15px;
 }
 .event .card {
     border: 1px solid rgb(125, 176, 240);
}
  .event .card:hover {
     /*border: 8px solid rgb(125, 176, 240);*/
     background-color: #F2F6FF;
}
 .event .disc-label {
     background-color: #f45905;
     position: absolute;
     top: 0;
     right: -15px;
     color: #FFFFFF;
     padding: 5px 20px;
     border-radius: 50px 0 0 0;
}
 .event .disc-label h5 {
     margin-bottom: 0
}
 .event .nav-tabs .nav-item.show .nav-link, .nav-tabs .nav-link.active {
     color: #FFFFFF;
     background-color: #007bff;
     border-color: #dee2e6 #dee2e6 #fff;
}

/*===============================================================modal===============================================================*/
 .price {
     font-size: 20px;
     color: #f96d01;
     font-weight: 600;
}
 #room-information {
     margin-top: 10px;
     padding-top: 10px;
}
 #room-information .icon p {
     font-size: 15px;
     line-height: 14px;
}
 .flex-direction-nav a:before {
    font-size: 25px;
}
 .flexslider {
     margin: 0 0 10px 0;
}

/*========================steps wizard======================================*/
 .steps {
     margin-bottom: 30px;
     margin-top: 40px;
     margin-left: -28px;
}
 .steps ul {
     display: flex;
     position: relative;
}
 .steps ul h6 {
     font-size: 22px;
     color: #333;
     top: -38px;
     position: absolute;
}
 .steps ul li {
     width: 20.16%;
     margin-right: 10px;
     list-style: none;
}
 .steps ul li a {
     display: inline-block;
     width: 100%;
     height: 7px;
     background: #e6e6e6;
     border-radius: 3.5px;
}
 .steps ul li.first a, .steps ul li.checked a {
     background: #007bff;
     transition: all .5s ease;
}
 .steps .current-info {
     display: none;
}
.steps .current-info, .steps .number {
     display: none;
}

/*=========================step wizard versi 2 ===============================*/
 .step_wizard {
     margin-bottom: 40px;
}
 .tab-list {
     list-style: none;
     text-align: center;
     padding: 25px 0;
}
 .tab-list__item {
     display: inline-block;
     -webkit-transition: all .4s ease;
     -o-transition: all .4s ease;
     -moz-transition: all .4s ease;
     transition: all .4s ease;
     padding: 0 13px;
}
 .tab-list .active .tab-list__link {
     background: #2F416D;
     color: #fff;
}
 .tab-list__link {
     font-weight: 700;
     font-size: 15px;
     color: #fff;
     display: inline-block;
     -webkit-border-radius: 22.5px;
     -moz-border-radius: 22.5px;
     border-radius: 22.5px;
     background: #999;
     width: 180px;
     text-align: left;
}
 .tab-list .active .tab-list__link .step {
     background: #425a93;
}
 .tab-list__link .step {
     display: inline-block;
     height: 45px;
     width: 45px;
     line-height: 45px;
     text-align: center;
     -webkit-border-radius: 50%;
     -moz-border-radius: 50%;
     border-radius: 50%;
     background: #666;
     font-size: 18px;
     margin-right: 10px;
}
 .tab-list__link .desc {
     text-transform: capitalize;
     display: inline-block;
}
 .my-panel {
     color: #fff; 
}
 .my-panel h4 {
     margin-bottom: 0;
 }
 .my-panel p {
     line-height: 16px;
}
 .my-panel hr {
     border-top: 1px solid #fff;
 }
 .payment-methode {
    padding: 5px 30px;
    background-color: #F8F8F8;
    border: 1px solid #E6E6E6;
    margin-bottom: 1rem;
    text-align: center;
    font-size: 70px;
    color: #2F416D;
    border-radius: 2px;
}
 .payment-methode img {
    margin-top: -25px;
    max-width: 100px;
}
 .facilities-group {
     padding-top: 20px;
}
 .ui-widget-header {
     border: 1px solid #ffc107;;
     background: #ffc107 url("../images/jquery-ui/ui-bg_gloss-wave_35_f6a828_500x100.png") 50% 50% repeat-x;
     color: #000000;
     font-weight: bold;
}

/*price check*/
  .price-check {
     position: fixed;
     /*left:0;*/
     right: 30px;
     bottom: 0;
     width: 350px;
     /*width: 100%;*/
     color: black;
     text-align: center;
     z-index: 998;
}
 .price-check .btn-link {
     color: #000 !important;
}
 .price-check .btn-link:hover {
     text-decoration: none
}
 .price-check .btn-link:focus {
     text-decoration: none
}
 .price-check .price-content {
     padding: 20px 0;
}
 .price-check .card-footer {
     text-align: left;
     line-height: 5px;
}
 .price-check .price-content .list-price {
     text-align: left;
     padding:10px 20px;
}
 .price-check .price-content .list-price.active {
     background-color: #2F416D;
     color: #FFFFFF;
}
 .price-check .price-content .list-price p {
     margin: 0 !important;
}
 .footer-link a {
    text-decoration: none;
    padding: 0 10px;
    color: #282828;
}
 .foot-sosmed {
     display: table-cell;
     float: right;
 }
 .foot-sosmed a {
     padding: 10px 10px;
     color: #282828;
 }

/* ===================================
          HERO
=================================== */

.hero-section{
  position:relative;
  background-size:cover;
  background-position:center;
  min-height:650px;
}

.hero-height{
  min-height:650px;
}

.overlay{
  position:absolute;
  left:0;
  top:0;
  right:0;
  bottom:0;
  background:rgba(0,0,0,.60);
}

.hero-section .container{
  position:relative;
  z-index:2;
}

.hero-section h1{
  font-size:58px;
  font-weight:700;
  margin-bottom:20px;
}

.hero-section h3{
  color:var(--gold);
  font-weight:500;
}

.hero-section p{
  font-size:18px;
  max-width:650px;
}

/* ===================================
            SECTION
=================================== */

section{
    position:relative;
}

section h2{
    font-size:38px;
    font-weight:700;
}

/* ===================================
        CATEGORY BUTTON
=================================== */

.category-wrapper{
    overflow-x:auto;
    white-space:nowrap;
}

.category-wrapper::-webkit-scrollbar{
    display:none;
}

.category-btn{
    border-radius:30px;
    padding:10px 25px;
    transition:.3s;
    font-weight:500;

}

.category-btn:hover{
    transform:translateY(-2px);
}

.category-btn.active{
    background:var(--primary);
    color:#FFF;
    border-color:var(--primary);
}

/* ===================================
            CARD
=================================== */

.menu-card{
    border:none;
    border-radius:15px;
    overflow:hidden;
    transition:.35s;
    box-shadow:0 8px 25px rgba(0,0,0,.08);
}

.menu-card:hover{
    transform:translateY(-8px);
    box-shadow:0 20px 40px rgba(0,0,0,.18);
}

.menu-card img{
    width:100%;
    height:240px;
    object-fit:cover;
    transition:.4s;
}

.menu-card:hover img{
    transform:scale(1.05);
}

.card-body{
    padding:25px;
}

.card-body h5{
    font-weight:600;
    margin-bottom:15px;
}

.card-body p{
    font-size:14px;
}

/* ===================================
            BADGE
=================================== */

.badge{
    padding:8px 12px;
    font-size:12px;
    border-radius:30px;
    font-weight:500;
}

.badge-danger{
    background:#dc3545;
}

.badge-warning{
    color:#222;
}

/* ===================================
            PRICE
=================================== */

.text-success{
    color:var(--primary)!important;
    font-weight:700;
}

#applyJobModal .modal-header .close {
    margin: 0 !important;
    padding: 0 !important;
}

.modal-content .close {
    position: absolute;
    top: 12px;
    right: 16px;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: rgba(0,0,0,.6);
    color: #fff;
    opacity: 1;
    text-shadow: none;
    line-height: 32px;
    text-align: center;
}

.modal-content .close:hover {
    background: rgba(0,0,0,.8);
    color: #fff;
}
/*=====================================Jobs=============================================*/
/* --- Hero Section --- */
.hero-section-2 {
    position: relative;
    top: 70px;
    color: #fff;
    padding: 80px 0 110px 0;
}
.hero-subtitle {
    color: #d97706;
    font-size: 0.8rem;
    font-weight: 800;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}
.hero-title {
    font-size: 3.2rem;
    font-weight: 800;
    line-height: 1.15;
    margin-top: 10px;
    margin-bottom: 18px;
    letter-spacing: -0.5px;
}
.hero-desc {
    color: #cbd5e1;
    font-size: 0.95rem;
    max-width: 440px;
    line-height: 1.6;
}

/* --- Search Bar Floating Card --- */
.search-card-wrapper {
    margin-top: 15px;
    position: relative;
    z-index: 10;
}
.search-card {
    background: #fff;
    border-radius: 20px;
    padding: 16px 20px;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.05);
}
.search-card .form-control, .search-card .custom-select {
    border-radius: 12px;
    height: 48px;
    font-size: 0.88rem;
    font-weight: 500;
    color: #2d3748;
}
.search-card label {
    font-size: 0.72rem;
    color: var(--text-muted);
    margin-bottom: 3px;
    font-weight: 600;
}
.btn-search {
    background-color: var(--primary-dark);
    color: #fff;
    border-radius: 12px;
    height: 48px;
    font-weight: 700;
    font-size: 0.9rem;
    width: 100%;
    transition: all 0.2s ease;
}
.btn-search:hover {
    background-color: #000;
    color: #fff;
    transform: translateY(-1px);
}

/* --- Category Pills --- */
.category-pills .btn-filter {
    border-radius: 30px;
    border: 1px solid #e2e8f0;
    background-color: #fff;
    color: #475569;
    font-size: 0.85rem;
    font-weight: 600;
    padding: 8px 18px;
    margin: 4px;
    transition: all 0.2s ease;
    cursor: pointer;
}
.category-pills .btn-filter:hover {
    background-color: #f1f5f9;
}
.category-pills .btn-filter.active {
    background-color: var(--primary-dark);
    color: #fff;
    border-color: var(--primary-dark);
    box-shadow: 0 4px 12px rgba(18, 24, 38, 0.15);
}

/* --- Job Card --- */
.job-card {
    background: #fff;
    border-radius: 18px;
    border: 1px solid #edf2f7;
    padding: 24px;
    margin-bottom: 16px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.02);
    transition: all 0.25s ease;
}
.job-card:hover {
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.06);
    transform: translateY(-2px);
}
.job-icon {
    width: 64px;
    height: 64px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
    flex-shrink: 0;
}
.icon-orange {
    background-color: #fff7ed;
    color: #f97316;
}
.icon-green {
    background-color: #f0fdf4;
    color: #16a34a;
}
.icon-blue {
    background-color: #eff6ff;
    color: #2563eb;
}

.badge-type {
    font-size: 0.72rem;
    padding: 5px 14px;
    border-radius: 20px;
    font-weight: 700;
    display: inline-block;
}
.badge-fulltime {
    background-color: #e0e7ff;
    color: #4338ca;
}
.badge-contract {
    background-color: #fef3c7;
    color: #d97706;
}

.btn-apply {
    background: linear-gradient(135deg, var(--brand-orange-start) 0%, var(--brand-orange-end) 100%);
    color: #fff;
    border: none;
    border-radius: 10px;
    font-weight: 700;
    font-size: 0.88rem;
    padding: 10px 20px;
    width: 100%;
    transition: opacity 0.2s ease;
}
.btn-apply:hover {
    color: #fff;
    opacity: 0.92;
}
.btn-detail {
    border: 1px solid #cbd5e1;
    background-color: #fff;
    color: #334155;
    border-radius: 10px;
    font-weight: 700;
    font-size: 0.88rem;
    padding: 9px 20px;
    width: 100%;
    margin-top: 8px;
    transition: background 0.2s ease;
}
.btn-detail:hover {
    background-color: #f8fafc;
    color: #0f172a;
}

.border-left-divider {
    border-left: 1px solid #f1f5f9;
}
@media (max-width: 991px) {
    .border-left-divider {
        border-left: none;
        border-top: 1px solid #f1f5f9;
        padding-top: 15px;
        margin-top: 15px;
    }
}
/* --- Custom Mobile Adjustments --- */
@media (max-width: 575.98px) {
    /* Header & Sort By Alignment */
    .section-header-wrapper {
        flex-direction: column !important;
        align-items: flex-start !important;
    }

    .section-header-title {
        margin-bottom: 12px;
    }

    .sort-by-wrapper {
        width: 100%;
        justify-content: space-between;
        background-color: #fff;
        padding: 8px 14px;
        border-radius: 12px;
        border: 1px solid #edf2f7;
    }

    .sort-by-wrapper select {
        flex-grow: 1;
        max-width: 150px;
    }
}

.contact-info-box {
    display: flex;
    align-items: center;
    font-size: 0.85rem;
}
.contact-icon-bg {
    background-color: var(--primary-dark);
    color: #fff;
    width: 38px;
    height: 38px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 12px;
    font-size: 0.85rem;
}

/* --- Card Containers --- */
.detail-card {
    background: #fff;
    border-radius: 18px;
    border: 1px solid #edf2f7;
    padding: 30px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.02);
    margin-bottom: 24px;
}
.job-icon-large {
    width: 72px;
    height: 72px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    background-color: #fff7ed;
    color: #f97316;
    flex-shrink: 0;
}
.badge-type {
    font-size: 0.75rem;
    padding: 6px 16px;
    border-radius: 20px;
    font-weight: 700;
    display: inline-block;
}
.badge-fulltime {
    background-color: #e0e7ff;
    color: #4338ca;
}

/* --- Content Formatting --- */
.section-title {
    font-weight: 700;
    font-size: 1.1rem;
    margin-bottom: 14px;
    color: var(--primary-dark);
    position: relative;
    padding-left: 12px;
}
.section-title::before {
    content: '';
    position: absolute;
    left: 0;
    top: 4px;
    bottom: 4px;
    width: 4px;
    background: var(--brand-gold);
    border-radius: 2px;
}
.job-description-body {
    line-height: 1.7;
    color: #4a5568;
    font-size: 0.95rem;
}

/* --- Sidebar & Summary Widgets --- */
.summary-item {
    display: flex;
    align-items: center;
    margin-bottom: 18px;
}
.summary-icon {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    color: var(--primary-dark);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 14px;
    font-size: 1rem;
}
.btn-apply-main {
    background: linear-gradient(135deg, var(--brand-orange-start) 0%, var(--brand-orange-end) 100%);
    color: #fff;
    border: none;
    border-radius: 12px;
    font-weight: 700;
    font-size: 1rem;
    padding: 14px;
    width: 100%;
    box-shadow: 0 4px 15px rgba(224, 114, 34, 0.3);
    transition: all 0.2s ease;
}
.btn-apply-main:hover {
    color: #fff;
    opacity: 0.95;
    transform: translateY(-1px);
}

/* --- Modal Styling --- */
.modal-content {
    border-radius: 20px;
    border: none;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
}
.modal-header {
    border-bottom: 1px solid #edf2f7;
    padding: 20px 28px;
}
.modal-body {
    padding: 28px;
}
.modal-footer {
    border-top: 1px solid #edf2f7;
    padding: 18px 28px;
}
.form-control, .custom-select {
    border-radius: 10px;
    border: 1px solid #e2e8f0;
    height: 46px;
    font-size: 0.9rem;
}
.form-control:focus, .custom-select:focus {
    border-color: var(--brand-gold);
    box-shadow: 0 0 0 3px rgba(194, 142, 70, 0.15);
}
textarea.form-control {
    height: auto;
}
.custom-file-label {
    border-radius: 10px;
    height: 46px;
    line-height: 32px;
    border: 1px solid #e2e8f0;
    font-size: 0.88rem;
}
.custom-file-label::after {
    height: 44px;
    line-height: 32px;
    border-radius: 0 9px 9px 0;
    background-color: #f1f5f9;
}
.form-group label {
    font-weight: 600;
    font-size: 0.85rem;
    color: #2d3748;
    margin-bottom: 6px;
}
.required-star {
    color: #e53e3e;
}