/*
Theme Name:     Neve Child by VIVTEC
Theme URI:      https://themeisle.com/themes/neve/
Template: neve
Author:         VIVTEC
Author URI:     https://vivtec.co.za
Description:    Neve is a super fast, easily customizable, multi-purpose theme. It’s perfect for blogs, small business, startups, agencies, firms, e-commerce shops (WooCommerce storefront) as well as personal portfolio sites and most types of projects. A fully AMP optimized and responsive theme, Neve will load in mere seconds and adapt perfectly on any viewing device. While it is lightweight and has a minimalist design, the theme is highly extendable, it has a highly SEO optimized code, resulting in top rankings in Google search results. Neve works perfectly with Gutenberg and the most popular page builders (Elementor, Brizy, Beaver Builder, Visual Composer, SiteOrigin, Divi). Neve is also WooCommerce ready, responsive, RTL & translation ready. Look no further. Neve is the perfect theme for you!
Version:        4.0.2
License:        GNU General Public License v2 or later
License URI:    http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:    neve
Tags: blog, custom-logo, e-commerce, rtl-language-support, post-formats, grid-layout, one-column, two-columns, custom-background, custom-colors, custom-header, custom-menu, featured-image-header, featured-images, flexible-header, full-width-template, sticky-post, theme-options, threaded-comments, translation-ready, accessibility-ready, wide-blocks, block-styles
*/

