/*
Theme Name: Pwe
Theme URI: http://shtheme.com/demosd/pwe
Author: Shtheme
Author URI: https://themeforest.net/user/shtheme
Description: PWE – Wedding and Event Planner theme is perfect if you like a minimal, clean and modern design. This theme is ideal for wedding planner, event planner, wedding organizer, organization wedding events, wedding coordinator, wedding designer, planner office, wedding photographer and those who need an easy, attractive and effective way to share their work with clients.
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: two-columns, three-columns, left-sidebar, right-sidebar, custom-background, custom-header, custom-menu, editor-style, featured-images, flexible-header, full-width-template, microformats, post-formats, rtl-language-support, sticky-post, theme-options, translation-ready
Text Domain: pwe

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/

/* ========TABLE OF CONTENTS==========
00. Body, links, hgroup, paragraphs, general styles
01. Fixed header & Navigation
02. Section Intro (Home)
03. Section About
04. Section Resume
05. Section Portfolio
06. Section Blog
07. Section Contact
08. Footer
09. Loader
10. Responsive design

/*--------------------------------------------------
    00. Body, links, hgroup, paragraphs, general styles
---------------------------------------------------*/

.js .post-section .animate-box {
    opacity: 1;
}

.comment-form-cookies-consent {
    display: none;
}

.comments-area {
  padding-bottom: 0px;
}

.comment-respond h3.comment-reply-title {
    position: relative;
    font-size: 24px;
    font-family: 'Nunito Sans', sans-serif;
    line-height: 1.5em;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-top: 30px;
}

p.logged-in-as {
    padding-left: 15px;
    margin-top: -5px;
    font-size: 18px;
    letter-spacing: 0.3px;
}

form#commentform > p.form-submit {
    padding-left: 15px;
}


form#commentform > p.form-submit input.btn-contact {
    cursor: pointer;
}

ul.pwe-pagination-wrap li span {
    background: transparent;
    display: inline-block;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    color: #000;
    font-weight: 400;
    font-family: 'Nunito Sans', sans-serif;
    font-size: 12px;
    background-color: #000;
    border: 1px solid #000;
    color: #fff;
}

ul.wp-tag-cloud {
    padding-left: 0px;
}

ul.wp-tag-cloud li {
    display: inline-block;
    margin: 0 5px 5px 0px;
}

ul.wp-tag-cloud li a {
    display: inline-block;
    background: #fff;
    border: 1px solid #ececec;
    padding: 9px 12px;
    border-radius: 0px;
    -moz-border-radius: 0px;
    -webkit-border-radius: 0px;
    text-decoration: none;
    font-size: 16px!important;
    font-style: italic;
    color: #666;
    transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -webkit-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
}

ul.wp-tag-cloud li a:hover {
    background: #000;
    color: #fff;
    border-color: #000;
}

.widget_categories ul {
    padding-left: 0px;
}

.widget_categories ul li {
    padding: 5px 0;
    border-bottom: 1px solid #f6f6f6;
    line-height: 32px;
}

.widget_categories ul li a {
    color: #666;
    text-decoration: none;
    display: block;
    transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -webkit-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
}

h3.widget-title {
    color: #000;
    text-decoration: none;
    font-family: 'Nunito Sans', sans-serif;
    font-weight: 500;
    font-size: 20px;
    margin-bottom: 20px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.pwe-section .gallery {
    display: none;
}

/* ===== Kenburns slideshow styles ===== */
.hero-section {
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  min-height: 100vh;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.hero-section::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -5;
  background: #fff;
}
.hero-inner {
  position: relative;
  z-index: 15;
}
.hero-inner .hero-title {
    font-size: 24px;
    line-height: 1.1em;
    color: #000;
    font-family: 'Nunito Sans', sans-serif;
    font-weight: 500;
    margin-bottom: 20px;
    letter-spacing: 1px;
    text-transform: uppercase;
}
.hero-inner .hero-toptitle {
    font-family: 'TuesdayNight';
    color: #ADADAD;
    font-size: 32px;
  margin-bottom: 0;
    top: 2px;
    text-align: center;
}
.hero-inner .hero-subtitle {
    color: #666;
    font-size: 17px;
  margin: 0 0 20px;
}
#home .vegas-overlay {}
#home .hero-inner .row {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.hero-inner .text-inner {
    min-height: 700px;
    position: relative;
}
.hero-inner .desc {
    position: absolute;
    bottom: 0px;
    left: 0;
    background: #fff;
    padding: 30px;
}
@media only screen and (max-width: 768px) {
  .hero-inner .hero-title {
    font-size: 24px;
  }
  .hero-inner .hero-subtitle {
    font-size: 14px;
  }
  .hero-inner .text-inner {
    min-height: 500px;
  }
  .logged-in .pwe-nav-toggle {
    margin-top: 50px;
  }

  .logged-in #pwe-aside {
    padding-top: 60px;
  }
}

