/*
Theme Name: Vytauto Vanduo
Theme URI: https://example.com
Author: Audrius
Description: Custom WordPress tema su Tailwind CSS (CDN fallback + build).
Version: 0.1.0
Text Domain: vytauto-vanduo
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/

/* Cart Page Styles */
.woocommerce-cart .site-main,
.woocommerce-cart #primary,
.woocommerce-cart .content-area {
	padding-top: 100px; /* Push down body container */
}

/* Product title in cart - black color, bold, no underline */
.woocommerce-cart .product-name a,
.woocommerce-cart .wc-block-components-product-name,
.woocommerce-cart .wc-block-components-product-name a,
.woocommerce-cart a.wc-block-components-product-name {
	color: #000 !important;
	font-weight: bold !important;
	text-decoration: none !important;
}

.woocommerce-cart .product-name a:hover,
.woocommerce-cart .wc-block-components-product-name:hover,
.woocommerce-cart .wc-block-components-product-name a:hover,
.woocommerce-cart a.wc-block-components-product-name:hover {
	color: #000 !important;
	font-weight: bold !important;
	text-decoration: none !important;
}

/* Checkout button - yellow gradient with black text (same as product card buttons) */
.woocommerce-cart .checkout-button,
.woocommerce-cart .wc-block-components-checkout-button,
.woocommerce-cart .button.checkout,
.woocommerce-cart a.checkout-button,
.woocommerce-cart .wc-block-cart__submit-button,
.woocommerce-cart button[type="submit"].checkout {
	background: linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%) !important;
	color: #000 !important;
	font-weight: 700 !important;
	text-decoration: none !important;
	border: none !important;
	padding: 16px 32px !important;
	border-radius: 8px !important;
	transition: all 0.2s ease !important;
	box-shadow: 0 4px 12px rgba(245, 158, 11, 0.3) !important;
}

.woocommerce-cart .checkout-button:hover,
.woocommerce-cart .wc-block-components-checkout-button:hover,
.woocommerce-cart .button.checkout:hover,
.woocommerce-cart a.checkout-button:hover,
.woocommerce-cart .wc-block-cart__submit-button:hover,
.woocommerce-cart button[type="submit"].checkout:hover {
	background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
	color: #000 !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 6px 20px rgba(245, 158, 11, 0.4) !important;
}

/* Place Order button on checkout page - yellow gradient with black text */
.woocommerce-checkout #place_order,
.woocommerce-checkout .place-order button,
.woocommerce-checkout .wc-block-components-checkout-place-order-button,
.woocommerce-checkout button#place_order,
.woocommerce-checkout .button#place_order {
	background: linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%) !important;
	color: #000 !important;
	font-weight: 700 !important;
	text-decoration: none !important;
	border: none !important;
	padding: 16px 32px !important;
	border-radius: 8px !important;
	transition: all 0.2s ease !important;
	box-shadow: 0 4px 12px rgba(245, 158, 11, 0.3) !important;
}

.woocommerce-checkout #place_order:hover,
.woocommerce-checkout .place-order button:hover,
.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover,
.woocommerce-checkout button#place_order:hover,
.woocommerce-checkout .button#place_order:hover {
	background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
	color: #000 !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 6px 20px rgba(245, 158, 11, 0.4) !important;
}

/* Order summary title - smaller and bold */
.woocommerce-checkout h2.wc-block-components-order-summary__title,
.woocommerce-checkout .wc-block-components-order-summary__title,
.woocommerce-checkout #order_review_heading,
.woocommerce-checkout h3#order_review_heading,
.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block h2,
.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block h3 {
	font-size: 1.125rem !important;
	font-weight: bold !important;
}

/* Apply Poppins font to all text elements */
* {
	font-family: 'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
}

h1, h2, h3, h4, h5, h6, p, a, span, div, button, input, textarea, select {
	font-family: 'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
}

/* Fixed header adjustments */
body {
	padding-top: 0; /* No padding needed since hero is full-screen */
}

.site-header {
	position: fixed !important;
	top: 0;
	left: 0;
	right: 0;
	z-index: 50;
	background: transparent;
}

