/*
Theme Name: Nova Photography Portfolio
Theme URI: https://www.novathemes.net/products/nova-photography-portfolio
Author: Nova Themes
Author URI: https://www.novathemes.net/
Description: Nova Photography Portfolio is a photography-focused theme designed for displaying image galleries, project collections, and visual content in a structured layout. The theme includes sections for featured photographs, portfolio categories, client information, and contact details. It supports responsive layouts that adjust across desktops, tablets, and mobile devices. Gallery and portfolio sections allow images to be organized with grid-based layouts for easier browsing. Basic customization settings include color adjustments, typography controls, header layouts, and widget-ready areas. The theme is compatible with common page builder plugins and includes support for navigation menus, social media links, and blog sections for sharing updates or project stories. It also provides options for banner images, homepage sliders, and footer customization. Clean code structure and optimized layouts help maintain image clarity and loading performance across devices. The theme can be used for presenting photography collections, event albums, studio information, and image-focused content while maintaining a simple and organized visual appearance.
Requires at least: 6.4
Requires PHP: 7.4
Tested up to: 7.0
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: nova-photography-portfolio
Tags: blog, portfolio, photography, full-site-editing, custom-colors, custom-menu, custom-logo, featured-images, threaded-comments, translation-ready, footer-widgets, template-editing, rtl-language-support, style-variations
*/


html {
	scroll-behavior: smooth;
}
a:hover {
	color: var(--wp--preset--color--primary);
}

/* Header Section */

.header-main ul li a:hover{
	color: var(--wp--preset--color--secondary) !important;
}
.main-header {
	position: relative;
}
.main-header .wp-block-search.wp-block-search__button-only .wp-block-search__button {
	padding: 0px !important;
	align-items: center;
}
.main-header .wp-block-search.wp-block-search__button-only .wp-block-search__button:focus {
  background-color: #fff !important;
  border: 1px solid #000 !important;
}
.main-header .wp-block-search.wp-block-search__button-only .wp-block-search__button:focus svg {
  color: #000 !important;
  border: unset !important;
}
.main-header .wp-block-navigation-item__content{
    position: relative;
    display: inline-block;
}
.main-header .wp-block-navigation-item__content:hover::after,
.main-header .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content::after,
.main-header .wp-block-navigation-item.current_page_item > .wp-block-navigation-item__content::after,
.main-header .wp-block-navigation-item.current-menu-ancestor > .wp-block-navigation-item__content::after{
    content: "";
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 50%;
    height: 2px;
    background: var(--wp--preset--color--secondary);
}
.main-header .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content,
.main-header .wp-block-navigation-item.current_page_item > .wp-block-navigation-item__content,
.main-header .wp-block-navigation-item.current-menu-ancestor > .wp-block-navigation-item__content{
    color: var(--wp--preset--color--secondary) !important;
}
.main-header .search-column .wp-block-search__inside-wrapper{
	justify-content: flex-end !important;
}
.main-header .wp-block-pages-list__item a {
	color: #fff;
	text-decoration: unset;
}

/* Banner Section */

