/*
Theme Name:   Cafe Vicryn
Theme URI:    https://elementor.com/hello-theme/
Description:  Child theme of Hello Elementor.
Author:       Elementor Team
Author URI:   https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Template:     hello-elementor
Version:      1.0.0
Text Domain:  hello-elementor-child
*/

/*---- BREAK POINTS ----*/
/*-- Widescreen --*/
/* @media (min-width: 2400px) {} */
/*-- Desktop --*/
/* @media (min-width:1367px) and (max-width: 2399px) {} */
/*-- Laptop --*/
/* @media (min-width:1201px) and (max-width: 1366px) {} */
/*-- Tablet Landscape --*/
/* @media (min-width:1025px) and (max-width: 1200px) {} */
/*-- Tablet Potrait --*/
/* @media (min-width:881px) and (max-width: 1024px) {} */
/*-- Mobile Landscape --*/
/* @media (min-width:768px) and (max-width: 880px) {} */
/*-- Mobile Potrait --*/
/* @media screen and (max-width:767px) {} */


/*---- COLOUR DEFINITIONS ----*/
/* Primary: Main brand color for prominent elements like headings and icons, establishing the site's core visual identity. */
/* Secondary: Supporting color for sub-elements such as list items, subheadings, animated headings, and price table backgrounds. */
/* Text: Standard color for body paragraphs and menu items, ensuring readable content across the site. */
/* Accent: Highlight color for interactive or attention-grabbing items like links, button backgrounds, tabs, accordions, and badges. */

/*---- FONTS ----*/
/* (100/Thin/Hairline | 200/Extra Light/Ultra Light | 300/Light | 400/Normal/Regular | 500/Medium | 600/Semi Bold/Demi Bold | 700/Bold | 800/Extra Bold/Ultra Bold | 900/Black/Heavy | 950/Extra Black/Ultra Black | 1000/Extra Black/Ultra Black/Super/Fat/Poster) */
/* ------------------------ */
/* Quickpen | 400 */
/* Revelstoke | 400 */
/* Bely Display | 400 */
/* ------------------------ */
/* Primary - 400 */
/* Secondary - */
/* Text - */
/* Accent - */

/* Transform Default */
/* Transform Capitalize */
/* Transform Uppercase */

/* Body - 18 | 400 | U | 1.278 - Revelstoke */
/* Menu -  */
/* Button -  18 | 400 | U | 1 | -0.02 - Revelstoke (Button Text) */

/* H1 - 160 | 400 | 0.75 | -0.02 - Quickpen (Banner Heading) */
/* H2 - 64 | 400 | U | 0.875 | -0.02 - Bely Display (Home Page Section Heading) */
/* H3 - 40 | 400 | U | 0.9 | -0.02 - Bely Display (Inner Pages Section Heading) */
/* H4 -  () */
/* H5 -  () */
/* H6 -  () */

/* 16 | 400 | U | 1.375 | -0.02 - Revelstoke (Body Text 2) */
/* 20 | 400 | 1.15 | 0.12 - Revelstoke (Home Banner SubTitle) */
/* 160 | 400 | 0.75 | -0.02 - Quickpen (Banner Heading, Section Heading BG Text) */



:root {
    --color-primary: #0E1D2D;
    --color-secondary: #F8EEE2;
    --color-text: #0E1D2D;
    --color-accent: #E0AC8F;

    --color-white: #ffffff;
    --color-black: #000000;

    --color-accent-two: #c0805e;
}
@media (min-width:768px) and (max-width: 1599px) {
  .e-con {
    --container-max-width: 90%;
  }
}
h1, h2, h3, h4, h5, h6 {
    /* font-weight: 700!important;*/ 
}
h1,
.elementor-widget-heading h1.elementor-heading-title {
    line-height: 1.1em;
}
a {
    text-decoration: none !important;
}
a:hover,
a:focus,
a:active,
a:visited,
a:focus-within,
a:focus-visible {
    outline: none!important;
}

.post-content a{
    color: #0e1d2d;
}

ul, ol {
    list-style-position: inside;
    margin-left: 0;
}
.lineheight-none {
    line-height: 0!important;
}
.bg-img-gray {
    filter: grayscale(100%);
}
.img-full>a {
    display: block;
    height: 100%;
}
.img-full>a>img {
    height: 100%;
    object-fit: cover;
    object-position: center center;
}
.container-left-right-padding {
    /* padding-left: calc((100vw - 1440px) / 2);
    padding-right: calc((100vw - 1440px) / 2); */
    padding-left: max(20px, calc((100vw - 1440px) / 2)); /* min padding 20px */
    padding-right: max(20px, calc((100vw - 1440px) / 2)); /* min padding 20px */
}
@media screen and (max-width:1024px) {
    .no-br-tab-pot br {
        display: none;
    }
}
@media screen and (max-width:768px) {
    .no-br-mob-pot br {
        display: none;
    }
}
.home-hero-banner-title span,
.inner-span-fw500 span {
    font-weight: 500;
}