:root {
	--primary-color: #b01d87;
	--primary-dark: color-mix(in srgb, var(--primary-color) 50%, #000000);
	--primary-darker: color-mix(in srgb, var(--primary-color) 70%, #000000);
	--primary-light: color-mix(in srgb, var(--primary-color) 50%, #ffffff);
	--primary-foo: color-mix(in srgb, var(--primary-color) 40%, #000000);
	--fs-100: clamp(0.8rem, 0.165vw + 0.759rem, 0.891rem);
	--fs-200: clamp(1rem, 0.341vw + 0.915rem, 1.188rem);
	--fs-300: clamp(1.25rem, 0.605vw + 1.099rem, 1.583rem);
	--fs-400: clamp(1.563rem, 0.996vw + 1.314rem, 2.11rem);
	--fs-500: clamp(1.953rem, 1.563vw + 1.562rem, 2.813rem);
	--fs-600: clamp(2.441rem, 2.378vw + 1.847rem, 3.749rem);
	--fs-700: clamp(3.052rem, 3.538vw + 2.167rem, 4.998rem);
}

html {
	scroll-padding-top: 100px;
	scroll-behavior: smooth;
}

body {
	font: normal normal normal var(--fs-200)/1.1 var(--bodyfontfamily), system-ui;

	h1, h2, h3, h4, h5, h6 {
		font: inherit;
		text-transform: inherit;
	}

	h1 {font-size: var(--fs-600);}
	h2 {font-size: var(--fs-400);}
	h3 {font-size: var(--fs-400);}
	h4 {font-size: var(--fs-300);}
	h5 {font-size: var(--fs-200);}
	h6 {font-size: var(--fs-100);}
	p {font-size: var(--fs-200);}
	
	.fs-700 {font-size: var(--fs-700);}
	.fs-600 {font-size: var(--fs-600);}
	.fs-500 {font-size: var(--fs-500);}
	.fs-400 {font-size: var(--fs-400);}
	.fs-300 {font-size: var(--fs-300);}
	.fs-200 {font-size: var(--fs-200);}
	.fs-100 {font-size: var(--fs-100);}
	
	:is(h1, h2, h3, h4, h5, h6, p, ul, li):not(:has(+ :is(h1, h2, h3, h4, h5, h6, p))) {
		margin-bottom: 0 !important;
	}
	
	header {
			position: sticky;
			inset: 0 auto auto auto;
			z-index: 3;
			width: 100%;
		}
	
	&.admin-bar {
		
		header {
			position: sticky;
			inset: 32px auto auto auto;
			z-index: 100;
			width: 100%;
			
			@media (width <= 768px) {
				
				& {
					inset: -1px auto auto auto;
				}
				
			}
			
		}
		
	}
	
}

.header {

	&::before {
		content: '';
		position: absolute;
		inset: auto -10px 0 -10px;
		height: 20px;
		translate: 0% 80%;
		background: url(https://couponhub.webvipin.com/wp-content/uploads/2025/04/extender.svg) no-repeat center center / 100% 100%;
	}
	
	[data-section="header_button"] {
		isolation: isolate;
		
		.component-wrap {
			margin: 0;
			padding: 2px !important;
			
			&::before {
				content: '';
				position: absolute;
				display: block;
				inset: 0 0 0 0;
				border-radius: 99px;
				background: linear-gradient(90deg, var(--nv-primary-accent), var(--nv-secondary-accent));
				z-index: -1;
			}
			
			.button {
				background: var(--e-global-color-nvsitebg);
			}
			
		}

	}
	
}

.nav-clickaway-overlay {
	z-index: 0;
}

.custom {
	
	.eael-creative-button {
		border-radius: 20px 0px 20px 0px !important;
	}
	
	.elementor-widget-container:has(.eael-infobox) {
		transition: 0.2s ease-in-out;
		
		&:hover {
			padding-top: 40px;
			padding-bottom: 20px;
			scale: 1.025;
		}

		.infobox-icon {
			position: relative;
			width: 100%;
			display: flex;
			justify-content: center;
		}

		.infobox-icon img {
			position: absolute;
			width: 75px !important;
			aspect-ratio: 1 / 1;
			object-fit: contain;
			opacity: 0;
			scale: 0.8 0.5;
			translate: 0% -50%;
			transition: 0.2 ease-in-out;
		}

		&:hover {

			.infobox-icon img {
				opacity: 1;
				translate: 0% -120%;
				scale: 1 1;
			}

		}

	}
	
}


.custom {
	
	.wpcf7-form {
		display: grid;
		grid-template-columns: repeat(auto-fill, minmax(min(100%, 400px), 1fr));
		gap: 20px;
		
		& > p {
			margin: 0 !important;
		}
		
		label > span {
			display: block;
			margin-top: 10px;
		}
		
		&::before, &::after, .wpcf7-response-output {
			grid-column: 1 / -1;
			margin: 0 !important;
		}
		
		input[type="submit"] {
			margin: 0 !important;
			font-weight: bold !important;
			border-radius: 20px 0 20px 0 !important;
			color: #000 !important;
			background: linear-gradient(270deg, var(--nv-primary-accent), var(--nv-secondary-accent));
		}
		
	}
	
}


.gradient {
	
	.elementor-button {
		--border-radius: 25px;
		background-color: unset;
		position: relative;
		isolation: isolate;
		overflow: clip;
		
		&::before {
			content: '';
			position: absolute;
			inset: 0 0 0 0;
			z-index: -2;
			background: linear-gradient(270deg, var(--nv-primary-accent), var(--nv-secondary-accent));
			border-radius: var(--border-radius);
		}
		
		&::after {
			content: '';
			position: absolute;
			inset: 2px 2px 2px 2px;
			z-index: -1;
			background: var(--e-global-color-nvsitebg);
			border-radius: var(--border-radius);
		}
		
	}
	
	.grad, .title {
		background-image: linear-gradient(0deg, var(--nv-primary-accent), var(--nv-secondary-accent));
		-webkit-background-clip: text;
		-webkit-text-fill-color: transparent;
	}
	
	.eael-accordion-list {
		--border-radius: 25px;
		position: relative;
		border-radius: var(--border-radius) !important;
		overflow: hidden;
		padding: 2px;
		
		&:last-of-type {
			margin-bottom: 0 !important;
		}
		
		&::before {
			content: '';
			position: absolute;
			inset: 0 0 0 0;
			z-index: -2;
			background: linear-gradient(270deg, var(--nv-primary-accent), var(--nv-secondary-accent));
			border-radius: var(--border-radius);
		}
		
		&::after {
			content: '';
			position: absolute;
			inset: 2px 2px 2px 2px;
			z-index: -1;
			background: var(--e-global-color-nvsitebg);
			border-radius: var(--border-radius);
		}
		
		.eael-accordion-header {
			border: unset !important;
			border-radius: 25px;
			transition: border-radius 0.3s 0.1s linear;
			background: transparent;
			
			&.active {
				border-radius: 25px 25px 0 0;
				transition: border-radius 0.05s 0.0s linear;			
			}
			
		}
		
		.eael-accordion-content {
			border-radius: 0 0 25px 25px;
			padding: 0 15px 15px 15px;
			
			p {font-size: var(--fs-100)}
			
		}
		
	}
	
	.e-n-tabs {
		--border-radius: 25px;
		
		button {
			overflow: clip;
			isolation: isolate;
			
			&::before {
				content: '';
				position: absolute;
				inset: 0 0 0 0;
				background: linear-gradient(270deg, var(--nv-primary-accent), var(--nv-secondary-accent));
				z-index: -1;
				border-radius: var(--border-radius);
			}
			
			&::after {
				content: '';
				position: absolute;
				inset: 2px;
				background: var(--e-global-color-nvsitebg);
				z-index: -1;
				border-radius: var(--border-radius);
			}
			
		}
		
	}
	
}

.lines {
	overflow: clip;
	
	.left {
		position: relative;
		color: var(--nv-secondary-accent);
		
		&::before {
			content: '';
			position: absolute;
			inset: 55% 2px auto auto;
			width: 50vw;
			height: 2px;
			background: var(--nv-secondary-accent);
		}
		
	}
	
	.right {
		position: relative;
		color: var(--nv-primary-accent);
		
		&::before {
			content: '';
			position: absolute;
			inset: 55% auto auto 2px;
			width: 50vw;
			height: 2px;
			background: var(--nv-primary-accent);
		}
		
	}
	
}

#cmplz-document, #policies {
	max-width: unset;
	
	h1 {font-size: var(--fs-400);}
	h2 {font-size: var(--fs-300);}
	h3 {font-size: var(--fs-200);}
	h4 {font-size: var(--fs-200);}
	h5 {font-size: var(--fs-100);}
	h6 {font-size: var(--fs-100);}
	p {font-size: var(--fs-100);}
	li {font-size: var(--fs-100);}
	
	.cookies-per-purpose * {
		background: var(--e-global-color-nvsitebg) !important;
	}
	
}

footer {
	position: relative;
	
	&::before {
		content: '';
		position: absolute;
		inset: 0 -10px auto -10px;
		height: 40px;
		translate: 0% -80%;
		background: url(https://couponhub.webvipin.com/wp-content/uploads/2025/04/extenderf.svg) no-repeat center center / 100% 100%;
		rotate: z 180deg;
	}
	
}