.banner-main .image-box {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}
.banner-main .social-icon ul {
    gap: 90px;
    align-items: center;
    justify-content: center;
}
.banner-main .social-icon ul li{
	transform: rotate(270deg) !important;
}
.banner-main .image-box{
	position: relative;
	text-align: right;
}
.banner-main .image-box .center-image {
    text-align: right;
}
.banner-main .image-box .center-image img {
    position: relative;
    z-index: 3;
    bottom: 0px;
    height: 550px;
    width: 100%;
}
.banner-main .contact-box {
    position: relative;
    min-height: 560px;
    overflow: hidden;
}
.banner-main .contact-row {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-90deg);
    display: flex !important;
    flex-direction: row !important;
    align-items: center;
    gap: 30px;
    width: max-content;
}
.banner-main .contact-inner {
    padding: 0 !important;
    margin: 0 !important;
}
.banner-main .contact-inner a {
	text-decoration: none;
}
.banner-main .contact-inner-1,
.banner-main .contact-inner-2 {
    position: relative;
}
.banner-main .contact-inner-1 p,
.banner-main .contact-inner-2 p {
    position: relative;
    padding-left: 28px;
    margin: 0;
    display: flex;
    align-items: center;
}
.banner-main .contact-inner-1 p::before,
.banner-main .contact-inner-2 p::before {
    font-family: dashicons;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%) rotate(90deg);
    font-size: 18px;
    width: 20px;
    height: 20px;
    line-height: 20px;
    text-align: center;
	color: #fff;
}
.banner-main .contact-inner-1 p::before {
    content: "\f465";
}
.banner-main .contact-inner-2 p::before {
    content: "\f525";
}
.banner-content::after {
    left: -35px;
}
.banner-content::before {
    top: -35px !important;
    left: -3px;
}
.banner-content-main::before {
    content: "";
    position: absolute;
    top: -30px;
    left: 0px;
    width: 1px;
    height: 30px;
    background: var(--wp--preset--color--border-color);
}
.banner-content-main::after {
    content: "";
    position: absolute;
    top: 0px;
    left: -30px;
    width: 30px;
    height: 1px;
    background: var(--wp--preset--color--border-color);
}
.banner-btn a:hover {
    background-color: var(--wp--preset--color--contrast-four) !important;
    color: var(--wp--preset--color--base) !important;
}
.banner-btn-1 a:hover,
.banner-btn a {
    background-color: var(--wp--preset--color--base) !important;
    color: var(--wp--preset--color--black) !important;
}
.banner-btn a:focus {
	color: #fff !important;
}
.banner-btn-1 a:focus,
.banner-btn a:focus,
.banner-btn-1 a:focus-within,
.banner-btn a:focus-within,
.banner-btn-1 a:active
.banner-btn a:active {
	border: 1px solid var(--wp--preset--color--primary) !important;	
}
.banner-main .wp-block-social-link a {
	font-family: "Inter", sans-serif;
	font-weight: 400;
	font-size: 22px;
}
.banner-main .wp-block-social-link a:hover {
	color: var(--wp--preset--color--secondary) !important;
}

.slider-section,.banner-content,.banner-content-main{
	position: relative;
}
.slider-section::after,.banner-content::after {
    content: "";
    position: absolute;
    top: -4px;
    left: -3px;
    border-radius: 50%;
    width: 5px;
    height: 5px;
    background: var(--wp--preset--color--border-color);
}
.slider-section::before ,.banner-content::before{
    content: "";
    position: absolute;
    top: -4px;
    right: -3px;
    border-radius: 50%;
    width: 5px;
    height: 5px;
    background: var(--wp--preset--color--border-color);
}
.slider-section .owl-dots {
    display: flex !important;
    justify-content: center;
    align-items: center;
    gap: 60px;
    position: absolute;
    right: 23%;
    bottom: 27px;
}
.slider-section .owl-dot.active{
	position: relative;
}
.slider-column-center {
    position: relative;
}
.slider-column-center::before {
    content: "";
    position: absolute;
    bottom: 40px;
    right: 100px;
    border-radius: 50%;
    width: 5px;
    height: 5px;
    background: var(--wp--preset--color--border-color);
}	
.slider-column-center::after {
    content: "";
    position: absolute;
    bottom: 42px;
    right: 0px;
    width: 100px;
    height: 1px;
    background: var(--wp--preset--color--border-color);
}
.slider-section .owl-dot.active:after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: -40px;
    border-radius: 50%;
    width: 30px;
    height: 1px;
    background: var(--wp--preset--color--primary);
}
.slider-section .owl-dot.active:before {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: -40px;
    border-radius: 50%;
    width: 30px;
    height: 1px;
    background: var(--wp--preset--color--primary);
}
.slider-section .owl-dot span{
    background: transparent !important;
    color: var(--wp--preset--color--base) !important;
    font-family: var(--wp--preset--font-family--body) !important;
	font-weight: 600;
	font-size: 15px;
}
.slider-section .owl-nav {
    position: absolute;
    bottom: 20px;
    right: 10%;
    width: 9%;
    display: flex;
    pointer-events: none;
	gap: 20px;
}
.slider-section .owl-nav .owl-prev,
.slider-section .owl-nav .owl-next {
	background: #fff !important;
    color: #000 !important;	
}
.slider-section .owl-nav button {
    width: 40px;
    height: 40px;
    border: 2px solid #fff !important;
    border-radius: 50% !important;
	background: #fff !important;
    color: #000 !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    pointer-events: auto;
	background-color: #000 !important;
}
.slider-section .owl-nav button:hover{
    background: transparent !important;
    color: #fff !important;
}
.slider-section .owl-nav button span{
    font-size: 26px !important;
    line-height: 1;
}
.slider-section .owl-nav button span.dashicons{
    width: auto;
    height: auto;
    font-size: 24px;
}
.slider-section .owl-dot.active span{
	color: var(--wp--preset--color--primary) !important;
}