/* Header width adjustments */
.site-header .container {
	max-width: 100%;
	padding-left: 2rem;
	padding-right: 2rem;
}

@media (min-width: 768px) {
	.site-header .container {
		padding-left: 4rem;
		padding-right: 4rem;
	}
}

@media (min-width: 1024px) {
	.site-header .container {
		padding-left: 6rem;
		padding-right: 6rem;
	}
}

/* General menu item styling */
#primary-menu .menu-item > a {
	font-weight: 700 !important;
	text-transform: uppercase !important;
}

/* Override Tailwind's font-medium class in menu */
#primary-menu .font-medium {
	font-weight: 700 !important;
}

/* Special styling for last menu item */
#primary-menu .menu-item:last-child a {
	background: linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%) !important;
	color: #1a1a1a !important;
	padding: 10px 20px !important;
	border-radius: 8px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	transition: all 0.3s ease !important;
	box-shadow: 0 4px 12px rgba(251, 191, 36, 0.3) !important;
	letter-spacing: 0.5px !important;
}

#primary-menu .menu-item:last-child a:hover {
	background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 6px 20px rgba(251, 191, 36, 0.4) !important;
	color: #000 !important;
}

/* Sub-menu styles */
#primary-menu .menu-item-has-children {
	position: relative;
}

#primary-menu .sub-menu {
	position: absolute;
	top: calc(100% + 8px);
	left: 0;
	background: transparent;
	backdrop-filter: none;
	border-radius: 12px;
	padding: 8px 0;
	min-width: 220px;
	opacity: 0;
	visibility: hidden;
	transform: translateY(-10px);
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	z-index: 1000;
	box-shadow: none;
	border: none;
}

#primary-menu .menu-item-has-children:hover .sub-menu {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

#primary-menu .sub-menu .menu-item {
	display: block;
	margin: 0;
}

#primary-menu .sub-menu li + li {
	margin-top: 16px;
}

#primary-menu .sub-menu a,
#primary-menu .sub-menu .menu-item a,
.menu .sub-menu a {
	display: block !important;
	padding: 12px 20px !important;
	color: #1a1a1a !important;
	text-decoration: none !important;
	transition: all 0.25s ease !important;
	font-size: 0.95rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.3px !important;
	position: relative !important;
	background: rgba(255, 255, 255, 0.15) !important;
	backdrop-filter: blur(21px) !important;
	-webkit-backdrop-filter: blur(21px) !important;
	border: 2px solid rgba(245, 158, 11, 0.4) !important;
	border-radius: 10px !important;
	line-height: 1.2 !important;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08) !important;
	margin:5px 0px;
}

#primary-menu .sub-menu a::before {
	display: none !important;
}

#primary-menu .sub-menu a:hover {
	background: rgba(255, 255, 255, 0.2) !important;
	backdrop-filter: blur(21px) !important;
	-webkit-backdrop-filter: blur(21px) !important;
	border-color: rgba(245, 158, 11, 0.6) !important;
	color: #000 !important;
	transform: translateY(-1px);
}

/* Vienodas border-radius visiems elementams */
#primary-menu .sub-menu .menu-item:first-child a,
#primary-menu .sub-menu .menu-item:last-child a {
	border-radius: 10px !important;
}

/* Sub-menu arrow indicator - SVG chevron */
#primary-menu .menu-item-has-children > a::after {
	content: '';
	display: inline-block;
	width: 12px;
	height: 12px;
	margin-left: 6px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	transition: transform 0.2s ease;
	vertical-align: middle;
}

#primary-menu .menu-item-has-children:hover > a::after {
	transform: rotate(180deg);
}

/* WooCommerce single product: template handles layout */
/* Removed old styles as new template (woocommerce/single-product.php) implements custom two-column layout */

/* TVG Video Grid: Force control icons to be visible everywhere */
.tvg-controls button {
	color: #ffffff !important;
	border-color: #ffffff !important;
}

.tvg-controls .tvg-progress-ring circle {
	stroke: #ffffff !important;
}

/* Ensure SVG icons inherit the correct color */
.tvg-controls button svg {
	color: inherit;
	stroke: currentColor;
}

