/*
Theme Name: Key Listing Media Custom Theme
Theme URI: https://keylistingmedia.com
Description: Bespoke premium production theme customized for Key Listing Media.
Author: Key Listing Media
Template: arilewp
Version: 1.1.0
Text Domain: klm-custom-theme
*/

/* ==================================================
   =>> 1. KLM GLOBAL COLOR VARIABLES
   ================================================== */
:root {
    /* Backgrounds */
    --klm-bg-base: #18191b;
    --klm-bg-alt: #202020;
    --klm-bg-dark: #111111;
    --klm-bg-black: #0b0b0b;
    
    /* Text */
    --klm-text-main: #ddd;
    --klm-text-light: #fff;
    --klm-text-dim: #bbbbbb;
    
    /* Accents & Borders */
    --klm-border-color: #333;
    --klm-border-light: #626364;
    --klm-accent-gold: #d4af37;
}

/*--------------------------------------------------
=>> Body Custom Background Css
--------------------------------------------------*/

body.custom-background .theme-bg-dark,
body.custom-background .theme-bg-default, 
body.custom-background .theme-blog.theme-bg-grey {
    background-color: transparent !important;
}

/*--------------------------------------------------
=>> Common - Begining Css
--------------------------------------------------*/

body {
    color: var(--klm-text-main);
}
body,
#wrapper {
    background-color: var(--klm-bg-base);
}

h1, .h1, h2, .h2, .h3, h3, h4, .h4, h5, .h5, .h6, h6 {
    color: var(--klm-text-light);
    text-transform: uppercase;
}

/* Base Letter Spacing for Mobile (Relaxed to prevent word breaks) */
h1, h2, h3, h4, h5, h6, .title-large {
    letter-spacing: 1px;
}
.btn-small, .entry-meta {
    letter-spacing: 1px;
}
.navbar .nav .menu-item .nav-link,
.navbar .nav .menu-item .dropdown-item {
    text-transform: uppercase;
}

/* Cinematic Letter Spacing for Desktop */
@media (min-width: 768px) {
    h1, h2 { letter-spacing: 2px; }
    h3 { letter-spacing: 3px; }
    h4, h5 { letter-spacing: 3px !important; }
    h6 { letter-spacing: 4px; }
    .theme-slider-content .title-large { letter-spacing: 5px; }
    .page-header-title h1 { letter-spacing: 3px; }
    .theme-section-module .theme-section-subtitle { letter-spacing: 2px; }
    .filter-tabs .nav-item .nav-link { letter-spacing: 3px; }
    .youtube-click a { letter-spacing: 2px; }
}

/*Theme Slider*/
@media (min-width: 992px) {
    .theme-main-slider .item .theme-slider-content {
        top: 55%;
    }
}

