@charset "UTF-8";
/*
Theme Name: Twenty Twenty-One
Theme URI: https://wordpress.org/themes/twentytwentyone/
Author: the WordPress team
Author URI: https://wordpress.org/
Description: Twenty Twenty-One is a blank canvas for your ideas and it makes the block editor your best brush. With new block patterns, which allow you to create a beautiful layout in a matter of seconds, this theme's soft colors and eye-catching — yet timeless — design will let your work shine. Take it for a spin! See how Twenty Twenty-One elevates your portfolio, business website, or personal blog.
Requires at least: 5.3
Tested up to: 7.0
Requires PHP: 5.6
Version: 2.8
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentytwentyone
Tags: one-column, accessibility-ready, custom-colors, custom-menu, custom-logo, editor-style, featured-images, footer-widgets, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, blog, portfolio

Twenty Twenty-One WordPress Theme, (C) 2020 WordPress.org
Twenty Twenty-One is distributed under the terms of the GNU GPL.
*/

/**
 * SETTINGS
 * File-header..........The file header for the themes style.css file.
 * Fonts................Any font files, if the project needs specific fonts.
 * Global...............Project-specific, globally available variables.
 *
 * TOOLS
 * Functions............Global functions.
 * Mixins...............Global mixins.
 *
 * GENERIC
 * Normalize.css........Normalise browser defaults.
 * Breakpoints..........Mixins and variables for responsive styles
 * Vertical-margins.....Vertical spacing for the main components.
 * Reset................Reset specific elements to make them easier to style in other contexts.
 * Clearings............Clearings for the main components.
 *
 * ELEMENTS
 * Blockquote...........Default blockquote.
 * Forms................Element-level form styling.
 * Headings.............H1–H6
 * Links................Default links.
 * Lists................Default lists.
 * Media................Images, Figure, Figcaption, Embed, iFrame, Objects, Video.
 *
 * BLOCKS
 * Audio................Specific styles for the audio block.
 * Button...............Specific styles for the button block.
 * Code.................Specific styles for the code block.
 * Columns..............Specific styles for the columns block.
 * Cover................Specific styles for the cover block.
 * File.................Specific styles for the file block.
 * Gallery..............Specific styles for the gallery block.
 * Group................Specific styles for the group block.
 * Heading..............Specific styles for the heading block.
 * Image................Specific styles for the image block.
 * Latest comments......Specific styles for the latest comments block.
 * Latest posts.........Specific styles for the latest posts block.
 * Legacy...............Specific styles for the legacy gallery.
 * List.................Specific styles for the list block.
 * Media text...........Specific styles for the media and text block.
 * Navigation...........Specific styles for the navigation block.
 * Paragraph............Specific styles for the paragraph block.
 * Pullquote............Specific styles for the pullquote block.
 * Quote................Specific styles for the quote block.
 * Search...............Specific styles for the search block.
 * Separator............Specific styles for the separator block.
 * Table................Specific styles for the table block.
 * Poetry (Verse).......Specific styles for the poetry block.
 * Video................Specific styles for the video block.
 * Utilities............Block alignments.
 *
 * COMPONENTS
 * Header...............Header styles.
 * Footer...............Footer styles.
 * Comments.............Comment styles.
 * Archives.............Archive styles.
 * 404..................404 styles.
 * Search...............Search styles.
 * Navigation...........Navigation styles.
 * Footer Navigation....Footer Navigation styles.
 * Pagination...........Pagination styles.
 * Single...............Single page and post styles.
 * Posts and pages......Misc, sticky post styles.
 * Entry................Entry, author biography.
 * Widget...............Widget styles.
 * Editor...............Editor styles.
 *
 * UTILITIES
 * A11y.................Screen reader text, prefers reduced motion etc.
 * Color Palette........Classes for the color palette colors.
 * Editor Font Sizes....Editor Font Sizes.
 * Measure..............The width of a line of text, in characters.
 */

/* Categories 01 to 03 are the basics. */

/* Variables */


.page-infoo h1 {
    font-size: 32px;
    font-weight: 600;
    border-bottom: 2px solid #f09535;
}




.custom-blog-listing {
    padding: 60px 0;
    background: #f8f9fa;
}

.custom-blog-heading {
    text-align: center;
    margin-bottom: 40px;
}

.custom-blog-heading h1 {
    font-size: 38px;
    font-weight: 700;
    margin-bottom: 12px;
    color: #222;
}

.custom-blog-card {
    height: 100%;
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #e8e8e8;
    box-shadow: 0 4px 18px rgba(0,0,0,.06);
    transition: transform .3s ease, box-shadow .3s ease;
}

.custom-blog-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0,0,0,.10);
}

.custom-blog-image {
    display: block;
    overflow: hidden;
    aspect-ratio: 16 / 10;
    background: #eee;
}



.custom-blog-image img {
    display: block;
    width: 100% !important;
    height: 350px  !important;
    object-fit: cover;
    object-fit: cover;
    transition: transform .4s ease;
}


.custom-blog-card:hover .custom-blog-image img {
    transform: scale(1.05);
}

.custom-blog-no-image {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #777;
}

.custom-blog-content {
    padding: 22px;
}

.custom-blog-content h2 {
    font-size: 21px;
    line-height: 1.45;
    margin: 0 0 12px;
}

.custom-blog-content h2 a {
    color: #222;
    text-decoration: none;
}