/* Make sure restart button SVG is visible */
.tvg-controls .tvg-restart svg {
	display: block;
	width: 20px;
	height: 20px;
}

/* Ensure mute/unmute icons toggle properly */
.tvg-controls .tvg-mute .tvg-icon-sound,
.tvg-controls .tvg-mute .tvg-icon-muted {
	display: block;
	width: 20px;
	height: 20px;
}

/* Our Brands: horizontal grid */
.vyv-brands-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
	align-items: center;
	justify-items: center;
	max-width: 900px;
	margin: 0 auto;
}

@media (max-width: 768px) {
	.vyv-brands-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 480px) {
	.vyv-brands-grid {
		grid-template-columns: repeat(1, minmax(0, 1fr));
	}
}

.vyv-brand-item {
	text-align: center;
}

.vyv-brand-item img {
	display: block;
	margin: 0 auto;
	max-height: 150px;
	width: auto;
	height: auto;
}

.vyv-brand-item span {
	display: block;
	margin-top: 8px;
	font-weight: 600;
	color: #374151;
}

/* Home Promo Section: Container Background */
.vyv-home-promo__box {
	position: relative;
	z-index: 1;
	border-radius: 16px;
	padding: 24px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

@media (min-width: 768px) {
	.vyv-home-promo__box {
		padding: 40px;
	}
}

/* Home Promo floating images - aligned to container edges */
.vyv-home-promo {
	--content-max: 1200px;
	--side-gap: max(16px, calc((100vw - var(--content-max)) / 2));
	max-width: 100%;
	overflow-x: hidden;
}

.vyv-home-promo__float {
	position: absolute;
	z-index: 0;
	width: 400px;
	height: auto;
	pointer-events: none;
	opacity: 1;
	transition: transform 0.3s ease;
}

.vyv-home-promo__float--left {
	left: calc(var(--side-gap) + -320px);
	top: 50%;
	z-index: 10;
}

.vyv-home-promo__float--right {
	right: calc(var(--side-gap) + -420px);
	top: 55%;
}

.vyv-home-promo:hover .vyv-home-promo__float--left {
	transform: translateX(-5px);
}

.vyv-home-promo:hover .vyv-home-promo__float--right {
	transform: translateX(5px);
}

@media (max-width: 1280px) {
	.vyv-home-promo__float {
		width: 180px;
	}
}

@media (max-width: 1024px) {
	.vyv-home-promo__float {
		width: 140px;
	}
}

@media (max-width: 640px) {
	.vyv-home-promo__float {
		display: none;
	}
}

/* Home Promo: CTA parallelogram button */
.vyv-home-promo__cta {
	text-align: center;
	margin-bottom: 24px;
}

.vyv-para-btn {
	display: inline-block;
	background: #FFBA00;
	color: #000;
	text-decoration: none;
	padding: 14px 50px;
	border-radius: 999px;
	box-shadow: 0 6px 16px rgba(255, 186, 0, 0.25);
	transition: all 0.25s ease;
}

.vyv-para-btn__inner {
	display: inline-block;
	font-weight: 800;
	letter-spacing: 0.5px;
}

.vyv-para-btn:hover {
	background: #f59e0b;
	box-shadow: 0 8px 22px rgba(245, 158, 11, 0.35);
	transform: translateY(-2px);
}

/* Home Promo: subtitle paragraph spacing */
.vyv-home-promo__inner > div p {
	margin-bottom: 1rem;
}

.vyv-home-promo__inner > div p:last-child {
	margin-bottom: 0;
}

/* Home Promo: three columns */
.vyv-home-promo__cols {
	display: grid;
	grid-template-columns: 1fr minmax(0, 453px) 1fr;
	gap: 32px;
	align-items: start;
	margin-top: 24px;
}

.vyv-home-promo__cols .vyv-col img {
	display: block;
	max-width: 100%;
	height: auto;
	border-radius: 16px;
	/* box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08); */
	margin: 0 auto;
}

.vyv-col--left, 
.vyv-col--right {
	margin-top: 21px;
}

@media (max-width: 1024px) {
	.vyv-home-promo__cols {
		display: block;
		gap: 20px;
	}
	.vyv-home-promo__cols .vyv-col--middle img {
		max-width: 100%;
	}
}

/* Hero bottles stagger animation */
.vyv-bottle {
	opacity: 0;
	transform: translateY(20px) scale(0.96);
	filter: blur(6px);
	transition:
		opacity 0.6s ease,
		transform 0.6s ease,
		filter 0.6s ease;
}

.vyv-bottle.is-in {
	opacity: 1;
	transform: translateY(0) scale(1);
	filter: blur(0);
}

@media (prefers-reduced-motion: reduce) {
	.vyv-bottle {
		transition: none;
		opacity: 1 !important;
		transform: none !important;
		filter: none !important;
	}
}

/* Header blur with white border */
.vyv-header-blur {
	background: rgba(255, 255, 255, 0.15) !important;
	backdrop-filter: blur(21px);
	-webkit-backdrop-filter: blur(21px);
	border: 4px solid #ffffff;
	color: #000 !important;
}

.vyv-header-blur a,
.vyv-header-blur span,
.vyv-header-blur button {
	color: #000 !important;
}

.vyv-header-blur .menu-item a span {
	color: #000 !important;
}

.vyv-header-blur .menu-item a:hover span {
	color: #f59e0b !important;
}

/* Active menu item styling */
/* Home page: highlight only the Home link (WordPress adds .menu-item-home) */
body.home #primary-menu .menu-item > a span {
	color: #000 !important;
	font-weight: 700 !important;
}

