/*
Theme Name: Pawcasso WP Theme
Theme URI: 
Description: Pawcasso
Author: SB
Author URI: 
Template: shoptimizer
Version: 1.2.2
License:         	GNU General Public License v2 or later
License URI:     	http://www.gnu.org/licenses/gpl-2.0.html
*/

/* HOME PAGE */

.elementor-element-130457c .elementor-main-swiper { padding-bottom: 0!important; }

.rev-stars{user-select:none;}
  .rev-stars span{background:linear-gradient(#ffd66b,#ffb800);-webkit-background-clip:text;background-clip:text;color:transparent;}


.secondary-navigation .icon-wrapper { top: 0; }

	.secondary-navigation .menu li:not(.ri) a {
		padding-top: 40px;
	}

#menu-item-7002 .icon-wrapper img {
  content: url('https://pawcassostudio.co.uk/wp-content/uploads/2025/06/icon-myaccount.svg');
  transition: 0.3s ease;
}
#menu-item-7002 .icon-wrapper img:hover {
  content: url('https://pawcassostudio.co.uk/wp-content/uploads/2025/06/icon-myaccount-hover.svg');
}
#menu-item-7001 .icon-wrapper img {
  content: url('https://pawcassostudio.co.uk/wp-content/uploads/2025/06/icon-checkout2.svg');
  transition: 0.3s ease;
}
#menu-item-7001 .icon-wrapper img:hover {
  content: url('https://pawcassostudio.co.uk/wp-content/uploads/2025/06/icon-checkout2-hover.svg');
}


.below-content .widget img {
	position: absolute;
	top: -3px;
	left: 18px;
}

.woocommerce-Price-amount {
	color: #4798C7 !important; 
}
.woocommerce-image__wrapper .product-label.type-circle {
	  left: auto !important;  
	right: -20px!important;
}


@media (max-width: 768px) {
.below-content .widget img {
	position: absolute;
	top: 0px;
	left: -5px;
}
	.woocommerce-image__wrapper .product-label.type-circle {
	  left: auto !important;  
	right: 1px!important;
		bottom: 0px!important;
		top: auto !important;
}
}