.custom-icon {
	line-height: 0 !important;
}

/*---- Brand Slider Slide Continous - CSS - START ----*/
/*---- Change Slider Settings (For Carosel Slider - Go to Content > Additional Options > Autoplay Speed = 0 & Animation Speed = 3000) ----*/
/*---- Change Slider Settings (For Loop Carosel Slider - Go to Content > Settings > Scroll Speed (ms) = 0 & Transition Duration (ms) = 3000) ----*/
.brand-slider .swiper-wrapper {
  transition-timing-function: linear !important;
}
/*---- Brand Slider Slide Continous - CSS - END ----*/
.text-highlight span {
    color: var(--color-primary);
}
.your-class .elementor-widget-image a {
    display: block;
}
.event-list .elementor-loop-container .e-loop-item .e-con-full .elementor-widget-text-editor .elementor-widget-container {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.common-form .elementor-field {
    box-shadow: none !important;
    height: 58px;
    padding: 18px 28px !important;
}
.common-form .elementor-field.elementor-select-wrapper {
    padding: unset !important;
}
.common-form .elementor-field select {
    box-shadow: none !important;
    height: 58px;
    padding: 18px 28px !important;
}
.common-form textarea.elementor-field {
    height: 208px;
}
.common-form button[type="submit"] {
    margin-top: 56px;
}
/*---- Pagination CSS - START ----*/
.common-loop-grid nav.elementor-pagination .page-numbers {
    border: 1px solid var(--color-text);
    border-radius: 6px;
    padding: 11px 5px;
    display: inline-block;
    min-width: 48px;
    margin-bottom: 10px;
}
.common-loop-grid nav.elementor-pagination .page-numbers:hover,
.common-loop-grid nav.elementor-pagination .page-numbers:focus,
.common-loop-grid nav.elementor-pagination .page-numbers:active, 
.common-loop-grid nav.elementor-pagination .page-numbers.current {
    border-color: var(--color-primary);
}
.common-loop-grid nav.elementor-pagination .page-numbers.prev, 
.common-loop-grid nav.elementor-pagination .page-numbers.next {
    border-color: transparent;
}
.common-loop-grid nav.elementor-pagination .page-numbers.prev:hover, 
.common-loop-grid nav.elementor-pagination .page-numbers.prev:focus, 
.common-loop-grid nav.elementor-pagination .page-numbers.prev:active, 
.common-loop-grid nav.elementor-pagination .page-numbers.next:hover,
.common-loop-grid nav.elementor-pagination .page-numbers.next:focus,
.common-loop-grid nav.elementor-pagination .page-numbers.next:active {
    border-color: transparent;
}

@media screen and (max-width: 767px) {
    .common-loop-grid nav.elementor-pagination .page-numbers {
        font-size: 12px;
        padding: 5px 3px;
        min-width: 33px;
    }
}
/*---- Pagination CSS - END ----*/
/*---- Footer CSS - START ----*/
/*---- Footer CSS - END ----*/


/*--- Global CSS ----*/

.custom-ul ul{
    padding-left: 0 !important;
}

.icon-boxs .elementor-icon-box-title{
    margin-top: 0 !important;
}

.top-border {
    position: relative;
}

.top-border::after {
    position: absolute;
    content: "";
    width: 1px;
    height: 100%;
    background: #0E1D2D;
    left: 15%;
    bottom: 75%;
    z-index: -1;
}

.top-border::before {
    position: absolute;
    content: "";
    width: 1px;
    height: 100%;
    background: #0E1D2D;
    right: 15%;
    bottom: 75%;
    left: auto;
    top: auto;
}

.no-margin-p p:last-child{
	margin-bottom: 0 !important;
}

.contact-form input, .contact-form textarea{
    padding-left: 0 !important;
}

.doubble-image .img-1{
    position: relative;
}

.doubble-image .img-2{
    position: relative;
}

.doubble-image .img-1::after {
    position: absolute;
    content: "";
    width: 1px;
    height: 100%;
    background: #0E1D2D;
    left: 50%;
    bottom: 75%;
    z-index: -1;
}

.doubble-image .img-2::after {
    position: absolute;
    content: "";
    width: 1px;
    height: 100%;
    background: #0E1D2D;
    left: 50%;
    bottom: -75%;
    top: auto;
    z-index: -1;
}

@media(max-width: 1200px){
    .doubble-image .img-2::after{
        bottom: -75%;
    }
}

@media(max-width: 900px){
    .doubble-image .img-2::after{
        bottom: 75%;
    }
}

.top-bottom-line{
    position: relative;
}

.top-bottom-line::after{
    position: absolute;
    content: "";
    width: 1px;
    height: 300px;
    background: #0E1D2D;
    left: 50%;
    bottom: 90%;
    z-index: -1;
}

.top-bottom-line::before{
    position: absolute;
    content: "";
    width: 1px;
    height: 300px;
    background: #0E1D2D;
    right: auto;
    top: auto;
    left: 50%;
    bottom: -40%;
    z-index: -1;
}

.top-bottom-line{
    position: relative;
}

.top-bottom-line::after{
    position: absolute;
    content: "";
    width: 1px;
    height: 100%;
    background: #0E1D2D;
    left: 50%;
    bottom: 90%;
    z-index: 0;
}

.top-bottom-line::before{
    position: absolute;
    content: "";
    width: 1px;
    height: 100%;
    background: #0E1D2D;
    right: auto;
    top: auto;
    left: 50%;
    bottom: -70%;
    z-index: 0;
}

.hide-top img{
	position: relative;
	z-index: 2;
}

.hide-btm img{
	position: relative;
	z-index: 2;
}

.top-line {
    position: relative;
}

.top-line::after{
    position: absolute;
    content: "";
    width: 1px;
    height: 600px;
    background: #0E1D2D;
    left: 20px;
    bottom: 90%;
    z-index: -1;
}

.top-line.small-line.middle-line::after{
    left: 50%;
    height: 200px;
    bottom: 95%;
}

.post-content img{
    width: 100%;
    height: 100%;
}

@media(max-width: 880px){
    .hide-btm:before{
        display: none;
    }
    
    .hide-top:after{
        display: none;
    }
}

/*---- Menu CSS - START ----*/
.main-menu nav>ul.elementor-nav-menu li a {
    transition: 0.5s ease;
    line-height: 1;
}
.main-menu nav>ul.elementor-nav-menu li a::before {
    content: "";
    background: var(--e-global-color-secondary);
    position: absolute;
    top: 50%;
    left: 0;
    width: 60px;
    height: 5px;
    opacity: 0;
    transform: translateY(-50%);
    transition: 0.5s ease;
}
.main-menu nav>ul.elementor-nav-menu>li.current_page_item>a::before,
.main-menu nav>ul.elementor-nav-menu>li.current_page_parent>a::before,
.main-menu nav>ul.elementor-nav-menu>li.current_page_parent>ul.sub-menu>li.current_page_item>a::before,
.main-menu nav>ul.elementor-nav-menu li a:hover::before,
.main-menu nav>ul.elementor-nav-menu li a:focus::before,
.main-menu nav>ul.elementor-nav-menu li a:active::before {
    opacity: 1!important;
}
.main-menu nav>ul.elementor-nav-menu>li.current_page_item>a,
.main-menu nav>ul.elementor-nav-menu>li.current_page_parent>a,
.main-menu nav>ul.elementor-nav-menu>li.current_page_parent>ul.sub-menu>li.current_page_item>a,
.main-menu nav>ul.elementor-nav-menu li a:hover,
.main-menu nav>ul.elementor-nav-menu li a:focus,
.main-menu nav>ul.elementor-nav-menu li a:active {
    padding-left: 80px!important;
}
.menu-copyright a {
    color: var(--color-text);
    font-size: unset!important;
    font-weight: 700!important;
}
.main-menu nav>ul.elementor-nav-menu li.menu-item-has-children ul.sub-menu {
    /* display: block; */
    padding-left: 60px;
}
.main-menu nav>ul.elementor-nav-menu li.menu-item-has-children ul.sub-menu li {
    border: none!important;
}
@media (min-width:768px) and (max-width:1366px) {
    .main-menu nav>ul.elementor-nav-menu li a {
        padding-top: 20px!important;
        padding-bottom: 20px!important;
    }
    .main-menu nav>ul.elementor-nav-menu li a::before {
        width: 40px;
        height: 4px;
    }
    .main-menu nav>ul.elementor-nav-menu li.current_page_item a,
    .main-menu nav>ul.elementor-nav-menu li a:hover,
    .main-menu nav>ul.elementor-nav-menu li a:focus,
    .main-menu nav>ul.elementor-nav-menu li a:active {
        padding-left: 50px!important;
    }	
	.main-menu nav>ul.elementor-nav-menu li.menu-item-has-children ul.sub-menu {
		padding-left: 40px;
	}
}
@media screen and (max-width: 767px) {
    .main-menu nav>ul.elementor-nav-menu li a::before {
        width: 30px;
        height: 3px;
    }
    .main-menu nav>ul.elementor-nav-menu li.current_page_item a,
    .main-menu nav>ul.elementor-nav-menu li a:hover,
    .main-menu nav>ul.elementor-nav-menu li a:focus,
    .main-menu nav>ul.elementor-nav-menu li a:active {
        padding-left: 40px!important;
    }	
	.main-menu nav>ul.elementor-nav-menu li.menu-item-has-children ul.sub-menu {
		padding-left: 30px;
	}
}