/**
 * PATUCARRO Sync & WhatsApp Catalog - Frontend Stylesheet
 */

:root {
	--patucarro-primary: #f2994a;
	--patucarro-primary-gradient: linear-gradient(135deg, #f2994a 0%, #f2c94c 100%);
	--patucarro-dark: #1e293b;
	--patucarro-light: #f8fafc;
	--patucarro-whatsapp: #25d366;
	--patucarro-whatsapp-hover: #128c7e;
	--patucarro-whatsapp-gradient: linear-gradient(135deg, #25d366 0%, #128c7e 100%);
	--patucarro-gray-light: #f1f5f9;
	--patucarro-gray-medium: #cbd5e1;
	--patucarro-gray-dark: #64748b;
	--patucarro-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
	--patucarro-shadow-hover: 0 8px 25px rgba(37, 211, 102, 0.2);
}

/* Hide WooCommerce standard checkout/cart notices if they appear */
.woocommerce-message .wc-forward,
.woocommerce-error .wc-forward,
.woocommerce-info .wc-forward {
	display: none !important;
}

/* WhatsApp Button Container - Single Product Page */
.patucarro-whatsapp-button-container {
	margin: 25px 0;
	padding: 20px;
	background: #ffffff;
	border: 1px solid var(--patucarro-gray-light);
	border-radius: 12px;
	box-shadow: var(--patucarro-shadow);
	display: inline-block;
	width: 100%;
	max-width: 450px;
	box-sizing: border-box;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.patucarro-whatsapp-button-container:hover {
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.06);
}

/* The WhatsApp Button */
.patucarro-wa-btn-single {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	background: var(--patucarro-whatsapp-gradient);
	color: #ffffff !important;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	font-size: 17px;
	font-weight: 700;
	text-decoration: none !important;
	padding: 15px 30px;
	border-radius: 8px;
	box-shadow: 0 4px 12px rgba(37, 211, 102, 0.3);
	transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	cursor: pointer;
	position: relative;
	overflow: hidden;
}

/* Glare effect on WhatsApp button */
.patucarro-wa-btn-single::after {
	content: '';
	position: absolute;
	top: -50%;
	left: -50%;
	width: 200%;
	height: 200%;
	background: linear-gradient(
		to right,
		rgba(255, 255, 255, 0) 0%,
		rgba(255, 255, 255, 0.3) 50%,
		rgba(255, 255, 255, 0) 100%
	);
	transform: rotate(30deg);
	transition: all 0.6s ease;
	opacity: 0;
}

.patucarro-wa-btn-single:hover {
	transform: scale(1.03);
	box-shadow: var(--patucarro-shadow-hover);
}

.patucarro-wa-btn-single:hover::after {
	opacity: 1;
	left: 120%;
}

.patucarro-wa-btn-single:active {
	transform: scale(0.98);
}

/* WhatsApp Icon SVG Background */
.patucarro-wa-icon {
	width: 24px;
	height: 24px;
	display: inline-block;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'%3E%3Cpath d='M.057 24l1.687-6.163c-1.041-1.804-1.588-3.849-1.587-5.946C.06 5.348 5.397.01 12.008.01c3.202.001 6.212 1.246 8.477 3.514 2.266 2.268 3.507 5.28 3.505 8.484-.004 6.657-5.34 11.997-11.953 11.997-2.005-.001-3.973-.5-5.739-1.446L0 24zm6.59-4.846c1.6.95 3.188 1.449 4.625 1.451 5.437 0 9.862-4.423 9.866-9.86.002-2.634-1.02-5.11-2.881-6.974-1.86-1.863-4.331-2.887-6.969-2.888-5.439 0-9.865 4.424-9.869 9.862-.001 1.558.423 3.082 1.229 4.42l-.979 3.573 3.665-.961l-.088.083zM18.006 14.8c-.33-.165-1.953-.964-2.253-1.074-.3-.11-.519-.165-.738.165-.219.33-.849 1.074-1.041 1.293-.192.219-.384.247-.714.083-.33-.165-1.393-.513-2.653-1.637-1.018-.908-1.705-2.03-1.905-2.359-.2-.33-.021-.508.143-.672.148-.148.33-.384.495-.576.165-.192.219-.33.329-.548.11-.219.055-.411-.027-.576-.082-.165-.738-1.782-1.014-2.44-.268-.644-.541-.555-.738-.565-.19-.01-.41-.01-.629-.01s-.575.082-.876.411c-.3.33-1.15 1.124-1.15 2.741 0 1.617 1.177 3.179 1.341 3.4.165.219 2.316 3.537 5.61 4.96.783.338 1.395.54 1.872.692.787.25 1.5.215 2.065.13.63-.095 1.953-.798 2.227-1.57.275-.771.275-1.432.193-1.57-.083-.138-.302-.22-.63-.385z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-size: contain;
}

/* Advisor Availability Status Badge */
.patucarro-wa-availability {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 12px;
	font-size: 13px;
	color: var(--patucarro-gray-dark);
}

.pulse-dot {
	display: inline-block;
	width: 8px;
	height: 8px;
	background-color: var(--patucarro-whatsapp);
	border-radius: 50%;
	box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.7);
	animation: pulse-animation 1.6s infinite;
}

@keyframes pulse-animation {
	0% {
		transform: scale(0.95);
		box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.7);
	}
	70% {
		transform: scale(1);
		box-shadow: 0 0 0 8px rgba(37, 211, 102, 0);
	}
	100% {
		transform: scale(0.95);
		box-shadow: 0 0 0 0 rgba(37, 211, 102, 0);
	}
}

