/* SFC Fix: cart item title overlapping the sandwich-mix details box */
.wpc-minicart-wrapper.style2 .wpc-woocommerce-mini-cart li {
	grid-template-rows: auto auto auto !important;
}
.wpc-minicart-wrapper.style2 .wpc-woocommerce-mini-cart li > a:not(.remove) {
	grid-row: 1 !important;
	align-self: start !important;
}
.wpc-minicart-wrapper.style2 .wpc-woocommerce-mini-cart li dl.variation {
	grid-row: 2 !important;
	align-self: start !important;
	margin-top: 4px !important;
}
.wpc-minicart-wrapper.style2 .wpc-woocommerce-mini-cart li .mini-cart-quantity-wrapper {
	grid-row: 3 !important;
}

/* SFC Fix: product links should never navigate anywhere on the site (popup/mini-cart only flow) - dead click everywhere */
a[href*="/product/"] {
	pointer-events: none !important;
	cursor: default !important;
	color: inherit !important;
	text-decoration: none !important;
}

/* SFC: Floating mini-cart button redesign - brand maroon/white */
.wpc_cart_icon.wpc_cart_icon {
	background: #C00101 !important;
	border-radius: 50% !important;
	width: 60px !important;
	height: 60px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	border: 3px solid #fff !important;
	box-shadow: 0 6px 18px rgba(192, 1, 1,0.35) !important;
	transition: transform .2s ease, box-shadow .2s ease !important;
}
.wpc_cart_icon.wpc_cart_icon:hover {
	transform: scale(1.08) !important;
	box-shadow: 0 8px 24px rgba(192, 1, 1,0.5) !important;
}
.wpc_cart_icon.wpc_cart_icon .wpcafe-cart_icon {
	color: #fff !important;
	font-size: 26px !important;
}
.wpc_cart_icon.wpc_cart_icon .basket-item-count {
	background: #fff !important;
	border: 2px solid #C00101 !important;
	border-radius: 50% !important;
	width: 24px !important;
	height: 24px !important;
	top: -6px !important;
	right: -6px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-shadow: 0 2px 6px rgba(0,0,0,0.2) !important;
}
.wpc_cart_icon.wpc_cart_icon .basket-item-count .wpc-mini-cart-count {
	color: #C00101 !important;
	font-weight: 800 !important;
	font-size: 12px !important;
}

/* SFC: chef-with-cart icon replacing plain cart glyphs */
.wpcafe-cart_icon, .eicon-cart-medium {
	color: transparent !important;
	background-color: #ffffff !important;
	width: 24px !important;
	height: 24px !important;
	display: inline-block !important;
	-webkit-mask-image: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTAwIDEwMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8IS0tIGNoZWYgaGF0IC0tPgogIDxyZWN0IHg9IjM0IiB5PSIyMCIgd2lkdGg9IjMyIiBoZWlnaHQ9IjEyIiBmaWxsPSIjZmZmZmZmIi8+CiAgPGNpcmNsZSBjeD0iNDAiIGN5PSIyNCIgcj0iMTAiIGZpbGw9IiNmZmZmZmYiLz4KICA8Y2lyY2xlIGN4PSI1MCIgY3k9IjE3IiByPSIxMi41IiBmaWxsPSIjZmZmZmZmIi8+CiAgPGNpcmNsZSBjeD0iNjAiIGN5PSIyNCIgcj0iMTAiIGZpbGw9IiNmZmZmZmYiLz4KICA8cmVjdCB4PSIzMiIgeT0iMzIiIHdpZHRoPSIzNiIgaGVpZ2h0PSI5IiByeD0iMyIgZmlsbD0iI2ZmZmZmZiIvPgogIDwhLS0gY2FydCAtLT4KICA8cGF0aCBkPSJNMjIgNDggTDc4IDQ4IEw3MCA3OCBMMzAgNzggWiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjZmZmZmZmIiBzdHJva2Utd2lkdGg9IjUuNSIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+CiAgPHBhdGggZD0iTTIyIDQ4IEwxNCA0OCBMMTAgNDAiIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2ZmZmZmZiIgc3Ryb2tlLXdpZHRoPSI1LjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgogIDxsaW5lIHgxPSIzMCIgeTE9Ijc4IiB4Mj0iMzgiIHkyPSI4OCIgc3Ryb2tlPSIjZmZmZmZmIiBzdHJva2Utd2lkdGg9IjUuNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+CiAgPGxpbmUgeDE9IjcwIiB5MT0iNzgiIHgyPSI2MiIgeTI9Ijg4IiBzdHJva2U9IiNmZmZmZmYiIHN0cm9rZS13aWR0aD0iNS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiLz4KICA8Y2lyY2xlIGN4PSIzOCIgY3k9IjkwIiByPSI1LjUiIGZpbGw9IiNmZmZmZmYiLz4KICA8Y2lyY2xlIGN4PSI2MiIgY3k9IjkwIiByPSI1LjUiIGZpbGw9IiNmZmZmZmYiLz4KPC9zdmc+Cg==) !important;
	mask-image: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTAwIDEwMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8IS0tIGNoZWYgaGF0IC0tPgogIDxyZWN0IHg9IjM0IiB5PSIyMCIgd2lkdGg9IjMyIiBoZWlnaHQ9IjEyIiBmaWxsPSIjZmZmZmZmIi8+CiAgPGNpcmNsZSBjeD0iNDAiIGN5PSIyNCIgcj0iMTAiIGZpbGw9IiNmZmZmZmYiLz4KICA8Y2lyY2xlIGN4PSI1MCIgY3k9IjE3IiByPSIxMi41IiBmaWxsPSIjZmZmZmZmIi8+CiAgPGNpcmNsZSBjeD0iNjAiIGN5PSIyNCIgcj0iMTAiIGZpbGw9IiNmZmZmZmYiLz4KICA8cmVjdCB4PSIzMiIgeT0iMzIiIHdpZHRoPSIzNiIgaGVpZ2h0PSI5IiByeD0iMyIgZmlsbD0iI2ZmZmZmZiIvPgogIDwhLS0gY2FydCAtLT4KICA8cGF0aCBkPSJNMjIgNDggTDc4IDQ4IEw3MCA3OCBMMzAgNzggWiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjZmZmZmZmIiBzdHJva2Utd2lkdGg9IjUuNSIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+CiAgPHBhdGggZD0iTTIyIDQ4IEwxNCA0OCBMMTAgNDAiIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2ZmZmZmZiIgc3Ryb2tlLXdpZHRoPSI1LjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgogIDxsaW5lIHgxPSIzMCIgeTE9Ijc4IiB4Mj0iMzgiIHkyPSI4OCIgc3Ryb2tlPSIjZmZmZmZmIiBzdHJva2Utd2lkdGg9IjUuNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+CiAgPGxpbmUgeDE9IjcwIiB5MT0iNzgiIHgyPSI2MiIgeTI9Ijg4IiBzdHJva2U9IiNmZmZmZmYiIHN0cm9rZS13aWR0aD0iNS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiLz4KICA8Y2lyY2xlIGN4PSIzOCIgY3k9IjkwIiByPSI1LjUiIGZpbGw9IiNmZmZmZmYiLz4KICA8Y2lyY2xlIGN4PSI2MiIgY3k9IjkwIiByPSI1LjUiIGZpbGw9IiNmZmZmZmYiLz4KPC9zdmc+Cg==) !important;
	-webkit-mask-repeat: no-repeat !important;
	mask-repeat: no-repeat !important;
	-webkit-mask-position: center !important;
	mask-position: center !important;
	-webkit-mask-size: contain !important;
	mask-size: contain !important;
}
.wpcafe-cart_icon:before, .eicon-cart-medium:before {
	content: '' !important;
}


