/* ============================================================
   AMANDA MARINO SPEAKS — Full Custom CSS
   WordPress Admin → Appearance → Customize → Additional CSS
   Last updated: You Do You Retreat rebrand
   ============================================================ */

/* ── GOOGLE FONTS ── */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400&family=Jost:wght@300;400;500&display=swap');

/* ── BRAND VARIABLES ── */
:root {
  --ydyy-cream:        #faf6ef;
  --ydyy-sand:         #e8dfc9;
  --ydyy-gold:         #b89b6a;
  --ydyy-gold-light:   #d4bb8c;
  --ydyy-forest:       #2d4a3e;
  --ydyy-forest-mid:   #3d6354;
  --ydyy-deep:         #1a2e28;
  --ydyy-text:         #2c2416;
  --ydyy-text-light:   #6b5f4e;
}

/* ============================================================
   WPFORMS
   ============================================================ */

/* Field base styles */
.wpforms-container input[type=date],
.wpforms-container input[type=datetime],
.wpforms-container input[type=datetime-local],
.wpforms-container input[type=email],
.wpforms-container input[type=month],
.wpforms-container input[type=number],
.wpforms-container input[type=password],
.wpforms-container input[type=range],
.wpforms-container input[type=search],
.wpforms-container input[type=tel],
.wpforms-container input[type=text],
.wpforms-container input[type=time],
.wpforms-container input[type=url],
.wpforms-container input[type=week],
.wpforms-container select,
.wpforms-container textarea {
  background: #fff;
  border-width: 0 0 1px 0;
  color: var(--ast-global-color-2);
  opacity: 0.5;
}

/* On focus */
.wpforms-container input:focus,
.wpforms-container select:focus,
.wpforms-container textarea:focus {
  outline: none;
  opacity: 1;
  border-color: var(--ast-global-color-0);
}

/* No resize on textarea */
.wpforms-container textarea {
  resize: none;
}

/* Message box fixed height */
.wpforms-container .wpforms-field-textarea textarea.wpforms-field-medium {
  height: 136px;
}

/* Button */
.wpforms-container button {
  padding: 15px 34px;
  font-size: 15px;
}

/* ============================================================
   FOOTER LAYOUT — 2 big columns, 1 small center
   ============================================================ */

.ast-builder-grid-row-3-equal .ast-builder-grid-row {
  grid-template-columns: 3fr 1fr 3fr;
}

/* ============================================================
   SITE-WIDE TYPOGRAPHY
   ============================================================ */

body {
  font-family: 'Jost', sans-serif !important;
  background-color: var(--ydyy-cream) !important;
  color: var(--ydyy-text) !important;
}

h1, h2, h3, h4, h5, h6,
.woocommerce h1, .woocommerce h2, .woocommerce h3 {
  font-family: 'Cormorant Garamond', serif !important;
  font-weight: 300 !important;
  color: var(--ydyy-forest) !important;
  letter-spacing: 0.01em;
}

/* ============================================================
   WOOCOMMERCE — BUTTONS
   NOTE: Checkout button display:none removed — it was hiding
   the proceed-to-checkout button. Replaced with full styling.
   ============================================================ */

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #payment #place_order,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
  display: inline-block !important; /* overrides the old display:none */
  background-color: var(--ydyy-gold) !important;
  color: #ffffff !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 0.72rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 14px 36px !important;
  transition: background-color 0.3s, transform 0.2s !important;
  box-shadow: none !important;
  line-height: 1.8em !important;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce #payment #place_order:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
  background-color: var(--ydyy-forest) !important;
  color: #ffffff !important;
  transform: translateY(-2px) !important;
}

/* ============================================================
   WOOCOMMERCE — PRODUCT PAGE
   ============================================================ */

.woocommerce div.product {
  background: var(--ydyy-cream) !important;
}

.woocommerce div.product .product_title {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: clamp(2rem, 4vw, 3rem) !important;
  font-weight: 300 !important;
  color: var(--ydyy-forest) !important;
  line-height: 1.25 !important;
  margin-bottom: 12px !important;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
  color: var(--ydyy-gold) !important;
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 2.4rem !important;
  font-weight: 300 !important;
}