.custom-blog-content h2 a:hover {
    color: #b8860b;
}

.custom-blog-description {
    color: #666;
    font-size: 15px;
    line-height: 1.8;
    margin-bottom: 18px;
}

.custom-blog-readmore {
    display: inline-block;
    color: #fff;
    background: #f09535;
    padding: 10px 18px;
    border-radius: 5px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
}

.custom-blog-readmore:hover {
    background: #b8860b;
    color: #fff;
}

.custom-blog-pagination {
    margin-top: 25px;
}




/* Fixed Bottom Buttons - Hidden by Default */
.fixed-bottom-actions {
    display: none;
}

/* Show Only on Mobile */
@media (max-width: 767px) {

    .fixed-bottom-actions {
        display: flex;
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        gap: 5px;
        padding: 8px 5px;
        background: #ffffff;
        box-shadow: 0 -3px 15px rgba(0, 0, 0, 0.12);
        z-index: 99999;
        box-sizing: border-box;
    }

.fixed-action-btn {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 5px;
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.3;
    text-align: center;
    border-radius: 5px;
    box-sizing: border-box;
    transition: background 0.3s ease;
}

    .fixed-action-btn i {
        font-size: 17px;
    }

    /* Call Button */
    .call-btn {
        background: #198754;
    }

    .call-btn:hover {
        background: #146c43;
    }

    /* Direction Button */
    .direction-btn {
        background: #322272;
    }

    .direction-btn:hover {
        background: #241852;
    }

    /* Book Now Button */
    .book-btn {
        background: #971a25;
    }

    .book-btn:hover {
        background: #74131c;
    }

    /* Prevent Content from Hiding Behind Buttons */
    body {
        padding-bottom: 75px;
    }
}

/* Extra Small Mobile Screens */
@media (max-width: 360px) {
    .fixed-bottom-actions {
        gap: 4px;
        padding: 6px 4px;
    }

    .fixed-action-btn {
        font-size: 11px;
        padding: 9px 2px;
    }

    .fixed-action-btn i {
        font-size: 16px;
    }
}





.destination-link {
    display: block;
    cursor: pointer;
    text-decoration: none; /* Removes default link underline */
    color: inherit; /* Keeps your existing text color */
    transition: transform 0.3s ease;
}
.destination-link:hover {
    transform: translateY(-5px); /* Small lift effect on hover */
}



.navbar-collapse {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-align: center;
    align-items: center;
    justify-content: end !important;
}


ul.navbar-actions.d-none.d-xl-flex.align-items-center.list-unstyled.mb-0 {
    margin-left: 24px;
}


/* Equal height for destination/package images */
.destination-section .feature-image {
    width: 100%;
    height: 220px;
    overflow: hidden;
}

.destination-section .feature-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

@media (max-width: 767px) {
    .destination-section .feature-image {
        height: 180px;
    }
}





/* =========================================
   BLOG SECTION LAYOUT
   col-md-9 = Title + Short Description
   col-md-3 = Thumbnail (left) + Text (right)
   ========================================= */

.blog-section {
  padding: 60px 0;
}

/* ---------- MAIN CONTENT (col-md-9) ---------- */
.blog-section .col-md-9 .single-feature-image {
  margin-bottom: 20px;
}

.blog-section .col-md-9 .single-feature-image img {
  width: 100%;
  height: auto;
  border-radius: 8px;
  display: block;
}

.blog-section .col-md-9 h1 {
  font-size: 28px;
  line-height: 1.3;
  margin-bottom: 12px;
  font-weight: 700;
}

.blog-section .col-md-9 .single-content {
  font-size: 15px;
  line-height: 1.6;
  color: #555;
}

/* ---------- SIDEBAR (col-md-3) ---------- */
.sidebar h4 {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 18px;
  padding-bottom: 10px;
  border-bottom: 2px solid #f1c40f; /* theme accent */
}

/* Latest post item = flex row (thumbnail LEFT, text RIGHT) */
.sidebar .latest-post {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding-bottom: 12px;
  margin-bottom: 12px;
  border-bottom: 1px solid #eee;
}

.sidebar .latest-post:last-child {
  border-bottom: none;
}

/* Thumbnail LEFT */
.sidebar .latest-post > a:first-child {
  flex: 0 0 70px;   /* fixed width */
  max-width: 70px;
}

.sidebar .latest-post > a:first-child img {
  width: 70px;
  height: 60px;
  object-fit: cover;
  border-radius: 5px;
  display: block;
}

/* Text RIGHT */
.sidebar .latest-post > a:last-child {
  flex: 1;
  text-decoration: none;
  color: #222;
}

.sidebar .latest-post h6 {
  font-size: 13px;
  line-height: 1.3;
  margin: 0;
  font-weight: 600;
  color: #222;
  /* Short / very short: max 2 lines */
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.sidebar .latest-post > a:last-child:hover h6 {
  color: #f1c40f; /* hover accent */
}

/* Sticky sidebar */
.sidebar.sticky-top {
  top: 90px;
}

/* ---------- RESPONSIVE ---------- */
@media (max-width: 767px) {
  .sidebar {
    margin-top: 30px;
  }
  .blog-section .col-md-9 h1 {
    font-size: 22px;
  }
  .sidebar .latest-post > a:first-child {
    flex: 0 0 60px;
    max-width: 60px;
  }
  .sidebar .latest-post > a:first-child img {
    width: 60px;
    height: 50px;
  }
}