/*
 Theme Name: Litho Child
 Theme URI: https://litho.themezaa.com/
 Description: Child theme for Litho theme
 Version: 1.2
 Author: ThemeZaa
 Author URI: https://www.themezaa.com/
 Tested up to: 5.8
 Requires PHP: 7.3
 Tags: one-column, two-columns, three-columns, left-sidebar, right-sidebar, grid-layout, custom-background, custom-colors, flexible-header, custom-menu, editor-style, featured-images, post-formats, sticky-post, theme-options, threaded-comments, translation-ready, blog, e-commerce
 License: Themeforest Split Licence
 License URI: https://themeforest.net/licenses/
 Template: litho
 Text Domain: litho-child
*/

/* Hamburger menu */

button.navbar-toggler {
	background: none !important;
	padding-right: 0 !important;
}

/* Prodotti */

.type-product.has-post-thumbnail.product-type-simple {
	.product_picture .elementor-widget-wrap {
		border-radius: 13px;
		img,
		div,
		a {
			border: none;
			width: 100%;
			height: 100%;
		}
	}
}

/* Stili forms */

.ns_form {
	accent-color: var(--e-global-color-secondary);
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 15px 30px;
	container-name: ns-form;
	container-type: inline-size;
	input[type='text'],
	input[type='email'],
	input[type='password'],
	input[type='url'],
	input[type='date'],
	input[type='number'],
	input[type='tel'],
	textarea,
	select {
		border-width: 0 0 2px 0;
		border-bottom: solid 2px #9b9b9b;
		border-radius: 0;
		padding-left: 0;
		background: none !important;
		background-color: none !important;
		font-size: 16px;
		padding-block: 8px !important;
		line-height: 18px;
		border-style: solid;
		border-color: transparent transparent #9b9b9b transparent;
		outline: none;
		margin-bottom: 15px !important;
		&.placeholder,
		&::placeholder {
			font-weight: 700;
			color: #707070;
			opacity: 1;
		}

		/* Focus state specifico per Safari */
		&:focus {
			border-bottom-color: var(--e-global-color-secondary);
			outline: none;
		}
	}
	textarea {
		max-height: 10lh;
		min-height: 3lh;
		line-height: 1em;
		resize: vertical;
	}
	label {
		font-size: 1rem;
		color: var(--e-global-color-primary);
		display: block;
		line-height: 1em;
		font-weight: 700;
		margin-bottom: -10px;
	}
	a {
		color: var(--e-global-color-secondary);
		font-size: 0.95rem !important;
		&.pl {
			padding-left: 0.5em;
		}
	}
	p {
		display: contents;
	}
	& > div {
		flex-grow: 1;
		flex-basis: 100%;
	}

	.wpcf7-list-item label {
		display: flex;
		align-items: flex-start;
	}
	.acceptance,
	.wpcf7-list-item-label {
		font-size: 0.95rem;
		color: gray;
		line-height: 1.2em;
		display: inline-block;
		gap: 10px;
		margin-bottom: 0.5lh;
		p:nth-child(2) {
			display: block;
			margin-top: 0.25lh;
		}
	}

	.control.control-radio {
		display: inline-flex;
		align-items: center;
		margin-right: 15px;
	}
	input[type='checkbox'],
	input[type='radio'] {
		/* Dimensioni fisse per consistenza cross-browser */
		width: 16px;
		height: 16px;

		/* Stile base per Safari */
		border: 2px solid #9b9b9b;
		background-color: white;

		&:checked {
			background-color: var(--e-global-color-secondary);
			border-color: var(--e-global-color-secondary);
		}
	}

	input[type='radio'] {
		border-radius: 50%;

		&:checked::before {
			content: '';
			display: block;
			width: 8px;
			height: 8px;
			border-radius: 50%;
			background-color: white;
			margin: 2px;
		}
	}

	input[type='checkbox']:checked::before {
		content: '✓';
		color: white;
		font-size: 12px;
		text-align: center;
		line-height: 12px;
		display: block;
	}
	.wpcf7-submit,
	input[type='submit'] {
		padding-block: 12px !important;
		margin-top: 1lh !important;
		font-size: 1rem !important;
		font-weight: 700 !important;
	}
}


.elementor-skin-carousel .swiper-slide a{
	width:100%;
	height:100%;
}

.elementor-popup-modal .dialog-lightbox-widget-content{
    border-radius:20px;
}

body header.sticky .navbar-brand .alt-logo{
	display:none !important;
}

body header .navbar-brand .mobile-logo, body header .navbar-brand .default-logo{
	transition: none  !important;
}
body header.sticky .navbar-brand .mobile-logo {
	visibility:visible !important;
	opacity:1 !important;
}

div.wpcf7-response-output, .wpcf7 form .wpcf7-response-output{
	display:none;
} 

@container ns-form (min-width: 480px) {
	.ns_form > .half-col {
		flex-basis: calc(50% - 30px);
	}
}

form:has(.ns_form) {
	h1,
	h2,
	h3,
	h4,
	h5 {
		margin-bottom: 0.25lh !important;
	}
	.ns_form + :is(h1, h2, h3, h4, h5, h6) {
		margin-top: 0.5lh !important;
	}
}

.wpcf7 {
	.screen-reader-response:has(ul:not(:empty)) {
		color: #503a00;
		background-color: #ffb900;
		border-color: #ffb900;
		border-width: 1px;
		padding: 9px 1em 6px;
		font-size: 14px;
		text-align: center;
		margin: 2rem 0;
		clear: both;
		p {
			margin: 0;
		}
		ul {
			display: none;
		}
	}
}

.wpcf7-spinner,
.grecaptcha-badge {
	position: absolute;
	opacity: 0;
	display: none !important;
}
