.elementor-1846 .elementor-element.elementor-element-dcf0a48{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-1846 .elementor-element.elementor-element-f70242b{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-1846 .elementor-element.elementor-element-f70242b.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-1846 .elementor-element.elementor-element-fb2d6ee{width:var( --container-widget-width, 63.541% );max-width:63.541%;--container-widget-width:63.541%;--container-widget-flex-grow:0;}.elementor-1846 .elementor-element.elementor-element-fb2d6ee > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 067px 0px 0px;}.elementor-1846 .elementor-element.elementor-element-fb2d6ee.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-1846 .elementor-element.elementor-element-2dea717{width:var( --container-widget-width, 96.761% );max-width:96.761%;--container-widget-width:96.761%;--container-widget-flex-grow:0;}.elementor-1846 .elementor-element.elementor-element-2dea717.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-1846 .elementor-element.elementor-element-f701e58{width:100%;max-width:100%;}.elementor-1846 .elementor-element.elementor-element-2cb93d7{width:100%;max-width:100%;}.elementor-1846 .elementor-element.elementor-element-2cb93d7 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-1846 .elementor-element.elementor-element-2cb93d7.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-1846 .elementor-element.elementor-element-644adca{width:var( --container-widget-width, 109.435% );max-width:109.435%;--container-widget-width:109.435%;--container-widget-flex-grow:0;}.elementor-1846 .elementor-element.elementor-element-644adca.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-1846 .elementor-element.elementor-element-62f778c{width:100%;max-width:100%;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-1846 .elementor-element.elementor-element-1898163{--display:flex;}@media(max-width:767px){.elementor-1846 .elementor-element.elementor-element-fb2d6ee > .elementor-widget-container{padding:2px 2px 2px 2px;}.elementor-1846 .elementor-element.elementor-element-fb2d6ee{--container-widget-width:1000px;--container-widget-flex-grow:0;width:var( --container-widget-width, 1000px );max-width:1000px;}.elementor-1846 .elementor-element.elementor-element-fb2d6ee.elementor-element{--align-self:center;}.elementor-1846 .elementor-element.elementor-element-2dea717 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-1846 .elementor-element.elementor-element-2dea717{--container-widget-width:86px;--container-widget-flex-grow:0;width:var( --container-widget-width, 86px );max-width:86px;}.elementor-1846 .elementor-element.elementor-element-1898163{--gap:0px 0px;--row-gap:0px;--column-gap:0px;}}@media(min-width:768px){.elementor-1846 .elementor-element.elementor-element-f70242b{--width:66%;}.elementor-1846 .elementor-element.elementor-element-1898163{--width:34%;}}/* Start custom CSS for shortcode, class: .elementor-element-fb2d6ee *//* --- Center the Starter product card --- */
.ylp-starter{
  /* change this if you want wider/narrower */
  --card-max: 320px;
  margin-inline: auto !important;
  padding: 0 !important;
}

/* ===== Starter Presence card: hide product image, tabs, reviews, related, additional info ===== */
.ylp-pack.ylp-starter .woocommerce-breadcrumb,
.ylp-pack.ylp-starter .woocommerce-product-gallery,          /* single product image/gallery */
.ylp-pack.ylp-starter .woocommerce-product-gallery__wrapper,
.ylp-pack.ylp-starter .woocommerce-tabs,                     /* description/reviews tabs */
.ylp-pack.ylp-starter .woocommerce-TabsPanel,
.ylp-pack.ylp-starter .woocommerce-Tabs-panel,
.ylp-pack.ylp-starter .woocommerce-Reviews,                  /* reviews block */
.ylp-pack.ylp-starter .comment-respond,
.ylp-pack.ylp-starter .related,                              /* related products */
.ylp-pack.ylp-starter .upsells,                              /* upsells */
.ylp-pack.ylp-starter .product_meta,                         /* SKU, categories */
.ylp-pack.ylp-starter .ast-woo-product-category,
.ylp-pack.ylp-starter .woocommerce-product-attributes,       /* “Additional information” table */
.ylp-pack.ylp-starter .woocommerce-review-link,
.ylp-pack.ylp-starter .woocommerce-product-rating,
.ylp-pack.ylp-starter .entry-content                         /* long description content area */
{ display:none !important; }


/* kill Woo two-column floats; force a centered single column card */
.ylp-starter div.product,
.ylp-starter .entry-summary,
.ylp-starter .summary{
  float: none !important;
  width: 100% !important;
  max-width: var(--card-max);
  margin-inline: auto !important;
  display: block;
}

/* Selected look (slightly darker blue), with a little top margin for the tab */
.ylp-starter .summary{
  position: relative;
  min-height: 300px;                  /* adjust or remove */
  margin-top: 14px;                   /* room for the tab */
  background: #d8e6ff;                /* darker than before */
  border: 1.5px solid #3b6ef3;        /* darker blue border */
  box-shadow: 0 0 0 2px rgba(59,110,243,.18),
              0 14px 30px rgba(59,110,243,.12);
}

/* “SELECTED PLAN” tab – attached to the top edge */
.ylp-starter .summary::before{
  content: "SELECTED PLAN";
  position: absolute;
  top: -12px;                         /* sits outside but touching */
  left: 16px;
  padding: 6px 12px;
  font: 800 12px/1.1 Inter, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  letter-spacing: .04em;
  color: #fff;
  background: linear-gradient(90deg,#2563eb,#7c3aed); /* blue → purple */
  border: 1.5px solid #3b6ef3;
  border-bottom: 0;                    /* visually joins the card */
  border-radius: 10px 10px 0 0;
  box-shadow: 0 6px 16px rgba(37,99,235,.18);
  pointer-events: none;
  z-index: 2;
}

/* keep the tick positioned and a touch deeper blue */
.ylp-starter .summary::after{
  content: "✓";
  position: absolute;
  top: 8px; right: 12px;
  width: 30px; height: 30px;
  border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  background: #2250e6;               /* slightly darker than #2563eb */
  color: #fff; font-weight: 900; font-size: 18px;
  box-shadow: 0 8px 18px rgba(34,80,230,.30);
}

/* make sure the price stays solid black (no theme opacity) */
.ylp-starter .price,
.ylp-starter .price *,
.ylp-starter .woocommerce-Price-amount{
  color: #0b1220 !important;
  opacity: 1 !important;
  filter: none !important;
  font-weight: 800;
}

/* mobile: let it breathe full width */
@media (max-width: 768px){
  .ylp-starter{ --card-max: 100%; }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-2dea717 *//* LAYOUT ONLY — safe to keep in Shortcode Advanced */
.ylp-pack.ylp-addons,
.ylp-pack.ylp-addons .summary{
  width:100% !important;
  max-width:780px;
  margin-inline:auto !important;
}

@media (min-width:641px){
  .ylp-pack.ylp-addons .summary{
    position:relative;
    padding:18px 18px 20px;
    border-radius:12px;
    border:1px solid #e9eef5;
    background:#f7f9fc;
  }
  .ylp-pack.ylp-addons .price{
    position:absolute;
    top:16px; right:18px;
    margin:0;
    color:#0b1220 !important;
    font-weight:800;
  }
}

@media (max-width:640px){
  .ylp-pack.ylp-addons .summary{
    padding:14px 14px 16px;
    border-radius:12px;
    border:1px solid #e9eef5;
    background:#f7f9fc;
  }
  .ylp-pack.ylp-addons .entry-title{
    font-size:18px; line-height:1.2; margin:0 0 6px;
  }
  .ylp-pack.ylp-addons .price{
    position:static !important;
    display:block !important;
    margin:2px 0 10px !important;
    font-size:16px;
    color:#0b1220 !important;
    font-weight:800;
  }
  .ylp-pack.ylp-addons .woocommerce-product-details__short-description{
    font-size:13px; margin-bottom:12px;
  }
  .ylp-pack.ylp-addons select{ width:100%; height:44px; }
}

/* (Optional) price always black */
.ylp-pack.ylp-addons .price,
.ylp-pack.ylp-addons .price *,
.ylp-pack.ylp-addons .woocommerce-Price-amount{
  color:#0b1220 !important;
  opacity:1 !important;
  filter:none !important;
  font-weight:800;
}

/* Default: hide */
.ylp-pack.ylp-addons .single_add_to_cart_button {
  display: none !important;
}

/* Allowed products → override */
.ylp-pack.ylp-addons.ylp-allow-atc .single_add_to_cart_button {
  display: inline-block !important;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-c483c34 *//* ===== NEXT button — same vibe as your small CTA (blue→green), with motion ===== */

/* Reset any old inner-span styles (if earlier added) */
#ylp-next .elementor-button-text,
#ylp-next .elementor-button span{
  background:none !important; box-shadow:none !important; padding:0 !important; border-radius:0 !important;
}

/* Real button element inside widget wrapper */
#ylp-next .elementor-button,
#ylp-next a.elementor-button,
#ylp-next a.elementor-button-link{
  display:block !important;
  width:100% !important;

  /* size (slim like ref) */
  height:50px !important;
  line-height:20px !important;
  border-radius:18px !important;

  border:0 !important;
  
  font-weight:800 !important;
  font-size:22px !important;
  letter-spacing:.01em !important;
  cursor:pointer !important;
  position:relative !important;
  overflow:hidden !important;

  /* === Gradient colors to match your ref ===
     Left blue (#79A7FF) → mid teal (#31B286) → right green (#22C55E) */
  color:#0b1220 !important; /* white text venumna -> #fff */
  background:linear-gradient(90deg,#60a5fa,#22c55e) !important;

  /* Motion */
  background-size:120% 100% !important;
  animation:ylpSlide 7s ease-in-out infinite alternate !important;

  /* Soft glow like ref */
  box-shadow:
    0 12px 30px rgba(34,197,94,.26),
    0 1.5px 0 rgba(255,255,255,.22) inset !important;

  transition:transform .16s ease, filter .16s ease, box-shadow .16s ease !important;
}

/* Subtle sheen sweep */
#ylp-next .elementor-button::after,
#ylp-next a.elementor-button::after,
#ylp-next a.elementor-button-link::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(120deg, transparent 0%, rgba(255,255,255,.16) 42%, transparent 82%);
  background-size:200% 100%;
  animation:ylpShine 3s linear infinite;
  pointer-events:none;
}

/* Hover / active */
#ylp-next .elementor-button:hover,
#ylp-next a.elementor-button:hover,
#ylp-next a.elementor-button-link:hover{
  transform:translateY(-1.5px);
  filter:brightness(1.06);
  box-shadow:
    0 16px 36px rgba(34,197,94,.30),
    0 2px 0 rgba(255,255,255,.24) inset !important;
}
#ylp-next .elementor-button:active,
#ylp-next a.elementor-button:active,
#ylp-next a.elementor-button-link:active{
  transform:translateY(0);
  filter:brightness(1.02);
}

/* Mobile — even slimmer */
@media (max-width:640px){
  #ylp-next .elementor-button,
  #ylp-next a.elementor-button,
  #ylp-next a.elementor-button-link{
    height:50px !important;
    line-height:50px !important;
    border-radius:16px !important;
    font-size:17px !important;
    
  }
}