/* Team Section */

.team-section .team-box img,
.team-section .team-box figure{
	width: 100% !important;
	object-fit: cover;
}
.team-section .team-box figure {
	background: var(--wp--preset--color--primary);
}
.team-section .team-box figure img {
	opacity: 1;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.team-section .team-box figure:hover img {
	opacity: .6;
}
.team-section .counter-box {
    position: relative;
    width: 100%;
    height: auto;
    right: 0px;
    margin: 0 auto;
}
.team-section .head-img {
	height: 6px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.team-section .team-btn a:hover {
	background-color: var(--wp--preset--color--primary) !important;
}

/* Footer Section */

footer{
	margin-top: 0px !important;
}
.footer-section a {
	text-decoration: none;
}
.footer-section a:hover {
	color: var(--wp--preset--color--primary);
}

/* Scroll to Top */
.scroll-top-btn {
  display: none; 
  position: fixed;
  bottom: 20px;
  right: 20px;
  background: var(--wp--preset--color--primary);
  color: white;
  border: none;
  border-radius: 8px !important;
  cursor: pointer;
  z-index: 1000; 
  transition: opacity 0.3s;
}
.scroll-top-btn .wp-block-button__link.wp-element-button{
  border-radius: 8px !important;
  padding: 0!important;
  margin: 0 !important;
}
.scroll-top-btn .wp-block-button__link.wp-element-button:hover {
	background-color: var(--wp--preset--color--secondary) !important;
	border-color: var(--wp--preset--color--secondary) !important;
}
.scroll-top-btn .wp-block-button__link .dashicons{
	height: 40px;
	width: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
}

/*Media CSS*/

@media screen and  (min-width: 320px) and (max-width: 599px){
	header .wp-block-navigation .has-child .wp-block-navigation__submenu-container{
		align-items: flex-start !important;
	}
	header .wp-block-navigation__responsive-container.is-menu-open:where(:not(.disable-default-overlay)) .wp-block-navigation__responsive-container-content .wp-block-navigation-item{
		align-items: flex-start !important;
 
	}
	header .wp-block-navigation__responsive-container.is-menu-open:where(:not(.disable-default-overlay)) .wp-block-navigation__responsive-container-content .wp-block-navigation__container{
		display: flex;
		align-items: flex-start;
		align-content: flex-start;
		width: 100% !important;
	}
}
@media screen and  (min-width: 320px) and (max-width: 781px){
	.logo-column{
		text-align: center;
	}
	.banner-main .social-icon ul{
		display: block;
		text-align: center;
	}
	.banner-main .social-icon ul li {
		transform: none !important;
    }
    .image-box .center-image{
    	text-align: center;
    	width: 80%;
    	margin: 0 auto !important
    }
    .slider-column-center{
    	padding-top: 0px !important;
    }
    .image-box figure{
    	margin-top: 0px !important;
    }
	.banner-main {
	    padding-top: 40px !important;
	}
	.banner-main .image-box{
		min-height: 250px !important;	
	}
	.slider-column-center::after,.slider-column-center::before,.slider-section::after, .banner-content::after,.banner-content-main::after,.slider-section::before, .banner-content::before,.banner-content-main::before{
		display: none;
	}
	.search-column .wp-block-search__inside-wrapper {
	    justify-content: center !important;
	}
	.banner-main .contact-row {
	    position: relative;
	    top: 0px;
	    left: 0px;
	    transform: none;
	    display: flex !important;
	    flex-direction: column !important;
	    align-items: center;
	    gap: 0px;
	    width: 100%;
	    margin-bottom: 20px !important;
	}
	.banner-main .contact-box{
		min-height: auto;
	}
	.slider-section .owl-nav{
		display: none;
	}
	.slider-section .owl-dots {
	    right: 0px;
	    left: 0px;
	    margin: 0 auto;
	}
	.banner-btn-row{
		display: block !important;
		text-align: center;
	}
	.banner-btn-1{
		justify-content: center;
	}
	.banner-content-main{
		padding-right: 30px !important;
	}
	.slider-section,.banner-content{
		border:0px !important;
	}
	.why-choose-image img{
		width: 100% !important;
		height: 300px !important;
		object-fit: cover;
	}
	.why-choose-column{
		max-width: 90% !important;
	}
	.banner-main .image-box .center-image img {
	    position: relative;
	    z-index: 3;
	    bottom: 0px;
	    height: 300px;
	    width: 100%;
		object-fit: contain;
	}
	.team-section .counter-box {
	    position: relative;
	    bottom: 0px;
	    width: 100%;
	    margin-top: 25px;
	}
	.banner-content{
		text-align: center;
	}
	.banner-btn{
		justify-content: center !important;
	}
	.banner-content h2,.banner-content p{
		text-align: center;
	}
	.logo-column{
		box-shadow: none;
	}
	.main-header .search-column .wp-block-search__inside-wrapper {
		justify-content: center !important;
	}
} 
@media screen and  (min-width: 320px) and (max-width: 767px){ 
	.footer-section {
		text-align: center;
	}  
}
@media screen and  (min-width: 576px) and (max-width: 781px){
	.banner-main .image-box .center-image img {
        position: relative;
        z-index: 2;
        bottom: 0px;
        height: 340px;
        width: 100%;
    }
}
@media screen and  (min-width: 782px) and (max-width: 991px){
	.main-header .header-info .wp-block-columns {
		max-width: 90%;
	}
	.slider-section .owl-nav {
		gap: 5px;
	}
	.single-post .is-layout-constrained > .alignwide {
		display: grid;
		grid-template-columns: 50% 50%;
	}
}
@media screen and  (min-width: 768px) and (max-width: 781px){
	.single-post .wp-block-columns.are-vertically-aligned-center {
		display: grid;
		grid-template-columns: 50% 50%;
	}
}
@media screen and  (min-width: 768px) and (max-width: 991px){
	.footer-section .footer-cols {
		display: grid;
		grid-template-columns: auto auto;
	}
}
@media screen and  (min-width: 782px) and (max-width: 1024px){
	.banner-main .image-box .center-image img {
	    height: 330px;
	    width: 100%;
	}
	.why-choose-column{
		max-width: 90% !important;
	}
	.why-choose-image img{
		width: 100% !important;
		object-fit: cover;
		height: 300px !important;
	}
	.banner-main .image-box{
		min-height: 330px !important;
	}
	.team-section .counter-box {
		padding-top: 30px !important;
	    padding-bottom: 30px !important;
	}
	.team-section .counter-box {
	    position: relative;
	    bottom: 0px;
	    margin-top: 20px;
	    padding-left: 0px !important;
	    padding-right: 0px !important;
	}
	.banner-content-main {
		padding-right: 10px !important;
	}
	.banner-content h2{
		font-size: 23px !important;
	}
	.banner-main .wp-block-columns{
		gap:0px !important;
	}
	.slider-column-center::after {
	    width: 18px;
	}
	.slider-column-center::before {
	    right: 18px;
	}
	.slider-section .owl-nav button {
	    width: 30px;
	    height: 30px;
	}
	.slider-section .owl-nav {
	    bottom: 27px;
	    right: 5%;
	    width: 10%;
	}
	.slider-section .owl-dots {	 
		gap: 50px;
	}
}
@media screen and  (min-width: 601px) and (max-width: 991px){
	.team-section .why-choose-column {
		display: grid;
		grid-template-columns: 50% 50%;
	}
	.why-choose-image img  {
		object-fit: contain;
	  }
}
@media only screen and (max-width: 600px) {
      .why-choose-image img  {
		object-fit: contain;
	  }
}
@media screen and  (min-width: 1025px) and (max-width: 1350px){
	.slider-section .owl-nav button {
		width: 35px;
		height: 35px;
	}
	.slider-section .owl-nav {
		gap: 3px;
	}
}