/*wp-block-calendar*/
.wp-block-archives-dropdown, .wp-block-calendar, .wp-block-media-text {
    margin-bottom: 1.563rem;
}
.wp-block-archives-dropdown select {
    width: auto;
}
.wp-block-calendar table {
    margin-bottom: 0.500em;
}
.wp-block-calendar table caption {
    padding-top: 0;
    padding-bottom: 0.75rem;
    color: var(--klm-text-light);
    text-align: left;
    caption-side: top;
    font-weight: 600;
}
.wp-block-calendar table.wp-calendar-table td, 
.wp-block-calendar table.wp-calendar-table th {
    text-align: center;
    border-color: var(--klm-border-color);
}
.wp-block-calendar .wp-calendar-nav-next a, 
.wp-block-calendar .wp-calendar-nav-prev a {
    box-shadow: none;
}
/*wp-block-group*/
.wp-block-group.has-background {
    margin-bottom: 1.563rem;
    padding: 1.875rem;
}
.wp-block-group.has-background .wp-block-group__inner-container p, 
.wp-block-media-text .wp-block-media-text__content p {
    color: var(--klm-text-light);
}
/*wp-block-cover*/
.wp-block-cover.has-background-dim.alignleft .wp-block-cover-text, 
.wp-block-cover.has-background-dim-20.alignfull .wp-block-cover-text, 
.wp-block-cover.has-background-dim.alignwide .wp-block-cover-text, 
.wp-block-cover.has-background-dim.aligncenter .wp-block-cover-text,
.wp-block-cover.has-background-dim-60.has-background-dim .wp-block-cover-text a   {
    color: var(--klm-text-light);
}
.wp-block-cover.has-pale-pink-background-color.has-background-dim.has-left-content.aligncenter .wp-block-cover-text {
    color: var(--klm-border-color);
}
/*wp-block-calendar*/
.wp-block-calendar table.wp-calendar-table th {
    color: var(--klm-text-light);
}
.wp-block-calendar table.wp-calendar-table td {
    color: var(--klm-text-main);
}
/*wp-block-button*/
.wp-block-button .wp-block-button__link {
    background: #32373c;
    border: 2px solid #32373c;
    box-shadow: none;
}
.wp-block-button .wp-block-button__link:hover, 
.wp-block-button .wp-block-button__link:focus {
    background: transparent;
    border: 2px solid #32373c;  
    color: var(--klm-text-light);
}
.wp-block-button.is-style-outline .wp-block-button__link {
    background: transparent;
    border: 2px solid #32373c;  
    color: var(--klm-text-light) !important;
}
.wp-block-button.is-style-outline .wp-block-button__link:hover, 
.wp-block-button.is-style-outline .wp-block-button__link:focus {
    background: #32373c;
    border: 2px solid #32373c;
    color: var(--klm-text-light);
}
/*wp-block-gallery*/
.wp-block-gallery.alignfull {
    margin: 0 0 1.563rem;
}
/*Page Image Alignments*/
body.page .entry-content p > img.wp-image-904.alignright {
    margin-top: 3rem;
}
/*Mark and Ins tag text colors*/
.sidebar .widget mark, 
.sidebar .widget ins, 
.footer-sidebar .widget mark, 
.footer-sidebar .widget ins {   
    color: #01012f;
}
/*wp-block-rss*/
ul.wp-block-rss { 
    list-style: disc;
}
ul.wp-block-rss li.wp-block-rss__item {
    margin-bottom: 1rem;
}
ul.wp-block-rss li.wp-block-rss__item:last-child {
    margin-bottom: 0;
}
/*wp-block-search*/
.wp-block-search .wp-block-search__button:hover, 
.wp-block-search .wp-block-search__button:focus {
    background: var(--klm-text-main);
    border: 1px solid var(--klm-text-main);
    color: #000;
}
/*wp-block-archives*/
ul.wp-block-archives li {
    padding-bottom: 0.625rem;
}
ul.wp-block-archives li:last-child {
    padding-bottom: 0;
}
/*wp-block-pullquote*/
.wp-block-pullquote p {
    line-height: 1.3;
}
/*Monsterwidget-textwidget*/
.textwidget .wp-caption {
    padding: 0;
}
.textwidget p > img {
    margin-bottom: 1rem;
    margin-top: 1rem;
}
/*wp-block-embed*/
@media (max-width: 992px) {
    .wp-block-embed {
        word-break: break-all;
    }
}
/*wp-calendar-nav widget*/
.wp-calendar-nav {
    margin-top: 0.500rem;
    font-weight: 600;
}
/*wp-block-latest-comments*/
.wp-block-latest-comments__comment-date {
    padding-top: 0.500rem;
    padding-bottom: 0.500rem;
}
/*Input Group Search z-index Issue Fixed in Sidebar*/
.input-group > .form-control:focus,
.input-group > .custom-select:focus,
.input-group > .custom-file:focus {
    z-index: 0;
}
/*wp-block-latest-comments left space removed*/
.wp-block-latest-comments {
    margin-left: 0;
    padding-left: 0rem;
}
/*Checkbox and radio button style issue in the customizer*/
.customize-pane-child li input[type=checkbox]:focus, 
.customize-pane-child li input[type=radio]:focus{
    display: none;
}
/*wp-block-calendar font-weight and text-underline */
.wp-block-calendar table th {
    font-weight: 600;
}
.wp-block-calendar .wp-calendar-nav-next a, 
.wp-block-calendar .wp-calendar-nav-prev a {
    box-shadow: 0 1px 0 0 currentColor !important;
}
.wp-block-calendar .wp-calendar-nav-next a:hover, 
.wp-block-calendar .wp-calendar-nav-prev a:hover {
    box-shadow: none !important;
}
.wp-block-calendar a {
    text-decoration: none !important;
    box-shadow: none !important;
}
blockquote:last-child { margin-bottom: 0; }

/*--------------------------------------------------
=>> Anchor Links Colors
--------------------------------------------------*/

a { color: var(--klm-text-light); }
a:hover, a:active { color: var(--klm-text-light); }

/*--------------------------------------------------
=>> Theme Core Buttons
--------------------------------------------------*/

.btn-default:hover, .btn-default:focus, 
.btn-default-dark:hover, .btn-default-dark:focus {
    background: var(--klm-text-light);
    color: #000 !important;
}

/*--------------------------------------------------
=>> OWL SLIDER - DOTS/PAGINATION
--------------------------------------------------*/

.divider-sm-left {
    max-width: 60px;
    margin-left: unset;
    margin-right: auto;
    margin-bottom: 1rem;
    background-color: transparent;
    border-radius: 3px;
}
.owl-theme .owl-dots .owl-dot span {
    border: 2px solid var(--klm-text-main);
}
.theme-main-slider .overlay {
    background-color: rgba(0, 0, 0, 0.3);
}

/*--------------------------------------------------
=>> Theme Info Area Two
--------------------------------------------------*/      