/* Reduced motion respect */
@media (prefers-reduced-motion:reduce){
  #ylp-next .elementor-button,
  #ylp-next a.elementor-button,
  #ylp-next a.elementor-button-link{
    animation:none !important;
  }
  #ylp-next .elementor-button::after,
  #ylp-next a.elementor-button::after,
  #ylp-next a.elementor-button-link::after{
    animation:none !important;
  }
}

/* Animations */
@keyframes ylpSlide{0%{background-position:0% 50%}100%{background-position:100% 50%}}
@keyframes ylpShine{0%{background-position:-200% 0}100%{background-position:200% 0}}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-72a747f *//* ===== Right pane: sticky wrapper ===== */
.ylp-summary-right{
  position: sticky !important;
  top: 0px !important;                 /* header height -> tune if needed */
  z-index: 2;
  padding: 0 !important;
  background: transparent !important;
}

/* ---------- Card: compact + rounded + clipped ---------- */
.ylp-summary-right .shop_table.cart{
  /* tighter card */
  padding: 12px 14px 10px !important;
  border-radius: 18px !important;
  border: 1px solid #e9eef5 !important;
  background: rgba(255,255,255,.98) !important;
  box-shadow:
    0 10px 22px rgba(12,18,32,.10),
    0 1px 0 rgba(255,255,255,.9) inset !important;
  overflow: hidden !important;            /* 👈 corners actually look rounded */
}
.ylp-summary-right .shop_table.cart::before{
  content:"Summary";
  display:block; margin:2px 0 12px;
  color:#111; font-weight:800; font-size:20px;
}