/* Shop Archive / Loop Grid Buttons */
.patucarro-loop-buttons-container {
	display: flex;
	gap: 8px;
	margin-top: 15px;
	width: 100%;
}

.patucarro-loop-buttons-container .button {
	flex: 1;
	font-size: 12px !important;
	padding: 10px 5px !important;
	text-align: center;
	font-weight: 700 !important;
	border-radius: 6px !important;
	line-height: 1.2 !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 6px;
	height: 38px !important;
	box-sizing: border-box;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	transition: all 0.25s ease !important;
}

/* Detail Button */
.patucarro-details-btn {
	background: var(--patucarro-gray-light) !important;
	color: var(--patucarro-dark) !important;
	border: 1px solid var(--patucarro-gray-medium) !important;
}

.patucarro-details-btn:hover {
	background: var(--patucarro-gray-medium) !important;
	color: var(--patucarro-dark) !important;
}

/* Loop Card WhatsApp Button */
.patucarro-loop-wa-btn {
	background: var(--patucarro-whatsapp) !important;
	color: #ffffff !important;
	border: none !important;
}

.patucarro-loop-wa-btn:hover {
	background: var(--patucarro-whatsapp-hover) !important;
	color: #ffffff !important;
	box-shadow: 0 3px 10px rgba(37, 211, 102, 0.15);
}

.patucarro-wa-icon-small {
	width: 14px;
	height: 14px;
	display: inline-block;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'%3E%3Cpath d='M.057 24l1.687-6.163c-1.041-1.804-1.588-3.849-1.587-5.946C.06 5.348 5.397.01 12.008.01c3.202.001 6.212 1.246 8.477 3.514 2.266 2.268 3.507 5.28 3.505 8.484-.004 6.657-5.34 11.997-11.953 11.997-2.005-.001-3.973-.5-5.739-1.446L0 24zm6.59-4.846c1.6.95 3.188 1.449 4.625 1.451 5.437 0 9.862-4.423 9.866-9.86.002-2.634-1.02-5.11-2.881-6.974-1.86-1.863-4.331-2.887-6.969-2.888-5.439 0-9.865 4.424-9.869 9.862-.001 1.558.423 3.082 1.229 4.42l-.979 3.573 3.665-.961l-.088.083zM18.006 14.8c-.33-.165-1.953-.964-2.253-1.074-.3-.11-.519-.165-.738.165-.219.33-.849 1.074-1.041 1.293-.192.219-.384.247-.714.083-.33-.165-1.393-.513-2.653-1.637-1.018-.908-1.705-2.03-1.905-2.359-.2-.33-.021-.508.143-.672.148-.148.33-.384.495-.576.165-.192.219-.33.329-.548.11-.219.055-.411-.027-.576-.082-.165-.738-1.782-1.014-2.44-.268-.644-.541-.555-.738-.565-.19-.01-.41-.01-.629-.01s-.575.082-.876.411c-.3.33-1.15 1.124-1.15 2.741 0 1.617 1.177 3.179 1.341 3.4.165.219 2.316 3.537 5.61 4.96.783.338 1.395.54 1.872.692.787.25 1.5.215 2.065.13.63-.095 1.953-.798 2.227-1.57.275-.771.275-1.432.193-1.57-.083-.138-.302-.22-.63-.385z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-size: contain;
}