/* Tabs */
.woocommerce div.product .woocommerce-tabs ul.tabs {
  border-bottom: 1px solid var(--ydyy-sand) !important;
  padding: 0 !important;
  margin-bottom: 32px !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
  background: transparent !important;
  border: none !important;
  border-bottom: 2px solid transparent !important;
  margin: 0 !important;
  border-radius: 0 !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  font-family: 'Jost', sans-serif !important;
  font-size: 0.7rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: var(--ydyy-text-light) !important;
  padding: 12px 20px !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
  border-bottom: 2px solid var(--ydyy-gold) !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
  color: var(--ydyy-forest) !important;
}

/* Description */
.woocommerce div.product div.summary,
.woocommerce div.product .woocommerce-product-details__short-description,
.woocommerce div.product #tab-description {
  font-family: 'Jost', sans-serif !important;
  font-weight: 300 !important;
  line-height: 1.85 !important;
  color: var(--ydyy-text-light) !important;
  font-size: 0.95rem !important;
}

/* Quantity */
.woocommerce div.product form.cart .quantity .qty {
  border: 1px solid var(--ydyy-sand) !important;
  border-radius: 0 !important;
  font-family: 'Jost', sans-serif !important;
  color: var(--ydyy-text) !important;
  background: #fff !important;
  padding: 10px 14px !important;
  width: 70px !important;
}

/* Stock badge */
.woocommerce div.product .stock {
  color: var(--ydyy-forest-mid) !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 0.75rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
}

/* Product image */
.woocommerce div.product div.images .woocommerce-product-gallery__image img {
  border: none !important;
  border-radius: 0 !important;
}

/* ============================================================
   WOOCOMMERCE — CART TABLE
   ============================================================ */

.woocommerce-cart table.cart {
  border: none !important;
  background: #fff !important;
}

.woocommerce-cart table.cart thead {
  background: var(--ydyy-forest) !important;
}

.woocommerce-cart table.cart thead th {
  font-family: 'Jost', sans-serif !important;
  font-size: 0.65rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,0.7) !important;
  border: none !important;
  padding: 16px 20px !important;
}

.woocommerce-cart table.cart td {
  border-bottom: 1px solid var(--ydyy-sand) !important;
  padding: 24px 20px !important;
  vertical-align: middle !important;
  font-family: 'Jost', sans-serif !important;
  font-weight: 300 !important;
  color: var(--ydyy-text) !important;
}

.woocommerce-cart table.cart td.product-name a {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 1.15rem !important;
  font-weight: 400 !important;
  color: var(--ydyy-forest) !important;
  text-decoration: none !important;
}

.woocommerce-cart table.cart td.product-price,
.woocommerce-cart table.cart td.product-subtotal {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 1.3rem !important;
  color: var(--ydyy-gold) !important;
  font-weight: 300 !important;
}

/* ── CART TOTALS ── */
.woocommerce-cart .cart_totals {
  background: var(--ydyy-deep) !important;
  padding: 40px !important;
  color: #fff !important;
}

.woocommerce-cart .cart_totals h2 {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 1.6rem !important;
  font-weight: 300 !important;
  color: #fff !important;
  margin-bottom: 24px !important;
}

.woocommerce-cart .cart_totals table th,
.woocommerce-cart .cart_totals table td {
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  padding: 14px 0 !important;
  color: rgba(255,255,255,0.7) !important;
  font-family: 'Jost', sans-serif !important;
  font-weight: 300 !important;
}

.woocommerce-cart .cart_totals .order-total th,
.woocommerce-cart .cart_totals .order-total td {
  color: var(--ydyy-gold-light) !important;
  font-size: 1.1rem !important;
}

.woocommerce-cart .cart_totals .order-total td strong {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 1.8rem !important;
  font-weight: 300 !important;
  color: var(--ydyy-gold-light) !important;
}

/* ── EMPTY CART ── */
.woocommerce-cart .cart-empty {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 1.4rem !important;
  font-weight: 300 !important;
  font-style: italic !important;
  color: var(--ydyy-text-light) !important;
  text-align: center !important;
  padding: 40px 0 !important;
}