/* ===== Table header off & outside totals hidden ===== */
.ylp-summary-right .shop_table thead{ display:none!important; }
.ylp-summary-right .cart_totals{ display:none!important; }

/* ===== Item rows: [remove | title | price] ===== */
.ylp-summary-right .shop_table.cart tbody tr{
  display:grid;
  grid-template-columns: 28px 1fr auto;  /* 3 columns */
  align-items:start;
  gap:14px;
  padding:14px 0;
  border-bottom:1px dashed #eaeef3;
}
.ylp-summary-right .shop_table.cart tbody tr:last-child{ border-bottom:none; }

/* Place cells into columns */
.ylp-summary-right td.product-remove{ grid-column:1; }
.ylp-summary-right td.product-name{ grid-column:2; margin:0; }
.ylp-summary-right td.product-price,
.ylp-summary-right td.product-subtotal{
  grid-column:3;
  text-align:right!important;
  white-space:nowrap;                    /* keep amount one line */
  min-width:120px;
}

/* Solid black everywhere (incl. Starter /Month) */
.ylp-summary-right .product-name,
.ylp-summary-right .product-name a,
.ylp-summary-right .product-name .variation,
.ylp-summary-right .product-name .wc-item-meta,
.ylp-summary-right .product-price,
.ylp-summary-right .product-price *,
.ylp-summary-right .woocommerce-Price-amount{
  color:#111!important; opacity:1!important; filter:none!important;
}