.map-section form div.row > div > .form-group > span, 
#contact form div.row > div > .form-group > span {
  display: block;
}

.map-section form div.row > div > p,
#contact form div.row > div > p {
  display: none;
}

.map-section iframe {
    width: 100%;
    height: 430px;
}

.search-custom h4 {
  line-height: 32px;
}

.search-custom form {
  width: 70%;
}

.error-section {
  padding-bottom: 80px;
}

.error-section h1 {
    font-size: 62px;
}

.error-section h2 {
    font-size: 40px;
}

.error-section div.text {
    font-size: 27px;
    line-height: 49px;
}

.error-section a.theme-btn {
    font-family: 'Nunito Sans', sans-serif;
    background: #000;
    border: 1px solid #000;
    color: #fff;
    padding: 15px 30px;
    margin: 0;
    font-weight: 400;
    position: relative;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 2px;
    border-radius: 0px;
    margin-top: 45px;
}

.error-section a.theme-btn:hover {
    background-color: transparent;
    color: #000;
}

/* video background */
.overlay-video {
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: 0px;
    right: 0px;
    overflow: hidden;
   
}
.overlay-video video {
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    object-fit: cover;
}
.overlay-color {
    background-color: rgba(0,0,0,.1);
}
.overlay-color {
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: 0px;
    right: 0px;
}

.services .item .con h5, .services .item .con h5 a{
	margin-top: 10px;
}
.testimonials .section-head span{
	top: -12px;
}
.testimonials .owl-theme .owl-nav{
	bottom:0px;
}
#pwe-hero .flexslider .slider-text > .slider-text-inner h1, #pwe-hero .flexslider .slider-text > .slider-text-inner h1{
	margin-top: 10px;
}
.blog-section.blog .item .content >p{
	margin-bottom:2px!important;
}
.pwe-heading{
	margin-top: 20px;
}
.blog-entry .desc {
    padding: 30px;
}
.map-section input[type="password"], .map-section input[type="email"], .map-section input[type="text"], .map-section input[type="file"], .map-section textarea, .map-section #message, .map-section #search{
	margin-bottom: 20px;
}

.pwe-about-heading {
    position: relative;
    font-size: 18px;
    font-family: 'Nunito Sans', sans-serif;
    line-height: 1.5em;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.bg-pink {
    background-color: rgba(227,191,182,0.1);
}

.banner-img-width {
  height: 100%!important;
}

#wp-admin-bar-elementor_edit_page .elementor-edit-link-title {
  width: auto!important;
}

/* ===================================
   HORIZONTAL NAVBAR STYLES
   Add these styles to your existing style.css
   =================================== */

/* Override sidebar styles when using horizontal navbar */
body.horizontal-nav #pwe-aside {
    display: none;
}

body.horizontal-nav #pwe-main {
    margin-left: 0;
    width: 100%;
}

/* Main horizontal navbar container */
#pwe-header.pwe-navbar-horizontal {
    background-color: #fff;
    box-shadow: 0 2px 10px rgba(0,0,0,0.05);
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    transition: all 0.3s ease;
}

/* Admin bar adjustment */
.admin-bar #pwe-header.pwe-navbar-horizontal {
    top: 32px;
}

@media screen and (max-width: 782px) {
    .admin-bar #pwe-header.pwe-navbar-horizontal {
        top: 46px;
    }
}

/* Navbar wrapper */
.navbar-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px 40px;
    max-width: 1400px;
    margin: 0 auto;
}

/* Logo styles */
.navbar-brand #pwe-logo {
    margin: 0;
    font-family: 'Nunito Sans', sans-serif;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.navbar-brand #pwe-logo a {
    display: flex;
    align-items: center;
    text-decoration: none;
    color: #000;
}

.navbar-brand #pwe-logo img {
    height: 45px;
    margin-right: 15px;
    display: block;
}

.navbar-brand #pwe-logo span {
    font-size: 12px;
    color: #666;
    font-weight: 400;
    letter-spacing: 0.5px;
    display: block;
    margin-top: 5px;
}

/* Navigation menu styles */
#pwe-main-menu {
    flex: 1;
    display: flex;
    justify-content: center;
}

#pwe-main-menu .nav-list {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    align-items: center;
}

#pwe-main-menu .nav-list > li {
    margin: 0 25px;
    position: relative;
}

#pwe-main-menu .nav-list > li > a {
    text-decoration: none;
    color: #000;
    font-weight: 400;
    font-family: 'Nunito Sans', sans-serif;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
    padding: 10px 0;
    display: block;
}

#pwe-main-menu .nav-list > li > a:hover,
#pwe-main-menu .nav-list > li.current-menu-item > a {
    color: #E3BFB6; /* Using the pink color from your theme */
}