.woocommerce-cart .return-to-shop .button {
  display: inline-block !important;
  background: var(--ydyy-forest) !important;
  color: #fff !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 0.72rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  padding: 14px 36px !important;
  border-radius: 0 !important;
  text-decoration: none !important;
  border: none !important;
}

/* ============================================================
   WOOCOMMERCE — CHECKOUT
   ============================================================ */

.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout #order_review_heading {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 1.5rem !important;
  font-weight: 300 !important;
  color: var(--ydyy-forest) !important;
  border-bottom: 1px solid var(--ydyy-sand) !important;
  padding-bottom: 12px !important;
  margin-bottom: 28px !important;
}

.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout textarea,
.woocommerce-checkout select {
  border: 1px solid var(--ydyy-sand) !important;
  border-radius: 0 !important;
  font-family: 'Jost', sans-serif !important;
  font-weight: 300 !important;
  color: var(--ydyy-text) !important;
  padding: 12px 16px !important;
  background: #fff !important;
  box-shadow: none !important;
}

.woocommerce-checkout input:focus,
.woocommerce-checkout textarea:focus,
.woocommerce-checkout select:focus {
  border-color: var(--ydyy-gold) !important;
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(184,155,106,0.15) !important;
}

/* Form labels */
.woocommerce form .form-row label,
.woocommerce-checkout label {
  font-family: 'Jost', sans-serif !important;
  font-size: 0.68rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  color: var(--ydyy-text-light) !important;
  margin-bottom: 6px !important;
}

/* ============================================================
   WOOCOMMERCE — MISC
   ============================================================ */

/* Notices */
.woocommerce-message,
.woocommerce-info {
  border-top-color: var(--ydyy-gold) !important;
  background: #fff !important;
  font-family: 'Jost', sans-serif !important;
  font-weight: 300 !important;
  color: var(--ydyy-text) !important;
}

.woocommerce-error {
  border-top-color: #c4714a !important;
}

/* Breadcrumbs */
.woocommerce .woocommerce-breadcrumb {
  font-family: 'Jost', sans-serif !important;
  font-size: 0.72rem !important;
  font-weight: 300 !important;
  letter-spacing: 0.1em !important;
  color: var(--ydyy-text-light) !important;
}

.woocommerce .woocommerce-breadcrumb a {
  color: var(--ydyy-gold) !important;
  text-decoration: none !important;
}

/* Related products headings */
.related.products h2,
.up-sells h2 {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 1.6rem !important;
  font-weight: 300 !important;
  color: var(--ydyy-forest) !important;
  border-bottom: 1px solid var(--ydyy-sand) !important;
  padding-bottom: 12px !important;
  margin-bottom: 28px !important;
}

/* Star ratings */
.woocommerce .star-rating span::before,
.woocommerce .star-rating::before {
  color: var(--ydyy-gold) !important;
}

/* ============================================================
   CART PAGE — TARGETED FIXES (based on live screenshot review)
   ============================================================ */

/* ── FIX 1: Header banner — remove light blue, replace with deep forest ── */
.woocommerce-cart .entry-header,
.woocommerce-cart .page-header,
.woocommerce-cart .ast-page-title-wrap,
.woocommerce-cart header.entry-header,
.site-header,
.ast-masthead-custom-menu-items img,
.woocommerce-cart .ast-above-header,
.woocommerce-cart .main-header-bar {
  background-color: var(--ydyy-deep) !important;
  background-image: none !important;
}

/* Target the logo banner area specifically — the light blue block above the cart */
.woocommerce-cart .entry-content > p:first-child img,
.woocommerce-cart .entry-content img:first-of-type {
  display: block;
  background: var(--ydyy-deep) !important;
  padding: 24px !important;
  width: 100% !important;
  max-height: 160px !important;
  object-fit: contain !important;
}

/* The wrapping div around the logo image at top of cart */
.woocommerce-cart .entry-content > p:first-child,
.woocommerce-cart .wp-block-image:first-child,
.woocommerce-cart figure.wp-block-image:first-of-type {
  background: var(--ydyy-deep) !important;
  margin: 0 !important;
  padding: 24px !important;
  text-align: center !important;
}

