/*
Theme Name: MyDestinasi
Theme URI: https://mydestinasi.my
Description: Custom WordPress Theme by Rasz Digital
Author: Rasz Digital
Author URI: https://raszdigital.com
Version: 1.0
License: GPL
License URI: http://www.gnu.org/copyleft/gpl.html
*/

/* -------------------------------------------------- 
BASIC STYLES
-------------------------------------------------- */
html, body {border: 0; margin: 0; padding: 0; width: 100%; height: 100%; position: relative;} a img {border: 0}
html {scroll-behavior: smooth;}
*, *:before, *:after {-moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;}
body {background: #fff; color: #000; padding: 0; margin: 0!important; font-size: .95rem; line-height: 1.3;}
img, object, embed {max-width: 100%; height: auto;} input:focus {outline: none;} *:focus {outline: none;} 
::selection {background: #fff2a8;}
::-moz-selection {background: #fff2a8;}
select {background: #fff;}
button, select {cursor: pointer;}
/* -------------------------------------------------- 
LINK
-------------------------------------------------- */
a, input, #submit, textarea, button, button:hover, a i, a:hover i,.thumb a img, .thumb a:hover img, a:hover .thumb img, a .thumb img, .close img, .close img:hover, a .thumb::before, a:hover .thumb::before, .b-menu svg, .b-menu svg:hover {text-decoration: none; -webkit-transition: all 0.2s ease-in-out; -moz-transition: all 0.2s ease-in-out; -o-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out;}
a {-webkit-tap-highlight-color: transparent !important;}
*{-webkit-tap-highlight-color: rgba(0, 0, 0, 0) !important;}
/* -------------------------------------------------- 
TYPOGRAPHY
-------------------------------------------------- */
h1, h2, h3, h4, h5, h6 {font-weight: 700; text-transform: capitalize; margin: 0; padding: 0;}
ul, li, ol {list-style: none; margin: 0; padding: 0;}
p {margin: 0;}
body, input, textarea, select, button {font-family: 'Inter', Helvetica Neue, Helvetica, Arial, "sans-serif"!important;}
button, select {cursor: pointer;}
button {border: none; padding: 0; box-shadow: 0; background: none;}
/* -------------------------------------------------- 
LAYOUT CONTROL
-------------------------------------------------- */
.control {max-width: 1440px; margin: 0 auto; position: relative; padding: 0 20px;}
.sec {width: 100%; position: relative;}
.thumb img {width: 100%; height: auto; margin-bottom: -5px;}
.js-offcanvas, .b-menu, .fancybox-caption-wrap, .acc-hp, .hp-acc, .showme {display: none;}
/* -------------------------------------------------- 
ADS
-------------------------------------------------- */
.top-vds {background: rgba(243,243,243,.8); padding: 15px 0;}
.side-vds {background: rgba(243,243,243,.8); padding: 10px;}
.vds-help a {font-size: .65rem; line-height: 1; font-weight: 300; text-transform: uppercase; color: #666;}
/* -------------------------------------------------- 
ELEMENTOR FIX
-------------------------------------------------- */
.elementor-heading-title {line-height: 1.3!important;}
.elementor-widget-text-editor p {margin-bottom: 15px!important;}
.elementor-widget-text-editor p strong {font-weight: 600;}
.elementor-widget-text-editor a {color: #101e8b; font-weight: 500;}
.elementor-widget-text-editor a:hover {text-decoration: underline;}
.elementor-widget-text-editor ul, .elementor-widget-text-editor ol {padding-left: 18px; margin-bottom: 20px;}
.elementor-widget-text-editor ul li {list-style: disc; margin-bottom: 10px;}
.elementor-widget-text-editor ol li {list-style: decimal;}
.elementor-widget:not(:last-child), .elementor-widget-text-editor p:last-child {margin-bottom: 0!important;}
/* --------------------------------------------------
HEADER
-------------------------------------------------- */
.head {padding: 10px 0; width: 100%; background: #fff; border-bottom: 1px solid #e6e6e6; position: fixed; top: 0; left: 0; z-index: 11;}
.h-box {display: flex; justify-content: space-between; align-items: center; position: relative;}
.h-main {margin-top: 6px;}
.l-head {display: flex; align-items: center;}
.logo {background: url("images/logo.svg") no-repeat; width: 144px; height: 26px; display: block; text-indent: -9999px; background-size: contain;}
.r-head {position: relative; display: flex; align-items: center; justify-content: flex-end;}
.r-head .h-socmed.socmed ul {gap: 8px;}
.r-head .h-socmed.socmed li a {font-size: 1rem; width: 16px; height: 16px;}
.wrap {padding-top: 85px;}
/* --------------------------------------------------
NAVIGATION
-------------------------------------------------- */
#cssmenu {display: block; padding: 0; margin: 0;}
#cssmenu > ul {padding: 0; margin: 0; display: flex; align-items: center;}
#cssmenu > ul > li {padding: 0; margin: 0; float: left; display: block; position: relative;}
#cssmenu > ul > li > a {padding: 10px 12px; color: #000; font-size: .98rem; line-height: 1.2; font-weight: 500; text-transform: capitalize; display: block; position: relative; transition: .3s;}
#cssmenu > ul > li > a:hover {color: #888;}
/** depth **/
#cssmenu ul li.has-sub:hover > a:after {top: 0; bottom: 0;}
#cssmenu > ul > li.has-sub > a:after {content: "\f078"; font-family: "Font Awesome 6 Pro"; font-weight: 500; font-size: .7rem; vertical-align: 2px; position: relative; margin-left: 5px;}
#cssmenu ul li.has-sub:hover > a {z-index: 999; width: auto;}
#cssmenu ul li.has-sub:hover > ul,
#cssmenu ul li.has-sub:hover > div {display: block;}
#cssmenu ul li.has-sub:hover > a:after, #cssmenu ul li.has-sub:hover > a {color: #101e8b;}
#cssmenu ul li > ul,
#cssmenu ul li > div {display: none; width: auto; position: absolute; top: 50px; z-index: 99;}
#cssmenu ul li > ul {width: 240px; background: #fff; padding: 10px 16px; border: 1px solid #ddd; border-radius: 4px; box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;}
#cssmenu ul li > ul li {display: block; float: left; width: 100%; padding: 0; margin: 0; position: relative;}
#cssmenu ul li > ul li a {color: #000; margin: 0; padding: 14px 0; font-size: 1rem; line-height: 1; font-weight: 500; text-transform: capitalize; text-align: left; text-decoration: none; display: block; position: relative; transition: all 0.2s ease-in-out;}
#cssmenu ul li > ul li:last-child a {border-bottom: none;}
#cssmenu ul li > ul li a:hover {color: #101e8b;}
/* --------------------------------------------------  
HEAD ACCOUNT
-------------------------------------------------- */
.h-acc {display: flex; align-items: center; margin-left: 15px;}
.showhim:hover .showme {display: block; position: absolute; top: 50px; right: 0; width: 250px; border: 1px solid #ddd; background: #fff; border-radius: 4px; box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px; z-index: 9999;}
.acc-tp {width: 140px; height: 30px; display: flex; justify-content: flex-end; align-items: center;}
.ac-pic {max-width: 30px; margin-right: 10px;}
.ac-pic img {border-radius: 50%; margin-bottom: -5px;}
.acc-tp h4 {font-size: .88rem; line-height: 1; font-weight: 500; color: #222;}
.acs-top {padding: 15px 20px 5px; margin-bottom: 5px;}
.acs-top img {width: 65px; height: auto; border-radius: 50%;}
.acs-top h4 {font-size: 1.05rem; line-height: 1.3; font-weight: 500; text-transform: capitalize;}
.acs-top .acs-email {font-size: .83rem; line-height: 1.2; font-weight: 300; color: rgba(0,0,0,.6); overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; margin-top: 2px;}
.acs-top .d-plan {margin-top: 8px; font-size: .75rem; line-height: 1; font-weight: 600; text-transform: capitalize; padding: 5px 8px; border-radius: 4px; display: inline-block;}
.acs-top .premium {background: #fecf33; color: #222;}
.acs-top .premium::before {content: '\f521'; font-family: "Font Awesome 6 Pro"; font-weight: 900; font-size: .63rem; vertical-align: .5px; color: #222;}
.acs-top .free {background: #d1e7dd; color: rgba(25, 135, 84);}
.acc-list ul {margin-bottom: 5px;}
.acc-list li a, .acc-list .disabled span {display: block; width: 100%; font-size: .93rem; line-height: 1.1; font-weight: 400; padding: 9px 20px; color: #222;}
.acc-list li a:hover {background: #f0f3f7;}
.acc-list li.sep {border-top: 1px solid #ddd; margin: 5px 0;}
.acc-list li.up-pre a {font-weight: 600;}
.acc-list li.up-pre a i {color: #fecf33;}
.acc-list .disabled span {color: rgba(0,0,0,.35); cursor: not-allowed;}
/* --------------------------------------------------
SWIPER
-------------------------------------------------- */
.swiper-wrapper {display: flex;}
.swiper-button-next, .swiper-button-prev {width: 38px!important; height: 38px!important; background: #fff; top: 47%; border-radius: 50%; display: block; box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px; transition: .3s;}
.swiper-button-next:after, .swiper-button-prev:after {font-size: 1rem!important; color: #222; padding-top: 2px; display: flex; justify-content: center; align-items: center; width: 100%; height: 100%;}
.swiper-button-prev:after {margin-right: 2px;}
.swiper-button-next:after {margin-left: 2px;}
.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {opacity: .2!important;}
/* --------------------------------------------------
HOME BLOG
-------------------------------------------------- */
.blog {width: 100%; position: relative; margin-bottom: 30px;}
.blog .box {display: grid; grid-template-columns: 1fr 320px; gap: 40px;}
.sbt-top {padding: 0 5em 0 18em;}
.bl-title h3 {font-size: 1.35rem; line-height: 1.2;}
.blog-list .row {padding: 25px 0; border-bottom: 1px solid #ddd;}
.blog-list .row:last-child {border-bottom: none;}
.blog-list a {display: flex;}
.blog-list a .post-topic {font-size: .7rem; line-height: 1; font-weight: 500; text-transform: uppercase; color: #94a3b8; margin-bottom: 10px;}
.blog-list .thumb {width: 50%;}
.blog-list .info {width: 50%; padding-left: 30px;}
.blog-list a h3 {font-size: 1.65rem; line-height: 1.4; font-weight: 600; color: #000;}
.blog-list a:hover h3 {text-decoration: underline;}
.blog-list a .post-meta {font-size: .8rem; line-height: 1.2; color: #6b7280; margin: 15px 0;}
.blog-list a .post-meta span {font-size: .5rem; vertical-align: 2px; margin: 0 1px;}
.blog-list a .excerpt p {font-size: 1.025rem; line-height: 1.4; color: #000; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3;}
/* --------------------------------------------------
BLOG SINGLE
-------------------------------------------------- */

/* --------------------------------------------------
ENTRY CONTENT
-------------------------------------------------- */
.post-thumb {margin-bottom: 15px;}
.entry-content h2, .entry-content h3, .entry-content h4 {font-size: 1.3rem; line-height: 1.3; font-weight: 600; color: #222; margin: 30px 0 15px; text-transform: capitalize;}
.entry-content h3, .entry-content h4 {margin-top: 30px;}
.entry-content p {margin-bottom: 15px;}
.entry-content p, .entry-content li {font-size: 1.025rem; line-height: 1.5; color: #222;}
.entry-content a {color: #154eb8; font-weight: 600;}
.entry-content a:hover {text-decoration: underline;}
.entry-content img {width: 100%; height: auto; margin-bottom: 15px;}
.entry-content ul, .entry-content ol {margin: 0 0 15px; padding-left: 30px;}
.entry-content li {padding: 1px 0; margin-bottom: 2px;}
.entry-content ul li {list-style: disc;}
.entry-content ol li {list-style: decimal;}
.entry-content .caption {color: #6f6f6f; font-size: .9rem; line-height: 1.3; margin-bottom: 25px; margin-top: -10px;}
.entry-content .sumber::before {content: '\f03e'; font-family: "Font Awesome 6 Pro"; font-weight: 900; margin: 0 3px 0 10px; vertical-align: -1.1px;}
.entry-content .sumber a {color: #0576F7;}
.entry-content .sumber a:hover {text-decoration: underline;}
.entry-content .quote {font-size: 1.2rem; line-height: 1.4; font-style: italic; font-weight: 500; margin: 20px; padding: 20px; border-left: 3px solid #34a853; position: relative; z-index: 2;}
.entry-content .quote::after {content: ''; background: url("images/quote.svg") no-repeat; background-size: contain; width: 130px; height: 130px; opacity: .05; position: absolute; right: 0; bottom: 0; z-index: 1;}
.entry-content .qname {display: block; font-weight: 300;}
.entry-content iframe {display: flex; margin: 0 auto;}
.galeri {display: flex; flex-wrap: wrap; margin: 0 -5px 10px;}
.galeri .item {width: 33.333333%; padding: 5px;}
.galeri .item a img {transition: .3s;}
.galeri .item a:hover img {opacity: .6;}
.wp-embedded-content {width: 100%!important;}
.twitter-tweet {margin: 0 auto 10px!important;}
.tag {margin-top: 15px;}
.tag span {font-size: .8rem; line-height: 1.3; margin: 5px 5px 0 0; color: #333; background: #f3f3f3; padding: 4px 12px; border-radius: 30px; display: inline-block;}
.tag span:last-child {margin-right: 0;}
.sharer {display: flex; flex-direction: column; align-items: center; margin: 40px 0;}
.sharer h4 {font-size: 1.05rem; line-height: 1.3; font-weight: 400; color: rgba(0,0,0,.86); margin-bottom: 10px;}
.sharer ul {display: flex; align-items: center; justify-content: center; gap: 20px;}
.v-share a {font-size: .85rem; line-height: 1.1; color: #62646a; text-align: center; display: flex; flex-direction: column; align-items: center;}
.v-share a:hover {opacity: .65;}
.v-share i {width: 45px; height: 45px; font-size: 1.3rem; line-height: 1; padding-top: 13px; color: #fff; text-align: center; margin-bottom: 12px; display: block; border-radius: 50%;}
.v-share a.vss-fb i {background: #4267b2;}
.v-share a.vss-thread i {background: #000;}
.v-share a.vss-twitter i {background: #000;}
.v-share a.vss-wsp i {background: #00a500;}
.v-share a.vss-in i {background: #007ebb;}
.v-share a.vss-tele i {background: #0088cc;}
/** END CONTENT **/
.end-content {margin: 20px 0 30px;}
.end-content .wrap {padding-top: 30px; border-top: 1px solid #ccc;}
.end-content .box {max-width: 900px; margin: 0 auto 20px;}
.end-content .ec-f {max-width: 640px; font-size: 1.7rem; line-height: 1.3; font-weight: 700; color: #222; text-align: center; margin: 0 auto 20px;}
.end-content .ec-f a {color: #ea0f38;}
.end-content .ec-f a:hover {text-decoration: underline;}
.subs-s {padding: 30px; background: #fff; border-radius: 10px; box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;}
.subs-s h3 {font-size: 1.25rem; line-height: 1.2; text-transform: none;}
.subs-s h3 span {display: block;}
.subs-s p {font-size: .85rem; line-height: 1.3; color: #616161;}
.subs-s div.tnp-subscription {max-width: 100%!important;}
.subs-s form {display: flex; align-items: center;}
.subs-s .tnp-field label {display: none;}
.subs-s .tnp-field {width: 100%!important; float: none!important;}
.subs-s .tnp-field-email {margin: 0!important;}
.subs-s div.tnp-field-email input {font-size: 1rem!important; padding: 12px!important; background: #fff!important; border: 1px solid #a8a8a8!important; border-radius: 4px!important;}
.subs-s .tnp-field-email input:hover, .subs-s .tnp-field-email input:focus {border-color: #818080!important;}
.subs-s .tnp-field-button {width: 200px!important; margin-left: 6px; margin-bottom: 0!important;}
.subs-s .tnp-field-button input.tnp-submit {font-size: .9rem!important; font-weight: 500; padding: 14px 0; background: #ed264f!important; color: #fff!important; border-radius: 4px!important; cursor: pointer; margin: 0!important; width: 100%;}
.subs-s .tnp-field-button input.tnp-submit:hover {background: #ce1b40!important;}
.subs-s .trm {font-size: .75rem; line-height: 1.2; color: #616161;}
.subs-s .trm a {color: #195ce3; font-weight: 500;}
.subs-s .trm a:hover {text-decoration: underline;}
/* -------------------------------------------------- 
MORE ARTICLES
-------------------------------------------------- */
.sb-more {margin-top: 30px; padding-top: 30px; border-top: 1px solid #ddd; position: relative;}
.sb-title {margin-bottom: 15px;}
.sb-title h3 {font-size: 1.3rem; line-height: 1.2; font-weight: 700;}
.sb-more .row:first-child {padding-top: 0;}
.sb-more .row:last-child {padding-bottom: 0;}
.sb-more a h3 {font-size: 1.4rem;}
.sb-more .excerpt p {overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2;}
.more-post {margin-top: 30px;}
.more-post .row {border-bottom: none; padding: 0;}
.more-post .row a {flex-direction: column;}
.more-post .row .thumb {width: 100%;}
.more-post .row .info {width: 100%; margin-top: 15px; padding: 0;}
.more-post a .post-topic {margin-bottom: 8px;}
.more-post a h3 {font-size: 1.15rem; line-height: 1.4;}
.more-post a .post-meta {margin-bottom: 0;}
.more-post.blog-list .u-box {display: grid; grid-template-columns: repeat(6, 1fr); gap: 30px;}
.more-post.blog-list .u-box .row {grid-column: span 3;}
.more-post.blog-list .u-box .row.full-width {grid-column: span 6;}
.more-post.blog-list .u-box .row.full-width a h3 {font-size: 1.45rem;}
/* -------------------------------------------------- 
SIDEBAR
-------------------------------------------------- */
.sd-title {margin-bottom: 15px; position: relative;}
.sd-title h4 {font-size: 1.2rem; line-height: 1.2; font-weight: 700; padding: 0 10px 0 0; background: #fff; position: relative; display: inline-block; z-index: 3;}
.sd-title::before {content: ''; top: 11px; left: 0; width: 100%; height: 2px; background: #000; position: absolute; z-index: 1;}
.c-side {margin: 30px 0;}
.c-side li a {display: flex; align-items: center; padding: 10px 0; border-bottom: 1px solid #ddd; position: relative;}
.c-side li:first-child a {padding-top: 0;}
.c-side .info {padding-right: 15px; width: 100%;}
.c-side a .post-cat {background: #ffca05; color: #000; font-size: .65rem; line-height: 1; font-weight: 500; text-transform: uppercase; padding: 4px 6px; display: inline-block;}
.c-side li a h3 {font-size: .95rem; line-height: 1.35; color: #000; font-weight: 500; margin: 10px 0 6px; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2;}
.c-side li a:hover h3 {text-decoration: underline;}
.c-side li a .post-meta {font-size: .7rem; font-weight: 300; color: #3f3f3f;}
.c-side .thumb {max-width: 100px; height: 80px; overflow: hidden;}
.c-side .thumb img {min-width: 140px; height: auto; margin-left: -18%;}
/* -------------------------------------------------- 
BEFORE FOOTER
-------------------------------------------------- */
.b-foot {background: #28186B; padding: 30px 0;}
.b-foot .subs-s {max-width: 660px; margin: 0 auto; padding: 0; box-shadow: none; background: none; border-radius: 0;}
.b-foot h3 {font-size: 1.25rem; line-height: 1; font-weight: 600; color: #fff;}
.b-foot .subs-s div.tnp-field-email input {border-color: #fff!important;}
.b-foot .trm {font-size: .8rem; line-height: 1.4; font-weight: 300; color: #fff;}
.b-foot .trm a {color: #f8ca2d;}
/* -------------------------------------------------- 
FOOTER
-------------------------------------------------- */
.f-box {display: flex;}
.f-top {padding: 40px 0; border-top: 1px solid #ddd; border-bottom: 1px solid #ddd;}
.f-top .row-one {width: 50%;}
.f-top .row-two {width: 50%; display: flex;}
.f-top .row-two .row {width: 50%; padding-left: 60px;}
.f-top .row-one p {margin: 10px 0 15px;}
.socmed ul {display: flex; align-items: center; gap: 5px;}
.socmed li a {width: 44px; height: 44px; font-size: 1.5rem; line-height: 1.1; color: #333; background: none; border-radius: 50%; display: flex; align-items: center; justify-content: center; text-align: center;}
.socmed li a:hover {opacity: .6;}
.socmed li:first-child {margin-left: -12px;}
.f-top h4 {font-size: .95rem; line-height: 1.2; text-transform: uppercase; margin-bottom: 15px;}
.nav-foot ul {display: flex; flex-direction: column; gap: 14px;}
.nav-foot li a {font-size: .98rem; line-height: 1.2; color: #000;}
.nav-foot li a:hover {color: #666;}

.f-btm {font-size: .85rem; line-height: 1.3; padding: 20px 0;}
.f-btm .row-one, .f-btm .row-two {width: 100%;}
.f-btm .row-two {display: flex; justify-content: flex-end;}
.btm-link {margin-top: 10px;}
.btm-link a {color: #333;}
.btm-link span {font-size: .5rem; vertical-align: 2px; margin: 0 2px;}
/* -------------------------------------------------- 
ANIMATION
-------------------------------------------------- */
@keyframes scrollTrack {
0% { transform: translateX(0); }
100% { transform: translateX(-50%); }
}
@keyframes smoothBounce {
0%, 100% { transform: translateY(0) scale(1); }
25% { transform: translateY(-4px) scale(1.05); }
50% { transform: translateY(0) scale(1); }
75% { transform: translateY(-2px) scale(1.02); }
}
@keyframes textShine {
0% { background-position: 0% 50%; }
100% { background-position: 100% 50%; }
}
@keyframes spin {
to { transform: rotate(360deg); }
}
@keyframes fadeInScale {
from { opacity: 0; transform: scale(0.9); }
to { opacity: 1; transform: scale(1); }
}
@keyframes shimmer {
0% { background-position: -1000px 0; }
100% { background-position: 1000px 0; }
}
/* -------------------------------------------------- 
STICKY SIDEBARS
-------------------------------------------------- */
.bs-side {
position: relative;
align-self: flex-start;
}
.bs-side.is-sticky {
position: fixed;
width: 320px;
}
.bs-side.is-sticky.stick-to-top {
top: 74px;
}
.bs-side.is-sticky.stick-to-bottom {
bottom: 0;
}
.bs-side.is-absolute-bottom {
position: absolute;
bottom: 0;
}
.ol-side {
position: sticky;
top: 74px;
align-self: flex-start;
}
/* -------------------------------------------------- 
LOADING PLACEHOLDERS
-------------------------------------------------- */
.blog-list .row.loading,
.c-side li.loading {
pointer-events: none;
}
.blog-list .row.loading .thumb,
.c-side li.loading .thumb {
background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
background-size: 1000px 100%;
animation: shimmer 2s infinite;
position: relative;
overflow: hidden;
}
.blog-list .row.loading .thumb::after,
.c-side li.loading .thumb::after {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: #f0f0f0;
}
.blog-list .row.loading .info h3,
.blog-list .row.loading .info .post-topic,
.blog-list .row.loading .info .post-meta,
.blog-list .row.loading .info .excerpt,
.c-side li.loading .info h4,
.c-side li.loading .info .post-meta {
background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
background-size: 1000px 100%;
animation: shimmer 2s infinite;
color: transparent;
border-radius: 4px;
overflow: hidden;
}
.blog-list .row.loading .info h3 {
height: 20px;
width: 85%;
margin-bottom: 8px;
}
.blog-list .row.loading .info .post-topic {
height: 14px;
width: 40%;
margin-bottom: 8px;
display: inline-block;
}
.blog-list .row.loading .info .post-meta {
height: 14px;
width: 50%;
margin-bottom: 8px;
}
.blog-list .row.loading .info .excerpt {
height: 14px;
width: 100%;
margin-bottom: 6px;
}
.blog-list .row.loading .info .excerpt:nth-child(3) {
width: 70%;
margin-bottom: 0;
}
.c-side li.loading .info h4 {
height: 16px;
width: 90%;
margin-bottom: 6px;
}
.c-side li.loading .info .post-meta {
height: 12px;
width: 45%;
}
/* Hide actual content while loading */
.blog-list .row.loading img,
.c-side li.loading img {
opacity: 0;
}
/* --------------------------------------------------
PACKAGE SINGLE
-------------------------------------------------- */
.sp-top {position: relative; margin-bottom: 60px;}
.spt-box {display: grid; align-items: flex-end; grid-template-columns: 1fr 360px; gap: 50px; margin-bottom: 20px;}
.spt-title {}
.spt-title h1 {font-size: 2.2rem; line-height: 1.2; color: #000;}
.spt-title h4 {font-size: 1.5rem; line-height: 1.2; font-weight: 500; color: #000; margin: 4px 0 6px;}
.spt-title p {font-size: 1.25rem; line-height: 1.4; font-weight: 200; font-style: italic; color: #000;}
.spt-btn {display: flex; justify-content: flex-end; gap: 20px;}
.spt-btn button {font-size: .925rem; line-height: 1.2; font-weight: 500;}
.spt-btn button i {margin-right: 2px;}
.sp-top .box {display: grid; grid-template-columns: 1fr 360px; gap: 50px;}
.sp-gallery .swiper-wrapper {display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: 300px 240px; gap: 10px; height: 550px;}
.sp-gallery .swiper-slide {overflow: hidden; border-radius: 8px; display: flex; align-items: center; justify-content: center; background: #000;}
.sp-gallery .swiper-slide:first-child {height: 550px; grid-row: 1 / span 2; grid-column: 1;}
.sp-gallery .swiper-slide:nth-child(2) {grid-column: 2; grid-row: 1; height: 300px;}
.sp-gallery .swiper-slide:nth-child(3) {grid-column: 2; grid-row: 2; justify-self: start; width: calc(50% - 5px);}
.sp-gallery .swiper-slide:nth-child(4) {grid-column: 2; grid-row: 2; justify-self: end; width: calc(50% - 5px);}
.sp-gallery .swiper-slide a {width: 100%; height: 100%; display: flex;}
.sp-gallery .swiper-slide img {width: 100%; height: 100%; object-fit: cover; display: block;}
.spt-galeri .swiper-slide.is-hidden {display: none;}
.sp-gallery .more-img {position: absolute; top: 10px; right: 10px;}
.sp-gallery .more-img button {padding: 8px 10px; background: #fff; color: #000; font-size: .8rem; line-height: 1.2; font-weight: 500; border: 1px solid #fff; border-radius: 4px; display: inline-block; cursor: pointer;}
.sp-gallery .more-img button i {font-size: .78rem; margin-right: 1px;}
.sp-gallery .more-img button:hover {border-color: #222;}

.sp-nav {background: #28186B; position: relative;}
.sp-nav .box {height: 85px; padding: 10px 0; display: flex; justify-content: space-between; align-items: center;}
.sp-nav ul {display: flex; gap: 25px;}
.sp-nav li a {color: #fff; font-size: 1.12rem; line-height: 1.2; font-weight: 400; padding: 10px 0; border-bottom: 3px solid transparent; display: inline-block; transition: border-color .3s ease, color .3s ease;}
.sp-nav li a:hover {color: #808dbc;}

.spn-pk {display: flex; align-items: center;}
.spn-p {display: flex; flex-direction: column; align-items: flex-end;}
.spnp-off-label {margin-bottom: 5.5px; font-size: .56rem; line-height: 1; font-weight: 600; font-style: italic; padding: 6px 8px 4px; background: #fdd224; color: #000; border-radius: 30px; display: inline-block;}
.spnp-price {color: #fff; display: flex; align-items: flex-end; position: relative;}
.spnp-from {font-size: .8rem; line-height: 15px; font-weight: 400; text-transform: uppercase; margin-right: 8px; }
.spnp-amount {display: flex; align-items: flex-end; font-size: 1.5rem; line-height: 1; font-weight: 700; letter-spacing: 1px;}
.spnp-amount .normal {font-size: .93rem; line-height: 1.15; font-weight: 400; color: rgba(255,255,255,.6); top: -22px; left: 10px; text-decoration: line-through; position: absolute; letter-spacing: 0;}
.spnp-pax {font-size: .85rem; line-height: 1.3; font-weight: 400; margin-left: 5px;}
.spn-btn {margin-left: 25px;}
.spn-btn a {padding: 12px 30px; font-size: .95rem; line-height: 1.2; font-weight: 500; background: #ce2c31; color: #fff; border-radius: 30px; display: inline-block;}

.spn-fixed {position: sticky;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}
.spn-fixed .box {height: 85px;}
.spn-fixed li a {color: #000;}
.spn-fixed li a:hover {color: #555;}
.spn-fixed li a.active {border-color: #e0325a;}
.spn-fixed .spnp-price {color: #000;}
.spn-fixed .spnp-amount .normal {color: #666;}


.sp-nav.sticky {
  position: sticky;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);

}


/* Active Link Styles */
.sp-link a.active {
  color: #007bff; /* Tukar warna mengikut tema anda */
  font-weight: bold;
  border-bottom: 2px solid #007bff; /* Optional: garis bawah */
}

/* Smooth Transition untuk links */
.sp-link a {
  transition: all 0.3s ease;
}

.sp-link a:hover {
  color: #007bff;
}

.sp-content {margin-top: 60px;}
.sp-sec {margin-bottom: 60px; position: relative; overflow: hidden;}
.sp-sep {padding-top: 60px; border-top: 1px solid #ddd;}
.sp-title {margin-bottom: 15px;}
.sp-title h2 {font-size: 1.75rem; line-height: 1.2;}
.sp-intro p {font-size: 1.05rem; line-height: 1.4; margin-bottom: 12px;}
.sp-intro p:last-child P{margin-bottom: 0;}
.spi-info {margin-top: 20px; display: flex; gap: 8px;}
.spi-item {font-size: .95rem; line-height: 1.4; padding: 15px; border: 1px solid #ccc; border-radius: 6px; display: flex;} 
.spi-item::before {width: 22px; margin-right: 10px; font-size: 1.3rem; font-family: "Font Awesome 6 Pro"; font-weight: 300;}
.spi-item.plane::before {content: "\f5b0"; font-size: 1.2rem;}
.spi-item.suhu::before {content: "\f769";}
.spi-item.currency::before {content: "\f51e";}
.spi-item.bahasa::before {content: "\f075";}
.spi-item h4 {font-weight: 600; display: block;}
.sp-slide .swiper-wrapper {display: grid;  grid-template-columns: repeat(4, 1fr); gap: 30px;}
.sp-slide .swiper-slide {width: 100%;}
.sp-slide .thumb {border-radius: 8px; overflow: hidden;}
.sp-slide .info {margin-top: 12px; text-align: center;}
.sp-slide h4 {font-size: 1.25rem; line-height: 1.3; font-weight: 600; margin-bottom: 5px;}
.sp-slide p {font-size: 1rem; line-height: 1.4;}

.sp-itinerari .box {display: grid; grid-template-columns: 1fr 400px; gap: 40px;}
.l-spit {width: 100%;}
.spit-text {margin-bottom: 25px;}
.spit-text p {font-size: 1.05rem; line-height: 1.4; margin-bottom: 10px;}
.spit-text p:last-child {margin-bottom: 0;}
.spit-text .pdf-btn {margin-top: 20px;}
.spit-text .pdf-btn a {font-size: .98rem; line-height: 1.2; font-weight: 600; background: #fff; color: #000; border: 1px solid #222; padding: 12px 20px; border-radius: 6px; display: inline-block;}
.spit-text .pdf-btn a:hover {background: #eee;}
.spit-text .pdf-btn span {display: inline-block; font-size: .85rem; line-height: 1.1; font-weight: 300;}
.spit-row {padding: 30px 0; border-bottom: 1px solid #222; cursor: pointer;}
.spit-day {cursor: pointer; position: relative;}
.spit-icon {position: absolute; top: 0; right: 0;}
.spit-row.active .spit-arrow:before {content: "\f077";}
.spit-arrow:before {content: "\f078";}
.spit-row .spit-arrow:before, .spit-row.active .spit-arrow:before {font-weight: 300; font-size: 1.1rem; transition: transform 0.25s ease;}
.spit-day {display: flex; align-items: center;}
.spit-day h4 {font-size: 1.15rem; line-height: 1.2; font-weight: 600; text-transform: uppercase;}
.spit-day span {font-weight: 300;}
.spit-info {display: none; padding-top: 15px;}
.spit-info p, .spit-info li {font-size: 1rem; line-height: 1.4;}
.spit-info p {margin-bottom: 10px;}
.spit-info p:last-child {margin-bottom: 0;}
.spit-info strong {font-weight: 600;}
.spit-info li {margin-bottom: 3px;}
.spit-info li:last-child {margin-bottom: 0;}
.spit-info ul, .spit-info ol {padding-left: 18px;}
.spit-info ul li {list-style: disc;}
.spit-info ol li {list-style: decimal;}
.spit-impt {font-size: .92rem; line-height: 1.3; font-weight: 300; margin-top: 20px;}
.spinc {padding: 20px; border: 1px solid #ddd; border-radius: 8px;}
.sp-inc .sp-in {margin-bottom: 15px;}
.sp-inc h3 {font-size: 1.2rem; line-height: 1.2; font-weight: 600; margin-bottom: 15px;}
.sp-inc li {font-size: .98rem; line-height: 1.35; padding-left: 25px; margin-bottom: 8px; position: relative;}
.sp-inc li::before {font-family: "Font Awesome 6 Pro"; font-weight: 500; font-size: 1rem; top: 0; left: 1px; display: block; position: absolute;}
.sp-inc li:last-child {margin-bottom: 0;}
.sp-inc .sp-in li::before {content: "\f00c"; color: #0da532;}
.sp-inc .sp-ex li::before {content: "\f00d"; color: #d4351e;}
.sp-terms {padding: 15px; border: 1px solid #ddd; border-radius: 6px;}
.sp-terms ul {padding-left: 15px;}
.sp-terms li {list-style: disc; font-size: .88rem; line-height: 1.35; color: rgba(0,0,0,.8); margin-bottom: 4px;}
.sp-terms li strong {font-weight: 600;}
.sp-terms li:last-child {margin-bottom: 0;}
/*** TRANSPORT ***/
.sp-trans .swiper-wrapper {display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px;}
.sp-trans .thumb {margin-bottom: 12px; border-radius: 8px; overflow: hidden;}
.sp-trans h4 {font-size: 1.15rem; line-height: 1.3; font-weight: 500; margin: 5px 0 3px;}
.sp-trans p {font-size: 1rem; line-height: 1.35; font-weight: 300;}
/*** PENGINAPAN ***/
.sp-stay .swiper-wrapper {display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px;}
.sp-stay .thumb {margin-bottom: 12px; border-radius: 8px; overflow: hidden;}
.sp-stay .star {color: #faca15;}
.sp-stay .star i {font-size: .726rem;}
.sp-stay h4 {font-size: 1.15rem; line-height: 1.3; font-weight: 500; margin: 5px 0 3px;}
.sp-stay p {font-size: 1rem; line-height: 1.35; font-weight: 300;}

/* -------------------------------------------------- 
SIDE SINGLE PACKAGE
-------------------------------------------------- */
.sp-side {position: relative;}
.sps-item {padding: 30px; border: 1px solid #ddd; border-radius: 6px; box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;}
.sps-off-label {display: flex; justify-content: flex-end;}
.spso-item {padding: 6px 14px; background: #fdd224; color: #222; border-radius: 30px; font-style: italic; display: inline-block; text-align: right;}
.spso-top {font-size: .76rem; line-height: 1; font-weight: 700;}
.spso-btm {font-size: .66rem; line-height: 1; margin-top: 1px;}
.sps-top {position: relative; display: block;}
.sps-from {font-size: .9rem; line-height: 1.2; font-weight: 500; text-transform: uppercase; color: #ce2c31;}
.sps-price {display: flex; justify-content: center; align-items: flex-end; margin-top: 15px; position: relative;}
.spsp-one {display: flex;}
.sps-rm {font-size: 1.05rem;}
.sps-amount {font-size: 3.2rem; line-height: 1.2; font-weight: 700; color: #000; letter-spacing: 3px; display: flex; flex-direction: column; align-items: center;}
.sps-amount .normal {top: -12px; font-size: 1.02rem; font-weight: 300; letter-spacing: 0; color: #8E8E8E; text-decoration: line-through; display: block; position: absolute;}
.sps-pax {font-size: 1.3rem; line-height: 2; margin-left: 5px;}
.sps-label {display: flex; justify-content: center;}
.sps-label-item {background: #ffedee; border: 1px solid #ffcbce; padding: 8px 18px; border-radius: 50px; margin-top: 6px; text-align: center; display: inline-block;}
.sps-label span {font-size: .82rem; line-height: 1.2; font-weight: 600; text-transform: uppercase; background: linear-gradient(to right, #6e30f9 20%, #cf0044 30%, #ec4a80 70%, #d2110c 80%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; text-fill-color: transparent; background-size: 500% auto; animation: textShine 5s ease-in-out infinite alternate;}
.sps-lain {margin-top: 10px; font-size: .9rem; line-height: 1.4; font-weight: 300; text-align: center;}
.sps-info {margin-top: 10px; font-size: .88rem; line-height: 1.4; font-weight: 300; color: #222; text-align: center; padding: 0 30px;}
.sps-info strong {font-weight: 600;}
.sps-btm {margin-top: 20px; padding-top: 20px; border-top: 1px solid #ddd;}
.sps-cta {display: flex; flex-direction: column; gap: 8px;}
.sps-cta a {font-size: 1rem; line-height: 1.2; font-weight: 500; color: #000; padding: 12px 0; border-radius: 4px; width: 100%; display: block; text-align: center;}
.sps-cta a.btn-book {background: #ce2c31; color: #fff;}
.sps-cta a.btn-wsp {background: #fff; border: 2px solid #222;}
.sps-cta a.btn-wsp i {font-size: 1.2rem; color: #1bc03a; margin-right: 2px; vertical-align: -2px;}



/* -------------------------------------------------- 
CTA
-------------------------------------------------- */
.cta {position: fixed; bottom: 15px; right: 15px; z-index: 9999; cursor: pointer;}
.cta-chat {margin-bottom: 10px;}
.cta-chat a {background: #fff; display: flex; align-items: center; border: 1px solid rgb(229, 229, 229); box-shadow: rgba(9, 14, 21, 0.06) 0px 4px 28px 0px, rgba(9, 14, 21, 0.06) 0px 1px 4px 0px; border-radius: 20px; padding: 12px 14px;}
.cta-img {max-height: 32px; height: 32px; border-radius: 50%; overflow: hidden; margin-right: 10px;}
.cta-text p {font-size: .86rem; line-height: 1.4; font-weight: 600; color: #000;}
.cta-meta {margin-top: 1px; font-size: .75rem; line-height: 1.4; color: rgba(0,0,0,.7);}
.cta-meta span {margin-left: 5px;}
.cta-meta span.online {color: #28a745; font-weight: 500;}
.cta-meta span.offline {color: #dc3545; font-weight: 600;}
.cta-meta span .fa-circle {font-size: .2rem; vertical-align: 2px;}
.cta-btn {display: flex; justify-content: flex-end;}
.cta-btn a {background: #24CC63; color: #fff; font-size: 1.6rem; line-height: 1; width: 48px; height: 48px; border-radius: 50%; display: flex; align-items: center; justify-content: center; position: relative;}
.cta-no {font-size: .6rem; color: #fff; background: #f00404; width: 16px; height: 16px; border-radius: 50%; position: absolute; top: -2px; right: -2px; display: flex; align-items: center; justify-content: center; animation: smoothBounce 2s ease-in-out infinite;}


/* -------------------------------------------------- 
PAGE
--------------------------------------------------  */
.pages {padding: 30px 0;}
.o-pages .box {display: flex; gap: 40px;}
.o-pages .row-one {width: 25%;}
.o-pages .row-two {width: 75%;}
.p-info h4 {margin-bottom: 10px;}
.p-info ul {padding-left: 18px;}
.p-info li {margin-bottom: 6px; list-style: circle;}
.p-info li a {font-size: .9rem; line-height: 1.3; font-weight: 500; color: #000;}
.p-info li a:hover {text-decoration: underline;}
.p-title {margin-bottom: 20px;}
.p-title h1, .p-title h2 {font-size: 1.6rem; line-height: 1.3; font-weight: 700; color: #000; text-transform: capitalize;}
.page-content h2, .page-content h3, .page-content h4 {font-size: 1.1rem; line-height: 1.3; font-weight: 700; margin: 20px 0 15px;}
.page-content h2 {text-transform: uppercase; font-size: 1.3rem; text-decoration: underline;}
.page-content p {margin-bottom: 10px; word-wrap: break-word;}
.page-content p, .page-content ul li, .page-content ol li {font-size: .98rem; line-height: 1.4;}
.page-content p strong {font-weight: 600;}
.page-content a {color: #a10862; font-weight: 600;}
.page-content a:hover {text-decoration: underline;}
.page-content ul, .page-content ol {margin: 0 0 15px; padding-left: 24px;}
.page-content ol li {list-style: decimal;}
.page-content ul li {list-style: disc;}
.page-content ul li, .page-content ol li {padding: 1px 0; word-wrap: break-word; margin-bottom: 2px;}
.page-content ul li ul, .page-content ol li ol {margin-bottom: 0;}
/* -------------------------------------------------- 
PAGE GALLERY
--------------------------------------------------  */
.p-gallery, .gallery {display: flex; flex-wrap: wrap;}
.p-gallery .item {width: 33.333333%; padding: 0 10px; margin-bottom: 20px;}
.gallery .item {width: 20%; padding: 10px;}
.gallery .item a img {border-radius: 8px; transition: .3s;}
.gallery .item a:hover img {opacity: .8;}
.ppc-title {padding: 14px 0; margin-bottom: 15px; border-bottom: 1px solid #e8e8e8;}
.ppc-title h4 {font-size: 1.3rem; line-height: 1; font-weight: 700;}
/* -------------------------------------------------- 
PAGINATION
--------------------------------------------------  */
.wp-pagenavi {width: 100%; position: relative; margin: 10px 0; display: flex; justify-content: center;}
.wp-pagenavi span, .wp-pagenavi a {color: #000; font-size: 1rem; line-height: 1; font-weight: 400; border: none!important; border-radius: 50%; width: 2em; height: 2em; display: flex; align-items: center; justify-content: center;}
.wp-pagenavi a:hover {color: #eb2227;}
.wp-pagenavi span.current {background: #eb2227; color: #fff; font-weight: 500!important;}
.wp-pagenavi .pages {display: none;}
/* --------------------------------------------------  
SEARCH PAGE
-------------------------------------------------- */
.search-title {margin-bottom: 30px;}
.search-title h1 {font-size: 1.4rem; line-height: 1.2; color: #000; font-weight: 600;}
/* -------------------------------------------------- 
BREADCRUMB
-------------------------------------------------- */
#breadcrumbs {overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1;}
#breadcrumbs span, #breadcrumbs a, .siteseo-breadcrumbs, .siteseo-breadcrumbs a {font-size: .83rem; color: #fff;}
#breadcrumbs a {font-weight: 500; color: #fff;}
#breadcrumbs a:hover {text-decoration: underline;}
#breadcrumbs i {font-size: .5rem; margin: 0 3px; color: #a1a1a1; vertical-align: .5px;}
/* -------------------------------------------------- 
CF7
-------------------------------------------------- */
.wpcf7-form br {display: none!important;}
.wpcf7-form .row {margin-bottom: 20px; position: relative;}
.wpcf7-form .row p {position: relative;}
.wpcf7-form .ff-note {font-size: .815rem; font-weight: 400; color: rgba(0,0,0,.65); margin-top: 6px; display: block;}
.wpcf7-form label {display: block; font-size: .93rem; line-height: 1.2; font-weight: 600; margin-bottom: 8px;}
.wpcf7-form label .required {color: #ff0000; font-weight: 700;}
.wpcf7-form .row input, .wpcf7-form .row textarea, .wpcf7-form select {width: 100%; padding: 12px 14px; font: .98rem 'Inter', sans-serif; line-height: 1.2; font-weight: 400; background: #fff; border: 2px solid #d4d8dc; border-radius: 5px; outline: none!important;}
.wpcf7-form .row textarea {line-height: 1.4!important; height: 180px;}
.wpcf7-form .row input.wpcf7-date {padding: 11px 12px;}
.wpcf7-form .row input:hover, .wpcf7-form .row textarea:hover {border-color: rgba(0,0,0,.4);}
.wpcf7-form .row input:focus, .wpcf7-form .row textarea:focus {border-color: #000;}
.wpcf7-form .button {position: relative; margin-top: 5px;}
.wpcf7-form .button input {background: #000; color: #fff; font-size: 1rem; line-height: 1.2; text-transform: capitalize; font-weight: 600; padding: 16px 0; text-align: center; width: 100%; display: block; border-radius: 4px; cursor: pointer; border: none;}
.wpcf7-form .button input:hover {background: #1d1d1d;}
.wpcf7-form .button input:focus {box-shadow: none;}
.wpcf7-form .row.selct {position: relative;}
.wpcf7-form .row.selct::after {content: "\f078"; font-family: "Font Awesome 6 Pro"; font-weight: 500; font-size: .85rem; position: absolute; right: 10px; top: 39px; pointer-events: none;}
.file-upload {margin-bottom: 20px;}
.file-label {display: block; margin-bottom: 8px; font-weight: 600; font-size: 14px; color: #333;}
.file-upload input[type="file"],
.file-upload .wpcf7-file,
.file-upload .file-input {cursor: pointer !important;}
.file-upload .wpcf7-form-control-wrap {position: relative; display: block; min-height: 50px;}
.wpcf7-checkbox {display: flex; gap: 20px;}
.wpcf7-list-item {margin: 0!important;}
.wpcf7-list-item label {font-weight: 400; cursor: pointer; display: flex; align-items: center; margin-bottom: 0;}
.wpcf7-list-item label input {width: 14px!important; height: 14px!important; padding: 0!important; margin: 0 6px 0 0!important; cursor: pointer;}
.wpcf7-form .row input[readonly] {background-color: #f5f5f5; color: #666; cursor: not-allowed; border-color: #ddd!important;}
.wpcf7-form .wpcf7-acceptance {margin-bottom: 10px; display: block;}
.wpcf7-form .wpcf7-acceptance label {font-size: .86rem!important; line-height: 1.3;}
.wpcf7-form .wpcf7-acceptance label input {width: 12px!important; height: 12px!important;}
.wpcf7 .wpcf7-submit:disabled, .wpcf7 .wpcf7-submit:disabled:hover {background: #ccc;}
.wpcf7-select::-ms-expand {display: none;}
.wpcf7-spinner {position: absolute!important; top: 12px; right: 0;}
.wpcf7-not-valid-tip {display: none!important;}
.wpcf7 {position: relative;}
.wpcf7.is-loading form {filter: blur(3px); pointer-events: none; opacity: 0.6;}
.wpcf7-loading-overlay,
.wpcf7-error-overlay {position: absolute; inset: 0; background: rgba(255,255,255,.9); display: none; align-items: center; justify-content: center; z-index: 10; border-radius: 8px; text-align: center; padding: 20px;}
.cf7-spinner { width: 32px; height: 32px; border: 3px solid #ccc; border-top-color: #0a3ee8; border-radius: 50%; animation: spin 1s linear infinite; margin: 0 auto 15px;}
input.wpcf7-not-valid {border-color: #e54b4d!important; background-color: #fcecec !important;}
.wpcf7-response-output {text-align: center; padding: 0 20px!important; margin: 15px 0 0!important;}
.wpcf7 form.sent .wpcf7-response-output {border: none; font-size: .9rem; line-height: 1.35; color: #46b450;}
.wpcf7 form.invalid .wpcf7-response-output {border: none; font-size: .9rem; line-height: 1.35; color: #ff0000;}
.cf7-success-message {padding: 30px; font-size: .95rem; line-height: 1.4; font-weight: 500; color: #00a63e; background: #f8faf9; border: 1px solid #cfead9; border-radius: 12px; text-align: center; }
.cf7-success-message .icon {font-size: 2.6rem; color: #2ecc71; margin-bottom: 10px;}

.sp-ctc .row-one p {font-size: .96rem; line-height: 1.4; margin-bottom: 10px;}
.sp-ctc .row-one p strong {font-weight: 600;}
.sp-ctc .row-one p:last-child {margin-bottom: 0;}
.spc-ctc .wpcf7-form .row {margin-bottom: 14px;}
.spc-ctc .wpcf7-form .row label {font-size: .94rem; line-height: 1.1; font-weight: 400; color: rgb(102, 102, 102); top: 50%; left: 12px; transform: translateY(-50%); background-color: transparent; transition: 0.3s ease; pointer-events: none; position: absolute; z-index: 3;}
.spc-ctc .wpcf7-form .row label span {color: #ff0000;}
.spc-ctc .wpcf7-form .row label.move {top: 0; font-size: 0.7rem; color: #333; background-color: #fff; padding: 0 5px; display: inline-block;}
.spc-ctc .wpcf7-form .row.msg label {top: 20px;}
.spc-ctc .wpcf7-form .row.msg label.move {top: 0;}
.spc-ctc .wpcf7-form .row input, .spc-ctc .wpcf7-form .row textarea {padding: 11px; border: 1px solid #b4b4b4;}
.spc-ctc .wpcf7-form .row input:hover, .spc-ctc .wpcf7-form .row textarea:hover {border-color: #989898;}
.spc-ctc .wpcf7-form .row input:focus, .spc-ctc .wpcf7-form .row textarea:focus {border-color: #000;}
.spc-ctc .wpcf7-form .row textarea {height: 105px;}
.spc-ctc .wpcf7-form .button {margin-top: -5px;}
.spc-ctc .wpcf7-form .button input {font-size: .95rem; line-height: 1.1; font-weight: 500; padding: 14px 0;}
.spc-ctc input.wpcf7-not-valid {outline: none!important;}
/* --------------------------------------------------
COMMENT RATING
-------------------------------------------------- */
#stars-rating-review {display: flex; justify-content: center; padding: 15px; border: 2px dashed #ddd; border-radius: 4px; margin: 20px 0 30px;}
#stars-rating-review .br-widget a.br-selected:after, #stars-rating-review .br-widget a.br-active:after {content: "\f005"; color: #faca15!important;}
#stars-rating-review .br-widget a:after, #stars-rating-review .br-widget a.br-selected:after, #stars-rating-review .br-widget a.br-active:after {font-size: 1.4rem;}
#stars-rating-review .br-widget {margin: 0; height: inherit!important; text-align: center;}
#stars-rating-review .br-widget::before {content: 'How would you rate this business?'; display: block; font-size: .95rem; line-height: 1.2; margin-bottom: 6px; text-align: center;}
#stars-rating-review .br-widget a {margin-right: 6px!important;}
.rating-stars i.rated:after {color: #faca15!important;}
.stars-avg-rating {font-size: inherit!important;}
.stars-avg-rating .avg {font-weight: 600;}
/* --------------------------------------------------
OFF CANVAS
-------------------------------------------------- */
.c-offcanvas{transform:translate3d(0,0,0);-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index: 9999!important;}.c-offcanvas-bg.c-offcanvas-bg--push,.c-offcanvas-bg.c-offcanvas-bg--reveal,.c-offcanvas-content-wrap,.c-offcanvas{transition:transform 300ms cubic-bezier(0.4,0,0.6,1)}.c-offcanvas.is-open{transform:translate3d(0,0,0);visibility:visible}.c-offcanvas-content-wrap{z-index:3}.c-offcanvas{position:fixed;min-height:100%;max-height:none;top:0;display:block;background:#fff;overflow-x:hidden;overflow-y:auto}.c-offcanvas--opening{transition-timing-function:cubic-bezier(0.4,0,0.6,1)}.c-offcanvas.is-closed{max-height:100%;overflow:hidden;visibility:hidden;box-shadow:none}.c-offcanvas--overlay{z-index:1080}.c-offcanvas--reveal{z-index:2}.c-offcanvas-bg{position:fixed;top:0;height:100%;width:100%;z-index:1079;left:-100%;background-color:transparent;transition:background-color 400ms cubic-bezier(0.23,1,0.32,1) 0}.c-offcanvas-bg.is-animating,.c-offcanvas-bg.is-open{left:0;background-color:rgba(0,0,0,0.68);visibility:visible}.c-offcanvas-bg.is-closed{visibility:hidden}.c-offcanvas-bg--closing.is-animating{background:transparent}.c-offcanvas--left{height:100%;width:250px;transform:translate3d(-250px,0,0)}.c-offcanvas--right{height:100%;width:220px;right:0;transform:translate3d(220px,0,0)}.c-offcanvas--top{left:0;right:0;top:0;height:12.5em;min-height:auto;width:100%;transform:translate3d(0,-12.5em,0)}.c-offcanvas--bottom{top:auto;left:0;right:0;bottom:0;height:100%;min-height:auto;width:100%;transform:translate3d(0,100%,0)}.c-offcanvas-content-wrap{z-index:3}.c-offcanvas-content-wrap--reveal.c-offcanvas-content-wrap--left.is-open{transform:translate3d(17em,0,0)}.c-offcanvas-content-wrap--reveal.c-offcanvas-content-wrap--right.is-open{transform:translate3d(-17em,0,0)}.c-offcanvas--reveal{z-index:0;transform:translate3d(0,0,0)}.c-offcanvas-bg.c-offcanvas-bg--reveal.c-offcanvas-bg--left.is-open{transform:translate3d(17em,0,0)}.c-offcanvas-bg.c-offcanvas-bg--reveal.c-offcanvas-bg--right.is-open{transform:translate3d(-17em,0,0)}.c-offcanvas--push{z-index:6}.c-offcanvas--push--opening{transition-timing-function:cubic-bezier(0,0,0.2,1)}.c-offcanvas-content-wrap{z-index:3}.c-offcanvas-content-wrap--push.c-offcanvas-content-wrap--left.is-open{transform:translate3d(17em,0,0)}.c-offcanvas-content-wrap--push.c-offcanvas-content-wrap--right.is-open{transform:translate3d(-17em,0,0)}.c-offcanvas-bg.c-offcanvas-bg--push.c-offcanvas-bg--left.is-open{transform:translate3d(17em,0,0)}.c-offcanvas-bg.c-offcanvas-bg--push.c-offcanvas-bg--right.is-open{transform:translate3d(-17em,0,0)}
/* -------------------------------------------------- 
404
-------------------------------------------------- */
.notfound {padding: 5em 0;}
.notfound h1 {font-size: 15rem; line-height: 1.1; font-weight: 700;}
.notfound p {font-size: 1.2rem; line-height: 1.2;}
/* --------------------------------------------------  
ADD ON
-------------------------------------------------- */
.clearfix {clear: both;}
.video, .maps {overflow: hidden; padding-bottom: 50%; position: relative; height: 0;}
.video iframe, .maps iframe {left: 0; top: 0; height: 100%; width: 100%; position: absolute;}
.maps {margin-bottom: 0;}
.fb {color: #4267b2;}
.twit {color: #55acee;}
.ig {color: #f24d58;}
.pin {color: #e60023;}
.utube {color: #ff0000;}
.whatsapp {color: #00a500;}
.tele {color: #0088cc;}
.fb-ico {background: #4267b2;}
.twit-ico {background: #000;}
.ig-ico {background: #d6249f; background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%,#d6249f 60%,#285AEB 90%);}
.pin-ico {background: #cc2127;}
.in-ico {background: #0077b5;}
.utube-ico {background: #ff0000;}
.tiktok-ico {background: #000;}
.whatsapp-ico {background: #00a500;}
.web-ico {background: #a67c52;}
.tele-ico {background: #0088cc;}
.messenger-ico {background: #007fff;}
/* -------------------------------------------------- 
ANIMATION
-------------------------------------------------- */
@keyframes scrollTrack {
0% { transform: translateX(0); }
100% { transform: translateX(-50%); }
}
@keyframes smoothBounce {
0%, 100% { transform: translateY(0) scale(1); }
25% { transform: translateY(-4px) scale(1.05); }
50% { transform: translateY(0) scale(1); }
75% { transform: translateY(-2px) scale(1.02); }
}
@keyframes textShine {
0% { background-position: 0% 50%; }
100% { background-position: 100% 50%; }
}
@keyframes spin {
to { transform: rotate(360deg); }
}
@keyframes fadeInScale {
from { opacity: 0; transform: scale(0.9); }
to { opacity: 1; transform: scale(1); }
}