/* Remove (X) style */
.ylp-summary-right .product-remove a.remove{
  width:18px;height:18px;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  background:#fee2e2!important;color:#b91c1c!important;
  border:1px solid #fecaca; line-height:18px; font-size:12px; font-weight:700;
}

/* ===== ADD-ON badge row (full width, centered) ===== */
tr.ylp-addon-row{ padding:0!important; border:0!important; }
tr.ylp-addon-row td{ grid-column:1 / -1; padding:0!important; }
.ylp-addon-badge{
  display:block; text-align:center; margin:8px 0 10px;
  font-size:15px; font-weight:900; letter-spacing:.18em;
  text-transform:uppercase; color:#111!important;
}

/* ===== TOTAL row INSIDE the card ===== */
/* (Fix: prevent vertical letter split + neat alignment) */
tr.ylp-total-row{
  display:grid!important;
  grid-template-columns: auto 1fr !important; /* label natural width | amount area */
  align-items:center;
  gap:16px;
  padding-top:12px; margin-top:6px;
  border-top:1px dashed #eaeef3;
}
tr.ylp-total-row th{
  text-align:left; color:#111; font-weight:800; font-size:16px;
  white-space:nowrap;                        /* <-- no vertical stacking */
}
tr.ylp-total-row td{ text-align:right; }
tr.ylp-total-row .ylp-total-amount{
  color:#111; font-size:20px; font-weight:800; white-space:nowrap;
}
tr.ylp-total-row .ylp-total-amount .per{
  margin-left:6px; font-size:20px; font-weight:800; color:#111;
}