.theme-main-slider ~ .container.vrsn-two#theme-info-area {
    margin-top: 0 !important;
}
.container.vrsn-two#theme-info-area {
    background-color: var(--klm-bg-alt);
    max-width: 100%;
    padding-right: 0;
    padding-left: 0;
}
.container.vrsn-two#theme-info-area .theme-info-area span.info-details, 
.container.vrsn-two#theme-info-area .theme-info-area .theme-info-area-title, 
.container.vrsn-two#theme-info-area .theme-info-area .theme-info-area-title a {
    color: var(--klm-text-light);
}
.container.vrsn-two#theme-info-area .theme-info-area {
    border-radius: 0;
    padding-right: 15px;
    padding-left: 15px;
    margin: 0 auto;
    box-shadow: none;
    background-color: transparent;
    border: 1px solid transparent;
}
.container.vrsn-two#theme-info-area .theme-info-area .media {
    padding-right: 0;
    padding-left: 0;
}
@media (min-width: 768px) {
    .container.vrsn-two#theme-info-area .theme-info-area { max-width: 720px; }
}
@media (min-width: 992px) {
    .container.vrsn-two#theme-info-area .theme-info-area { max-width: 960px; }
}
@media (min-width: 1200px) {
    .container.vrsn-two#theme-info-area .theme-info-area { max-width: 1140px !important; }
}
@media (max-width: 768px) {
    .container.vrsn-two#theme-info-area .theme-info-area { padding-right: 0; padding-left: 0; }
}
.container.vrsn-two#theme-info-area .theme-info-area i.icon {
    background: var(--klm-text-light);
}
.container.vrsn-two#theme-info-area .theme-info-area .media:hover i.icon {
    background: #000 !important;
    color: var(--klm-text-light) !important;
}

/*--------------------------------------------------
=>> Theme Page Header Area & Breadcrumbs
--------------------------------------------------*/

.theme-page-header-area {
    padding: 12rem 0 7rem 0;
}
.page-breadcrumb > li a:hover,
.page-breadcrumb > li.active { 
    color: var(--klm-text-light); 
}
.theme-section-module .theme-section-subtitle { 
    color: var(--klm-text-main); 
}
.site-header {
    background: var(--klm-bg-alt);
}

/*--------------------------------------------------
=>> Theme Service Area
--------------------------------------------------*/

.theme-services {
    background-color: var(--klm-bg-base);
}
.theme-services .service-content {
    background-color: var(--klm-bg-alt);
    border: 1px solid var(--klm-border-color);
}
.theme-services .service-content-thumbnail i.fa { 
    color: var(--klm-text-light);
}
.theme-services .service-content:hover .service-content-thumbnail i.fa { 
    color: var(--klm-text-light); 
    border: 5px solid var(--klm-bg-alt);
}
.theme-services .service-title a {
    color: var(--klm-text-light);
}
.service-links a { 
    background: var(--klm-text-light);
    color: #01012f;
}
.theme-services .service-content:hover .service-links a, 
.theme-services .service-content:focus .service-links a { 
    color: var(--klm-text-light);
}

/*--------------------------------------------------
=>> Theme Project Area
--------------------------------------------------*/

.theme-block.theme-project {    
    background-color: var(--klm-bg-alt) !important;
}
.theme-project .theme-project-content { 
    background-color: var(--klm-bg-base); 
    border: 1px solid var(--klm-border-color) !important;
}
.theme-project .theme-project-content .content-area:before {
    border-color: transparent transparent var(--klm-bg-base) transparent;
}
.theme-project .theme-project-content .theme-project-title, 
.theme-project .theme-project-content .theme-project-title a { 
    color: var(--klm-text-light); 
}
.theme-project .theme-project-content:hover .theme-project-title, 
.theme-project .theme-project-content:hover .theme-project-title a, 
.theme-project .theme-project-content:focus .theme-project-title a, 
.theme-project .theme-project-content:hover p {
    color: var(--klm-text-light);
}

/*--------------------------------------------------
=>> Theme Testimonial Area
--------------------------------------------------*/

.theme-testimonial .overlay {
    background-color: rgba(0, 0, 0, .6);
    position: absolute; top: 0; bottom: 0; left: 0; right: 0;
    height: 100%; width: 100%;
}
.theme-testimonial-block.vrsn-two { 
    background-color: transparent;
    position: relative;    
    font-size: unset;
    transition: all 0.5s;
    text-align: left;
    padding: 0; margin: 0 0 3.125rem;
    border: none !important;
}
.theme-testimonial-block.vrsn-two:hover { 
    background-color: transparent;
    border: none !important;
    box-shadow: none;
    transform: translateY(0);
}
.theme-testimonial-block.vrsn-two::after {
    display: none;
}
.testimonial-content.vrsn-two { 
    position: relative;
    margin: 0 0 1.25rem;
    padding: 3rem 1.25rem 1.150rem;
    background-color: var(--klm-bg-base);
    border: none;
    transition: all 0.5s;
    border-radius: 3px;
}
.testimonial-content.vrsn-two:hover { 
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
}
.testimonial-content.vrsn-two::before {
    position: absolute; left: 20px; right: 0; top: 15px;
    content: "\f10d";
    display: inline-block; font-family: "FontAwesome";
    font-size: 1.5rem; line-height: 1.2;
}
.theme-testimonial-block.vrsn-two .thumbnail { margin: 0 1.25rem 0 0; width: 5rem; height: 5rem; }
.theme-testimonial-block.vrsn-two .thumbnail img { margin: 0.125rem; }
.theme-testimonial-block.vrsn-two .name, 
.theme-testimonial-block.vrsn-two .name a,
.theme-testimonial-block.vrsn-two .position { color: var(--klm-text-light); }
.theme-testimonial.vrsn-two .owl-theme .owl-dots .owl-dot.active span { border: 2px solid var(--klm-text-light); }
.theme-testimonial-block { 
    background-color: rgba(0,0,0,0.6);
    border: 1px solid var(--klm-border-color);
}
.theme-testimonial-block .name { color: var(--klm-text-light); }
.theme-testimonial-block .position { color: var(--klm-text-main); }