/* Adjustments for WooCommerce loop item (make card look premium) */
ul.products li.product {
	background: #ffffff;
	border: 1px solid rgba(0, 0, 0, 0.05);
	border-radius: 10px;
	padding: 15px !important;
	box-shadow: 0 3px 10px rgba(0,0,0,0.02);
	transition: all 0.3s ease;
	display: flex;
	flex-direction: column;
}

ul.products li.product:hover {
	transform: translateY(-5px);
	box-shadow: 0 8px 25px rgba(0, 0, 0, 0.07);
	border-color: rgba(242, 153, 74, 0.2);
}

ul.products li.product img {
	border-radius: 6px;
	margin-bottom: 12px !important;
	object-fit: cover;
	height: 180px;
	width: 100%;
}

ul.products li.product .woocommerce-loop-product__title {
	font-size: 15px !important;
	color: var(--patucarro-dark) !important;
	font-weight: 600 !important;
	margin-bottom: 8px !important;
	min-height: 40px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

ul.products li.product .price {
	color: var(--patucarro-primary) !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	margin-bottom: auto !important; /* Push buttons to the bottom of card */
}

/* ==========================================================================
   HOMEPAGE CUSTOM PREMIUM STYLES
   ========================================================================== */

.patucarro-home-hero {
    position: relative;
    background: linear-gradient(rgba(0,0,0,0.65), rgba(0,0,0,0.65)), url('https://images.unsplash.com/photo-1617814076367-b759c7d7e738?auto=format&fit=crop&w=1600&q=80') no-repeat center center;
    background-size: cover;
    padding: 100px 30px;
    text-align: center;
    color: #fff !important;
    border-radius: 12px;
    margin-bottom: 40px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.15);
}
.patucarro-home-hero h1 {
    font-size: 2.8em !important;
    font-weight: 800 !important;
    color: #fff !important;
    margin-bottom: 20px !important;
    text-transform: uppercase;
    letter-spacing: 1px;
    line-height: 1.2;
    text-shadow: 0 2px 4px rgba(0,0,0,0.5);
    margin-top: 0 !important;
}
.patucarro-home-hero p {
    font-size: 1.2em !important;
    max-width: 700px;
    margin: 0 auto 30px auto !important;
    color: #f0f0f0 !important;
    line-height: 1.6;
    text-shadow: 0 1px 2px rgba(0,0,0,0.5);
}
.patucarro-btn-hero-shop {
    display: inline-block;
    background: #ffb900;
    color: #fff !important;
    padding: 15px 35px;
    font-size: 1.1em;
    font-weight: 700;
    text-decoration: none !important;
    border-radius: 50px;
    text-transform: uppercase;
    letter-spacing: 1px;
    box-shadow: 0 4px 15px rgba(255, 185, 0, 0.4);
    transition: all 0.3s ease;
    margin-bottom: 10px;
}
.patucarro-btn-hero-shop:hover {
    background: #e0a300;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(255, 185, 0, 0.6);
}
.patucarro-btn-hero-wa {
    display: inline-block;
    background: #25d366;
    color: #fff !important;
    padding: 15px 35px;
    font-size: 1.1em;
    font-weight: 700;
    text-decoration: none !important;
    border-radius: 50px;
    text-transform: uppercase;
    letter-spacing: 1px;
    box-shadow: 0 4px 15px rgba(37, 211, 102, 0.4);
    transition: all 0.3s ease;
    margin-left: 15px;
    margin-bottom: 10px;
}
.patucarro-btn-hero-wa:hover {
    background: #128c7e;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(37, 211, 102, 0.6);
}
@media (max-width: 768px) {
    .patucarro-btn-hero-wa {
        margin-left: 0;
        margin-top: 10px;
    }
}