/* Mobile tweaks */
@media (max-width:480px){
  .ylp-summary-right .shop_table.cart{ padding:14px; }
  .ylp-summary-right .shop_table.cart tbody tr{ gap:12px; }
}

/* Only product rows get dividers */
.ylp-summary-right .shop_table.cart tbody tr{ border-bottom:1px dashed #eaeef3; }
.ylp-summary-right tr.ylp-addon-row,
.ylp-summary-right tr.ylp-total-row{ border-bottom:none !important; }

/* Last REAL cart item should not show divider */
.ylp-summary-right tr.ylp-no-divider{ border-bottom:none !important; }

/* Right summary: make product titles non-clickable visually */
.ylp-summary-right .product-name a{
  pointer-events:none;        /* mouse/scroll tap disable */
  cursor:default;
  text-decoration:none !important;
  color:#111 !important;      /* same solid black */
}
.ylp-summary-right .product-name a:focus{ outline:none; }

/* heading spacing */
.ylp-summary-right .shop_table.cart::before{
  margin: 0 0 10px !important;
  font-size: 19px !important;
}

/* ---------- Rows: less gap & padding ---------- */
.ylp-summary-right .shop_table.cart tbody tr{
  grid-template-columns: 24px 1fr auto;   /* little smaller remove column */
  gap: 10px !important;
  padding: 10px 0 !important;
  border-bottom: 1px dashed #eef2f7 !important;
}


/* smaller remove button so row height reduce */
.ylp-summary-right .product-remove a.remove{
  width: 16px !important; height: 16px !important;
  line-height: 16px !important; font-size: 11px !important;
}


/* ===========================
   YLP SUMMARY — FINAL CSS
   (desktop already ok; this block mainly mobile fixes + a few tweaks)
   =========================== */

/* Card: compact, rounded, clipped edges */
.ylp-summary-right .shop_table.cart{
  padding: 12px 14px 10px !important;
  border-radius: 18px !important;
  border: 1px solid #e9eef5 !important;
  background: rgba(255,255,255,.98) !important;
  box-shadow: 0 10px 22px rgba(12,18,32,.10),
              0 1px 0 rgba(255,255,255,.9) inset !important;
  overflow: hidden !important; /* rounded corners actually show */
}
.ylp-summary-right .shop_table.cart::before{
  content:"Summary";
  display:block;
  margin: 0 0 10px !important;
  color:#111; font-weight:800; font-size:19px !important;
}

/* Grid for item rows (desktop & mobile base) */
.ylp-summary-right .shop_table.cart tbody tr{
  display:grid;
  grid-template-columns: 24px 1fr auto;   /* [X] | name | price */
  align-items:center;
  gap:10px !important;
  padding:10px 0 !important;
  border-bottom:1px dashed #eef2f7 !important;
}
.ylp-summary-right .shop_table.cart tbody tr:last-child{ border-bottom:none; }

/* Put each cell in place */
.ylp-summary-right td.product-remove{ grid-column:1; }
.ylp-summary-right td.product-name{ grid-column:2; margin:0; text-align:left !important; }
.ylp-summary-right td.product-price,
.ylp-summary-right td.product-subtotal{
  grid-column:3; text-align:right !important; min-width:140px; white-space:nowrap;
}

/* Non-clickable titles (avoid product page redirect) */
.ylp-summary-right .product-name a{
  pointer-events:none; cursor:default; text-decoration:none !important; color:#111 !important;
}

/* Remove-row (X) button look */
.ylp-summary-right .product-remove a.remove{
  width:18px;height:18px;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  background:#fee2e2!important;color:#b91c1c!important;border:1px solid #fecaca;
  line-height:18px;font-size:12px;font-weight:700;
}

/* “ADD-ON” badge full width */
tr.ylp-addon-row{ padding:0!important; border:0!important; }
tr.ylp-addon-row td{ grid-column:1 / -1; padding:0!important; text-align:center !important; }
.ylp-addon-badge{
  display:block; margin:8px 0 10px; font-size:15px; font-weight:900;
  letter-spacing:.18em; text-transform:uppercase; color:#111!important;
}

/* TOTAL row inside the same card */
tr.ylp-total-row{
  display:grid !important;
  grid-template-columns: auto 1fr !important; /* label | amount */
  align-items:center; gap:12px; padding-top:12px; margin-top:6px;
  border-top:1px dashed #eef2f7 !important;
}
tr.ylp-total-row th{
  text-align:left; color:#111; font-weight:800; font-size:16px; white-space:nowrap;
}
tr.ylp-total-row td{ text-align:right; }
tr.ylp-total-row .ylp-total-amount{ color:#111; font-size:20px; font-weight:800; white-space:nowrap; }
tr.ylp-total-row .ylp-total-amount .per{ margin-left:6px; font-size:20px; font-weight:800; color:#111; }

/* Only product rows show divider */
.ylp-summary-right tr.ylp-addon-row,
.ylp-summary-right tr.ylp-total-row{ border-bottom:none !important; }
.ylp-summary-right tr.ylp-no-divider{ border-bottom:none !important; }

/* === Fix meta/variation alignment inside name cell === */
.ylp-summary-right td.product-name { text-align: left !important; }

/* Woo "variation" (dl dt/dd) → inline, no floats, proper colon */
.ylp-summary-right .product-name .variation{
  display:block !important;
  margin:6px 0 0 !important;
  clear:both !important;
}
.ylp-summary-right .product-name .variation dt,
.ylp-summary-right .product-name .variation dd{
  float:none !important;
  display:inline !important;
  margin:0 !important;
}
.ylp-summary-right .product-name .variation dt::after{
  content: ": " !important;
}
.ylp-summary-right .product-name .variation dd::after{
  content: "" !important;
}

/* Plugins that print .wc-item-meta (e.g., “Select plan”) */
.ylp-summary-right .product-name .wc-item-meta{
  list-style:none !important;
  padding:0 !important;
  margin:6px 0 0 !important;
}
.ylp-summary-right .product-name .wc-item-meta li{
  display:block !important;            /* one line each, wraps naturally */
  margin:0 0 2px !important;
}
.ylp-summary-right .product-name .wc-item-meta li > strong{
  font-weight:700 !important;
  margin-right:6px !important;
}
.ylp-summary-right .product-name .wc-item-meta li > p,
.ylp-summary-right .product-name .wc-item-meta li > span{
  display:inline !important;
  margin:0 !important;
  white-space:normal !important;       /* allow wrapping */
}

/* mobile tighten just a bit */
@media (max-width:640px){
  .ylp-summary-right .product-name .variation,
  .ylp-summary-right .product-name .wc-item-meta{ margin-top:4px !important; }
}


/* ===========================
   MOBILE-ONLY FIXES
   =========================== */
@media (max-width: 640px) {
  /* Woo’s responsive “Product:” / “Price:” pseudo-labels — remove */
  .ylp-summary-right .shop_table.cart td::before,
  .ylp-summary-right .shop_table.cart th::before{
    content:none !important; display:none !important;
  }

  /* Tighter grid & spacing on phones */
  .ylp-summary-right .shop_table.cart tbody tr{
    grid-template-columns: 22px 1fr auto !important;
    gap:8px !important; padding:10px 0 !important;
  }
  .ylp-summary-right td.product-name{ line-height:1.34 !important; }
  .ylp-summary-right td.product-price,
  .ylp-summary-right td.product-subtotal{
    min-width:88px !important; font-weight:700; text-align:right !important; white-space:nowrap !important;
  }

  /* Total row: same two-column look; force 'Total' text to show */
  .ylp-summary-right tr.ylp-total-row{
    grid-template-columns: 1fr auto !important; gap:10px !important; padding-top:12px !important;
  }
  .ylp-summary-right tr.ylp-total-row th{
    display:block !important; visibility:visible !important; white-space:nowrap !important;
    font-size:15px !important; font-weight:800 !important; color:#111 !important;
  }
  .ylp-summary-right tr.ylp-total-row .ylp-total-amount,
  .ylp-summary-right tr.ylp-total-row .ylp-total-amount .per{
    white-space:nowrap !important;
    font-size:18px !important; /* little smaller on phones */
  }
}
/* Keep only the CARD sticky */
/* Sticky wrapper */
.ylp-summary-right{
  position: -webkit-sticky;
  position: sticky;
  top: 20px;    /* adjust for header height */
  z-index: 20;
}

/* Inside card must be normal */
.ylp-summary-right .shop_table.cart{
  position: relative !important;
  margin-bottom: 15px;
}


/* Note block (outside the card) — tighter gap */
.ylp-summary-right #ylp-summary-note{
  margin: 6px 0 0 !important;   /* ↓ gap */
  padding: 0 2px;
  max-width: 560px;
}

/* Heading line (premium serif A) */
.ylp-summary-right #ylp-summary-note .title,
.ylp-summary-right #ylp-summary-note .lead{            /* fallback if you keep .lead */
  font-family: "Palatino Linotype","Book Antiqua",Palatino,Charter, serif;
  font-size: 18.2px;
  line-height: 1.45;
  font-weight: 800;
  color: #f8fafc;
  text-shadow: 0 1px 2px rgba(0,0,0,.40);
  margin: 0 0 6px;
  letter-spacing: .2px;
}

/* Emoji at END */
.ylp-summary-right #ylp-summary-note .leaf{
  display:inline-block;
  font-size: 1.28em;
  transform: translateY(1px);
  margin-left: 6px;
}