/*--------------------------------------------------
=>> Contact Page Area and CF7
--------------------------------------------------*/

.wpcf7-form input[type="text"], .wpcf7-form input[type="email"], .wpcf7-form input[type="url"],
.wpcf7-form input[type="password"], .wpcf7-form input[type="search"], .wpcf7-form input[type="number"],
.wpcf7-form input[type="tel"], .wpcf7-form input[type="range"], .wpcf7-form input[type="date"],
.wpcf7-form input[type="month"], .wpcf7-form input[type="week"], .wpcf7-form input[type="time"],
.wpcf7-form input[type="datetime"], .wpcf7-form input[type="datetime-local"], .wpcf7-form input[type="color"],
.wpcf7-form textarea {
    background-color: rgba(0,0,0,.2) !important;
    border: 1px solid var(--klm-border-color);
    color: var(--klm-text-main);
}
label { color: var(--klm-text-main); }
.wpcf7-form input[type="submit"]:hover, .wpcf7-form input[type="submit"]:focus {
    background: var(--klm-text-light); color: #000;
}

/*--------------------------------------------------
=>> Theme Blog Area & Gutenberg Blocks
--------------------------------------------------*/

.theme-blog.list-view-news .post { background-color: transparent; border: none; }
.theme-blog.list-view-news .post:hover { box-shadow: none; }
.theme-blog.list-view-news .post-thumbnail { width: 13.625rem; } 
.theme-blog.list-view-news .post .entry-header { margin: 0 0 0.625rem; }
.theme-blog.list-view-news .post .entry-header::before { display: none; }
.theme-blog.list-view-news .post .entry-title { font-size: 1.5rem; }
.theme-blog.list-view-news .post-content { padding: 0 0.625rem 0 1.875rem; }

@media (min-width: 1200px) { .theme-blog.list-view-news .container-full .post .post-thumbnail { width: 20rem; } }
@media (min-width: 992px) and (max-width: 1200px) { .theme-blog.list-view-news .post-thumbnail { width: 14.625rem; } }
@media (max-width: 500px) { 
    .theme-blog.list-view-news .post { display: block; align-items: normal; }
    .theme-blog.list-view-news .post-thumbnail { width: 100%; margin: 0 0 1.25rem; }
    .theme-blog.list-view-news .post-content { padding: 0; }
}

.theme-block.theme-blog.theme-bg-grey { background-color: var(--klm-bg-alt) !important; }
.theme-blog .post {
    background-color: var(--klm-bg-base);
    border: 1px solid var(--klm-border-color);
}
.theme-blog .post .entry-header::before { background-color: var(--klm-border-light); }
.entry-meta .author a { color: var(--klm-text-main); }
.more-link { background: transparent; color: var(--klm-text-main) !important; }

