/*
 * Webcam Nepal Elementor parts: base styles for the rebuilt widgets.
 * Author: Pravash Karki - pravashkarki.com
 */

/* Nav Menu: horizontal, 13px 20px links, a 3px underline that fades in. */
.elementor-nav-menu--layout-horizontal { display: flex; }
.elementor-nav-menu { position: relative; z-index: 2; display: flex; flex-wrap: wrap; margin: 0; padding: 0; list-style: none; line-height: normal; }
.elementor-nav-menu li { position: relative; display: flex; margin: 0; padding: 0; list-style: none; }
.elementor-nav-menu--main .elementor-item { position: relative; display: flex; align-items: center; flex-grow: 1; padding: 13px 20px; white-space: nowrap; transition: .4s; }
.e--pointer-underline .elementor-item:after { content: ""; position: absolute; bottom: 0; left: 0; z-index: 2; display: block; width: 100%; height: 3px; background-color: #3f444b; transition: .3s; transition-timing-function: cubic-bezier(.58, .3, .005, 1); }
.e--pointer-underline .elementor-item:not(:hover):not(:focus):not(.elementor-item-active):after { opacity: 0; }

/* Gallery: a grid of 3:2 images with the caption over each. */
.elementor-gallery__container { display: grid; grid-template-columns: repeat(var(--columns, 4), 1fr); gap: var(--gap, 10px); }
.elementor-gallery-item { position: relative; display: block; overflow: hidden; }
.elementor-gallery-item__image { padding-bottom: 66.6667%; background-size: cover; background-position: center; transition: transform 800ms; }
.elementor-gallery-item__overlay { position: absolute; inset: 0; transition: background-color 800ms; }
.elementor-gallery-item:hover .elementor-gallery-item__overlay,
.elementor-gallery-item:focus .elementor-gallery-item__overlay { background-color: rgba(0, 0, 0, .5); }
.elementor-gallery-item__content { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 20px; text-align: center; }
.elementor-gallery-item__title { width: 100%; color: #fff; font-weight: 700; }