body.home #primary-menu .menu-item-home > a span {
	color: #f59e0b !important;
	font-weight: 800 !important;
}

/* Other pages: allow both current-menu-item and current_page_item */
body:not(.home) #primary-menu .menu-item.current-menu-item > a span,
body:not(.home) #primary-menu .menu-item.current_page_item > a span {
	color: #f59e0b !important;
	font-weight: 800 !important;
}

/* Only highlight ancestor if it's not the home page */
body:not(.home) #primary-menu .menu-item.current-menu-ancestor > a span,
body:not(.home) #primary-menu .menu-item.current_page_ancestor > a span {
	color: #f59e0b !important;
	font-weight: 800 !important;
}

/* Blog: Yellow parallelogram Read More button */
.vyv-btn-green {
	display: inline-block;
	background: #fbbf24;
	color: #000;
	text-decoration: none;
	padding: 10px 28px;
	transform: skewX(-15deg);
	box-shadow: 0 4px 12px rgba(251, 191, 36, 0.25);
	transition: all 0.25s ease;
}

.vyv-btn-green__inner {
	display: inline-block;
	transform: skewX(15deg);
	font-weight: 700;
	letter-spacing: 0.3px;
}

.vyv-btn-green:hover {
	background: #f59e0b;
	box-shadow: 0 6px 16px rgba(245, 158, 11, 0.35);
	transform: skewX(-15deg) translateY(-2px);
}

/* Latest articles cards - equal heights */
.latest-posts-section .grid {
	grid-auto-rows: 1fr;
}

.latest-posts-section .post-card {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.latest-posts-section .post-card .p-6 {
	display: flex;
	flex-direction: column;
	flex: 1;
}

.latest-posts-section .post-card .vyv-btn-green {
	margin-top: auto;
	align-self: flex-start;
}

.latest-posts-section .post-card .vyv-btn-green .vyv-btn-green__inner {
	display: inline-block;
}

.vyv-price-from-label {
	display: block;
	font-size: 0.6rem;
	font-weight: 600;
	letter-spacing: 0.3px;
	opacity: 0.8;
	margin-bottom: 0;
	line-height: 1;
}

/* Prevent sticky header from covering single post titles */
body.single-post .site-main {
	padding-top: 140px;
}

@media (max-width: 768px) {
	body.single-post .site-main {
		padding-top: 110px;
	}
}

/* Prevent overlap on standard pages (e.g., Privacy Policy) */
body.page:not(.home) .site-main {
	padding-top: 120px;
}

@media (max-width: 768px) {
	body.page:not(.home) .site-main {
		padding-top: 90px;
	}
}

