/* ============================================================
   B. HEADER  -  wordmark never clipped, one duplicate promo bar
   ============================================================ */
#pl-welcome-bar{ display:none !important; }          /* duplicate of .plmf-top, sat over the nav */

.logo-txt:not(#wpx){
  display:inline-flex !important; flex-direction:row !important;
  align-items:baseline !important; gap:.34em !important;
  white-space:nowrap !important;
  overflow:visible !important; text-overflow:clip !important;
  flex:0 0 auto !important; min-width:0 !important;
}
.logo-txt:not(#wpx) span{
  display:inline !important; white-space:nowrap !important;
  font-size:inherit !important; letter-spacing:inherit !important;
}
.logo:not(#wpx){ overflow:visible !important; flex:0 0 auto !important; }
@media (max-width:900px){
  .logo-txt:not(#wpx){ font-size:13.5px !important; letter-spacing:.06em !important; }
  .logo:not(#wpx) img{ width:30px !important; height:30px !important; }
  nav.nav .nav-links{ min-width:0 !important; }
}
@media (max-width:380px){ .logo-txt:not(#wpx){ font-size:12px !important; } }

/* ============================================================
   A1 / A2.  wishlist feedback  -  one message, instant red heart
   ============================================================ */
.plmf-iconbtn--wish.pl-wish-pending svg,
.plmf-iconbtn--wish.pl-wish-pending svg *{
  fill:#B5451B !important; stroke:#B5451B !important;
}
/* the plugin's own floating notices duplicate our toast */
.wlfmc-popup, .wlfmc-wishlist-popup, .wlfmc-popup-wrapper,
.wlfmc-guest-notice-wrapper, .wlfmc-notice{ display:none !important; }
body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) > .woocommerce-message,
body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) > .woocommerce-error,
body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) > .woocommerce-info{
  display:none !important;
}

/* ============================================================
   A3 / A4.  WISHLIST PAGE  -  product grid, tighter frame
   ============================================================ */
/* A4  gaps */
body.wlfmc-wishlist header:not(#wpx){ padding:120px 5% 22px !important; }
body.wlfmc-wishlist #wlfmc-wishlist-form:not(#wpx){ padding:0 !important; margin:0 !important; }
body.wlfmc-wishlist .wlfmc-wishlist-table-wrapper:not(#wpx){ padding:0 !important; margin:0 !important; overflow:visible !important; }
body.wlfmc-wishlist .glass-panel:not(#wpx){ padding:24px 20px !important; }
@media (max-width:900px){
  body.wlfmc-wishlist header:not(#wpx){ padding:40px 16px 12px !important; }
  body.wlfmc-wishlist .glass-panel:not(#wpx){ padding:16px 12px !important; }
}

/* A3  table -> cards */
body.wlfmc-wishlist .wlfmc-wishlist-table:not(#wpx),
body.wlfmc-wishlist .wlfmc-wishlist-table-wrapper:not(#wpx){ display:block !important; width:100% !important; }
body.wlfmc-wishlist .wlfmc-wishlist-table tbody.wishlist-items-wrapper:not(.wishlist-empty){
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important; width:100% !important;
}
@media (min-width:900px){
  body.wlfmc-wishlist .wlfmc-wishlist-table tbody.wishlist-items-wrapper:not(.wishlist-empty){
    grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:18px !important;
  }
}
body.wlfmc-wishlist tbody.wishlist-empty{ display:block !important; }

body.wlfmc-wishlist tr.wlfmc-table-item:not(#wpx){
  display:flex !important; flex-direction:column !important;
  background:rgba(255,255,255,.72) !important;
  border:1px solid rgba(181,69,27,.18) !important;
  border-radius:16px !important;
  box-shadow:0 4px 24px rgba(44,44,42,.10) !important;
  overflow:hidden !important; position:relative !important;
  padding:0 0 10px !important; margin:0 !important;
  width:auto !important; max-width:100% !important; min-width:0 !important;
  box-sizing:border-box !important;
}
body.wlfmc-wishlist tr.wlfmc-table-item > td:not(#wpx){
  display:block !important; width:100% !important; max-width:100% !important; min-width:0 !important;
  box-sizing:border-box !important;
  border:0 !important; background:none !important; text-align:left !important;
}
body.wlfmc-wishlist tr.wlfmc-table-item img{ max-width:100% !important; }
body.wlfmc-wishlist tr.wlfmc-table-item > td.first-column{ padding:0 !important; }
body.wlfmc-wishlist tr.wlfmc-table-item > td.center-column{ padding:10px 12px 4px !important; }
body.wlfmc-wishlist tr.wlfmc-table-item > td.last-column{ padding:0 12px !important; }

body.wlfmc-wishlist .wlfmc-thumbnail-wrapper:not(#wpx){
  display:block !important; position:relative !important;
  width:100% !important; min-width:0 !important; padding:0 !important; margin:0 !important;
}
body.wlfmc-wishlist a.product-thumbnail{ display:block !important; }
body.wlfmc-wishlist a.product-thumbnail img{
  width:100% !important; height:auto !important;
  aspect-ratio:1/1 !important; object-fit:cover !important; display:block !important; border-radius:0 !important;
}
/* remove control as a small round X on the image, checkbox gone */
body.wlfmc-wishlist .wlfmc-action-icons:not(#wpx){
  position:absolute !important; top:8px !important; right:8px !important; left:auto !important;
  width:auto !important; z-index:3 !important; margin:0 !important; padding:0 !important;
  display:block !important;
}
body.wlfmc-wishlist .wlfmc-action-icons .product-checkbox{ display:none !important; }
body.wlfmc-wishlist .wlfmc-action-icons a.product-remove{
  display:flex !important; align-items:center !important; justify-content:center !important;
  width:28px !important; height:28px !important; border-radius:50% !important;
  background:rgba(255,255,255,.92) !important; color:#B5451B !important;
  box-shadow:0 2px 8px rgba(44,44,42,.18) !important;
}
body.wlfmc-wishlist a.product-name{
  font:600 14px/1.35 'DM Sans',system-ui,sans-serif !important; color:#2C2C2A !important;
  display:-webkit-box !important; -webkit-line-clamp:2; -webkit-box-orient:vertical;
  overflow:hidden !important; text-decoration:none !important;
}
body.wlfmc-wishlist a.product-name strong{ font-weight:600 !important; }
body.wlfmc-wishlist .product-price{ font:600 14px/1.3 'DM Sans',system-ui,sans-serif !important; color:#164A41 !important; margin-top:6px !important; }
body.wlfmc-wishlist td.last-column .button,
body.wlfmc-wishlist td.last-column a.add_to_cart_button{
  width:100% !important; text-align:center !important;
  padding:9px 10px !important; font-size:13px !important; border-radius:999px !important;
}
/* A3  bottom bulk actions off, sharing kept */
body.wlfmc-wishlist .wlfmc-wishlist-footer .action-wrapper,
body.wlfmc-wishlist .wlfmc_wishlist_bulk_action,
body.wlfmc-wishlist .add-all-to-cart-btn,
body.wlfmc-wishlist button[name="apply_bulk_actions"],
body.wlfmc-wishlist button[name="add_all_to_cart"],
body.wlfmc-wishlist .wlfmc-default-table-header{ display:none !important; }
body.wlfmc-wishlist .wlfmc-wishlist-footer:not(#wpx),
body.wlfmc-wishlist .wlfmc-wishlist-footer tr,
body.wlfmc-wishlist .wlfmc-wishlist-footer td{
  display:block !important; background:none !important; border:0 !important;
  padding:0 !important; margin:0 !important; box-shadow:none !important;
}
body.wlfmc-wishlist .wlfmc-share{ margin-top:14px !important; }

/* ============================================================
   C.  FILTER PANEL  -  group rail left, values right
   ============================================================ */
.v29-sh .v29-sh-bo:not(#wpx){ padding:0 !important; overflow:hidden !important; }
.v29-sh.pl-rail .v29-sh-bo .pl2-sidebar{
  display:grid !important;
  grid-template-columns:132px minmax(0,1fr) !important;
  height:100% !important; padding:0 !important; margin:0 !important;
  background:transparent !important; border:0 !important;
}
@media (min-width:520px){ .v29-sh.pl-rail .v29-sh-bo .pl2-sidebar{ grid-template-columns:168px minmax(0,1fr) !important; } }
.v29-sh.pl-rail .pl2-sidebar > h4{ display:none !important; }

.v29-sh.pl-rail .v29-sh-pn{ height:82vh !important; max-height:82vh !important; display:flex !important; flex-direction:column !important; }
.v29-sh.pl-rail .v29-sh-bo{ flex:1 1 auto !important; min-height:0 !important; }
.pl-rail-nav{
  background:rgba(22,74,65,.09) !important;
  border-right:1px solid rgba(181,69,27,.16) !important;
  overflow-y:auto !important; padding:6px 0 !important; margin:0 !important; list-style:none !important;
}
.pl-rail-nav li{ list-style:none !important; margin:0 !important; }
.pl-rail-nav button{
  display:block; width:100%; text-align:left; background:none; border:0;
  padding:13px 12px; font:600 13px/1.25 'DM Sans',system-ui,sans-serif;
  color:#5B5B55; cursor:pointer; border-left:3px solid transparent;
}
.pl-rail-nav button.is-on{
  background:#FFFDEE; color:#164A41; font-weight:700;
  border-left-color:#B5451B;
}
.pl-rail-pane{ overflow-y:auto !important; padding:10px 14px 14px !important; }
.pl-rail-pane .pl2-filter-group,
.pl-rail-pane .pl-f-group{ display:none !important; margin:0 !important; }
.pl-rail-pane .pl2-filter-group.is-on,
.pl-rail-pane .pl-f-group.is-on{ display:block !important; }
.pl-rail-pane .pl2-filter-label,
.pl-rail-pane .pl-f-group > h3{ display:none !important; }
.pl-rail-pane hr{ display:none !important; }
.pl-rail-pane ul{ list-style:none !important; margin:0 !important; padding:0 !important; }
.pl-rail-pane li{ list-style:none !important; margin:0 !important; }
.pl-rail-pane li > a{
  display:flex !important; align-items:center !important; justify-content:space-between !important; gap:10px !important;
  padding:11px 4px !important; border-bottom:1px solid rgba(181,69,27,.12) !important;
  font:500 14px/1.3 'DM Sans',system-ui,sans-serif !important; color:#2C2C2A !important; text-decoration:none !important;
}
.pl-rail-pane li > a span{ font-size:12px !important; color:#5B5B55 !important; }
.pl-rail-pane li > a.pl2-active, .pl-rail-pane li > a.active{ color:#164A41 !important; font-weight:700 !important; }
.pl-rail-reset{
  background:none; border:0; cursor:pointer; margin-left:auto; margin-right:10px;
  font:600 13px/1 'DM Sans',system-ui,sans-serif; color:#B5451B; padding:6px 2px;
}
.v29-sh.pl-rail .v29-sh-hd{ display:flex !important; align-items:center !important; }

/* ============================================================
   D.  CORPORATE GIFTING + ARTICLES  -  lighter frame, full width
   ============================================================ */
/* the main glass frame: less milk, more of the photograph behind it */
html body.pl-wide:not(#wpx):not(#wpy) main.page-main:not(#wpz),
html body.pl-wide:not(#wpx):not(#wpy) section.glass-panel-section:not(#wpz){
  background:rgba(255,255,255,.55) !important;
  -webkit-backdrop-filter:blur(12px) saturate(140%) !important;
  backdrop-filter:blur(12px) saturate(140%) !important;
  border:1px solid rgba(181,69,27,.18) !important;
}
body.pl-wide .glass-panel:not(#wpx){ background:transparent !important; }

/* the content wrapper carried 115px of side padding, which is where the
   space was going. Mobile first: a normal gutter, widening with the screen. */
body.pl-wide .page-content:not(#wpx){
  padding-left:14px !important; padding-right:14px !important;
}
@media (min-width:700px){
  body.pl-wide .page-content:not(#wpx){ padding-left:24px !important; padding-right:24px !important; }
}
body.pl-wide ul.products:not(#wpx),
body.pl-wide .wp-block-latest-posts__list:not(#wpx){ max-width:none !important; width:100% !important; }

/* mobile first: two across, then three, then four */
body.pl-wide ul.products:not(#wpx),
body.pl-wide .wp-block-latest-posts__list:not(#wpx){
  display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:12px !important;
}
@media (min-width:700px){
  body.pl-wide ul.products:not(#wpx),
  body.pl-wide .wp-block-latest-posts__list:not(#wpx){ grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:18px !important; }
}
@media (min-width:1100px){
  body.pl-wide ul.products:not(#wpx),
  body.pl-wide .wp-block-latest-posts__list:not(#wpx){ grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:22px !important; }
}
body.pl-wide ul.products > li:not(#wpx),
body.pl-wide .wp-block-latest-posts__list > li:not(#wpx){
  width:auto !important; max-width:100% !important; min-width:0 !important; margin:0 !important; float:none !important;
}

/* icon + text row that replaces the long paragraphs */
.pl-facts{
  display:grid !important; gap:10px !important; margin:16px 0 24px !important;
  grid-template-columns:minmax(0,1fr);
}
@media (min-width:600px){ .pl-facts{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px !important; } }
@media (min-width:1000px){ .pl-facts{ grid-template-columns:repeat(3,minmax(0,1fr)); } }
.pl-fact{
  display:flex; gap:10px; align-items:flex-start;
  background:rgba(255,255,255,.72); border:1px solid rgba(181,69,27,.18);
  border-radius:14px; padding:14px 14px;
}
.pl-fact svg{ width:22px; height:22px; flex:0 0 22px; stroke:#B5451B; fill:none; stroke-width:1.7; margin-top:1px; }
.pl-fact b{ display:block; font:600 14px/1.25 'DM Sans',system-ui,sans-serif; color:#164A41; margin-bottom:3px; }
.pl-fact span{ font:400 13px/1.45 'DM Sans',system-ui,sans-serif; color:#5B5B55; }

/* ============================================================
   E.  CONTACT  -  inner cards get their padding back
   ============================================================ */
body.pl-contact .glass-panel:not(#wpx){
  padding:26px 24px !important; box-sizing:border-box !important;
}
@media (max-width:900px){
  /* the two cards are flex items; min-width:auto was letting the wider one
     push past the frame, which is why they read as stuck to the left edge */
  body.pl-contact .glass-panel-section > div{ flex-wrap:wrap !important; min-width:0 !important; }
  body.pl-contact .glass-panel:not(#wpx){
    padding:18px 16px !important;
    flex:1 1 100% !important; width:100% !important; min-width:0 !important; max-width:100% !important;
    margin-left:0 !important; margin-right:0 !important;
  }
}
body.pl-contact .glass-panel input:not([type=checkbox]):not([type=radio]),
body.pl-contact .glass-panel textarea,
body.pl-contact .glass-panel select{
  width:100% !important; max-width:100% !important; box-sizing:border-box !important;
}
body.pl-contact .glass-panel > *{ max-width:100% !important; }