/* Paragraph (serif B, slightly smaller) */
.ylp-summary-right #ylp-summary-note .copy{
  font-family: "Crimson Text", "Times New Roman", serif;

  font-size: 15px;
  line-height: 1.55;
  font-weight: 700;
  color: #f8fafc;
  text-shadow: 0 1px 2px rgba(0,0,0,.40);
  margin: 0;
}
.ylp-summary-right #ylp-summary-note .copy strong{ color:#fff; }

/* Optional: shave a tiny bit more space if needed */
@media (min-width:641px){
  .ylp-summary-right .shop_table.cart{ margin-bottom: 2px; }
}
/* --- STOP BLUR FROM RIGHT STRIPE --- */
.ylp-right-stripe{
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  filter: none !important;
  opacity: 1 !important;
  z-index: 0 !important;          /* keep it behind everything */
  pointer-events: none !important;
}

/* Note sits above any overlays */
#ylp-summary-note{
  position: relative !important;
  z-index: 3 !important;
  background: transparent !important;  /* no white box */
}

/* Column sticky (ok to keep if Elementor sticky OFF) */
.ylp-summary-right{
  position: sticky; top: 70px; z-index: 2;
}

/* Gap: text (top) -> card (below) */
.ylp-summary-right #ylp-summary-note{ margin: 6px 0 16px !important; }