/* Dropdown menu styles */
#pwe-main-menu .nav-list li ul.sub-menu {
    position: absolute;
    top: 100%;
    left: 0;
    background: #fff;
    min-width: 200px;
    box-shadow: 0 5px 20px rgba(0,0,0,0.1);
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all 0.3s ease;
    list-style: none;
    padding: 10px 0;
    margin: 0;
    z-index: 1001;
}

#pwe-main-menu .nav-list li:hover > ul.sub-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

#pwe-main-menu .nav-list li ul.sub-menu li {
    margin: 0;
}

#pwe-main-menu .nav-list li ul.sub-menu li a {
    padding: 10px 20px;
    color: #666;
    font-size: 12px;
    display: block;
    transition: all 0.3s ease;
}

#pwe-main-menu .nav-list li ul.sub-menu li a:hover {
    color: #000;
    background-color: #f8f8f8;
}

/* Navbar extras (contact info and social) */
.navbar-extras {
    display: flex;
    align-items: center;
    gap: 30px;
}

.contact-info {
    display: flex;
    flex-direction: column;
    font-size: 12px;
    font-family: 'Nunito Sans', sans-serif;
    color: #666;
    line-height: 1.4;
}

.social-links {
    display: flex;
    gap: 12px;
}

.social-links a {
    color: #666;
    font-size: 14px;
    transition: color 0.3s ease;
}

.social-links a:hover {
    color: #E3BFB6;
}

/* Mobile toggle button */
.navbar-toggle {
    display: none;
    background: none;
    border: none;
    cursor: pointer;
    padding: 5px;
    position: relative;
    z-index: 1002;
}

.navbar-toggle-icon {
    display: block;
    width: 25px;
    height: 2px;
    background-color: #000;
    margin: 6px 0;
    transition: 0.3s;
}

/* Main content adjustment */
body.horizontal-nav #pwe-main {
    padding-top: 80px; /* Adjust based on navbar height */
}

.admin-bar.horizontal-nav #pwe-main {
    padding-top: 112px; /* 80px + 32px admin bar */
}

/* Responsive styles */
@media (max-width: 991px) {
    .navbar-wrapper {
        padding: 15px 20px;
    }
    
    #pwe-main-menu .nav-list > li {
        margin: 0 15px;
    }
    
    .navbar-extras {
        gap: 20px;
    }
    
    .contact-info {
        display: none;
    }
}

@media (max-width: 768px) {
    .navbar-toggle {
        display: block;
    }
    
    #pwe-main-menu {
        position: fixed;
        top: 0;
        left: -100%;
        width: 300px;
        height: 100vh;
        background-color: #fff;
        box-shadow: 2px 0 10px rgba(0,0,0,0.1);
        transition: left 0.3s ease;
        z-index: 1003;
        overflow-y: auto;
        padding-top: 80px;
    }
    
    #pwe-main-menu.active {
        left: 0;
    }
    
    #pwe-main-menu .nav-list {
        flex-direction: column;
        padding: 20px;
        align-items: flex-start;
    }
    
    #pwe-main-menu .nav-list > li {
        margin: 0;
        width: 100%;
        border-bottom: 1px solid #f0f0f0;
    }
    
    #pwe-main-menu .nav-list > li > a {
        padding: 15px 0;
    }
    
    #pwe-main-menu .nav-list li ul.sub-menu {
        position: static;
        opacity: 1;
        visibility: visible;
        transform: none;
        box-shadow: none;
        background: #f8f8f8;
        margin-top: 0;
    }
    
    .navbar-extras {
        display: none;
    }
    
    /* Mobile menu overlay */
    .mobile-menu-overlay {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0,0,0,0.5);
        z-index: 1002;
        opacity: 0;
        visibility: hidden;
        transition: all 0.3s ease;
    }
    
    .mobile-menu-overlay.active {
        opacity: 1;
        visibility: visible;
    }
    
    .admin-bar #pwe-main-menu {
        padding-top: 126px; /* 80px navbar + 46px admin bar on mobile */
    }
}

@media (max-width: 480px) {
    .navbar-brand #pwe-logo {
        font-size: 18px;
    }
    
    .navbar-brand #pwe-logo img {
        height: 35px;
    }
    
    body.horizontal-nav #pwe-main,
    .admin-bar.horizontal-nav #pwe-main {
        padding-top: 70px;
    }
}

/* Animation for mobile menu toggle */
.navbar-toggle.active .navbar-toggle-icon:nth-child(1) {
    transform: rotate(-45deg) translate(-5px, 6px);
}

.navbar-toggle.active .navbar-toggle-icon:nth-child(2) {
    opacity: 0;
}

.navbar-toggle.active .navbar-toggle-icon:nth-child(3) {
    transform: rotate(45deg) translate(-5px, -6px);
}

/* Smooth scroll behavior */
html {
    scroll-behavior: smooth;
}

/* Adjust hero section for horizontal nav */
body.horizontal-nav .hero-section {
    margin-top: -80px;
    padding-top: 80px;
}