.patucarro-home-features {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
    margin-bottom: 50px;
}
.patucarro-feature-card {
    background: #fff;
    padding: 40px 30px;
    border-radius: 12px;
    text-align: center;
    box-shadow: 0 5px 20px rgba(0,0,0,0.05);
    border: 1px solid #eee;
    transition: transform 0.3s ease;
}
.patucarro-feature-card:hover {
    transform: translateY(-5px);
}
.patucarro-feature-card h3 {
    font-size: 1.4em !important;
    font-weight: 700 !important;
    color: #333 !important;
    margin-bottom: 15px !important;
    margin-top: 0 !important;
}
.patucarro-feature-card p {
    color: #666 !important;
    font-size: 0.95em !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}

.patucarro-home-contact {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 40px;
    margin-bottom: 50px;
    background: #fff;
    padding: 40px 30px;
    border-radius: 12px;
    box-shadow: 0 5px 20px rgba(0,0,0,0.05);
    border: 1px solid #eee;
    text-align: left;
}
.patucarro-contact-details h2 {
    font-size: 1.8em !important;
    font-weight: 800 !important;
    color: #333 !important;
    margin-bottom: 25px !important;
    margin-top: 0 !important;
    border-bottom: 2px solid #ffb900;
    padding-bottom: 10px;
    display: inline-block;
}
.patucarro-contact-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 30px 0 !important;
}
.patucarro-contact-list li {
    margin-bottom: 18px !important;
    font-size: 1.05em !important;
    color: #555 !important;
    display: flex;
    align-items: center;
}
.patucarro-contact-list li strong {
    color: #333 !important;
    width: 110px;
    display: inline-block;
    flex-shrink: 0;
}
.patucarro-contact-socials {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}
.patucarro-social-btn {
    display: inline-block;
    width: 120px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    border-radius: 6px;
    color: #fff !important;
    font-size: 0.95em;
    font-weight: bold;
    text-decoration: none !important;
    transition: background 0.3s ease;
}
.patucarro-social-btn.facebook { background: #3b5998; }
.patucarro-social-btn.facebook:hover { background: #2d4373; }
.patucarro-social-btn.instagram { background: #e1306c; }
.patucarro-social-btn.instagram:hover { background: #c13584; }
.patucarro-social-btn.whatsapp { background: #25d366; }
.patucarro-social-btn.whatsapp:hover { background: #128c7e; }

.patucarro-store-image-box {
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 8px 25px rgba(0,0,0,0.1);
    min-height: 250px;
    background: #eee;
}
.patucarro-store-image-box img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}
.patucarro-store-image-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(transparent, rgba(0,0,0,0.7));
    padding: 20px;
    color: #fff;
}
.patucarro-store-image-overlay h4 {
    margin: 0 !important;
    color: #fff !important;
    font-size: 1.2em !important;
    font-weight: 700 !important;
}

.patucarro-home-cta-banner {
    background: linear-gradient(135deg, #1f2937, #111827);
    padding: 60px 40px;
    border-radius: 12px;
    text-align: center;
    color: #fff;
    box-shadow: 0 10px 25px rgba(0,0,0,0.1);
    margin-bottom: 30px;
}
.patucarro-home-cta-banner h2 {
    color: #fff !important;
    font-size: 2em !important;
    font-weight: 800 !important;
    margin-bottom: 15px !important;
    margin-top: 0 !important;
}
.patucarro-home-cta-banner p {
    font-size: 1.1em !important;
    color: #d1d5db !important;
    max-width: 600px;
    margin: 0 auto 30px auto !important;
}
.patucarro-btn-cta-wa {
    display: inline-block;
    background: #25d366;
    color: #fff !important;
    padding: 15px 35px;
    font-size: 1.1em;
    font-weight: 700;
    text-decoration: none !important;
    border-radius: 50px;
    text-transform: uppercase;
    letter-spacing: 1px;
    box-shadow: 0 4px 15px rgba(37, 211, 102, 0.4);
    transition: all 0.3s ease;
}
.patucarro-btn-cta-wa:hover {
    background: #128c7e;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(37, 211, 102, 0.6);
}