/* Same fonts (Palatino + Crimson), NO blur */
#ylp-summary-note .title{
  font-family:"Palatino Linotype","Book Antiqua",Palatino,Charter,serif !important;
  font-weight:800 !important; font-size:18px !important; line-height:1.45 !important;
  color:#f8fafc !important; text-shadow:none !important;
  margin:0 0 6px !important;
}
#ylp-summary-note .copy{
  font-family:"Crimson Text","Times New Roman",serif !important;
  font-weight:700 !important; font-size:15px !important; line-height:1.55 !important;
  color:#f8fafc !important; text-shadow:none !important; margin:0 !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1898163 */:root{
  --ylpStripeLeft: 0px;
  --ylpStripeWidth: 360px;
  --ylpStripeHeight: 100vh;
}

/* Stripe – start hidden to avoid left flash */
.ylp-right-stripe{
  position: fixed;
  top: 0;
  left: var(--ylpStripeLeft);
  width: var(--ylpStripeWidth);
  height: var(--ylpStripeHeight);
  pointer-events: none;
  z-index: 1;

  /* motion gradient */
  background: linear-gradient(
    180deg,
    rgba(25,164,108,.36) 0%,
    rgba(17,131,108,.32) 22%,
    rgba(18,88,120,.30) 48%,
    rgba(32,87,199,.32) 72%,
    rgba(59,130,246,.36) 100%
  );
  background-size: 100% 220%;
  animation: ylpStripeMove 9s ease-in-out infinite alternate;

  box-shadow:
    0 0 120px 42px rgba(9,132,82,.18) inset,
    0 0 130px 44px rgba(59,130,246,.18) inset,
    0 0 90px 32px rgba(0,0,0,.28);
  backdrop-filter: blur(1.5px) saturate(1.06);

  /* 👇 prevent initial flash */
  opacity: 0;
  visibility: hidden;
  transition: opacity .28s ease, visibility 0s linear .28s;
}
.ylp-right-stripe.is-ready{
  opacity: 1;
  visibility: visible;
  transition: opacity .28s ease;
}