/* ── FIX 2: "Update Cart" button — forest green to distinguish from gold CTA ── */
.woocommerce-cart table.cart td.actions .button[name="update_cart"],
.woocommerce-cart table.cart .actions input[name="update_cart"],
.woocommerce-cart table.cart .actions button[name="update_cart"] {
  background-color: var(--ydyy-forest) !important;
  color: #fff !important;
  opacity: 1 !important;
}

.woocommerce-cart table.cart td.actions .button[name="update_cart"]:hover {
  background-color: var(--ydyy-deep) !important;
}

/* "Apply Coupon" button stays gold — already correct */
.woocommerce-cart table.cart td.actions .button[name="apply_coupon"] {
  background-color: var(--ydyy-gold) !important;
}

/* ── FIX 3: Quantity input in cart table — make it visible and styled ── */
.woocommerce-cart table.cart td.product-quantity .qty,
.woocommerce-cart table.cart td.product-quantity input.qty {
  border: 1px solid var(--ydyy-sand) !important;
  border-radius: 0 !important;
  background: #fff !important;
  color: var(--ydyy-text) !important;
  font-family: 'Jost', sans-serif !important;
  font-weight: 300 !important;
  font-size: 0.95rem !important;
  padding: 8px 12px !important;
  width: 64px !important;
  text-align: center !important;
}

.woocommerce-cart table.cart td.product-quantity .qty:focus {
  border-color: var(--ydyy-gold) !important;
  outline: none !important;
}

/* ── FIX 4: Product name styling in cart — more elegant ── */
.woocommerce-cart table.cart td.product-name {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 1.2rem !important;
  font-weight: 400 !important;
  color: var(--ydyy-forest) !important;
}

.woocommerce-cart table.cart td.product-name a {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 1.2rem !important;
  font-weight: 400 !important;
  color: var(--ydyy-forest) !important;
  text-decoration: none !important;
  letter-spacing: 0.01em !important;
}

/* ── FIX 5: Remove button (×) — style it cleanly ── */
.woocommerce-cart table.cart td.product-remove a.remove {
  color: var(--ydyy-sand) !important;
  font-size: 1.2rem !important;
  font-weight: 300 !important;
  border: 1px solid var(--ydyy-sand) !important;
  border-radius: 50% !important;
  width: 28px !important;
  height: 28px !important;
  line-height: 26px !important;
  text-align: center !important;
  display: block !important;
  transition: color 0.2s, border-color 0.2s !important;
}

.woocommerce-cart table.cart td.product-remove a.remove:hover {
  color: #c4714a !important;
  border-color: #c4714a !important;
  background: transparent !important;
}

/* ── FIX 6: Coupon input field ── */
.woocommerce-cart table.cart td.actions #coupon_code {
  border: 1px solid var(--ydyy-sand) !important;
  border-radius: 0 !important;
  font-family: 'Jost', sans-serif !important;
  font-weight: 300 !important;
  font-size: 0.85rem !important;
  padding: 12px 16px !important;
  color: var(--ydyy-text) !important;
  background: #fff !important;
  box-shadow: none !important;
}

.woocommerce-cart table.cart td.actions #coupon_code:focus {
  border-color: var(--ydyy-gold) !important;
  outline: none !important;
}

/* ── FIX 7: Proceed to Checkout button — full width, prominent ── */
.woocommerce-cart .wc-proceed-to-checkout {
  padding: 0 !important;
  margin-top: 24px !important;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  font-size: 0.75rem !important;
  padding: 18px 36px !important;
  background-color: var(--ydyy-gold) !important;
  letter-spacing: 0.2em !important;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
  background-color: var(--ydyy-forest) !important;
  transform: translateY(-2px) !important;
}
.woocommerce-cart table.cart td.product-quantity {
  display: table-cell !important;
  visibility: visible !important;
  min-width: 80px !important;
}

.woocommerce-cart table.cart input.qty {
  display: inline-block !important;
  visibility: visible !important;
  width: 64px !important;
  opacity: 1 !important;
}
/* ============================================================
   END
   ============================================================ */