blockquote {
    background-color: var(--klm-bg-alt);
    color: var(--klm-text-main);
}
blockquote cite, blockquote cite a, .entry-content blockquote cite a { color: var(--klm-text-main); }
th { background: var(--klm-bg-alt); color: var(--klm-text-light); }
table, th, td { border: 1px solid var(--klm-border-color); }
thead th { border-bottom: 2px solid var(--klm-border-color); }
.entry-meta .sticky-post { background: var(--klm-bg-base); border: 1px solid var(--klm-border-light); }
.entry-content a:hover, .entry-content a:focus, .logged-in-as a:hover, .logged-in-as a:focus { color: var(--klm-text-main); }
.entry-content ins { color: #000; }
pre { background: var(--klm-bg-alt); border: 1px solid var(--klm-border-color); color: var(--klm-text-main); }
hr { background-color: var(--klm-border-color); }
.theme-related-posts { background-color: var(--klm-bg-base); border: 1px solid var(--klm-border-color); }
.theme-comment-title h4 { border-bottom: 1px solid var(--klm-border-color); }
.theme-comment-form, .theme-comment-section { background-color: var(--klm-bg-base); border: 1px solid var(--klm-border-color); }
.comment-detail { border-bottom: 1px solid var(--klm-border-color); }
.comment-detail p > a:hover, .comment-detail p > a:focus { box-shadow: none; }
.comment-date a:hover, .comment-date a:focus, .comment-detail p > a:hover, .comment-detail p > a:focus { color: var(--klm-text-main); }
.reply a { background-color: transparent; color: var(--klm-text-light); }
.entry-content .wp-block-latest-comments__comment-meta a { color: var(--klm-text-main); }
.wp-block-latest-comments__comment-date { color: var(--klm-text-dim); }
.wp-block-latest-posts__post-date { color: var(--klm-text-main); }

.form-control, input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="number"], input[type="tel"], input[type="range"], input[type="date"], input[type="month"], input[type="week"], input[type="time"], input[type="datetime"], input[type="datetime-local"], input[type="color"], textarea, select {
    background-color: rgba(0,0,0,.2) !important;
    border: 1px solid var(--klm-border-color) !important;
    color: var(--klm-text-main) !important;
}
button:hover, button:focus, input[type="button"]:hover, input[type="button"]:focus, input[type="submit"]:hover, input[type="submit"]:focus, select option {
    background: var(--klm-text-light); color: #000;
}
.sidebar .widget { border: 1px solid var(--klm-border-color); background-color: var(--klm-bg-base); color: var(--klm-text-main); }
.sidebar .widget .widget-title, .sidebar .widget .wp-block-heading { background-color: var(--klm-bg-alt); }
.widget_archive li, .widget_categories li, .widget_links li, .widget_meta li, .widget_nav_menu li, .widget_pages li, .widget_recent_comments li, .widget_recent_entries li { border-bottom: 1px solid var(--klm-border-color); }
.widget td a:hover, .widget td a:focus, td a:hover, td a:focus { color: var(--klm-text-main); }
.widget .tagcloud a { background-color: var(--klm-bg-base); border: 1px solid var(--klm-border-color); color: var(--klm-text-main) !important; }
::-webkit-input-placeholder { color: var(--klm-text-main) !important; }
:-moz-placeholder { color: var(--klm-text-main) !important; }
::-moz-placeholder { color: var(--klm-text-main) !important; }
:-ms-input-placeholder { color: var(--klm-text-main) !important; }
.widget button[type="submit"]:hover, .widget button[type="submit"]:focus, .btn-success:hover, .btn-success:focus { color: #000 !important; background-color: var(--klm-text-light) !important; border-color: var(--klm-text-light) !important; }
.calendar_wrap caption { background-color: var(--klm-bg-alt); color: var(--klm-text-light); }
.calendar_wrap table#wp-calendar thead th { border-bottom: 2px solid var(--klm-border-color); }
.widget_rss ul li { border-bottom: 1px solid var(--klm-border-color); }
blockquote:before { color: rgba(255, 255, 255, 0.08); }
.wp-block-table.is-style-stripes tbody tr:nth-child(odd) { background-color: var(--klm-bg-alt); }
.wp-block-table.is-style-stripes { border-bottom: 1px solid var(--klm-border-color); }

/*Text Widget*/
.textwidget a:hover, .textwidget a:focus, .textwidget ul li a:hover, .textwidget ul li a:focus { color: var(--klm-text-main) !important; }
.footer-sidebar .textwidget > address > a { color: var(--klm-text-light) !important; }
.footer-sidebar .textwidget > address > a:hover, .footer-sidebar .textwidget > address > a:focus { color: var(--klm-text-light) !important; }

/*--------------------------------------------------
=>> Site Footer Area & Site Info
--------------------------------------------------*/

.site-footer { background-color: var(--klm-bg-dark); }
.site-info { background-color: var(--klm-bg-black); color: var(--klm-text-main); padding-left: 0.938rem; padding-right: 0.938rem; }
.site-info a { color: var(--klm-text-main); }

/*--------------------------------------------------
=>> Sidebar Widget Style Css According to WordPress 5.8
--------------------------------------------------*/

.sidebar .widget .wp-block-search .wp-block-search__label { background-color: var(--klm-bg-alt); }
.sidebar .widget .wp-block-group .wp-block-tag-cloud a { background-color: var(--klm-bg-base); border: 1px solid var(--klm-border-color); color: var(--klm-text-main) !important; }
.sidebar .widget .wp-block-group .wp-block-tag-cloud a:hover, .sidebar .widget .wp-block-group .wp-block-tag-cloud a:focus { color: var(--klm-text-light) !important; }
.sidebar .widget .wp-block-group .wpcf7-form, .sidebar .widget .wp-block-group .wp-block-embed, .sidebar .widget .wp-block-search .wp-block-search__inside-wrapper, .sidebar .widget .wp-block-group .wp-block-calendar, .sidebar .widget .wp-block-group .wp-block-tag-cloud, .sidebar .widget .wp-block-group .wp-block-latest-comments, .sidebar .widget .wp-block-group .wp-block-loginout, .sidebar .widget .wp-block-group .wp-block-table, .sidebar .widget .wp-block-group .wp-block-buttons, .sidebar .widget .wp-block-group .wp-block-file, .sidebar .widget .wp-block-group .wp-block-image, .sidebar .widget .wp-block-group .wp-block-columns, .sidebar .widget .wp-block-group .wp-block-pullquote, .sidebar .widget .wp-block-group .wp-block-details { padding: 1.563rem 1.000rem 1.563rem; }
.sidebar .widget .wp-block-group .wp-block-quote, .sidebar .widget .wp-block-group .wp-block-verse, .sidebar .widget .wp-block-group .wp-block-media-text, .sidebar .widget .wp-block-group .wp-block-separator, .sidebar .widget .wp-block-group .wp-block-cover, .sidebar .widget .wp-block-group .wp-block-preformatted, .sidebar .widget .wp-block-group .is-nowrap, .sidebar .widget .wp-block-group .is-vertical { margin: 1.563rem 1.000rem 1.563rem; }
.sidebar .widget .wp-block-group .wp-block-cover { width: 90%; }
.sidebar .widget .wp-block-search { margin-bottom: 0; }
.sidebar .widget .wp-block-group .wp-block-calendar table caption { background-color: var(--klm-bg-alt); color: var(--klm-text-light); }
.sidebar .widget .wp-block-group .wp-block-calendar table th, .sidebar .widget .wp-block-group .wp-block-calendar table td { border: 1px solid var(--klm-border-color); }
.sidebar .widget .wp-block-group .wp-block-calendar table th { background: var(--klm-bg-alt); color: var(--klm-text-light); }
.sidebar .widget .wp-block-group .wp-block-calendar, .sidebar .widget .wp-block-group .wp-block-calendar table, .sidebar .widget .wp-block-group ul, .sidebar .widget .wp-block-group ol, .sidebar .widget .wp-block-search__button-outside { margin-bottom: 0; }
.sidebar .widget .wp-block-search .wp-block-search__label { line-height: normal; }
.sidebar .widget .wp-block-group ul li, .sidebar .widget .wp-block-group ol li { padding-left: 0px !important; padding-top: 0.625rem; padding-bottom: 0.625rem; border-bottom: 1px solid var(--klm-border-color); position: relative; margin-bottom: 0; }
.sidebar .widget .wp-block-group ul li:last-child, .sidebar .widget .wp-block-group ol li:last-child { padding-bottom: 0px; border-bottom: none; }
.sidebar .widget .wp-block-group .wp-block-latest-posts__list.wp-block-latest-posts li a { font-weight: 600; }
.sidebar .widget .wp-block-group .wp-block-latest-comments .wp-block-latest-comments__comment { padding-top: 0.8rem; padding-bottom: 0.8rem; }
.sidebar .widget .wp-block-group .wp-block-latest-comments .wp-block-latest-comments__comment article { margin-bottom: 0rem; }
.sidebar .widget .wp-block-group ul li:first-child, .sidebar .widget .wp-block-group ol li:first-child, .sidebar .widget .wp-block-group .wp-block-latest-comments .wp-block-latest-comments__comment:first-child { padding-top: 0; }
.sidebar .widget .wp-block-group .wp-block-latest-comments .wp-block-latest-comments__comment:last-child { padding-bottom: 0; }
.sidebar .widget .wp-block-group .wp-block-rss .wp-block-rss__item-title > a { font-weight: 600; }
.sidebar .widget .wp-block-group .wp-block-pullquote { margin-bottom: 0; }
.sidebar .widget .wp-block-group .wp-block-pullquote blockquote { margin-top: 0; margin-bottom: 0; }
.sidebar .widget .wp-block-group .wp-block-pullquote p { padding-bottom: 0; }
.sidebar .widget .wp-block-group .wp-block-table { padding-bottom: 0; }
.sidebar .widget.widget_block .wp-block-group p { padding: 0.78125rem 1.000rem 0.78125rem; }
.sidebar .widget.widget_block .wp-block-group ul { margin-left: 1rem; }
.sidebar .widget .wp-block-group ol.wp-block-latest-comments .wp-block-latest-comments__comment-excerpt p { padding: 0; }
.sidebar .widget.widget_block .wp-block-group .wp-block-quote p { padding: 0; }
.theme-blog .post .entry-content .wp-block-file .wp-block-file__button { color: var(--klm-text-light); box-shadow: none; }
.theme-blog .post .entry-content ol.wp-block-latest-comments .wp-block-latest-comments__comment { border-bottom: 1px solid var(--klm-border-color); }
.theme-blog .post .entry-content ol.wp-block-latest-comments .wp-block-latest-comments__comment:last-child { border-bottom: none; }
.entry-content a:hover, .entry-content a:focus { box-shadow: 0 1px 0 0 transparent; }
.theme-blog .post .entry-content ol.wp-block-latest-comments .wp-block-latest-comments__comment article { margin-bottom: 1rem; }
.sidebar .widget .wp-block-group .is-nowrap p, .sidebar .widget .wp-block-group .is-vertical p { padding: 0; }
.sidebar .widget.widget_block .wp-block-group ul.wp-block-latest-posts__list { margin-left: 0; }
.wp-block-button a:not([href]):not([tabindex]) { color: var(--klm-text-light); }
.wp-block-button a:not([href]):not([tabindex]):hover { color: var(--klm-text-light); background: #32373C; }
.sidebar .widget .wp-block-group .wp-block-image figcaption { margin-bottom: 0; }
.theme-blog .post .mejs-controls a.mejs-horizontal-volume-slider { color: transparent; }
.theme-blog .post .entry-content ul:last-child { margin-bottom: 0; }
.theme-blog .post .entry-content ol.wp-block-latest-comments { padding-left: 2rem; }
.theme-blog .post .entry-content ul.wp-block-archives, .theme-blog .post .entry-content ul.wp-block-categories-list { margin-left: 1.125rem; list-style: disc; padding-left: 1.5rem; }
.theme-blog .post .entry-content ul.wp-block-rss { padding-left: 1.5rem; }
.theme-blog .post .entry-content .wp-block-pullquote { padding: 0; }
.sidebar .widget .wp-block-pullquote cite, .sidebar .widget .wp-block-quote cite, .sidebar .widget .wp-block-quote p { z-index: 1; position: relative; }
.theme-blog .post .entry-content ul li, .theme-blog .post .entry-content ol li { margin-bottom: 10px; }
.theme-blog .post .entry-content ul li:last-child, .theme-blog .post .entry-content ol li:last-child { margin-bottom: 0; }
.comment-form .form-submit { padding-bottom: 0; }
.sidebar .widget .wp-block-group ul.wp-block-archives-list, .sidebar .widget .wp-block-group ul.wp-block-categories-list { margin-left: 0; }
.sidebar .widget .wp-block-group .wp-block-latest-comments__comment-meta { font-weight: 600; line-height: 1.5; }
.theme-blog .post .entry-content ul.wp-block-post-template li.wp-block-post { border: none; margin-bottom: 1.5rem; }
.theme-blog .post .entry-content ul.wp-block-post-template li.wp-block-post:hover { box-shadow: none; }
.theme-blog .post .entry-content ul.wp-block-post-template { margin-left: 0; }
.theme-blog .post .entry-content .wp-block-comment-content p { margin-top: 1.5rem; margin-bottom: 1.5rem; }
.theme-blog .post .entry-content ul.wp-block-post-template li.wp-block-post .wp-block-post-date { padding-bottom: 1.2rem; }
.theme-blog .post .wp-block-query-pagination { margin-bottom: 1.5rem; }
.logged-in-color { background-color: var(--klm-bg-base); border: 1px solid var(--klm-border-color); }
.theme-blog .post .entry-content .wp-block-social-links { margin-left: 0; list-style: none; }
.theme-blog .post .entry-content .wp-block-social-links .wp-social-link:last-child { margin-bottom: 10px; }
.theme-blog .post .entry-content .wp-block-social-links .wp-social-link a { box-shadow: none; }
.theme-blog .post .entry-content .wp-block-social-links .wp-social-link a svg path { fill: var(--klm-text-light); }
.sidebar .widget .wp-block-group .wp-block-audio { padding: 1.563rem 1.000rem 1.563rem; }

.wp-block-table td, .wp-block-table th, .sidebar .widget .wp-block-group .wp-block-table td, .sidebar .widget .wp-block-group .wp-block-table th { border: 1px solid var(--klm-border-color); }
.wp-block-calendar table.wp-calendar-table td, .wp-block-calendar table.wp-calendar-table th { border-color: var(--klm-border-color); }
.wp-block-calendar table.wp-calendar-table th { color: var(--klm-text-light); }
.navigation.pagination .nav-links .page-numbers, .navigation.pagination .nav-links a, .page-links a, .post-nav-links a { border: 1px solid var(--klm-border-color); background-color: var(--klm-bg-base); color: var(--klm-text-light); }
.theme-b-top { border-top: 1px solid var(--klm-border-color) !important; }
.wp-block-latest-posts li .wp-block-latest-posts__post-date { padding-top: 0.525rem; }
.theme-blog .post .wp-block-latest-posts li a, .theme-blog .post .entry-content .wp-block-list li a { font-weight: 600; }
.theme-blog .post .entry-content ul.wp-block-archives { font-weight: 600; }
.sidebar .widget .wp-block-accordion-heading {padding: 1rem 0rem 1rem 1rem;}

/*------------------------------------------------------------
=>> Footer Sidebar Widget Style Css According to WordPress 5.8
------------------------------------------------------------*/

.footer-sidebar .widget .wp-block-group .wp-block-tag-cloud a { background-color: var(--klm-bg-base); border: 1px solid var(--klm-border-color); color: var(--klm-text-main) !important; }
.footer-sidebar .widget .wp-block-group .wp-block-tag-cloud a:hover, .footer-sidebar .widget .wp-block-group .wp-block-tag-cloud a:focus { color: var(--klm-text-light) !important; }
.footer-sidebar .widget .wp-block-group .wp-block-rss .wp-block-rss__item-title > a { font-weight: 600; }
.footer-sidebar .widget .wp-block-group .wp-block-pullquote p { padding-bottom: 0; color: var(--klm-text-light); }
.footer-sidebar .widget .wp-block-group .wp-block-pullquote a, .footer-sidebar .widget .wp-block-group .wp-block-pullquote cite { color: var(--klm-text-light); }
.footer-sidebar .widget .wp-block-group .wp-block-calendar table caption { text-align: center; color: var(--klm-text-light); }
.footer-sidebar .widget .wp-block-group .wp-block-calendar table tbody { color: var(--klm-text-main); }
.footer-sidebar .widget .wp-block-group .wp-block-pullquote { padding: 0; }
.footer-sidebar .widget .wp-block-pullquote cite, .footer-sidebar .widget .wp-block-quote cite, .footer-sidebar .widget .wp-block-quote p { z-index: 1; position: relative; }
.footer-sidebar .widget .wp-block-group .wp-block-categories-list li { padding-bottom: 0.625rem; }
@media (max-width: 500px) { .footer-sidebar { padding: 4rem 0 0.875rem; } }
.footer-sidebar .widget .wp-block-group .wp-block-latest-comments article { margin-bottom: 0; }
.footer-sidebar .widget .wp-block-accordion-heading .wp-block-accordion-heading__toggle:hover, .footer-sidebar .widget .wp-block-accordion-heading .wp-block-accordion-heading__toggle:focus { background: transparent; color: var(--klm-text-light); }


/* ==================================================
   KLM CUSTOM HEADER, MENU & PHONE STYLES
   ================================================== */

/* Push the menu to the right without affecting height */
@media (min-width: 992px) {
    .navbar-collapse {
        justify-content: flex-end; 
    }
    .navbar-nav, .navbar .nav {
        margin-left: auto !important; 
    }
}

/* Phone cleanly seated under the logo/tagline */
.klm-brand-phone {
    display: block;
    margin-top: -20px; 
    line-height: 1;
}
.klm-brand-phone a {
    color: var(--klm-accent-gold); 
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
    text-decoration: none;
    transition: color 0.3s ease;
}
.klm-brand-phone a:hover {
    color: var(--klm-text-light);
}

/* ==================================================
   KLM CUSTOM FOOTER STYLES
   ================================================== */

.klm-custom-footer {
    background: linear-gradient(180deg, #0a1f15 0%, var(--klm-bg-dark) 40%, #050505 100%);
    color: var(--klm-text-light);
    border-top: 1px solid rgba(212, 175, 55, 0.2);
}

.klm-footer-top {
    padding: 90px 0;
}

.klm-footer-contact {
    padding-right: 40px;
}

.klm-footer-contact h3 {
    font-family: 'Playfair Display', serif;
    font-size: 36px;
    color: var(--klm-text-light);
    margin-bottom: 15px;
    text-transform: none;
    letter-spacing: 1px;
}

.klm-footer-contact p {
    font-family: 'Montserrat', sans-serif;
    color: #cccccc;
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 40px;
}

.klm-contact-list {
    list-style: none;
    padding: 0;
    margin: 0 0 40px 0;
}

.klm-contact-list li {
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
}

.klm-contact-list li i {
    color: var(--klm-accent-gold);
    font-size: 22px;
    margin-right: 15px;
    width: 25px;
    text-align: center;
}

.klm-contact-list a {
    color: var(--klm-text-light);
    text-decoration: none;
    transition: color 0.3s ease;
}

.klm-contact-list a:hover {
    color: var(--klm-accent-gold);
}

.klm-social-icons a {
    display: inline-block;
    color: var(--klm-text-light);
    font-size: 32px;
    margin-right: 25px;
    transition: transform 0.3s ease, color 0.3s ease;
}

.klm-social-icons a:hover {
    color: var(--klm-accent-gold);
    transform: translateY(-4px);
}

.klm-form-wrapper {
    background: rgba(0, 0, 0, 0.35);
    padding: 40px;
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 20px 40px rgba(0,0,0,0.4);
}

.klm-site-info {
    background-color: #030303 !important;
    padding: 25px 0;
    border-top: 1px solid rgba(255,255,255,0.05);
}

.klm-site-info p {
    margin: 0;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    color: #888888;
}

@media (max-width: 991px) {
    .klm-footer-contact {
        padding-right: 15px;
        margin-bottom: 50px;
        text-align: center;
    }
    .klm-contact-list li {
        justify-content: center;
    }
}

/* ==================================================
   KLM MOBILE NAVBAR — LAYOUT FIX
   
   Problem 1: .d-flex wrapper had no flex-wrap, so when Bootstrap's
   .navbar-collapse becomes visible (display:block on toggle), it fights
   the brand and toggler for space in the same flex row — pushing the
   toggler to the center and collapsing the logo to multiple lines.

   Problem 2: .navbar-brand-wrapper had no flex constraint so the logo
   text wrapped to multiple lines on narrow screens.

   Fix: flex-wrap:wrap on the row so brand+toggler always occupy row 1
   and the expanded menu wraps to its own full-width row 2.
   ================================================== */

@media (max-width: 991px) {

    /* Row 1: brand (left) + toggler (right)
       Row 2: expanded menu (full width, own line) */
    .navbar-header-wrap .d-flex.w-100 {
        flex-wrap: wrap;
    }

    /* Brand wrapper: don't grow, don't shrink past logo content,
       leave 60px of breathing room for the toggler button */
    .navbar-brand-wrapper {
        flex: 0 1 auto;
        max-width: calc(100% - 60px);
    }

    /* Logo text must never break onto a new line */
    .navbar-brand-wrapper .navbar-brand,
    .navbar-brand-wrapper .site-logo-area {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    /* Toggler: never shrink, sit at the far right of row 1 */
    .navbar-header-wrap .navbar-toggler {
        flex-shrink: 0;
    }

    /* Expanded menu: takes the full width of row 2, drops cleanly
       below the brand/toggler row like a vertical drawer */
    .navbar-header-wrap .navbar-collapse.show,
    .navbar-header-wrap .navbar-collapse.collapsing {
        flex: 0 0 100%;
        width: 100%;
        border-top: 1px solid rgba(255, 255, 255, 0.08);
        padding-top: 8px;
        margin-top: 8px;
    }
}

/* ==================================================
   KLM HEADER: Frosted Glass & Stacking Fix
   ================================================== */
.navbar-header-wrap {
    /* 1. Fix the layer overlap */
    z-index: 9999 !important; 
    
    /* 2. Apply the frosted glass blur */
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important; 
    
    /* 3. Initial faint dark tint for the absolute top */
    background-color: rgba(15, 15, 15, 0.3) !important; 
    
    /* Smooth transition for any native state changes */
    transition: background-color 0.1s ease;
}