.menu-primary-menu-container > ul > li.menu-button > a span { background: #1D7B5B; }





.pawcasso-points-tooltip {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 0.95em;
  line-height: 1.4;
  flex-wrap: wrap;
}

.paw-icon {
  width: 24px!important;
  height: auto!important;
  margin-right: 4px;
  flex-shrink: 0;
}

.points-text {
  flex: 1;
}

.tooltip-icon {
  position: relative;
  cursor: help;
  color: #c62828; /* red */
  font-size: 20px;
  line-height: 1;
  margin-left: 4px;
}

.tooltip-text {
  visibility: hidden;
  opacity: 0;
  width: max-content;
  max-width: 240px;
  background-color: #222;
  color: #fff;
  text-align: left;
  padding: 8px 10px;
  border-radius: 6px;
  position: absolute;
  z-index: 999;
  bottom: 125%;
  left: 50%;
  transform: translateX(-50%);
  transition: opacity 0.3s ease;
  font-size: 0.7em;
  line-height: 1.2;
  white-space: normal;
  box-sizing: border-box;
}

@media (max-width: 480px) {
  .tooltip-text {
	left: auto;
	right: 0;
	transform: none;
	max-width: 85vw;
  }
}



.tooltip-icon:hover .tooltip-text {
  visibility: visible;
  opacity: 1;
}

#yith-par-message-cart { background-color: #F8C549; color: #333;}

@media (min-width: 993px) {
	.postid-8583 .product .images, .product .woocommerce-product-gallery {
		width: 45%;
	}
}

@media (min-width: 993px) {
	.postid-8583 .product .summary {
		width: 51%;
	}
}

.gift-cards-list button.ywgc-predefined-amount-button.selected_button .woocommerce-Price-amount {
	color: #fff !important;
}



.ywgc-preset-image.ywgc-preset-image-view-all { border:none;}

.ywgc-choose-image.ywgc-choose-template {  width: auto !important;
  height: auto !important; background: #4798C7; color: #fff; font-weight: bold; margin-top: 10px;} 

.ywgc-choose-image.ywgc-choose-template:hover {background: #ECB73D!important;}

.yith-ywgc-overlay { z-index:10!important;}


@media (max-width: 768px) {
  .postid-8583 .product-details-wrapper {
	display: flex;
	flex-direction: column;
  }
  .postid-8583 .woocommerce-product-gallery { order: 2; }
 .postid-8583 .entry-summary { order: 1; margin-bottom: 50px; }
	
	.ywgc-choose-image.ywgc-choose-template {  width: 150px !important;
		white-space: normal;
  height: 100% !important; margin-top: 0; } 
	
}

.postid-8583 .call-back-feature { display: none; }





/* Base icon style for My Account links */
.woocommerce-MyAccount-navigation ul li a::before {
  content: "";
  display: inline-block;
  width: 1.25em;
  height: 1.25em;
  margin-right: .6rem;
  background: currentColor;                  /* picks up text color */
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  vertical-align: -0.2em;                    /* nudge if needed */
}

/* Gift Cards icon */
.woocommerce-MyAccount-navigation-link--gift-cards a::before {
  -webkit-mask-image: url("https://pawcassostudio.co.uk/wp-content/uploads/2025/06/icon-usp3.svg");
  mask-image: url("https://pawcassostudio.co.uk/wp-content/uploads/2025/06/icon-usp3.svg");
}

/* Paw Points icon */
.woocommerce-MyAccount-navigation-link--paw-points a::before {
  -webkit-mask-image: url("https://pawcassostudio.co.uk/wp-content/themes/pawcasso/icons/PawPointsBadge.svg");
  mask-image: url("https://pawcassostudio.co.uk/wp-content/themes/pawcasso/icons/PawPointsBadge.svg");
}

/* Optional: tweak hover color to match your theme */
.woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-MyAccount-navigation ul li a:hover {
  color: #222; /* or your accent */
}

/* If your theme already adds an icon font, hide it */
.woocommerce-MyAccount-navigation ul li a i,
.woocommerce-MyAccount-navigation ul li a svg {
  display: none !important;
}



ul.why-pawcasso {
  margin-left: 0; /* remove any inherited list indent */
  padding-left: 0;
}

ul.why-pawcasso li {
  list-style: none;
  position: relative;
  padding-left: 26px; /* tighten overall indent */
  margin-bottom: 0.45em;
  line-height: 1.4;
	margin-left: 0!important;
}

ul.why-pawcasso li:before {
  /* clear theme mask */
  -webkit-mask: none !important;
  mask: none !important;

  /* Paw icon */
  content: "";
  position: absolute;
  left: 0;
  top: 50%;                     /* center vertically */
  transform: translateY(-50%);  /* precise centering for any line height */
  width: 18px;
  height: 18px;
  background: url('https://pawcassostudio.co.uk/wp-content/uploads/2025/06/icon-usp2.svg') no-repeat center center;
  background-size: contain;
  opacity: 0.9;
}

@media (max-width: 480px) {
  .product-widget ul li { line-height: 1.5; }
}


.below-content {
	border-top: 1px solid #EAEAEA;
	background: #FFF8F5;
}

.pawcasso-pre-cart-message{margin:10px 0 8px;padding:0}
.pawcasso-pre-cart-message h4{margin:0 0 4px;font-size:1.1em;font-weight:600;color:#333}
.pawcasso-pre-cart-message p{margin:0;font-size:.95em;color:#666;line-height:1.5}


.postid-7829 ul.cg-psp-gallery li:first-child { display: none; }


.single-product .product-addon-totals { display: block !important; }



div.product-addon-totals .wc-pao-subtotal-line { margin-bottom:25px!important;}

/* Hide all summary lines added by MeowCrew */
.product-addon-totals ul li {
  display: none !important;
}

/* Re-show only the subtotal line (keeps live price updates visible) */
.product-addon-totals ul li.wc-pao-subtotal-line {
  display: list-item !important;
}

div.product-addon-totals { margin: 0; padding:0; border-top: none;}

p.price .amount { font-weight:bold;}

.wc-pao-subtotal-line .price {
  font-size: 0!important; /* hide 'Subtotal' text */
}

.wc-pao-subtotal-line .price .amount {
  font-size: 1.1rem!important; /* restore price size */
	color: #4798C7 !important;
}

.yith-par-message-variation { display:none!important;}

.yith-par-message.hide { display:inline-block!important;}


/* Hide by default */
.pawcasso-prev-portrait { display: none; }

/* Show ONLY when the existing-portrait radio is checked */
form.cart:has(input.wc-pao-addon-radio[value="use-my-existing-pawcasso-studio-portrait"]:checked)
  .pawcasso-prev-portrait {
  display: block;
}

div[data-addon-type="file_upload"] {
margin-top: 30px;}

legend.wc-pao-addon-name { padding-left:0;}

#addon-9941-1761500762-max-size { display:none;}

@media (min-width: 992px) {
  body.is-keepsake-product .product .images { width: 50%; max-width: 50%; }
  body.is-keepsake-product .product .summary { width: 47%; max-width: 47%; }
}


/* Hide breadcrumbs just on the homepage */
.home .rank-math-breadcrumb,
.home .woocommerce-breadcrumb,
.home .rankmath.woocommerce-breadcrumb { display:none; }


/* Clean subcategory grid styling */
.product-cats-grid {
  margin: 0 0 2rem 0;
  padding: 0;
  list-style: none;
}

.product-cats-grid li.product-category {
  display: inline-block;
  width: 32%;
  margin: 0 1% 2rem 0;
  vertical-align: top;
  text-align: center;
}

.product-cats-grid img {
  width: 100%;
  height: auto;
  border-radius: 6px;
}

.product-cats-grid .woocommerce-loop-category__title {
  font-size: 1rem;
  font-weight: 600;
  margin-top: .5rem;
  line-height: 1.4;
}

.product-cats-grid mark.count {
  color: #6b7280;
  font-size: .9em;
  font-weight: 500;
}





/* Hide any subcategory tiles inside the product grid only */
.woocommerce ul.products li.product-category.product {
  display: none !important;
}


.pawcasso-portrait-links-wrapper { margin-top: 30px; }

/* Submitted buttons */
.pawcasso-portrait-links .button.is-done{
  background:#e9ecef;
  color:#5f6b6f;
  cursor:default;
  pointer-events:none;
  border-color:#e9ecef;
}
.pawcasso-portrait-links .button.is-done::before{
  content:"✓";
  font-weight:700;
  margin-right:.5rem;
}

.pawcasso-gf-confirm h2 { font-size: 36px!important;}
.pawcasso-gf-confirm p { font-size: 20px!important;}

/* Footer testimonial — desktop/tablet */
.site-footer .pawcasso-testimonial{
  display:grid;
  grid-template-columns: 60px 1fr;   /* avatar | text */
  column-gap:14px;
  align-items:center;                 /* vertically center avatar against text block */
  max-width:420px;
  margin:0 auto;
}

.site-footer .pawcasso-testimonial .rev-avatar{
  width:60px; height:60px; object-fit:cover;
  border-radius:50%;
  border:2px solid #333;
  grid-row:1 / span 3;               /* avatar spans stars, quote, author */
  align-self:center;                  /* belt & braces vertical centering */
}

.site-footer .pawcasso-testimonial .rev-text{ color:#ddd; line-height:1.5; }
.site-footer .pawcasso-testimonial .rev-stars{ color:#f3a63b; letter-spacing:.1em; font-size:15px; margin:0 0 6px; }
.site-footer .pawcasso-testimonial .rev-quote{ margin:0 0 6px; font-style:italic; }
.site-footer .pawcasso-testimonial .rev-author{ margin:0; font-weight:600; font-size:14px; color:#fff; }

/* Mobile: stack cleanly with centered content */
@media (max-width: 600px){
  .site-footer .pawcasso-testimonial{
	grid-template-columns: 1fr;      /* single column */
	row-gap:10px;
	text-align:center;
  }
  .site-footer .pawcasso-testimonial .rev-avatar{
	grid-row:auto;                    /* normal flow */
	justify-self:center;
	width:70px; height:70px;          /* a touch larger for balance */
	margin-bottom:2px;
  }
}

@media (max-width: 600px) {
  .site-footer .pawcasso-testimonial .rev-avatar {
	margin-top: 14px;
	margin-bottom: -20px; /* gentle spacing below image */
  }

  .site-footer .pawcasso-testimonial .rev-stars {
	margin-top: -4px;    /* lifts stars slightly upward */
	margin-bottom: 4px;  /* trims default spacing below */
  }
}


/* ---------- Mobile-only fixes for subcategory grid ---------- */
@media (max-width: 767px) {
  /* make the subcat UL a simple flex grid on phones */
  ul.products.product-cats-grid {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 16px;
	margin: 0 0 24px 0;
	padding: 0;
  }
  ul.products.product-cats-grid:before,
  ul.products.product-cats-grid:after { display: none !important; }

  /* big, tap-friendly tiles */
  ul.products.product-cats-grid li.product-category {
	list-style: none;
	margin: 0;
	padding: 0;
	float: none !important;
	display: block !important;
	width: calc(50% - 8px) !important;
	text-align: center;
	box-sizing: border-box;
  }

  /* if you prefer TWO per row on small phones, swap the line above for:
	  */

  .product-cats-grid .cat-image-wrapper {
	display: block;
	width: 100%;
	max-width: 160px;
	margin: 0 auto 6px;
	border-radius: 12px;
	overflow: hidden;
  }
  .product-cats-grid .cat-image-wrapper img {
	width: 100% !important;
	height: auto !important;
  }

  .product-cats-grid .woocommerce-loop-category__title {
	margin: .4rem 0 0;
	font-weight: 700;
	line-height: 1.25;
	word-break: normal !important;
	overflow-wrap: normal !important;
	white-space: normal !important;
	font-size: clamp(16px, 4.5vw, 18px);
  }
}

/* keep duplicate subcats INSIDE the product grid hidden everywhere */
.woocommerce ul.products li.product-category.product {
  display: none !important;
}


/* ========== FOOTER LAYOUT ========== */

/* Phones: 1 column (unchanged / clean stack) */
.site-footer .col-full {
  display: block;
}
.site-footer .col-full > .widget {
  margin-bottom: 1.5rem;
}

/* Tablets: 3-up grid */
@media (min-width: 768px) and (max-width: 1023.98px) {
  .site-footer .col-full {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 1.5rem 2rem;
  }
  /* Make the last two widgets (Useful Pages + Testimonial) span full width rows for balance */
  .site-footer .col-full > .widget:nth-child(4),
  .site-footer .col-full > .widget:nth-child(5) {
	grid-column: 1 / -1;
  }
}

/* Desktop: 5 columns with wider outer columns */
@media (min-width: 1024px) {
  .site-footer .col-full {
	display: grid;
	grid-template-columns: 1.6fr 1fr 1fr 1.3fr 1.8fr; /* L | 3 mids | R */
	gap: 2rem 2.2rem;
	align-items: start;
  }
}

/* Optional niceties */
.site-footer #text-12 .textwidget { max-width: 420px; }  /* keep testimonial tidy */
.site-footer .widget-title { margin-bottom: .6rem; }
.site-footer .textwidget ul { margin: .4rem 0 0; }
.site-footer .textwidget li { margin: .25rem 0; }

.site-footer #text-12 .widget-title { margin-bottom:0;}