/* SFC: eye-catching animated Packages category button */
.sfc-cat-btn-packages {
	background: linear-gradient(135deg, #C00101, #a52a2a) !important;
	border-color: #C00101 !important;
	color: #ffffff !important;
	overflow: hidden !important;
	position: relative !important;
	z-index: 1;
	animation: sfcPackagesPulse 2.2s ease-in-out infinite !important;
}
.sfc-cat-btn-packages, .sfc-cat-btn-packages .sfc-cat-label, .sfc-cat-btn-packages .sfc-cat-icon, .sfc-cat-btn-packages svg, .sfc-cat-btn-packages path {
	color: #ffffff !important;
}
.sfc-cat-btn-packages::after {
	content: '';
	position: absolute;
	top: 0;
	left: -150%;
	width: 60%;
	height: 100%;
	background: linear-gradient(120deg, transparent, rgba(255,255,255,0.75), transparent);
	transform: skewX(-20deg);
	animation: sfcPackagesShine 2.6s ease-in-out infinite;
	pointer-events: none;
}
@keyframes sfcPackagesShine {
	0% { left: -150%; }
	55% { left: 150%; }
	100% { left: 150%; }
}
@keyframes sfcPackagesPulse {
	0%, 100% { box-shadow: 0 3px 12px rgba(192, 1, 1,0.3); transform: scale(1); }
	50% { box-shadow: 0 3px 26px rgba(192, 1, 1,0.7); transform: scale(1.02); }
}


/* SFC: specificity boost to beat plugin inline CSS for Packages button */
.sfc-cat-btn-packages.sfc-cat-btn-packages.sfc-cat-btn-packages {
	background: linear-gradient(135deg, #C00101, #a52a2a) !important;
	border-color: #C00101 !important;
	color: #ffffff !important;
}
.sfc-cat-btn-packages.sfc-cat-btn-packages.sfc-cat-btn-packages .sfc-cat-label {
	color: #ffffff !important;
}
.sfc-cat-btn-packages.sfc-cat-btn-packages.sfc-cat-btn-packages .sfc-cat-icon,
.sfc-cat-btn-packages.sfc-cat-btn-packages.sfc-cat-btn-packages svg {
	color: #ffffff !important;
}
.sfc-cat-btn-packages.sfc-cat-btn-packages.sfc-cat-btn-packages path {
	stroke: #ffffff !important;
}


/* SFC: fix nudge label contrast against new maroon Packages button */
.sfc-cat-btn-packages .sfc-package-nudge.sfc-package-nudge {
	color: #ffffff !important;
	opacity: 0.92;
	font-weight: 700 !important;
}


/* SFC: Packages button restyle - dark charcoal with gold, distinct from active maroon tab */
.sfc-cat-btn-packages.sfc-cat-btn-packages.sfc-cat-btn-packages {
	background: linear-gradient(135deg, #1c1c1c, #333333) !important;
	border-color: #D4AF37 !important;
	border-width: 2px !important;
	color: #D4AF37 !important;
	animation: sfcPackagesPulseGold 2.2s ease-in-out infinite !important;
}
.sfc-cat-btn-packages.sfc-cat-btn-packages.sfc-cat-btn-packages .sfc-cat-label {
	color: #E8C158 !important;
}
.sfc-cat-btn-packages.sfc-cat-btn-packages.sfc-cat-btn-packages .sfc-cat-icon,
.sfc-cat-btn-packages.sfc-cat-btn-packages.sfc-cat-btn-packages svg {
	color: #E8C158 !important;
}
.sfc-cat-btn-packages.sfc-cat-btn-packages.sfc-cat-btn-packages path {
	stroke: #E8C158 !important;
}
.sfc-cat-btn-packages .sfc-package-nudge.sfc-package-nudge {
	color: #E8C158 !important;
}
.sfc-cat-btn-packages::after {
	background: linear-gradient(120deg, transparent, rgba(212,175,55,0.55), transparent) !important;
}
@keyframes sfcPackagesPulseGold {
	0%, 100% { box-shadow: 0 3px 12px rgba(212,175,55,0.3); transform: scale(1); }
	50% { box-shadow: 0 3px 26px rgba(212,175,55,0.75); transform: scale(1.02); }
}


/* SFC: contain the Packages shine sweep to just this button */
.sfc-cat-btn-packages.sfc-cat-btn-packages.sfc-cat-btn-packages.sfc-cat-btn-packages {
	overflow: hidden !important;
	clip-path: inset(0 round 14px);
}


/* BEST VALUE badge - Corporate & Family Packages card */
.elementor-element-6e5d43f.elementor-element-6e5d43f {
  position: relative !important;
}
.elementor-element-6e5d43f.elementor-element-6e5d43f::before {
  content: "\2605 BEST VALUE" !important;
  position: absolute !important;
  top: 16px !important;
  left: 14px !important;
  right: auto !important;
  bottom: auto !important;
  width: auto !important;
  height: auto !important;
  max-width: max-content !important;
  inset: auto auto auto 14px !important;
  background: linear-gradient(135deg, #D4AF37, #F6E7A8 50%, #D4AF37) !important;
  color: #1c1c1c !important;
  font-weight: 800 !important;
  font-size: 12.5px !important;
  line-height: 1.2 !important;
  letter-spacing: 0.5px !important;
  padding: 7px 16px !important;
  border-radius: 999px !important;
  box-shadow: 0 4px 14px rgba(0,0,0,0.4), 0 0 0 2px rgba(255,255,255,0.65) inset !important;
  z-index: 20 !important;
  transform: rotate(-5deg) !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  display: inline-block !important;
  opacity: 1 !important;
  pointer-events: none !important;
  animation: sfcBestValuePop 1.8s ease-in-out infinite !important;
}
@keyframes sfcBestValuePop {
  0%, 100% { transform: rotate(-5deg) scale(1); box-shadow: 0 4px 14px rgba(0,0,0,0.4), 0 0 0 2px rgba(255,255,255,0.65) inset; }
  50% { transform: rotate(-5deg) scale(1.08); box-shadow: 0 4px 22px rgba(212,175,55,0.7), 0 0 0 2px rgba(255,255,255,0.85) inset; }
}


/* ===== SFC: Package & Individually-Wrapped-Meal dropdowns =====
   Exclude these from the sitewide "big red button" rule, restore the
   widget's own clean design, and color-code each dish by food type. */

/* Reset trigger buttons back to clean white pill (undo sitewide red) */
.sfc-pkg-dropdown-btn.sfc-pkg-dropdown-btn.sfc-pkg-dropdown-btn,
.sfc-iw-dropdown-btn.sfc-iw-dropdown-btn.sfc-iw-dropdown-btn {
  background: #ffffff !important;
  border: 1px solid #dedede !important;
  border-radius: 10px !important;
  color: #111111 !important;
  font-weight: 700 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  box-shadow: none !important;
}

/* Reset option list items back to clean, simple rows (undo sitewide red pill) */
.sfc-pkg-dropdown-option.sfc-pkg-dropdown-option.sfc-pkg-dropdown-option,
.sfc-iw-dropdown-option.sfc-iw-dropdown-option.sfc-iw-dropdown-option {
  background: transparent !important;
  border: 0 !important;
  border-left: 3px solid var(--sfc-food-dot, #d8d8d8) !important;
  border-radius: 8px !important;
  color: #171717 !important;
  font-weight: 700 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  box-shadow: none !important;
  padding-left: 12px !important;
}
.sfc-pkg-dropdown-option.sfc-pkg-dropdown-option:hover,
.sfc-pkg-dropdown-option.sfc-selected,
.sfc-iw-dropdown-option.sfc-iw-dropdown-option:hover,
.sfc-iw-dropdown-option.sfc-selected {
  background: rgba(0,0,0,0.035) !important;
  color: #171717 !important;
}

/* Small color-coded dot per dish, matched to sauce/food tone */
.sfc-pkg-dropdown-option::before, .sfc-iw-dropdown-option::before {
  content: "" !important;
  display: inline-block !important;
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  margin-right: 8px !important;
  vertical-align: middle !important;
  background: var(--sfc-food-dot, #b7b7b7) !important;
}

/* Meats & mains - seared/roasted brown */
.sfc-pkg-dropdown-option[data-value="Veal Parmesan"],
.sfc-pkg-dropdown-option[data-value="Chicken Parmesan"],
.sfc-pkg-dropdown-option[data-value="Meatballs"],
.sfc-pkg-dropdown-option[data-value="Grilled Chicken"],
.sfc-pkg-dropdown-option[data-value="Italian Sausage"],
.sfc-pkg-dropdown-option[data-value="Steak (Slices)"],
.sfc-pkg-dropdown-option[data-value="Eggplant Parmesan"],
.sfc-pkg-dropdown-option[data-value="Lasagna"],
.sfc-iw-dropdown-option[data-value="Veal Parmesan"],
.sfc-iw-dropdown-option[data-value="Chicken Parmesan"],
.sfc-iw-dropdown-option[data-value="Meatballs"],
.sfc-iw-dropdown-option[data-value="Grilled Chicken"],
.sfc-iw-dropdown-option[data-value="Italian Sausage"],
.sfc-iw-dropdown-option[data-value="Steak (Slices)"],
.sfc-iw-dropdown-option[data-value="Eggplant Parmesan"],
.sfc-iw-dropdown-option[data-value="Lasagna"] {
  --sfc-food-dot: #A64B2A;
}

/* Tomato / red-sauce pastas */
.sfc-pkg-dropdown-option[data-value="Penne alla Vodka"],
.sfc-pkg-dropdown-option[data-value="Spaghetti al Pomodoro"],
.sfc-pkg-dropdown-option[data-value="Penne al Pomodoro"],
.sfc-pkg-dropdown-option[data-value="Rigatoni Meat Sauce"],
.sfc-pkg-dropdown-option[data-value="Penne Rosé Sauce"],
.sfc-iw-dropdown-option[data-value="Penne alla Vodka"],
.sfc-iw-dropdown-option[data-value="Spaghetti al Pomodoro"],
.sfc-iw-dropdown-option[data-value="Penne al Pomodoro"],
.sfc-iw-dropdown-option[data-value="Rigatoni Meat Sauce"],
.sfc-iw-dropdown-option[data-value="Penne Rosé Sauce"] {
  --sfc-food-dot: #C1443C;
}

/* Creamy pastas */
.sfc-pkg-dropdown-option[data-value="Fettuccine Alfredo"],
.sfc-pkg-dropdown-option[data-value="Gnocchi alla Crema"],
.sfc-iw-dropdown-option[data-value="Fettuccine Alfredo"],
.sfc-iw-dropdown-option[data-value="Gnocchi alla Crema"] {
  --sfc-food-dot: #C99A3D;
}

/* Pesto */
.sfc-pkg-dropdown-option[data-value="Chicken Penne Pesto"],
.sfc-iw-dropdown-option[data-value="Chicken Penne Pesto"] {
  --sfc-food-dot: #6B8E4E;
}

/* Roasted / earthy sides */
.sfc-pkg-dropdown-option[data-value="Roasted Potatoes"],
.sfc-pkg-dropdown-option[data-value="Risotto (Mushroom)"],
.sfc-iw-dropdown-option[data-value="Roasted Potatoes"],
.sfc-iw-dropdown-option[data-value="Risotto (Mushroom)"] {
  --sfc-food-dot: #A9762F;
}

/* Salads & vegetables - fresh green */
.sfc-pkg-dropdown-option[data-value="Caesar Salad"],
.sfc-pkg-dropdown-option[data-value="Garden Salad"],
.sfc-pkg-dropdown-option[data-value="Greek Salad"],
.sfc-pkg-dropdown-option[data-value="Steamed Vegetables"],
.sfc-iw-dropdown-option[data-value="Caesar Salad"],
.sfc-iw-dropdown-option[data-value="Garden Salad"],
.sfc-iw-dropdown-option[data-value="Greek Salad"],
.sfc-iw-dropdown-option[data-value="Steamed Vegetables"] {
  --sfc-food-dot: #4C7A3D;
}


/* Order by Phone header button - match brand style */
.elementor-element-7c0ed495.elementor-element-7c0ed495.elementor-element-7c0ed495 a.elementor-button.elementor-button.elementor-button,
.elementor-element-0db4266.elementor-element-0db4266.elementor-element-0db4266 a.elementor-button.elementor-button.elementor-button {
  background-color: #C00101 !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 4px !important;
  box-shadow: 0 3px 10px rgba(192, 1, 1,0.35) !important;
  letter-spacing: 0.6px !important;
  transition: background-color 0.2s ease, transform 0.15s ease !important;
}
.elementor-element-7c0ed495.elementor-element-7c0ed495.elementor-element-7c0ed495 a.elementor-button.elementor-button.elementor-button:hover,
.elementor-element-0db4266.elementor-element-0db4266.elementor-element-0db4266 a.elementor-button.elementor-button.elementor-button:hover {
  background-color: #6f1414 !important;
  transform: translateY(-1px) !important;
}
.elementor-element-7c0ed495.elementor-element-7c0ed495.elementor-element-7c0ed495 a.elementor-button.elementor-button.elementor-button .elementor-button-icon,
.elementor-element-7c0ed495.elementor-element-7c0ed495.elementor-element-7c0ed495 a.elementor-button.elementor-button.elementor-button .elementor-button-text,
.elementor-element-0db4266.elementor-element-0db4266.elementor-element-0db4266 a.elementor-button.elementor-button.elementor-button .elementor-button-icon,
.elementor-element-0db4266.elementor-element-0db4266.elementor-element-0db4266 a.elementor-button.elementor-button.elementor-button .elementor-button-text {
  color: #ffffff !important;
}
.elementor-element-7c0ed495.elementor-element-7c0ed495.elementor-element-7c0ed495 a.elementor-button.elementor-button.elementor-button i.fa-phone-alt,
.elementor-element-0db4266.elementor-element-0db4266.elementor-element-0db4266 a.elementor-button.elementor-button.elementor-button i.fa-phone-alt {
  color: #F6E7A8 !important;
}


/* Product description highlighting - quantity/structure vs food examples */
.sfc-desc-qty {
  font-weight: 800;
  color: #C00101;
}
.sfc-desc-food {
  font-weight: 700;
  font-style: italic;
  color: #8a5a1f;
}


/* Prevent double-tap-to-zoom on missed mobile taps (buttons/steppers/links) */
html {
  touch-action: manipulation;
}
button, a, input, .quantity, .sfc-qty-btn, .plus, .minus,
[class*='-plus'], [class*='-minus'], [class*='-btn'], [class*='-card'] {
  touch-action: manipulation;
}


/* ===== SFC Package / Wrapped-Meal customize-popup redesign (Regular/Premium/Deluxe + Individually Wrapped Meal) =====
   Richer version - matches the Corporate Sandwich Package builder's bold, colorful,
   card-grid feel: thick colored accents, tinted card backgrounds, side-by-side grid
   layout for the choice fields. No emoji icons - color is the only signal. */

.sfc-package-builder,
.sfc-iw-builder {
  background: linear-gradient(180deg, #fffafa 0%, #ffffff 55%) !important;
  border: 1px solid #f0dede !important;
  border-radius: 20px !important;
  padding: 20px !important;
  box-shadow: 0 8px 26px rgba(192, 1, 1,0.08) !important;
}

/* Hero heading block - thick red left border + tinted background, like the corporate builder's title card */
.sfc-pkg-heading,
.sfc-iw-heading {
  display: block !important;
  margin-bottom: 18px !important;
  padding: 16px 18px !important;
  border: none !important;
  border-left: 5px solid #C00101 !important;
  border-radius: 12px !important;
  background: linear-gradient(135deg, #fff5f5 0%, #fdeeee 100%) !important;
  color: #555555 !important;
  font-size: 13px !important;
  font-weight: 650 !important;
}
.sfc-pkg-heading strong,
.sfc-iw-heading strong {
  display: block !important;
  margin-bottom: 6px !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  letter-spacing: -0.02em !important;
  color: #111111 !important;
}
.sfc-pkg-heading strong::before,
.sfc-iw-heading strong::before {
  content: none !important;
}

/* Flexible grid for the choice fields - wraps to fit the container's actual width */
.sfc-package-builder,
.sfc-iw-builder {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
}
.sfc-pkg-heading, .sfc-iw-heading,
.sfc-pkg-addons, .sfc-iw-addons,
.sfc-pkg-live-bottom, .sfc-iw-clean-total {
  flex: 1 1 100% !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.sfc-pkg-field:has([data-sfc-dropdown]),
.sfc-iw-field:has([data-sfc-dropdown]) {
  flex: 1 1 150px !important;
  min-width: 150px !important;
  box-sizing: border-box !important;
  margin: 0 !important;
}

/* Field cards - tinted background per category, thick colored left border, more presence */
.sfc-pkg-field,
.sfc-iw-field {
  border: 1px solid #eee0e0 !important;
  border-left-width: 4px !important;
  border-radius: 14px !important;
  box-shadow: 0 3px 10px rgba(0,0,0,0.04) !important;
}
.sfc-pkg-field label,
.sfc-iw-field label {
  color: #C00101 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.07em !important;
  text-transform: uppercase !important;
}
/* Small red icon before each field label - same style as the product title icon, tinted by category */
.sfc-pkg-field label::before,
.sfc-iw-field label::before {
  content: '' !important;
  display: inline-block !important;
  width: 15px !important;
  height: 15px !important;
  margin-right: 6px !important;
  vertical-align: -3px !important;
  background-color: #C00101 !important;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.35' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 13c.5-3.5 3.8-5.5 8-5.5s7.5 2 8 5.5'/%3E%3Cpath d='M4 13h16v3.5c0 1.1-.9 2-2 2H6c-1.1 0-2-.9-2-2V13z'/%3E%3Cpath d='M7 15.5h10'/%3E%3C/svg%3E") !important;
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.35' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 13c.5-3.5 3.8-5.5 8-5.5s7.5 2 8 5.5'/%3E%3Cpath d='M4 13h16v3.5c0 1.1-.9 2-2 2H6c-1.1 0-2-.9-2-2V13z'/%3E%3Cpath d='M7 15.5h10'/%3E%3C/svg%3E") !important;
  -webkit-mask-size: contain !important;
  mask-size: contain !important;
  -webkit-mask-repeat: no-repeat !important;
  mask-repeat: no-repeat !important;
  -webkit-mask-position: center !important;
  mask-position: center !important;
}
.sfc-pkg-field:has([data-sfc-dropdown*='side']) label::before,
.sfc-iw-field:has([data-sfc-dropdown*='side']) label::before {
  background-color: #4C7A3D !important;
}
.sfc-pkg-field:has([data-sfc-dropdown*='drinks']) label::before,
.sfc-iw-field:has([data-sfc-dropdown*='drinks']) label::before {
  background-color: #3B6E91 !important;
}

/* Category color-coding - tinted background + accent border, richer than plain white */
.sfc-pkg-field:has([data-sfc-dropdown*='entree']),
.sfc-iw-field:has([data-sfc-dropdown*='entree']) {
  border-left-color: #C00101 !important;
  background: linear-gradient(180deg, #fff6f6 0%, #ffffff 65%) !important;
}
.sfc-pkg-field:has([data-sfc-dropdown*='entree']) label,
.sfc-iw-field:has([data-sfc-dropdown*='entree']) label {
  color: #C00101 !important;
}
.sfc-pkg-field:has([data-sfc-dropdown*='side']),
.sfc-iw-field:has([data-sfc-dropdown*='side']) {
  border-left-color: #4C7A3D !important;
  background: linear-gradient(180deg, #f6faf4 0%, #ffffff 65%) !important;
}
.sfc-pkg-field:has([data-sfc-dropdown*='side']) label,
.sfc-iw-field:has([data-sfc-dropdown*='side']) label {
  color: #4C7A3D !important;
}
.sfc-pkg-field:has([data-sfc-dropdown*='drinks']),
.sfc-iw-field:has([data-sfc-dropdown*='drinks']) {
  border-left-color: #3B6E91 !important;
  background: linear-gradient(180deg, #f4f8fa 0%, #ffffff 65%) !important;
}
.sfc-pkg-field:has([data-sfc-dropdown*='drinks']) label,
.sfc-iw-field:has([data-sfc-dropdown*='drinks']) label {
  color: #3B6E91 !important;
}

/* Dropdown trigger button - clean white pill that pops against the tinted card */
.sfc-pkg-dropdown-btn,
.sfc-iw-dropdown-btn {
  width: 100% !important;
  background: #ffffff !important;
  border: 1.5px solid #e6d3d3 !important;
  border-radius: 10px !important;
  padding: 10px 14px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #111111 !important;
  box-shadow: 0 2px 6px rgba(0,0,0,0.05) !important;
  transition: border-color .15s ease, box-shadow .15s ease !important;
}
.sfc-pkg-dropdown-btn:hover,
.sfc-iw-dropdown-btn:hover,
.sfc-pkg-dropdown-btn:focus,
.sfc-iw-dropdown-btn:focus {
  border-color: #C00101 !important;
  box-shadow: 0 3px 10px rgba(192, 1, 1,0.14) !important;
}

/* Add-ons box - warm tinted card, red eyebrow label, no emoji */
.sfc-pkg-addons,
.sfc-iw-addons {
  clear: both !important;
  background: linear-gradient(135deg, #fffdf7 0%, #fff9ec 100%) !important;
  border: 1px solid #ecdcb0 !important;
  border-left: 4px solid #C99A3D !important;
  border-radius: 14px !important;
  padding: 14px 16px !important;
  margin-top: 16px !important;
  margin-bottom: 10px !important;
  box-shadow: 0 3px 10px rgba(0,0,0,0.04) !important;
}
.sfc-pkg-addon-title,
.sfc-iw-addon-title {
  color: #8a6d1f !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.07em !important;
  margin-bottom: 8px !important;
}
.sfc-pkg-addon-title::before,
.sfc-iw-addon-title::before {
  content: none !important;
}

.sfc-pkg-check,
.sfc-iw-check {
  display: flex !important;
  align-items: center !important;
  gap: 9px !important;
  padding: 7px 8px !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  transition: background .15s ease !important;
}
.sfc-pkg-check:hover,
.sfc-iw-check:hover {
  background: rgba(255,255,255,0.7) !important;
}
.sfc-pkg-check input[type='checkbox'],
.sfc-iw-check input[type='checkbox'] {
  width: 17px !important;
  height: 17px !important;
  accent-color: #C00101 !important;
  flex-shrink: 0 !important;
}

/* Live total box - bold red accent, stands out like the corporate order total */
.sfc-pkg-live-bottom,
.sfc-iw-clean-total {
  clear: both !important;
  background: linear-gradient(135deg, #fff5f5 0%, #ffffff 100%) !important;
  border: 1px solid #eadede !important;
  border-left: 4px solid #C00101 !important;
  border-radius: 14px !important;
  box-shadow: 0 6px 18px rgba(192, 1, 1,0.1) !important;
}




/* === SFC CATERING PACKAGES (page 3993) MOBILE TITLE+PRICE FIX v3 — 2026-07-11 === */
@media (max-width: 575px){
  body.page-id-3993 .wpc-paginated-products-body .wpc-food-menu-item{
    height:auto !important;
    max-height:none !important;
    min-height:186px !important;
    overflow:visible !important;
  }
  body.page-id-3993 .wpc-paginated-products-body .wpc-food-menu-item .wpc-food-inner-content,
  body.page-id-3993 .wpc-paginated-products-body .wpc-food-menu-item .wpc-food-content,
  body.page-id-3993 .wpc-paginated-products-body .wpc-food-menu-item .product-content,
  body.page-id-3993 .wpc-paginated-products-body .wpc-food-menu-item > .wpc-col-md-8{
    max-height:none !important;
    height:auto !important;
    overflow:visible !important;
  }
  body.page-id-3993 .wpc-paginated-products-body .wpc-food-menu-item h3,
  body.page-id-3993 .wpc-paginated-products-body .wpc-food-menu-item h3 a,
  body.page-id-3993 .wpc-paginated-products-body .wpc-food-menu-item .wpc-post-title,
  body.page-id-3993 .wpc-paginated-products-body .wpc-food-menu-item .wpc-post-title a{
    max-height:none !important;
    height:auto !important;
    overflow:visible !important;
    white-space:normal !important;
    display:block !important;
  }
  body.page-id-3993 .wpc-paginated-products-body .wpc-food-menu-item .wpc-post-title .wpc-title-border{
    display:none !important;
  }
  /* one price under the title: force ORIGINAL price visible, beat the mobile-price-clone snippet */
  html body.page-id-3993 .wpc-paginated-products-body .wpc-food-menu-item .wpc-menu-price,
  html body.page-id-3993 .wpc-paginated-products-body .wpc-food-menu-item .wpc-menu-currency{
    position:static !important;
    top:auto !important; left:auto !important; right:auto !important; bottom:auto !important;
    display:block !important;
    width:auto !important; max-width:none !important;
    margin:4px 0 0 0 !important;
    white-space:normal !important;
    overflow:visible !important;
    text-align:left !important;
  }
  /* avoid double line when price is nested inside currency wrapper */
  html body.page-id-3993 .wpc-paginated-products-body .wpc-food-menu-item .wpc-menu-currency .wpc-menu-price{
    margin:0 !important;
  }
  /* hide the JS-cloned duplicate price cards on this page */
  html body.page-id-3993 .wpc-paginated-products-body .wpc-food-menu-item .sfc-mobile-card-price{
    display:none !important;
  }
  /* keep range max hidden so only one figure shows */
  html body.page-id-3993 .wpc-paginated-products-body .wpc-food-menu-item .wpc-menu-price .max_price{
    display:none !important;
  }
}
/* === END SFC MOBILE TITLE+PRICE FIX === */

/* Header top bar (Instagram / Google Reviews / email): match nav link styling */
.elementor-4180 .elementor-element.elementor-element-2040766 .elementor-icon-list-item .elementor-icon-list-text,
.elementor-4180 .elementor-element.elementor-element-2040766 .elementor-icon-list-item > a {
    font-family: "Montserrat", Arial, sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.96px;
    text-transform: uppercase;
    color: #C00101;
    transition: color .2s ease;
}
.elementor-4180 .elementor-element.elementor-element-2040766 .elementor-icon-list-item a:hover .elementor-icon-list-text {
    color: #5f1111;
}
/* Even gaps: rely on the list's flex gap; keep the email pushed right */
.elementor-4180 .elementor-element.elementor-element-2040766 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:not(:last-child) {
    margin-inline: 0;
}
.elementor-4180 .elementor-element.elementor-element-2040766 .elementor-icon-list-icon {
    margin-inline-end: 7px;
}

/* Mini cart: lift "Continue to Order Details" button up from the bottom edge (mobile + desktop) */
.wpc-minicart-wrapper .wpc-woocommerce-mini-cart__buttons {
    margin-bottom: 18px !important;
}

/* Mini cart (v2, Jul 11 evening): details list gets its own grid row below multi-line titles */
.wpc-minicart-wrapper.style2 .wpc-woocommerce-mini-cart li dl.variation {
    grid-area: 2 / 2 / auto / 3 !important;
    margin: 0 !important;
}
.wpc-minicart-wrapper.style2 .wpc-woocommerce-mini-cart li .mini-cart-quantity-wrapper {
    grid-area: 3 / 1 / auto / 3 !important;
}

/* prevent sideways scroll */
html,body{overflow-x:clip;}

/* SFC Fix: header top-right — give the Call/Text button breathing room, separate it from the cart icon, drop the full-height divider */
.elementor-location-header .elementor-element-529e470{padding-right:28px!important;border-left:none!important}
.elementor-location-header .elementor-element-cbd29dc{margin-right:18px!important}
.elementor-location-header .elementor-element-0db4266 .elementor-button{border-radius:10px}


/* SAN FRAN CAFE — SIDE CART DRAWER (added by Claude). Remove this block to revert. */

.wpc-minicart-wrapper .wpc_cart_block{width:440px !important;max-width:calc(100vw - 24px) !important;height:auto !important;max-height:calc(100vh - 48px) !important;display:flex !important;flex-direction:column !important;overflow:hidden !important;background:#fff !important;border-radius:18px !important;border:1px solid rgba(0,0,0,.06) !important;box-shadow:0 24px 70px rgba(0,0,0,.20) !important;}
.wpc-minicart-wrapper .wpc_cart_block .wpc-minicart-header{background:#C00101 !important;padding:16px 16px 16px 22px !important;display:flex !important;align-items:center !important;justify-content:space-between !important;gap:12px !important;border-radius:0 !important;flex:0 0 auto !important;}
.wpc-minicart-wrapper .wpc-minicart-header .cart-counts{color:#fff !important;font-family:Montserrat,Arial,sans-serif !important;font-size:12px !important;font-weight:800 !important;letter-spacing:.10em !important;text-transform:uppercase !important;line-height:1 !important;display:flex !important;align-items:center !important;gap:8px !important;}
.wpc-minicart-wrapper .wpc-minicart-header .cart-count{display:inline-flex !important;align-items:center !important;gap:6px !important;}
.wpc-minicart-wrapper .wpc-minicart-header .wpc-mini-cart-count{display:inline-flex !important;align-items:center !important;justify-content:center !important;min-width:24px !important;height:24px !important;padding:0 7px !important;border-radius:999px !important;background:rgba(255,255,255,.18) !important;color:#fff !important;font-size:12px !important;font-weight:800 !important;letter-spacing:0 !important;line-height:1 !important;}
.wpc-minicart-wrapper .wpc-minicart-header .minicart-close{width:34px !important;height:34px !important;min-width:34px !important;padding:0 !important;margin:0 !important;border:0 !important;border-radius:50% !important;background:rgba(255,255,255,.16) !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;cursor:pointer !important;transition:background .18s ease;}
.wpc-minicart-wrapper .wpc-minicart-header .minicart-close:hover{background:rgba(255,255,255,.30) !important;}
.wpc-minicart-wrapper .wpc-minicart-header .minicart-close svg{width:20px !important;height:20px !important;}
.wpc-minicart-wrapper .wpc-minicart-header .minicart-close svg path:nth-of-type(3){display:none !important;}
.wpc-minicart-wrapper .wpc-minicart-header .minicart-close svg path{stroke:#fff !important;}
.wpc-minicart-wrapper .wpc_cart_block .wpc-menu-mini-cart,.wpc-minicart-wrapper .wpc_cart_block .wpc_background_color{flex:1 1 auto !important;min-height:0 !important;overflow-y:auto !important;background:#fff !important;padding:6px 22px 18px !important;}
.wpc-minicart-wrapper .ast-mini-cart-empty{display:none !important;}
.wpc-minicart-wrapper .wpc-empty-cart .cart-wrapper{text-align:center !important;padding:34px 10px 34px !important;}
.wpc-minicart-wrapper .wpc-empty-cart .cart-wrapper:before{content:"";display:block;width:72px;height:72px;margin:0 auto 18px;border-radius:50%;background:#FDF2F2 url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='34' height='34' viewBox='0 0 24 24' fill='none' stroke='%23C00101' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 8h12l-1 12H7L6 8z'/%3E%3Cpath d='M9 8V6a3 3 0 0 1 6 0v2'/%3E%3C/svg%3E") center/34px 34px no-repeat;}
.wpc-minicart-wrapper .wpc-woocommerce-mini-cart__empty-message{font-family:Montserrat,Arial,sans-serif !important;font-size:15px !important;font-weight:700 !important;color:#4a4a4a !important;margin:0 0 6px !important;padding:0 !important;line-height:1.4 !important;}
.wpc-minicart-wrapper .wpc-empty-cart .cart-wrapper:after{content:"Pick a tray, sandwich or package to get started.";display:block;font-family:Montserrat,Arial,sans-serif;font-size:13px;line-height:1.55;color:#8a8a8a;max-width:260px;margin:0 auto 22px;}
.wpc-minicart-wrapper a.wpc-empty-btn{display:inline-block !important;background:#C00101 !important;color:#fff !important;border:0 !important;border-radius:999px !important;padding:14px 30px !important;font-family:Montserrat,Arial,sans-serif !important;font-size:12px !important;font-weight:800 !important;letter-spacing:.06em !important;text-transform:uppercase !important;line-height:1 !important;width:auto !important;box-shadow:0 8px 20px rgba(192,1,1,.25) !important;}
.wpc-minicart-wrapper ul.wpc-woocommerce-mini-cart{margin:0 !important;padding:0 !important;list-style:none !important;}
.wpc-minicart-wrapper ul.wpc-woocommerce-mini-cart li{position:relative !important;margin:0 !important;padding:16px 30px 16px 0 !important;border:0 !important;border-bottom:1px solid rgba(0,0,0,.08) !important;list-style:none !important;}
.wpc-minicart-wrapper ul.wpc-woocommerce-mini-cart li:last-child{border-bottom:0 !important;}
.wpc-minicart-wrapper ul.wpc-woocommerce-mini-cart li img{width:62px !important;height:62px !important;object-fit:cover !important;border-radius:12px !important;border:1px solid rgba(0,0,0,.06) !important;margin-right:14px !important;}
.wpc-minicart-wrapper ul.wpc-woocommerce-mini-cart li .quantity{font-family:Montserrat,Arial,sans-serif !important;font-size:12.5px !important;font-weight:600 !important;color:#6f6f6f !important;}
.wpc-minicart-wrapper ul.wpc-woocommerce-mini-cart li .amount,.wpc-minicart-wrapper .wpc_pro_main_price{color:#C00101 !important;font-weight:800 !important;}
.wpc-minicart-wrapper .mini-cart-quantity-wrapper{display:inline-flex !important;align-items:center !important;border:1px solid rgba(0,0,0,.12) !important;border-radius:999px !important;overflow:hidden !important;background:#fff !important;margin-top:8px !important;}
.wpc-minicart-wrapper .mini-cart-quantity-wrapper input{border:0 !important;box-shadow:none !important;width:34px !important;text-align:center !important;font-family:Montserrat,Arial,sans-serif !important;font-size:13px !important;font-weight:700 !important;padding:4px 0 !important;background:transparent !important;}
.wpc-minicart-wrapper .mini-cart-quantity-wrapper span,.wpc-minicart-wrapper .mini-cart-quantity-wrapper button{width:28px !important;height:28px !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;background:transparent !important;border:0 !important;color:#C00101 !important;font-weight:800 !important;cursor:pointer !important;}
.wpc-minicart-wrapper .wpc-woocommerce-mini-cart__total{display:flex !important;align-items:center !important;justify-content:space-between !important;margin:14px 0 0 !important;padding:16px 0 0 !important;border-top:2px solid rgba(0,0,0,.08) !important;font-family:Montserrat,Arial,sans-serif !important;font-size:13px !important;font-weight:800 !important;letter-spacing:.04em !important;text-transform:uppercase !important;color:#222 !important;}
.wpc-minicart-wrapper .wpc-woocommerce-mini-cart__total .amount{font-size:19px !important;letter-spacing:-.02em !important;}
.wpc-minicart-wrapper .wpc-woocommerce-mini-cart__buttons,.wpc-minicart-wrapper .woocommerce-mini-cart__buttons{display:flex !important;flex-direction:column !important;gap:10px !important;margin:16px 0 4px !important;padding:0 !important;}
.wpc-minicart-wrapper .wpc-woocommerce-mini-cart__buttons a,.wpc-minicart-wrapper .woocommerce-mini-cart__buttons a,.wpc-minicart-wrapper .wpc_background_color a.button.wc-forward{display:block !important;width:100% !important;text-align:center !important;border-radius:999px !important;padding:14px 20px !important;font-family:Montserrat,Arial,sans-serif !important;font-size:12px !important;font-weight:800 !important;letter-spacing:.06em !important;text-transform:uppercase !important;line-height:1 !important;margin:0 !important;}
.wpc-minicart-wrapper a.checkout,.wpc-minicart-wrapper .wpc_background_color a.button.checkout.wc-forward{background:#C00101 !important;color:#fff !important;border:2px solid #C00101 !important;box-shadow:0 8px 20px rgba(192,1,1,.24) !important;}
.wpc-minicart-wrapper .wpc-woocommerce-mini-cart__buttons a:not(.checkout),.wpc-minicart-wrapper .woocommerce-mini-cart__buttons a:not(.checkout){background:#fff !important;color:#C00101 !important;border:2px solid rgba(192,1,1,.30) !important;box-shadow:none !important;}
@media (max-width:575px){.wpc-minicart-wrapper .wpc_cart_block{width:calc(100vw - 20px) !important;max-height:calc(100vh - 24px) !important;border-radius:16px !important;}.wpc-minicart-wrapper .wpc_cart_block .wpc-menu-mini-cart,.wpc-minicart-wrapper .wpc_cart_block .wpc_background_color{padding:6px 16px 16px !important;}.wpc-minicart-wrapper .wpc_cart_block .wpc-minicart-header{padding:14px 12px 14px 18px !important;}}

.wpc-minicart-wrapper .wpc_cart_block{bottom:auto !important;}
.wpc-minicart-wrapper .wpc_cart_block .wpc-menu-mini-cart{max-height:calc(100vh - 160px) !important;}

/* fix: collapse the forced-height product list so the panel hugs its content */
.wpc-minicart-wrapper .wpc_cart_block ul.wpc-woocommerce-mini-cart{height:auto !important;min-height:0 !important;padding-bottom:0 !important;}
.wpc-minicart-wrapper ul.wpc-woocommerce-mini-cart li{padding:12px !important;}

.wpc-minicart-wrapper .wpc_cart_block .widget_shopping_cart_content{height:auto !important;}
.wpc-minicart-wrapper .wpc_cart_block .cart-wrapper{height:auto !important;max-height:none !important;min-height:0 !important;}
.wpc-minicart-wrapper .wpc_cart_block ul.wpc-woocommerce-mini-cart{flex:0 1 auto !important;height:auto !important;overflow:visible !important;}

.wpc-minicart-wrapper .wpc_cart_block .wpc-subtotal-wrap{display:block !important;position:static !important;padding:14px 0 0 !important;margin:8px 0 0 !important;border-top:1px solid rgba(0,0,0,.10) !important;background:#fff !important;box-shadow:none !important;}
.wpc-minicart-wrapper .wpc_cart_block .wpc-woocommerce-mini-cart__total{border-top:0 !important;margin:0 !important;padding:0 !important;}
.wpc-minicart-wrapper .wpc_cart_block .wpc-woocommerce-mini-cart__total strong{font-size:12px !important;letter-spacing:.08em !important;}
.wpc-minicart-wrapper .wpc_cart_block .sfc-mc-note{display:block !important;width:100% !important;margin:8px 0 0 !important;font-family:Montserrat,Arial,sans-serif !important;font-size:11.5px !important;font-weight:500 !important;line-height:1.5 !important;letter-spacing:0 !important;text-transform:none !important;color:#8a8a8a !important;}
.wpc-minicart-wrapper .wpc_cart_block .wpc-minicart-extra,.wpc-minicart-wrapper .wpc_cart_block .wpc_pro_order_time,.wpc-minicart-wrapper .wpc_cart_block .wpc-coupon-wrapper{margin:0 !important;padding:0 !important;}
.wpc-minicart-wrapper .wpc_cart_block ul.wpc-woocommerce-mini-cart li a:not(.remove){color:#C00101 !important;}

/* one CTA only: keep the custom checkout box, hide the duplicate plugin buttons */
.wpc-minicart-wrapper .wpc_cart_block .wpc-subtotal-wrap .woocommerce-mini-cart__buttons,
.wpc-minicart-wrapper .wpc_cart_block .wpc-subtotal-wrap a.button.wc-forward{display:none !important;}
/* pinned footer */
.wpc-minicart-wrapper .wpc_cart_block .sfc-real-checkout-box{
 flex:0 0 auto !important;position:static !important;margin:0 !important;
 background:#fff !important;border:0 !important;border-top:1px solid rgba(0,0,0,.10) !important;
 border-radius:0 !important;box-shadow:0 -6px 18px rgba(0,0,0,.05) !important;padding:16px 22px 18px !important;}
.wpc-minicart-wrapper .wpc_cart_block .sfc-real-checkout-box a.sfc-real-checkout-btn{
 display:block !important;width:100% !important;text-align:center !important;background:#C00101 !important;color:#fff !important;
 border-radius:999px !important;padding:15px 20px !important;font-family:Montserrat,Arial,sans-serif !important;font-size:12px !important;
 font-weight:800 !important;letter-spacing:.06em !important;text-transform:uppercase !important;line-height:1 !important;
 box-shadow:0 8px 20px rgba(192,1,1,.24) !important;}

.wpc-minicart-wrapper .wpc_cart_block .wpc-menu-mini-cart{padding:8px 22px 10px !important;}
.wpc-minicart-wrapper .wpc_cart_block .wpc-subtotal-wrap{padding:12px 0 0 !important;margin:6px 0 0 !important;}
.wpc-minicart-wrapper .wpc_cart_block .sfc-real-checkout-box{padding:14px 22px 16px !important;}

.wpc-minicart-wrapper .wpc_cart_block .wpc-menu-mini-cart{padding:10px 20px 4px !important;}
.wpc-minicart-wrapper .wpc_cart_block ul.wpc-woocommerce-mini-cart li{padding:12px 12px 10px !important;margin:0 0 10px !important;}
.wpc-minicart-wrapper .wpc_cart_block ul.wpc-woocommerce-mini-cart li dl.variation{margin:6px 0 0 !important;}
.wpc-minicart-wrapper .wpc_cart_block ul.wpc-woocommerce-mini-cart li .sfc-mc-line{margin-top:8px !important;padding-top:8px !important;border-top:1px solid rgba(0,0,0,.06) !important;}
.wpc-minicart-wrapper .wpc_cart_block .wpc-subtotal-wrap{padding:12px 0 2px !important;margin:2px 0 0 !important;}
.wpc-minicart-wrapper .wpc_cart_block .sfc-mc-note{margin:6px 0 0 !important;}

.wpc-minicart-wrapper .wpc_cart_block ul.wpc-woocommerce-mini-cart li > a:not(.remove){display:flex !important;align-items:center !important;gap:12px !important;min-height:0 !important;}
.wpc-minicart-wrapper .wpc_cart_block ul.wpc-woocommerce-mini-cart li img{width:56px !important;height:56px !important;margin:0 !important;flex:0 0 56px !important;}
.wpc-minicart-wrapper .wpc_cart_block ul.wpc-woocommerce-mini-cart li dl.variation{margin:10px 0 0 !important;}

.wpc-minicart-wrapper .wpc_cart_block ul.wpc-woocommerce-mini-cart li dl.variation{margin:6px 0 0 !important;}
.wpc-minicart-wrapper .wpc_cart_block ul.wpc-woocommerce-mini-cart li > a:not(.remove){margin-bottom:0 !important;}


/* SAN FRAN CAFE — ORDER CONFIRMATION PAGE (added by Claude). Remove this block to revert. */

body.woocommerce-order-received{background:#fafafa;}
body.woocommerce-order-received .site-content .ast-container{max-width:900px !important;padding-left:20px !important;padding-right:20px !important;}
body.woocommerce-order-received .entry-header{text-align:center !important;margin:0 0 6px !important;padding:44px 0 0 !important;}
body.woocommerce-order-received h1.entry-title{font-size:0 !important;line-height:0 !important;margin:0 !important;}
body.woocommerce-order-received h1.entry-title:before{content:"Order Confirmed";display:block;font-family:Montserrat,Arial,sans-serif;font-size:38px;line-height:1.15;font-weight:900;letter-spacing:-.02em;color:#1c1c1c;}
body.woocommerce-order-received .entry-content{padding-bottom:70px !important;}
body.woocommerce-order-received .woocommerce-order{max-width:720px;margin:0 auto !important;}

/* success card */
body.woocommerce-order-received p.woocommerce-thankyou-order-received{
 position:relative;background:#fff;border:1px solid rgba(0,0,0,.07);border-radius:18px;
 box-shadow:0 8px 26px rgba(0,0,0,.055);padding:32px 28px 30px;margin:22px 0 26px !important;
 text-align:center;font-size:0 !important;line-height:0 !important;}
body.woocommerce-order-received p.woocommerce-thankyou-order-received:before{
 content:"";display:block;width:64px;height:64px;margin:0 auto 16px;border-radius:50%;
 background:#EAF7EE url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 24 24' fill='none' stroke='%231e9e4a' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E") center/30px 30px no-repeat;}
body.woocommerce-order-received p.woocommerce-thankyou-order-received:after{
 content:"Thank you — your order is confirmed. A confirmation email with your full receipt is on its way. Our team will be in touch to finalise timing and setup.";
 display:block;font-family:Montserrat,Arial,sans-serif;font-size:15px;line-height:1.6;font-weight:600;color:#4a4a4a;max-width:460px;margin:0 auto;}

/* order overview cards */
body.woocommerce-order-received ul.woocommerce-order-overview{
 display:grid !important;grid-template-columns:repeat(auto-fit,minmax(160px,1fr)) !important;gap:12px !important;
 list-style:none !important;margin:0 0 30px !important;padding:0 !important;border:0 !important;}
body.woocommerce-order-received ul.woocommerce-order-overview li{
 border:1px solid rgba(0,0,0,.07) !important;border-radius:14px !important;background:#fff !important;
 padding:14px 16px !important;margin:0 !important;float:none !important;width:auto !important;
 font-family:Montserrat,Arial,sans-serif !important;font-size:10.5px !important;font-weight:800 !important;
 letter-spacing:.09em !important;text-transform:uppercase !important;color:#8a8a8a !important;line-height:1.3 !important;}
body.woocommerce-order-received ul.woocommerce-order-overview li strong{
 display:block !important;margin-top:6px !important;font-size:15px !important;font-weight:800 !important;
 letter-spacing:-.01em !important;text-transform:none !important;color:#1c1c1c !important;word-break:break-word;}
body.woocommerce-order-received ul.woocommerce-order-overview li.total strong{color:#C00101 !important;font-size:17px !important;}

/* section headings */
body.woocommerce-order-received .woocommerce-order h2{
 font-family:Montserrat,Arial,sans-serif !important;font-size:13px !important;font-weight:900 !important;
 letter-spacing:.10em !important;text-transform:uppercase !important;color:#1c1c1c !important;margin:0 0 12px !important;}

/* order details table */
body.woocommerce-order-received .woocommerce-order-details,
body.woocommerce-order-received .woocommerce-customer-details{margin:0 0 26px !important;}
body.woocommerce-order-received table.woocommerce-table--order-details{
 width:100% !important;background:#fff !important;border:1px solid rgba(0,0,0,.07) !important;border-radius:16px !important;
 border-collapse:separate !important;border-spacing:0 !important;overflow:hidden !important;
 box-shadow:0 8px 26px rgba(0,0,0,.05) !important;margin:0 !important;font-family:Montserrat,Arial,sans-serif !important;}
body.woocommerce-order-received table.woocommerce-table--order-details th,
body.woocommerce-order-received table.woocommerce-table--order-details td{
 border:0 !important;border-bottom:1px solid rgba(0,0,0,.07) !important;padding:14px 18px !important;vertical-align:top !important;}
body.woocommerce-order-received table.woocommerce-table--order-details thead th{
 background:#faf7f7 !important;font-size:10.5px !important;font-weight:800 !important;letter-spacing:.09em !important;
 text-transform:uppercase !important;color:#8a8a8a !important;}
body.woocommerce-order-received table.woocommerce-table--order-details tbody td{font-size:14px !important;color:#222 !important;font-weight:600 !important;}
body.woocommerce-order-received table.woocommerce-table--order-details .product-quantity{color:#8a8a8a !important;font-weight:700 !important;}
body.woocommerce-order-received table.woocommerce-table--order-details .wc-item-meta{list-style:none !important;margin:6px 0 0 !important;padding:0 !important;font-size:12.5px !important;color:#6f6f6f !important;font-weight:500 !important;}
body.woocommerce-order-received table.woocommerce-table--order-details .wc-item-meta li{display:flex;gap:6px;margin:0 !important;}
body.woocommerce-order-received table.woocommerce-table--order-details .wc-item-meta p{margin:0 !important;display:inline !important;}
body.woocommerce-order-received table.woocommerce-table--order-details td.product-total,
body.woocommerce-order-received table.woocommerce-table--order-details tfoot td{text-align:right !important;white-space:nowrap !important;font-weight:800 !important;}
body.woocommerce-order-received table.woocommerce-table--order-details tfoot th{
 font-size:12px !important;font-weight:800 !important;letter-spacing:.05em !important;text-transform:uppercase !important;color:#6f6f6f !important;text-align:left !important;}
body.woocommerce-order-received table.woocommerce-table--order-details tfoot tr:last-child th,
body.woocommerce-order-received table.woocommerce-table--order-details tfoot tr:last-child td{border-bottom:0 !important;background:#faf7f7 !important;}
body.woocommerce-order-received table.woocommerce-table--order-details tfoot tr:last-child th{color:#1c1c1c !important;font-size:13px !important;}
body.woocommerce-order-received table.woocommerce-table--order-details tfoot tr:last-child td{color:#C00101 !important;font-size:19px !important;}

/* customer details */
body.woocommerce-order-received .woocommerce-customer-details address{
 background:#fff !important;border:1px solid rgba(0,0,0,.07) !important;border-radius:16px !important;
 box-shadow:0 8px 26px rgba(0,0,0,.05) !important;padding:18px 20px !important;font-style:normal !important;
 font-family:Montserrat,Arial,sans-serif !important;font-size:14px !important;line-height:1.7 !important;color:#333 !important;}
body.woocommerce-order-received .woocommerce-customer-details address p{margin:0 !important;}
body.woocommerce-order-received .woocommerce-columns--addresses{display:grid !important;grid-template-columns:repeat(auto-fit,minmax(240px,1fr)) !important;gap:16px !important;margin:0 !important;}
body.woocommerce-order-received .woocommerce-columns--addresses .woocommerce-column{width:auto !important;float:none !important;padding:0 !important;}

@media (max-width:600px){
 body.woocommerce-order-received h1.entry-title:before{font-size:28px;}
 body.woocommerce-order-received p.woocommerce-thankyou-order-received{padding:26px 18px 24px;}
 body.woocommerce-order-received table.woocommerce-table--order-details th,
 body.woocommerce-order-received table.woocommerce-table--order-details td{padding:12px 13px !important;}
}

body.woocommerce-order-received ul.woocommerce-order-overview:before,
body.woocommerce-order-received ul.woocommerce-order-overview:after{display:none !important;content:none !important;}
body.woocommerce-order-received .woocommerce-order:before,
body.woocommerce-order-received .woocommerce-order:after{display:none !important;}

body.woocommerce-order-received ul.woocommerce-order-overview{grid-template-columns:repeat(auto-fit,minmax(205px,1fr)) !important;}
body.woocommerce-order-received ul.woocommerce-order-overview li strong{word-break:normal !important;overflow-wrap:anywhere !important;}
body.woocommerce-order-received ul.woocommerce-order-overview li.email strong{font-size:13px !important;}

body.woocommerce-order-received .woocommerce-order h2{background:transparent !important;border:0 !important;padding:0 !important;box-shadow:none !important;}
body.woocommerce-order-received .woocommerce-order section{border:0 !important;background:transparent !important;box-shadow:none !important;padding:0 !important;}
body.woocommerce-order-received .woocommerce-customer-details .woocommerce-column__title{margin:0 0 12px !important;}