.ylp-right-stripe::after{
  content:"";
  position:absolute; inset:-8% -22%;
  background: radial-gradient(75% 38% at 50% 0%, rgba(255,255,255,.12) 0%, rgba(255,255,255,0) 60%);
  mix-blend-mode: soft-light;
  animation: ylpSheen 8s linear infinite;
}

/* keep card above */
.ylp-summary-right{ position:relative; z-index:2; }

@keyframes ylpStripeMove{ 0%{background-position:0% 0%;filter:saturate(105%)} 100%{background-position:0% 100%;filter:saturate(122%)} }
@keyframes ylpSheen{ 0%{transform:translateY(-6%);opacity:.75} 100%{transform:translateY(6%);opacity:.95} }

/* ---------- PHONE-ONLY stripe behind the Summary container ---------- */
@media (max-width:640px){
  /* hide the global right stripe on phones */
  .ylp-right-stripe{ display:none !important; }

  /* anchor the container */
  .ylp-summary-right{
    position: relative;
    z-index: 1;
    overflow: visible;
  }

  /* gradient stripe behind the container */
  .ylp-summary-right::before{
    content: "";
    position: absolute;
    inset: -14px -12px -14px -12px;
    border-radius: px;
    z-index: -1;
    pointer-events: none;

    background: linear-gradient(
      180deg,
      rgba(25,164,108,.36) 0%,
      rgba(17,131,108,.32) 22%,
      rgba(18,88,120,.30) 48%,
      rgba(32,87,199,.32) 72%,
      rgba(59,130,246,.36) 100%
    );
    background-size: 100% 220%;
    animation: ylpStripeMove 9s ease-in-out infinite alternate;

    box-shadow:
      0 0 120px 42px rgba(9,132,82,.18) inset,
      0 0 130px 44px rgba(59,130,246,.18) inset,
      0 0 90px 32px rgba(0,0,0,.28);
    backdrop-filter: blur(1.5px) saturate(1.06);
  }

  /* shimmer effect */
  .ylp-summary-right::after{
    content:"";
    position:absolute; inset:-18% -24% -12% -24%;
    border-radius: 36px;
    z-index:-1;
    background: radial-gradient(75% 38% at 50% 0%,
                 rgba(255,255,255,.12) 0%, rgba(255,255,255,0) 60%);
    mix-blend-mode: soft-light;
    animation: ylpSheen 8s linear infinite;
    pointer-events:none;
  }
}


/* Tablets (show) */
@media (min-width:641px) and (max-width:1024px){
  .ylp-right-stripe{
    left: var(--ylpStripeLeft) !important;  /* JS aligns from card */
    right: auto !important;
    display:block !important;
  }
}/* End custom CSS */