/* Theme overrides to apply the orange accent from the provided image */
:root{
    --theme-accent: #E68B2D;
    --theme-accent-dark: #C0631F;
    --theme-accent-light: #F3B56D;
    --text-color: #333333;
    --muted-color: #707070;
}

/* General link and highlight color */
a, .sub-title, .title span, .section-header .sub-title { color: var(--theme-accent) !important; }

/* Buttons and call-to-action */
.btn, .btn-one, .btn-two, .btn-two-light, .book-now, .btn-primary { 
    background-color: var(--theme-accent) !important; 
    border-color: var(--theme-accent) !important; 
    color: #ffffff !important;
}

.btn:hover, .btn:focus, .book-now:hover, .btn-one:hover, .btn-two:hover { 
    background-color: var(--theme-accent-dark) !important; 
    border-color: var(--theme-accent-dark) !important; 
}

/* Navigation active/hover */
.main-menu a:hover, .main-menu a:focus, .main-menu .active > a, .main-menu nav a { color: var(--theme-accent) !important; }
.navbar .nav-link.active { color: var(--theme-accent) !important; }

/* Section headers / titles */
.section-header .title, .section-header .title a { color: var(--theme-accent) !important; }

/* Package tabs (active) */
.package-tab .nav-tabs .nav-link.active, .package-tab .nav-tabs .nav-link.show { background-color: var(--theme-accent); color: #fff !important; border-color: var(--theme-accent) !important; }

/* Accent borders & decorative elements */
.footer-area, .footer-two-area { border-top: 4px solid var(--theme-accent) !important; }
.feature-section .swiper-slide .item, .service-section .service-block { border-color: var(--theme-accent) transparent transparent transparent !important; }

/* Pricing / badges / labels */
.price, .package-badge, .badge, .offer-price { color: var(--theme-accent) !important; }

/* Form focus states */
input:focus, textarea:focus, select:focus { box-shadow: 0 0 0 3px rgba(230,139,45,0.12) !important; border-color: var(--theme-accent) !important; }

/* Small utility overrides */
.text-accent { color: var(--theme-accent) !important; }
.bg-accent { background-color: var(--theme-accent) !important; color: #fff !important; }

/* Ensure icons or svg fills pick up the accent when appropriate */
.icon, .icon svg, .fa { color: var(--theme-accent) !important; }

/* Make sure footer links are visible */
.footer-area a, .footer-two-area a { color: var(--muted-color) !important; }
.footer-area a:hover, .footer-two-area a:hover { color: var(--theme-accent) !important; }

/* Responsive tweak: keep buttons readable on small screens */
@media (max-width: 480px){
    .book-now, .btn-one, .btn-two { padding-left: 14px !important; padding-right: 14px !important; }
}

/* Backgrounds, icons, and loading (preloader) styles */
body {
    background-color: #ffffff;
    color: var(--text-color);
}

/* Subtle section tint to carry the accent through large areas */
.bg-sub, .bg-sub-two {
    background-color: rgba(230,139,45,0.03) !important;
}
.banner-area .banner__content {
    background: linear-gradient(180deg, rgba(230,139,45,0.06), rgba(255,255,255,0));
}

/* Icons and SVGs pick up the accent */
.icon, .icon svg, .fa, .fa * { color: var(--theme-accent) !important; }
.sidebar__socials a i, .sidebar__socials a svg { color: #ffffff !important; background-color: var(--theme-accent) !important; border-radius: 6px; padding: 6px; }

/* Scroll-to-top and small floating CTAs */
.scroll-to-top { background-color: var(--theme-accent) !important; color: #fff !important; }

/* Preloader / loader visuals */
/* Preloader / loader visuals: improved, no solid background */
#preloader {
    position: fixed;
    inset: 0;
    background: rgba(255,255,255,0.85);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 99999;
    transition: opacity 400ms ease, visibility 400ms ease;
}

#preloader.hidden { opacity: 0; visibility: hidden; pointer-events: none; }

#preloader .animation-preloader {
    display:flex;
    align-items:center;
    gap:18px;
    flex-direction:column;
}

#preloader .animation-preloader .spinner {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    border: 6px solid rgba(0,0,0,0.08);
    border-top-color: var(--theme-accent);
    animation: spin 1s linear infinite;
    box-shadow: 0 6px 18px rgba(0,0,0,0.06);
}

#preloader .animation-preloader .txt-loading { font-weight:700; }
#preloader .animation-preloader .txt-loading .letters-loading { color: var(--theme-accent); font-size:18px; letter-spacing:2px; }

@keyframes spin { to { transform: rotate(360deg); } }

/* Make form and controls use accent focus outlines */
.search-wrap { background: rgba(0,0,0,0.55); }
.search-cell .main-search-input { background: #fff; color: var(--text-color); }

/* Make fancy elements like badges, price tags, and highlights use accent */
.badge, .offer-price, .price, .package-badge { background: transparent !important; color: var(--theme-accent) !important; }

/* Decorative shapes & small separators */
.section-header__flex::after, .section-header::after { background: linear-gradient(90deg, var(--theme-accent), var(--theme-accent-dark)); }

/* Ensure svg fills used for icons pick up the color (only where intended) */
.book-now svg path, .btn svg path { fill: #fff; }

/* Accessibility contrast helper for inverted accent blocks */
.bg-accent { background-color: var(--theme-accent) !important; color: #fff !important; }

