/* ============================================================
   PREMLOOM ENVISION — Mobile-First Layer v2 (plmf)
   Built 3 September 2026. Replaces v1 entirely.

   Rules this file obeys:
     - one glass token, taken from the Reviews card, used everywhere
     - one spacing scale, no ad hoc margins
     - nothing is added that the theme already provides; duplicates are removed
     - everything lives inside the <=1024px breakpoint, desktop is untouched
   ============================================================ */

/* ---------- overflow guard (all widths) ---------- */
html{max-width:100%;overflow-x:clip;}
body{max-width:100%;overflow-x:clip;}
@supports not (overflow:clip){ html,body{overflow-x:hidden;} }

/* ---------- auth modal (all widths): real Google route + real login ---------- */
#authModal .auth-google-row{ display:flex; justify-content:center; }
.plmf-gbtn{
  display:inline-flex!important; align-items:center; justify-content:center; gap:10px;
  width:100%; max-width:310px; min-height:44px; padding:10px 16px;
  border:1px solid rgba(44,44,42,.22); border-radius:10px;
  background:#fff; color:#2c2c2a; font-size:14px; font-weight:500; text-decoration:none;
  box-shadow:0 1px 3px rgba(0,0,0,.08);
}
.plmf-gbtn svg{ flex:0 0 20px; }
.plmf-forgot{
  display:block; text-align:center; margin-top:12px; font-size:13px;
  color:#164a41; text-decoration:underline; text-underline-offset:3px;
}

@media (max-width:1024px){

  :root{
    /* brand */
    --plmf-green:#164A41;
    --plmf-green-d:#0E332C;
    --plmf-amber:#F1B24A;
    --plmf-terra:#B5451B;
    --plmf-cream:#FFFDEE;
    --plmf-page:#FDF6EC;
    --plmf-ink:#2C2C2A;
    --plmf-ink-2:#5B5B55;

    /* THE glass token: lifted verbatim from the Reviews card */
    --plmf-glass-bg:rgba(255,255,255,.72);
    --plmf-glass-bd:1px solid rgba(181,69,27,.18);
    --plmf-glass-r:18px;
    --plmf-glass-sh:0 4px 24px rgba(44,44,42,.10);
    --plmf-glass-blur:saturate(140%) blur(10px);

    /* spacing scale: use these, never a one-off number */
    --plmf-gut:16px;    /* page gutter */
    --plmf-s1:8px;
    --plmf-s2:12px;
    --plmf-s3:16px;
    --plmf-s4:24px;
    --plmf-s5:32px;
    --plmf-sec:36px;    /* section to section */

    /* chrome heights */
    --plmf-offer:34px;
    --plmf-addr:38px;
    --plmf-logo:56px;
    --plmf-search:46px;
    --plmf-hdr:calc(var(--plmf-offer) + var(--plmf-addr) + var(--plmf-logo) + var(--plmf-search));
    --plmf-bnav:62px;
  }

  /* ============================================================
     1. THE ONE GLASS FRAME
     Every panel, card and node resolves to this. No variants.
     ============================================================ */
  .plmf-glass,
  .card-glass,
  .glass-node,
  .glass-panel,
  aside.pl-filters,
  .plmf-sheet,
  .woocommerce-cart .cart_totals,
  .woocommerce-cart table.shop_table,
  .woocommerce-account .woocommerce-MyAccount-content,
  .woocommerce-account .woocommerce-MyAccount-navigation,
  .woocommerce form.login,
  .woocommerce form.register,
  .woocommerce form.lost_reset_password{
    background:var(--plmf-glass-bg)!important;
    border:var(--plmf-glass-bd)!important;
    border-radius:var(--plmf-glass-r)!important;
    box-shadow:var(--plmf-glass-sh)!important;
    -webkit-backdrop-filter:var(--plmf-glass-blur);
    backdrop-filter:var(--plmf-glass-blur);
  }

  /* kill the beige slabs; sections become transparent bands */
  .section-overlap,
  .glass-panel-section,
  section[class*="beige"],
  .products-page > .pl-shell,
  .plmf-debeige{
    background:transparent!important;
    background-color:transparent!important;
    border-radius:0!important;
    box-shadow:none!important;
  }

  /* section rhythm */
  section{
    margin-left:0!important; margin-right:0!important;
    width:auto!important; max-width:none!important;
    box-sizing:border-box!important;
    padding-left:var(--plmf-gut)!important;
    padding-right:var(--plmf-gut)!important;
  }
  .glass-panel-section,
  .section-overlap{
    padding-top:var(--plmf-sec)!important;
    padding-bottom:0!important;
  }
  .glass-panel{ padding:0!important; }

  /* ============================================================
     2. HEADER — four stacked strips, fixed rhythm, no overlap
     ============================================================ */
  #ppl-bar,
  .plmf-hero-cta,
  .wlfmc-popup,
  .wlfmc-popup-wrapper,
  .plmf-dup{ display:none!important; }

  .plmf-top{
    position:fixed; top:0; left:0; right:0; z-index:1200;
    display:block;
    background:var(--plmf-page);
    box-shadow:0 1px 0 rgba(181,69,27,.12);
  }
  .plmf-offer{
    height:var(--plmf-offer); line-height:var(--plmf-offer);
    background:var(--plmf-green); color:#fff;
    font-size:12px; letter-spacing:.01em; text-align:center;
    padding:0 var(--plmf-gut); overflow:hidden; white-space:nowrap;
    text-overflow:ellipsis;
  }
  .plmf-addr{
    height:var(--plmf-addr);
    display:flex; align-items:center; gap:var(--plmf-s1);
    padding:0 var(--plmf-gut);
    font-size:12.5px; color:var(--plmf-ink-2);
    border-bottom:1px solid rgba(181,69,27,.10);
    background:#fff;
  }
  .plmf-addr svg{ width:15px; height:15px; flex:0 0 15px; color:var(--plmf-terra); }
  .plmf-addr b{ color:var(--plmf-ink); font-weight:600; }
  .plmf-addr span{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .plmf-addr .plmf-caret{ margin-left:auto; flex:0 0 auto; opacity:.5; }

  nav.nav{
    position:fixed!important; z-index:1201!important;
    top:calc(var(--plmf-offer) + var(--plmf-addr))!important;
    left:0!important; right:0!important;
    height:var(--plmf-logo)!important;
    display:flex!important; align-items:center!important;
    justify-content:space-between!important;
    gap:var(--plmf-s2)!important;
    padding:0 var(--plmf-gut)!important;
    margin:0!important; width:auto!important; max-width:none!important;
    background:#fff!important;
    border-radius:0!important; box-shadow:none!important;
    border-bottom:1px solid rgba(181,69,27,.10)!important;
  }
  nav.nav a.logo{
    display:flex!important; align-items:center!important; gap:var(--plmf-s1)!important;
    font-size:15px!important; letter-spacing:.06em!important;
    max-width:64%!important; overflow:hidden!important; white-space:nowrap!important;
  }
  nav.nav a.logo img{ height:26px!important; width:auto!important; }
  nav.nav .nav-icons{
    display:flex!important; align-items:center!important; gap:var(--plmf-s2)!important;
    margin:0!important;
  }
  /* account and cart live in the bottom nav; header keeps only the menu */
  nav.nav #account-btn{ display:none!important; }
  nav.nav .nav-icons .nic.auth-req{ display:none!important; }
  nav.nav .nav-hamburger{
    width:40px!important; height:40px!important;
    display:flex!important; align-items:center!important; justify-content:center!important;
  }

  .plmf-search{
    position:fixed; z-index:1199;
    top:calc(var(--plmf-offer) + var(--plmf-addr) + var(--plmf-logo));
    left:0; right:0;
    height:var(--plmf-search);
    display:flex; align-items:center;
    padding:0 var(--plmf-gut) var(--plmf-s1);
    background:var(--plmf-page);
    transition:transform .22s ease, opacity .22s ease;
  }
  .plmf-search form{
    display:flex; align-items:center; gap:var(--plmf-s1);
    width:100%; height:38px;
    background:var(--plmf-glass-bg);
    border:var(--plmf-glass-bd);
    border-radius:999px;
    box-shadow:var(--plmf-glass-sh);
    padding:0 var(--plmf-s3);
  }
  .plmf-search svg{ width:16px; height:16px; flex:0 0 16px; opacity:.55; }
  .plmf-search input{
    flex:1; border:0!important; outline:0!important; background:transparent!important;
    font-size:14px; color:var(--plmf-ink); min-width:0;
    padding:0!important; height:36px!important; box-shadow:none!important;
  }
  .plmf-search input::placeholder{ color:var(--plmf-ink-2); opacity:.75; }
  body.plmf-scrolled .plmf-search{ transform:translateY(-100%); opacity:0; pointer-events:none; }

  /* every page starts below the whole stack */
  body{ padding-top:var(--plmf-hdr)!important; }
  body.plmf-noaddr{ --plmf-addr:0px; }

  /* ============================================================
     3. HERO — centred, no CTAs, one trust line
     ============================================================ */
  section.hero{
    padding:var(--plmf-s5) var(--plmf-gut) var(--plmf-s4)!important;
    display:flex!important; flex-direction:column!important;
    align-items:center!important; justify-content:center!important;
    text-align:center!important;
    min-height:0!important; height:auto!important;
  }
  section.hero .hero-badge{ margin:0 auto var(--plmf-s3)!important; }
  section.hero h1.hero-title-wrap{ text-align:center!important; margin:0 0 var(--plmf-s2)!important; }
  section.hero .ht-solid,
  section.hero .ht-glass{ text-align:center!important; }
  section.hero p.hero-sub{
    text-align:center!important; margin:0 auto!important; max-width:34ch!important;
  }

  /* trust rail: bare, no beige frame behind it */
  div.trust{
    overflow-anchor:none!important;
    display:flex!important; flex-wrap:nowrap!important;
    justify-content:flex-start!important;
    gap:var(--plmf-s1)!important;
    overflow-x:auto; -webkit-overflow-scrolling:touch; scrollbar-width:none;
    background:transparent!important; border:0!important; box-shadow:none!important;
    padding:var(--plmf-s2) var(--plmf-gut)!important;
    margin:0!important; height:auto!important;
    scroll-snap-type:x proximity;
  }
  div.trust::-webkit-scrollbar{ display:none; }
  div.trust .ti{
    flex:0 0 auto!important; width:auto!important; scroll-snap-align:start;
    background:var(--plmf-glass-bg)!important;
    border:var(--plmf-glass-bd)!important;
    border-radius:999px!important;
    box-shadow:var(--plmf-glass-sh)!important;
    padding:7px 13px 7px 8px!important; gap:7px!important;
    font-size:12.5px!important; white-space:nowrap!important;
  }
  div.trust .tic{ width:26px!important; height:26px!important; font-size:14px!important; flex:0 0 26px!important; }
  .trust .ti,.trust .ti *{ font-size:12.5px!important; }

  /* ============================================================
     4. RAILS — categories, features, journal, reviews
     ============================================================ */
  .plmf-rail{
    overflow-anchor:none!important;
    display:flex!important; flex-direction:row!important; flex-wrap:nowrap!important;
    align-items:stretch!important; justify-content:flex-start!important;
    overflow-x:auto; overflow-y:visible;
    -webkit-overflow-scrolling:touch; scrollbar-width:none;
    gap:var(--plmf-s2)!important;
    /* bleed to the page edge but never clip the first item */
    margin-left:calc(var(--plmf-gut) * -1)!important;
    margin-right:calc(var(--plmf-gut) * -1)!important;
    padding-left:var(--plmf-gut)!important;
    padding-right:var(--plmf-gut)!important;
    scroll-padding-left:var(--plmf-gut);
    scroll-snap-type:x proximity;
    max-width:none!important; width:auto!important; height:auto!important;
  }
  .plmf-rail::-webkit-scrollbar{ display:none; }
  .plmf-rail > *{ flex:0 0 auto!important; scroll-snap-align:start; }
  .plmf-rail .card-glass{ width:150px!important; }
  .plmf-rail--wide > *{ width:260px!important; }
  .plmf-rail--reviews > *{ width:270px!important; }

  /* chips */
  .plmf-chips{
    overflow-anchor:none!important;
    display:flex!important; flex-wrap:nowrap!important; gap:var(--plmf-s1)!important;
    overflow-x:auto; scrollbar-width:none;
    margin:0 calc(var(--plmf-gut) * -1) var(--plmf-s3)!important;
    padding:0 var(--plmf-gut)!important;
    background:transparent!important;
  }
  .plmf-chips::-webkit-scrollbar{ display:none; }
  .plmf-chip{
    flex:0 0 auto!important;
    padding:8px 15px!important; border-radius:999px!important;
    font-size:13px!important; white-space:nowrap!important;
    background:var(--plmf-glass-bg)!important;
    border:var(--plmf-glass-bd)!important;
    box-shadow:none!important;
    color:var(--plmf-ink)!important; text-decoration:none!important;
  }
  .plmf-chip--accent{
    background:rgba(241,178,74,.22)!important;
    border-color:rgba(241,178,74,.55)!important;
    font-weight:600!important;
  }

  /* ============================================================
     5. PRODUCT GRIDS — home bestsellers and shop, one card spec
     ============================================================ */
  .products-masonry,
  ul.products{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:var(--plmf-s2)!important;
    margin:0!important; padding:0!important;
    list-style:none!important; width:auto!important; max-width:none!important;
  }
  @media (min-width:600px){ .products-masonry,ul.products{ grid-template-columns:repeat(3,minmax(0,1fr))!important; } }

  .products-masonry > *,
  ul.products > li.product{
    width:auto!important; max-width:none!important; margin:0!important; float:none!important;
    display:flex!important; flex-direction:column!important; height:100%!important;
    position:relative!important;
    background:var(--plmf-glass-bg)!important;
    border:var(--plmf-glass-bd)!important;
    border-radius:var(--plmf-glass-r)!important;
    box-shadow:var(--plmf-glass-sh)!important;
    overflow:hidden!important;
    padding:0 0 var(--plmf-s2)!important;
    text-align:left!important;
  }

  /* image block: fixed ratio so every card is the same height */
  .products-masonry .n-img,
  ul.products li.product a.woocommerce-LoopProduct-link img,
  ul.products li.product > a img{
    width:100%!important; aspect-ratio:1/1!important; object-fit:cover!important;
    height:auto!important; margin:0!important; display:block!important;
    border-radius:0!important;
  }
  .products-masonry .n-img img{ width:100%!important; height:100%!important; object-fit:cover!important; }

  /* text block */
  .products-masonry .n-title,
  ul.products li.product .woocommerce-loop-product__title{
    font-size:13.5px!important; line-height:1.35!important;
    margin:var(--plmf-s2) var(--plmf-s2) var(--plmf-s1)!important;
    padding:0!important; text-align:left!important;
    display:-webkit-box!important; -webkit-line-clamp:2; -webkit-box-orient:vertical;
    overflow:hidden!important; min-height:2.7em!important;
  }
  ul.products li.product .price,
  .products-masonry .n-bot{
    margin:0 var(--plmf-s2)!important; padding:0!important;
    font-size:14px!important; font-weight:600!important; text-align:left!important;
    display:flex!important; align-items:baseline!important; gap:6px!important;
    color:var(--plmf-ink)!important;
  }
  ul.products li.product .price del{ opacity:.5; font-weight:400; font-size:12.5px; }
  ul.products li.product .price ins{ text-decoration:none; }

  /* actions row: icon only, one cart control, one wishlist control */
  .plmf-actions{
    display:flex!important; align-items:center!important; gap:var(--plmf-s1)!important;
    margin:var(--plmf-s2) var(--plmf-s2) 0!important;
  }
  .plmf-iconbtn{
    flex:0 0 auto; width:38px; height:38px;
    display:inline-flex!important; align-items:center; justify-content:center;
    border-radius:999px; border:var(--plmf-glass-bd);
    background:#fff; color:var(--plmf-green);
    box-shadow:none; padding:0; cursor:pointer;
  }
  .plmf-iconbtn svg{ width:18px; height:18px; }
  .plmf-iconbtn--cart{ flex:1 1 auto; width:auto; background:var(--plmf-green); color:#fff; border-color:var(--plmf-green); }
  .plmf-iconbtn--cart svg{ width:17px; height:17px; }
  .plmf-iconbtn.is-on{ color:#D33A2C; border-color:rgba(211,58,44,.45); }
  .plmf-iconbtn.is-on svg{ fill:#D33A2C; }
  .plmf-iconbtn.is-busy{ opacity:.55; pointer-events:none; }

  /* the theme puts a gift emoji ::before on every link inside a product,
     which is where the stray gift icons on each card come from */
  ul.products li.product a::before,
  ul.products li.product .button::before,
  .products-masonry a::before,
  .products-masonry .n-btn::before{ content:none!important; display:none!important; }

  /* strip everything the brief said to remove from cards */
  ul.products li.product .button,
  ul.products li.product .added_to_cart,
  ul.products li.product .add_to_cart_button,
  ul.products li.product .wlfmc-add-to-wishlist,
  ul.products li.product .on-woo-wallet-cashback,
  ul.products li.product .plmf-badge,
  .products-masonry .n-btn,
  .plmf-handmade,
  [class*="handmade-badge"],
  [class*="gift-badge"]{ display:none!important; }

  /* keep exactly one visible cart control, the one we build */
  ul.products li.product .plmf-actions .plmf-iconbtn{ display:inline-flex!important; }

  /* ============================================================
     6. HOME SECTIONS
     ============================================================ */
  /* bestsellers: no beige, hairline rules instead */
  .section-overlap{
    border-top:1px solid rgba(181,69,27,.16)!important;
    border-bottom:1px solid rgba(181,69,27,.16)!important;
    padding-bottom:var(--plmf-sec)!important;
    margin-top:var(--plmf-sec)!important;
  }
  .section-header{ text-align:center!important; margin-bottom:var(--plmf-s4)!important; }
  .section-header .sl{ letter-spacing:.16em!important; font-size:11px!important; }
  .section-header .st{ margin:var(--plmf-s1) 0!important; }
  .section-header .sd{ margin:0 auto!important; max-width:38ch!important; }

  /* our story: centred, two features in one row, read more */
  .about-grid{
    display:flex!important; flex-direction:column!important; align-items:center!important;
    gap:var(--plmf-s3)!important; text-align:center!important;
    max-width:none!important; width:100%!important; height:auto!important;
  }
  .about-grid > div{ width:100%!important; text-align:center!important; }
  .about-grid .a-imgs{ width:100%!important; }
  .about-grid .sd{ margin:0 auto!important; max-width:42ch!important; }
  .afeats{
    display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:var(--plmf-s2)!important; width:100%!important;
    overflow:visible!important; margin:var(--plmf-s3) 0 0!important; padding:0!important;
    flex-direction:row!important;
  }
  .afeats > *{
    width:auto!important; flex:1 1 auto!important; text-align:left!important;
    background:var(--plmf-glass-bg)!important;
    border:var(--plmf-glass-bd)!important;
    border-radius:var(--plmf-glass-r)!important;
    box-shadow:var(--plmf-glass-sh)!important;
    padding:var(--plmf-s2)!important; font-size:12px!important;
  }
  .afeats > * b,.afeats > * strong{ font-size:12.5px!important; display:block; margin-bottom:4px; }

  .plmf-clamp{
    display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical;
    overflow:hidden;
  }
  .plmf-more{
    display:inline-block; margin-top:var(--plmf-s1);
    background:none; border:0; padding:0;
    color:var(--plmf-terra); font-size:13px; font-weight:600;
    text-decoration:underline; cursor:pointer;
  }

  /* corporate gifting + member perks: three across, one row */
  .plmf-trio{
    display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:var(--plmf-s2)!important; width:100%!important;
    margin:var(--plmf-s3) 0 0!important; padding:0!important;
    overflow:visible!important; height:auto!important;
  }
  .plmf-trio > *{
    width:auto!important; margin:0!important; height:auto!important;
    background:var(--plmf-glass-bg)!important;
    border:var(--plmf-glass-bd)!important;
    border-radius:var(--plmf-glass-r)!important;
    box-shadow:var(--plmf-glass-sh)!important;
    padding:var(--plmf-s2) var(--plmf-s1)!important;
    text-align:center!important;
    display:flex!important; flex-direction:column!important;
    align-items:center!important; justify-content:center!important;
    gap:2px!important;
  }
  .plmf-trio h3{ font-size:18px!important; margin:0!important; line-height:1.15!important; }
  .plmf-trio p{ font-size:11px!important; margin:0!important; line-height:1.25!important; color:var(--plmf-ink-2)!important; }
  .glass-panel > .sd,
  .glass-panel > p.sd{ text-align:center!important; margin:0 auto!important; max-width:40ch!important; }
  .glass-panel > h2.st{ text-align:center!important; }

  /* newsletter */
  .plmf-news{ text-align:center!important; }
  .plmf-news form,
  .plmf-news .mc4wp-form,
  .plmf-news [class*="brevo"],
  .plmf-news iframe{
    display:block!important; width:100%!important; max-width:340px!important;
    margin:var(--plmf-s3) auto 0!important; min-height:120px!important;
    visibility:visible!important; opacity:1!important;
  }
  .plmf-newsform{
    display:flex!important; flex-direction:column!important; gap:var(--plmf-s2)!important;
    width:100%!important; max-width:340px!important; margin:var(--plmf-s3) auto 0!important;
  }
  .plmf-newsform input[type=email]{
    height:46px!important; width:100%!important; box-sizing:border-box!important;
    border-radius:999px!important; padding:0 var(--plmf-s3)!important;
    background:#fff!important; border:var(--plmf-glass-bd)!important;
    font-size:14px!important; color:var(--plmf-ink)!important;
  }
  .plmf-newsform button{
    height:46px!important; width:100%!important;
    border-radius:999px!important; border:0!important;
    background:var(--plmf-green)!important; color:#fff!important;
    font-size:14px!important; font-weight:600!important; letter-spacing:.02em!important;
    cursor:pointer!important;
  }
  .plmf-newsmail{
    display:block; margin-top:var(--plmf-s2);
    font-size:13px; color:var(--plmf-ink-2); text-align:center;
  }
  .plmf-newsmail a{ color:var(--plmf-terra); }

  /* ============================================================
     7. FOOTER — everything inside the dark frame
     ============================================================ */
  footer{
    background:var(--plmf-green-d)!important;
    color:rgba(255,255,255,.88)!important;
    margin:var(--plmf-sec) 0 0!important;
    padding:var(--plmf-s5) var(--plmf-gut) calc(var(--plmf-bnav) + var(--plmf-s5))!important;
    width:auto!important; max-width:none!important;
    border-radius:0!important;
  }
  footer *{ color:inherit; }
  footer .fgrid{
    display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:var(--plmf-s4) var(--plmf-s3)!important;
    margin:0!important; padding:0!important; width:auto!important; height:auto!important;
  }
  footer .fgrid > *:first-child{ grid-column:1 / -1; }
  footer h4,footer .fh{
    font-size:11px!important; letter-spacing:.16em!important; text-transform:uppercase!important;
    color:var(--plmf-amber)!important; margin:0 0 var(--plmf-s2)!important;
  }
  footer a{ font-size:13px!important; line-height:2!important; text-decoration:none!important; }
  footer p{ font-size:13px!important; line-height:1.6!important; margin:0 0 var(--plmf-s2)!important; }
  .plmf-social{
    display:flex!important; gap:var(--plmf-s2)!important;
    margin:var(--plmf-s3) 0 0!important; padding:0!important;
    justify-content:flex-start!important;
  }
  .plmf-social a{
    width:40px!important; height:40px!important; flex:0 0 40px!important;
    display:inline-flex!important; align-items:center!important; justify-content:center!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.10)!important;
    border:1px solid rgba(255,255,255,.20)!important;
    line-height:0!important; padding:0!important; margin:0!important;
  }
  .plmf-social a svg,.plmf-social a img,.plmf-social a i{
    width:18px!important; height:18px!important; display:block!important; margin:0!important;
  }
  .plmf-fbottom{
    grid-column:1 / -1;
    margin-top:var(--plmf-s4)!important;
    padding-top:var(--plmf-s3)!important;
    border-top:1px solid rgba(255,255,255,.14)!important;
    font-size:12px!important; opacity:.75; text-align:center!important;
  }

  /* ============================================================
     8. BOTTOM NAV
     ============================================================ */
  .plmf-bnav{
    position:fixed!important; left:0!important; right:0!important; bottom:0!important;
    z-index:1300!important;
    height:var(--plmf-bnav)!important;
    display:grid!important; grid-template-columns:repeat(5,1fr)!important;
    align-items:center!important;
    padding:0!important; margin:0!important;
    background:rgba(255,253,238,.96)!important;
    -webkit-backdrop-filter:var(--plmf-glass-blur); backdrop-filter:var(--plmf-glass-blur);
    border-top:1px solid rgba(181,69,27,.16)!important;
    box-shadow:0 -2px 18px rgba(44,44,42,.08)!important;
  }
  .plmf-bnav a{
    display:flex!important; flex-direction:column!important;
    align-items:center!important; justify-content:center!important;
    gap:3px!important; height:100%!important;
    font-size:10.5px!important; letter-spacing:.01em!important;
    color:var(--plmf-ink-2)!important; text-decoration:none!important;
    position:relative!important;
  }
  .plmf-bnav a svg{ width:20px!important; height:20px!important; }
  .plmf-bnav a.is-active{ color:var(--plmf-green)!important; font-weight:600!important; }
  .plmf-bnav a.is-active::before{
    content:''; position:absolute; top:0; left:50%; transform:translateX(-50%);
    width:26px; height:3px; border-radius:0 0 3px 3px; background:var(--plmf-amber);
  }
  .plmf-badge-count{
    position:absolute; top:6px; left:calc(50% + 7px);
    min-width:16px; height:16px; padding:0 4px;
    border-radius:999px; background:var(--plmf-terra); color:#fff;
    font-size:9.5px; line-height:16px; font-weight:700; text-align:center;
  }
  body{ padding-bottom:calc(var(--plmf-bnav) + env(safe-area-inset-bottom))!important; }

  /* ============================================================
     9. SHOP PAGE — sort/filter bar above the nav, filter sheet
     ============================================================ */
  .plmf-toolbar{
    position:fixed!important; left:0!important; right:0!important;
    bottom:var(--plmf-bnav)!important; z-index:1290!important;
    display:grid!important; grid-template-columns:1fr 1px 1fr!important;
    align-items:center!important; height:50px!important;
    background:rgba(255,255,255,.97)!important;
    -webkit-backdrop-filter:var(--plmf-glass-blur); backdrop-filter:var(--plmf-glass-blur);
    border-top:1px solid rgba(181,69,27,.14)!important;
    box-shadow:0 -2px 14px rgba(44,44,42,.07)!important;
    padding:0!important; margin:0!important;
  }
  .plmf-toolbar button{
    display:flex!important; align-items:center!important; justify-content:center!important;
    gap:7px!important; height:100%!important; width:100%!important;
    background:transparent!important; border:0!important;
    font-size:13.5px!important; font-weight:600!important;
    color:var(--plmf-green)!important; cursor:pointer!important;
  }
  .plmf-toolbar button svg{ width:15px; height:15px; }
  .plmf-toolbar .plmf-tbdiv{ width:1px; height:22px; background:rgba(181,69,27,.20); }
  .plmf-toolbar button .plmf-dot{
    width:6px; height:6px; border-radius:999px; background:var(--plmf-terra);
    display:inline-block; margin-left:2px;
  }
  body.plmf-listing{ padding-bottom:calc(var(--plmf-bnav) + 50px + env(safe-area-inset-bottom))!important; }

  /* native Woo ordering + any theme filter pill: gone, we own this now */
  .woocommerce-ordering,
  .woocommerce-result-count,
  .pl-filter-pill,
  .plmf-hide-native{ display:none!important; }

  /* filter sheet */
  aside.pl-filters,
  .plmf-sheet{
    position:fixed!important; left:0!important; right:0!important; bottom:0!important;
    z-index:1400!important;
    max-height:82vh!important; height:auto!important;
    width:auto!important; max-width:none!important; margin:0!important;
    border-radius:20px 20px 0 0!important;
    box-shadow:0 -8px 40px rgba(44,44,42,.22)!important;
    transform:translateY(101%); transition:transform .26s cubic-bezier(.4,0,.2,1), visibility .26s;
    visibility:hidden;
    display:flex!important; flex-direction:column!important;
    overflow:hidden!important;
    padding:0!important;
  }
  body.plmf-sheet-open aside.pl-filters,
  body.plmf-sheet-open .plmf-sheet{ transform:translateY(0); visibility:visible; }
  .plmf-sheet-head{
    display:flex; align-items:center; justify-content:space-between;
    padding:var(--plmf-s3) var(--plmf-gut);
    border-bottom:1px solid rgba(181,69,27,.14);
    font-size:15px; font-weight:600; color:var(--plmf-ink);
    flex:0 0 auto;
  }
  .plmf-sheet-body{ flex:1 1 auto; overflow-y:auto; padding:var(--plmf-s3) var(--plmf-gut); }
  .plmf-sheet-foot{
    flex:0 0 auto; display:grid; grid-template-columns:1fr 1.6fr; gap:var(--plmf-s2);
    padding:var(--plmf-s2) var(--plmf-gut) calc(var(--plmf-s3) + env(safe-area-inset-bottom));
    border-top:1px solid rgba(181,69,27,.14);
  }
  .plmf-sheet-foot button{
    height:46px; border-radius:999px; font-size:14px; font-weight:600; cursor:pointer;
  }
  .plmf-sheet-foot .plmf-close{ background:#fff; color:var(--plmf-terra); border:1px solid rgba(181,69,27,.35); }
  .plmf-sheet-foot .plmf-apply{ background:var(--plmf-green); color:#fff; border:0; }
  .plmf-scrim{
    position:fixed; inset:0; z-index:1399;
    background:rgba(20,30,26,.42); opacity:0; pointer-events:none;
    transition:opacity .26s ease;
  }
  body.plmf-sheet-open .plmf-scrim{ opacity:1; pointer-events:auto; }
  .plmf-sortlist{ list-style:none; margin:0; padding:0; }
  .plmf-sortlist li{ margin:0; }
  .plmf-sortlist button{
    display:flex; align-items:center; justify-content:space-between;
    width:100%; padding:15px 2px; background:none; border:0;
    border-bottom:1px solid rgba(181,69,27,.10);
    font-size:14.5px; color:var(--plmf-ink); text-align:left; cursor:pointer;
  }
  .plmf-sortlist button[aria-checked=true]{ color:var(--plmf-green); font-weight:600; }
  .plmf-radio{ width:20px; height:20px; border-radius:999px; border:1.5px solid rgba(181,69,27,.35); flex:0 0 20px; }
  .plmf-sortlist button[aria-checked=true] .plmf-radio{
    border-color:var(--plmf-green); background:var(--plmf-green);
    box-shadow:inset 0 0 0 3.5px #fff;
  }

  /* ============================================================
     10. PRODUCT DETAIL
     ============================================================ */
  body.single-product .woocommerce-product-gallery{
    width:100%!important; max-width:none!important; margin:0 0 var(--plmf-s3)!important; float:none!important;
    opacity:1!important;
  }
  body.single-product .woocommerce-product-gallery__wrapper,
  body.single-product .woocommerce-product-gallery__image{ width:100%!important; margin:0!important; }
  body.single-product .woocommerce-product-gallery__image img{
    width:100%!important; height:auto!important; aspect-ratio:1/1; object-fit:cover;
    border-radius:var(--plmf-glass-r)!important; display:block;
  }
  body.single-product .summary.entry-summary{
    width:100%!important; max-width:none!important; float:none!important;
    margin:0!important; padding:0!important;
  }
  body.single-product .summary > *{ max-width:100%!important; }
  /* text was clipping horizontally */
  body.single-product .summary p,
  body.single-product .summary li,
  body.single-product .summary div{
    overflow-wrap:anywhere!important; word-break:normal!important; white-space:normal!important;
    max-width:100%!important;
  }
  /* the brief: remove SKU block and Meet the Artisan */
  body.single-product .product_meta,
  body.single-product .sku_wrapper,
  body.single-product .posted_in,
  body.single-product .tagged_as,
  body.single-product .plmf-artisan,
  body.single-product [class*="meet-the-artisan"]{ display:none!important; }
  body.single-product .plmf-acc{
    background:var(--plmf-glass-bg)!important;
    border:var(--plmf-glass-bd)!important;
    border-radius:var(--plmf-glass-r)!important;
    box-shadow:var(--plmf-glass-sh)!important;
    margin:0 0 var(--plmf-s2)!important; overflow:hidden!important;
  }
  body.single-product .plmf-acc > summary{
    list-style:none; cursor:pointer;
    padding:var(--plmf-s3); font-size:14px; font-weight:600; color:var(--plmf-ink);
    display:flex; align-items:center; justify-content:space-between;
  }
  body.single-product .plmf-acc > summary::-webkit-details-marker{ display:none; }
  body.single-product .plmf-acc > summary::after{
    content:''; width:9px; height:9px; flex:0 0 9px;
    border-right:2px solid var(--plmf-ink-2); border-bottom:2px solid var(--plmf-ink-2);
    transform:rotate(45deg); transition:transform .2s ease;
  }
  body.single-product .plmf-acc[open] > summary::after{ transform:rotate(-135deg); }
  body.single-product .plmf-acc > div{ padding:0 var(--plmf-s3) var(--plmf-s3); font-size:13.5px; line-height:1.65; }
  body.single-product .plmf-acc table{ width:100%; font-size:13px; border-collapse:collapse; }
  body.single-product .plmf-acc th,body.single-product .plmf-acc td{
    text-align:left; padding:7px 0; border-bottom:1px solid rgba(181,69,27,.12); vertical-align:top;
  }
  body.single-product .plmf-acc th{ width:38%; font-weight:600; color:var(--plmf-ink-2); }

  .plmf-buybar{
    position:fixed!important; left:0!important; right:0!important; bottom:0!important;
    z-index:1310!important;
    display:flex!important; align-items:center!important; gap:var(--plmf-s2)!important;
    padding:var(--plmf-s2) var(--plmf-gut) calc(var(--plmf-s2) + env(safe-area-inset-bottom))!important;
    background:rgba(255,253,238,.97)!important;
    -webkit-backdrop-filter:var(--plmf-glass-blur); backdrop-filter:var(--plmf-glass-blur);
    border-top:1px solid rgba(181,69,27,.16)!important;
    box-shadow:0 -2px 18px rgba(44,44,42,.10)!important;
  }
  .plmf-buybar .plmf-bb-price{ flex:0 0 auto; font-size:15px; font-weight:700; color:var(--plmf-ink); }
  .plmf-buybar .plmf-bb-cta{
    flex:1 1 auto; height:46px; border-radius:999px; border:0;
    background:var(--plmf-green); color:#fff!important;
    font-size:14.5px; font-weight:600; cursor:pointer;
  }
  body.plmf-buybar-on .plmf-bnav{ transform:translateY(100%); transition:transform .2s ease; }

  /* ============================================================
     11. CART / ACCOUNT / WISHLIST / AUTH
     ============================================================ */
  .woocommerce-cart .woocommerce,
  .woocommerce-account .woocommerce,
  .woocommerce-checkout .woocommerce{ padding:0 var(--plmf-gut)!important; }

  .woocommerce-cart table.shop_table{ border:var(--plmf-glass-bd)!important; overflow:hidden!important; }
  .woocommerce-cart table.shop_table th{ font-size:12px!important; }
  .woocommerce-cart table.shop_table td{ font-size:13.5px!important; padding:var(--plmf-s2)!important; }
  .woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
    display:block!important; width:100%!important; box-sizing:border-box!important;
    height:50px!important; line-height:50px!important;
    border-radius:999px!important; text-align:center!important;
    background:var(--plmf-green)!important;
    color:#fff!important; font-size:15px!important; font-weight:600!important;
    text-decoration:none!important; border:0!important;
  }
  .woocommerce-cart .wc-proceed-to-checkout a.checkout-button:visited{ color:#fff!important; }

  /* account: Nykaa-style row list, our skin */
  .plmf-acctlist{ list-style:none; margin:var(--plmf-s3) 0 0; padding:0; }
  .plmf-acctlist li{ margin:0; }
  .plmf-acctlist a{
    display:flex!important; align-items:center!important; gap:var(--plmf-s3)!important;
    padding:var(--plmf-s3) 0!important;
    border-bottom:1px solid rgba(181,69,27,.14)!important;
    text-decoration:none!important; color:var(--plmf-ink)!important;
    min-height:60px!important; box-sizing:border-box!important;
  }
  .plmf-acctlist .plmf-ai-txt{ flex:1 1 auto; min-width:0; }
  .plmf-acctlist .plmf-ai-t{ display:block; font-size:15px; font-weight:600; line-height:1.3; }
  .plmf-acctlist .plmf-ai-d{ display:block; font-size:12.5px; color:var(--plmf-ink-2); margin-top:2px; }
  .plmf-acctlist .plmf-ai-ic{ flex:0 0 22px; width:22px; height:22px; color:var(--plmf-green); }
  .plmf-acctgreet{
    padding:var(--plmf-s4) var(--plmf-s3)!important;
    border-radius:var(--plmf-glass-r)!important;
    background:var(--plmf-glass-bg)!important;
    border:var(--plmf-glass-bd)!important;
    box-shadow:var(--plmf-glass-sh)!important;
    text-align:left!important;
    overflow:visible!important; height:auto!important; width:auto!important;
  }
  .plmf-acctgreet h2{ font-size:20px!important; margin:0 0 4px!important; }
  .plmf-acctgreet p{ font-size:13px!important; margin:0!important; color:var(--plmf-ink-2)!important; }
  /* the WhatsApp blurb the brief asked to remove */
  .plmf-wa-blurb{ display:none!important; }

  /* wishlist page centred */
  .woocommerce-wishlist .wlfmc-wishlist-title,
  .plmf-wishlist-head{ text-align:center!important; }
  body.woocommerce-wishlist .woocommerce,
  .wlfmc-wishlist-empty{ text-align:center!important; }

  /* auth: login / register as a toggle */
  .plmf-authgoogle{ margin:0 0 var(--plmf-s3); display:flex; flex-direction:column; align-items:center; gap:var(--plmf-s2); }
  .plmf-authgoogle .plmf-gbtn{ max-width:none; }
  .plmf-author{ font-size:12px; color:var(--plmf-ink-2, #6b6b66); letter-spacing:.04em; text-transform:uppercase; }
  /* login / register columns: Woo ships them 50/50; on a phone each takes the row */
  #customer_login.u-columns,
  .woocommerce-account .u-columns{ display:block!important; }
  #customer_login .u-column1, #customer_login .u-column2,
  .woocommerce-account .col-1, .woocommerce-account .col-2{
    float:none!important; width:100%!important; max-width:none!important;
    margin:0!important; padding:0!important;
  }
  .plmf-authgoogle .plmf-gbtn{ width:100%; max-width:none; white-space:nowrap; }
  .plmf-authtabs{
    display:grid!important; grid-template-columns:1fr 1fr!important;
    gap:0!important; margin:0 auto var(--plmf-s4)!important; max-width:340px!important;
    background:rgba(255,255,255,.6)!important;
    border:var(--plmf-glass-bd)!important; border-radius:999px!important;
    padding:4px!important;
  }
  .plmf-authtabs button{
    height:40px; border:0; border-radius:999px; background:transparent;
    font-size:14px; font-weight:600; color:var(--plmf-ink-2); cursor:pointer;
  }
  .plmf-authtabs button[aria-selected=true]{ background:var(--plmf-green); color:#fff; }
  .woocommerce-account:not(.logged-in) .woocommerce form.login,
  .woocommerce-account:not(.logged-in) .woocommerce form.register{
    max-width:360px!important; margin:0 auto!important; padding:var(--plmf-s4) var(--plmf-s3)!important;
    float:none!important; width:auto!important;
  }
  .plmf-authhide{ display:none!important; }
  .woocommerce form .form-row input.input-text{
    height:46px!important; border-radius:12px!important;
    border:var(--plmf-glass-bd)!important; background:#fff!important;
    padding:0 var(--plmf-s3)!important; font-size:14px!important; box-sizing:border-box!important;
  }
  .woocommerce form .form-row label{ font-size:13px!important; margin-bottom:6px!important; display:block!important; }
  .woocommerce form button.button,
  .woocommerce form input[type=submit]{
    width:100%!important; height:48px!important; border-radius:999px!important;
    background:var(--plmf-green)!important; color:#fff!important; border:0!important;
    font-size:15px!important; font-weight:600!important;
  }

  /* ============================================================
     12. WHATSAPP FLOATING BUTTON
     ============================================================ */
  .plmf-wa,
  a[href*="wa.me"].plmf-wa,
  .whatsapp-float,
  [class*="whatsapp"][class*="float"]{
    position:fixed!important;
    right:var(--plmf-gut)!important;
    bottom:calc(var(--plmf-bnav) + var(--plmf-s3) + env(safe-area-inset-bottom))!important;
    z-index:1280!important;
    width:52px!important; height:52px!important;
    display:flex!important; align-items:center!important; justify-content:center!important;
    padding:0!important; margin:0!important; line-height:0!important;
    border-radius:999px!important; overflow:hidden!important;
    box-shadow:0 4px 16px rgba(0,0,0,.22)!important;
  }
  .plmf-wa svg,.plmf-wa img,.plmf-wa i,
  .whatsapp-float svg,.whatsapp-float img,.whatsapp-float i{
    width:27px!important; height:27px!important;
    margin:0!important; padding:0!important; display:block!important;
    position:static!important; transform:none!important;
  }
  body.plmf-listing .plmf-wa{ bottom:calc(var(--plmf-bnav) + 50px + var(--plmf-s2) + env(safe-area-inset-bottom))!important; }
  body.plmf-buybar-on .plmf-wa{ display:none!important; }

  /* ============================================================
     13. TOAST
     ============================================================ */
  .plmf-toast{
    position:fixed; left:50%; transform:translateX(-50%) translateY(20px);
    bottom:calc(var(--plmf-bnav) + var(--plmf-s4) + env(safe-area-inset-bottom));
    z-index:1500;
    display:flex; align-items:center; gap:var(--plmf-s1);
    padding:11px 18px; border-radius:999px;
    background:var(--plmf-green); color:#fff;
    font-size:13.5px; font-weight:500;
    box-shadow:0 6px 24px rgba(44,44,42,.24);
    opacity:0; pointer-events:none; transition:opacity .2s ease, transform .2s ease;
    max-width:calc(100% - 32px);
  }
  .plmf-toast.is-on{ opacity:1; transform:translateX(-50%) translateY(0); }
  .plmf-toast svg{ width:16px; height:16px; flex:0 0 16px; }

  /* image CLS guard */
  img[data-plmf-ar]{ height:auto; }

  /* ============================================================
     14. SHOP BY OCCASION — the theme gives this block an inline beige
     fill (#f9f6f0) and beige-bordered chips; it is the one panel that
     still did not carry the Reviews glass token
     ============================================================ */
  main.products-page > aside.pl-filters + div,
  main.products-page > div[style*="f9f6f0"]{
    background:var(--plmf-glass-bg)!important;
    border:var(--plmf-glass-bd)!important;
    border-radius:var(--plmf-glass-r)!important;
    box-shadow:var(--plmf-glass-sh)!important;
    padding:var(--plmf-s3) var(--plmf-s3) var(--plmf-s2)!important;
    margin:0 0 var(--plmf-s3)!important;
  }
  main.products-page > aside.pl-filters + div > p,
  main.products-page > div[style*="f9f6f0"] > p{
    font-size:12px!important; font-weight:600!important; letter-spacing:.08em!important;
    text-transform:uppercase!important; color:var(--plmf-green)!important;
    margin:0 0 var(--plmf-s2)!important;
  }
  main.products-page > aside.pl-filters + div > div,
  main.products-page > div[style*="f9f6f0"] > div{
    display:flex!important; flex-wrap:nowrap!important; gap:var(--plmf-s1)!important;
    overflow-x:auto!important; scrollbar-width:none; overflow-anchor:none!important;
    margin:0 calc(var(--plmf-s3) * -1)!important; padding:0 var(--plmf-s3) var(--plmf-s1)!important;
  }
  main.products-page > aside.pl-filters + div > div::-webkit-scrollbar{ display:none; }
  main.products-page > aside.pl-filters + div > div > a,
  main.products-page > div[style*="f9f6f0"] > div > a{
    flex:0 0 auto!important;
    padding:8px 15px!important; border-radius:999px!important;
    font-size:13px!important; white-space:nowrap!important;
    background:rgba(255,255,255,.9)!important;
    border:var(--plmf-glass-bd)!important;
    color:var(--plmf-ink)!important; text-decoration:none!important;
  }

/* PLMF-V24-START */
/* v2.4 - header polish: glass search, glass address pill, glass icon buttons */
.plmf-search{ background:transparent!important; padding-top:7px!important; }
.plmf-search form{
  width:100%; height:38px; display:flex; align-items:center; gap:8px; padding:0 14px;
  background:var(--plmf-glass-bg)!important;
  border:var(--plmf-glass-bd)!important;
  border-radius:999px!important;
  box-shadow:var(--plmf-glass-sh)!important;
  -webkit-backdrop-filter:var(--plmf-glass-blur);
  backdrop-filter:var(--plmf-glass-blur);
}
.plmf-search form input{ background:transparent!important; border:0!important; box-shadow:none!important; outline:0!important; height:100%!important; padding:0!important; }
.plmf-addr{ background:transparent!important; border-bottom:0!important; position:relative; }
.plmf-addr::before{
  content:''; position:absolute; inset:5px var(--plmf-gut); border-radius:999px;
  background:var(--plmf-glass-bg);
  border:var(--plmf-glass-bd);
  box-shadow:var(--plmf-glass-sh);
  -webkit-backdrop-filter:var(--plmf-glass-blur);
  backdrop-filter:var(--plmf-glass-blur);
  pointer-events:none;
}
.plmf-addr > *{ position:relative; z-index:1; }
.plmf-addr{ padding-left:calc(var(--plmf-gut) + 12px)!important; padding-right:calc(var(--plmf-gut) + 12px)!important; }
.plmf-iconbtn{
  background:var(--plmf-glass-bg)!important;
  border:var(--plmf-glass-bd)!important;
  box-shadow:var(--plmf-glass-sh)!important;
  -webkit-backdrop-filter:var(--plmf-glass-blur);
  backdrop-filter:var(--plmf-glass-blur);
}

/* v2.4b - home polish */
.plmf-chips, .plmf-rail{
  -webkit-mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 26px),rgba(0,0,0,.15) 100%);
  mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 26px),rgba(0,0,0,.15) 100%);
}
.plmf-trio{ margin-bottom:var(--plmf-s3)!important; }
.plmf-artisan p, .plmf-artisan .plmf-ai-d{
  display:-webkit-box!important; -webkit-line-clamp:2!important; -webkit-box-orient:vertical!important;
  overflow:hidden!important; margin:0!important;
}
.plmf-artisan{ padding:14px!important; }
body.home section > div{ margin-left:auto!important; margin-right:auto!important; }
body.home section h2, body.home section h3{ text-align:center!important; }

/* v2.4c - rebuilt footer, mobile-first */
.plmf-v24foot{ background:#164A41; color:#FFFDEE; margin:28px 0 0; padding:30px 20px calc(150px + env(safe-area-inset-bottom)); text-align:center; }
.plmf-v24foot *{ box-sizing:border-box; }
.plmf-v24foot .v24logo{ width:66px; height:66px; border-radius:999px; object-fit:contain; display:block; margin:0 auto 14px; }
.plmf-v24foot .v24mark{ font-size:13px; letter-spacing:.22em; color:#F1B24A; margin:0 auto 14px; }
.plmf-v24foot .v24desc{ font-size:13.5px; line-height:1.7; opacity:.88; max-width:32ch; margin:0 auto 20px; }
.plmf-v24foot .v24social{ display:flex; justify-content:center; align-items:center; gap:14px; margin:0 auto 26px; padding:0; }
.plmf-v24foot .v24social a{ display:flex; align-items:center; justify-content:center; width:42px; height:42px; padding:0; line-height:0; border-radius:999px; border:1px solid rgba(255,253,238,.30); color:#FFFDEE; flex:0 0 42px; }
.plmf-v24foot .v24social svg{ width:19px; height:19px; display:block; }
.plmf-v24foot .v24grp{ margin:0 auto 22px; }
.plmf-v24foot h4{ font-size:11.5px; letter-spacing:.16em; text-transform:uppercase; color:#F1B24A; margin:0 0 10px; font-weight:600; }
.plmf-v24foot .v24grp a, .plmf-v24foot .v24grp div{ color:#FFFDEE; text-decoration:none; font-size:13.5px; line-height:2.05; display:block; opacity:.9; }
.plmf-v24foot .v24reg{ border-top:1px solid rgba(255,253,238,.16); padding-top:24px; margin-top:4px; }
.plmf-v24foot .v24cards{ display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:0 auto 16px; max-width:400px; }
.plmf-v24foot .v24card{ background:rgba(255,253,238,.07); border:1px solid rgba(255,253,238,.18); border-radius:14px; padding:12px 8px; min-width:0; }
.plmf-v24foot .v24card b{ display:block; font-size:9.5px; letter-spacing:.13em; text-transform:uppercase; color:#F1B24A; font-weight:600; margin:0 0 5px; }
.plmf-v24foot .v24card span{ display:block; font-size:12.5px; line-height:1.4; overflow-wrap:anywhere; }
.plmf-v24foot .v24legal{ font-size:11.5px; line-height:1.85; opacity:.72; max-width:38ch; margin:0 auto; }
.plmf-v24foot .v24copy{ border-top:1px solid rgba(255,253,238,.16); margin-top:20px; padding-top:16px; font-size:11.5px; line-height:1.9; opacity:.62; }
.plmf-v24hide{ display:none!important; }
.plmf-wa, .plmf-whatsapp, a[class*="whatsapp"]{ bottom:calc(92px + env(safe-area-inset-bottom))!important; z-index:1190!important; }
/* v2.4d - one frame, one grid */
:root{ --plmf-fpad:18px; }
body .pl-shell{ max-width:100%!important; margin-left:auto!important; margin-right:auto!important; overflow-x:clip; }
body .pl-shell section.plmf-sec{
  box-sizing:border-box!important;
  width:calc(100% - (var(--plmf-gut) * 2))!important;
  max-width:560px!important;
  margin:0 auto var(--plmf-sec)!important;
  padding:26px var(--plmf-fpad)!important;
  background:var(--plmf-glass-bg)!important;
  border:var(--plmf-glass-bd)!important;
  border-radius:var(--plmf-glass-r)!important;
  box-shadow:var(--plmf-glass-sh)!important;
  -webkit-backdrop-filter:var(--plmf-glass-blur);
  backdrop-filter:var(--plmf-glass-blur);
  text-align:center!important;
  overflow:hidden;
}
body .pl-shell section.plmf-sec > *{ max-width:100%!important; margin-left:auto!important; margin-right:auto!important; }
body .pl-shell section.plmf-sec h2, body .pl-shell section.plmf-sec h3, body .pl-shell section.plmf-sec p{ text-align:center!important; }
body .pl-shell section.plmf-sec > div, body .pl-shell section.plmf-sec > header{ background:transparent!important; box-shadow:none!important; border:0!important; }
section.plmf-sec .plmf-rail, section.plmf-sec .plmf-chips{
  width:auto!important;
  margin-left:calc(var(--plmf-fpad) * -1)!important;
  margin-right:calc(var(--plmf-fpad) * -1)!important;
  padding-left:var(--plmf-fpad)!important;
  padding-right:var(--plmf-fpad)!important;
}
section.plmf-sec.plmf-perks .plmf-trio, section.plmf-sec.plmf-perks [class*="grid"]{
  display:flex!important; flex-direction:column!important; gap:10px!important; grid-template-columns:none!important;
}
section.plmf-sec.plmf-perks .plmf-trio > *{
  display:flex!important; align-items:center!important; gap:12px!important; text-align:left!important;
  padding:13px 14px!important; border-radius:14px!important;
  background:rgba(255,255,255,.55)!important; border:1px solid rgba(181,69,27,.14)!important;
}
section.plmf-sec.plmf-journal .plmf-trio, section.plmf-sec.plmf-journal [class*="grid"]{
  display:flex!important; flex-direction:row!important; flex-wrap:nowrap!important; grid-template-columns:none!important;
  overflow-x:auto; scrollbar-width:none; gap:12px!important; scroll-snap-type:x mandatory;
  width:auto!important;
  margin-left:calc(var(--plmf-fpad) * -1)!important; margin-right:calc(var(--plmf-fpad) * -1)!important;
  padding-left:var(--plmf-fpad)!important; padding-right:var(--plmf-fpad)!important;
}
section.plmf-sec.plmf-journal .plmf-trio > *{ flex:0 0 78%!important; scroll-snap-align:start; text-align:left!important; }
section.plmf-sec.plmf-news2 .plmf-nsform{ display:flex; flex-direction:column; gap:10px; max-width:330px; margin:16px auto 0; }
section.plmf-sec.plmf-news2 .plmf-nsmail{
  width:100%; height:44px; padding:0 15px; font:inherit; font-size:14px; box-sizing:border-box;
  background:rgba(255,255,255,.86)!important; border:var(--plmf-glass-bd)!important; border-radius:999px!important; outline:0;
  color:var(--plmf-ink);
}
section.plmf-sec.plmf-news2 .plmf-nsbtn{
  width:100%; height:44px; border:0; border-radius:999px; font:inherit; font-size:14px; font-weight:600;
  background:#164A41; color:#FFFDEE; cursor:pointer;
}
section.plmf-sec.plmf-news2 .plmf-nsmsg{ min-height:18px; margin-top:9px; font-size:12.5px; line-height:1.5; }
section.plmf-sec.plmf-news2 .plmf-nsmsg.ok{ color:#164A41; }
section.plmf-sec.plmf-news2 .plmf-nsmsg.err{ color:#B5451B; }
.plmf-addr form{ display:flex; align-items:center; gap:8px; flex:1 1 auto; min-width:0; }
.plmf-addrin{ flex:1 1 auto; min-width:0; background:transparent; border:0; outline:0; font:inherit; font-size:12.5px; color:inherit; padding:0; }
.plmf-addrsave{ flex:0 0 auto; background:transparent; border:0; padding:0 2px; font:inherit; font-size:12px; font-weight:700; color:#B5451B; cursor:pointer; }
/* PLMF-V24-END */
}

/* PLMF-V25-START */
@media (max-width:1024px){
:root{ --plmf-fpad:18px; }
body section.plmf-sec{ box-sizing:border-box!important; width:calc(100% - 32px)!important; max-width:560px!important; margin:0 auto var(--plmf-sec,36px)!important; padding:26px var(--plmf-fpad)!important; background:var(--plmf-glass-bg)!important; border:var(--plmf-glass-bd)!important; border-radius:var(--plmf-glass-r)!important; box-shadow:var(--plmf-glass-sh)!important; -webkit-backdrop-filter:var(--plmf-glass-blur); backdrop-filter:var(--plmf-glass-blur); text-align:center!important; float:none!important; left:auto!important; right:auto!important; overflow:hidden; }
body section.plmf-sec > *{ max-width:100%!important; margin-left:auto!important; margin-right:auto!important; }
body section.plmf-sec h2, body section.plmf-sec h3, body section.plmf-sec p{ text-align:center!important; }
body section.plmf-sec > div, body section.plmf-sec > header{ background:transparent!important; box-shadow:none!important; border:0!important; }
body section.plmf-sec .plmf-rail, body section.plmf-sec .plmf-chips{ width:auto!important; margin-left:calc(var(--plmf-fpad) * -1)!important; margin-right:calc(var(--plmf-fpad) * -1)!important; padding-left:var(--plmf-fpad)!important; padding-right:var(--plmf-fpad)!important; }
body section.plmf-sec.plmf-perks .plmf-trio, body section.plmf-sec.plmf-perks [class*="grid"]{ display:flex!important; flex-direction:column!important; gap:10px!important; grid-template-columns:none!important; }
body section.plmf-sec.plmf-perks .plmf-trio > *{ display:flex!important; align-items:center!important; gap:12px!important; text-align:left!important; padding:13px 14px!important; border-radius:14px!important; background:rgba(255,255,255,.55)!important; border:1px solid rgba(181,69,27,.14)!important; }
body section.plmf-sec.plmf-journal .plmf-trio{ display:flex!important; flex-direction:row!important; flex-wrap:nowrap!important; overflow-x:auto!important; scroll-snap-type:x mandatory; gap:12px!important; grid-template-columns:none!important; margin-left:calc(var(--plmf-fpad) * -1)!important; margin-right:calc(var(--plmf-fpad) * -1)!important; padding:0 var(--plmf-fpad) 6px!important; }
body section.plmf-sec.plmf-journal .plmf-trio > *{ flex:0 0 78%!important; scroll-snap-align:start; text-align:left!important; }
body section.plmf-sec.plmf-news2 .plmf-nsform{ display:flex!important; flex-direction:column!important; gap:10px!important; max-width:330px!important; margin:16px auto 0!important; }
body section.plmf-sec.plmf-news2 .plmf-nsmail{ width:100%!important; height:44px!important; padding:0 15px!important; box-sizing:border-box!important; background:rgba(255,255,255,.86)!important; border:var(--plmf-glass-bd)!important; border-radius:999px!important; }
body section.plmf-sec.plmf-news2 .plmf-nsbtn{ width:100%!important; height:44px!important; border:0!important; border-radius:999px!important; background:#164A41!important; color:#FFFDEE!important; font-weight:700!important; }
body section.plmf-sec.plmf-news2 .plmf-nsmsg{ min-height:18px; margin-top:9px; font-size:12.5px; }
body section.plmf-sec.plmf-news2 .plmf-nsmsg.ok{ color:#164A41!important; }
body section.plmf-sec.plmf-news2 .plmf-nsmsg.err{ color:#B5451B!important; }
.plmf-v24foot, .plmf-v24foot *{ color:#FFFDEE!important; }
.plmf-v24foot h4{ color:#F1B24A!important; }
.plmf-v24foot .v24social svg{ stroke:#FFFDEE!important; }
.plmf-v24foot .v24card b, .plmf-v24foot .v24card strong{ color:#F1B24A!important; }
.plmf-v24foot{ padding-bottom:calc(118px + env(safe-area-inset-bottom))!important; }
.plmf-wa, .plmf-whatsapp, a[class*="whatsapp"]{ bottom:calc(76px + env(safe-area-inset-bottom))!important; z-index:1190!important; }
}
/* PLMF-V25-END */
/* PLMF-V25B-CSS-START */
@media (max-width:1024px){
.plmf-addrbtn{ display:flex; align-items:center; gap:8px; width:100%; background:transparent; border:0; padding:0; font:inherit; color:inherit; text-align:left; cursor:pointer; }
.plmf-addrbtn .plmf-abt{ flex:1 1 auto; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12.5px; }
.plmf-addrbtn .plmf-abc{ flex:0 0 auto; font-weight:700; font-size:12px; color:#B5451B; }
.plmf-as{ position:fixed; inset:0; z-index:2147483000; display:flex; align-items:flex-end; justify-content:center; }
.plmf-as[hidden]{ display:none!important; }
.plmf-as-bd{ position:absolute; inset:0; background:rgba(20,32,28,.42); -webkit-backdrop-filter:blur(2px); backdrop-filter:blur(2px); }
.plmf-as-sh{ position:relative; width:100%; max-width:560px; max-height:88vh; display:flex; flex-direction:column; background:rgba(255,253,238,.94); -webkit-backdrop-filter:saturate(140%) blur(14px); backdrop-filter:saturate(140%) blur(14px); border:1px solid rgba(181,69,27,.18); border-bottom:0; border-radius:20px 20px 0 0; box-shadow:0 -8px 34px rgba(44,44,42,.22); animation:plmfUp .22s ease-out; }
@keyframes plmfUp{ from{ transform:translateY(18px); opacity:.6 } to{ transform:none; opacity:1 } }
.plmf-as-hd{ display:flex; align-items:center; gap:10px; padding:14px 16px 10px; border-bottom:1px solid rgba(181,69,27,.14); flex:0 0 auto; }
.plmf-as-ti{ flex:1 1 auto; text-align:center; font-weight:700; font-size:14.5px; color:#164A41; }
.plmf-as-hd button{ flex:0 0 32px; width:32px; height:32px; border:0; background:rgba(255,255,255,.6); border-radius:50%; color:#164A41; font-size:17px; line-height:1; cursor:pointer; display:flex; align-items:center; justify-content:center; }
.plmf-as-hd button[hidden]{ display:none!important; }
.plmf-as-bdy{ flex:1 1 auto; min-height:0; padding:14px 16px calc(18px + env(safe-area-inset-bottom)); overflow-y:auto; overscroll-behavior:contain; -webkit-overflow-scrolling:touch; }
.plmf-ar{ display:block; width:100%; text-align:left; background:rgba(255,255,255,.66); border:1px solid rgba(181,69,27,.16); border-radius:14px; padding:12px 13px; margin-bottom:10px; }
.plmf-ar.on{ border-color:#164A41; box-shadow:0 0 0 1.5px rgba(22,74,65,.3); }
.plmf-arh{ display:flex; align-items:center; flex-wrap:wrap; gap:7px; margin-bottom:6px; }
.plmf-arn{ flex:1 1 100%; margin-top:2px; }
.plmf-chip{ font-size:10.5px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:#164A41; background:rgba(241,178,74,.3); border-radius:999px; padding:3px 9px; }
.plmf-chip.d{ background:rgba(22,74,65,.14); }
.plmf-arn{ font-weight:700; font-size:13px; color:#164A41; }
.plmf-ard{ font-size:12.5px; line-height:1.45; color:#3c4a45; cursor:pointer; }
.plmf-arp{ font-size:12px; color:#6b7a74; margin-top:3px; }
.plmf-ara{ display:flex; gap:14px; margin-top:9px; padding-top:9px; border-top:1px dashed rgba(181,69,27,.2); }
.plmf-ara button{ background:none; border:0; padding:0; font-size:12px; font-weight:700; color:#B5451B; cursor:pointer; }
.plmf-ara button.dim{ color:#6b7a74; font-weight:600; }
.plmf-btn{ display:block; width:100%; height:46px; border:0; border-radius:999px; background:#164A41; color:#FFFDEE; font-weight:700; font-size:14px; cursor:pointer; }
.plmf-btn[disabled]{ opacity:.6; }
.plmf-btn2{ display:flex; align-items:center; justify-content:center; gap:8px; width:100%; height:44px; border:1px dashed rgba(22,74,65,.4); border-radius:999px; background:rgba(255,255,255,.5); color:#164A41; font-weight:700; font-size:13.5px; margin-bottom:12px; cursor:pointer; }
.plmf-loc{ display:flex; align-items:center; gap:9px; width:100%; padding:12px 4px; background:none; border:0; border-bottom:1px solid rgba(181,69,27,.14); color:#B5451B; font-weight:700; font-size:13px; cursor:pointer; text-align:left; }
.plmf-q{ width:100%; height:44px; box-sizing:border-box; padding:0 14px; border:1px solid rgba(181,69,27,.2); border-radius:12px; background:rgba(255,255,255,.85); font-size:14px; color:#164A41; }
.plmf-res{ margin-top:6px; }
.plmf-res button{ display:block; width:100%; text-align:left; background:none; border:0; border-bottom:1px solid rgba(181,69,27,.1); padding:11px 2px; cursor:pointer; }
.plmf-res b{ display:block; font-size:13.5px; color:#164A41; font-weight:700; }
.plmf-res span{ display:block; font-size:11.5px; color:#6b7a74; margin-top:2px; }
.plmf-hint{ font-size:12px; color:#6b7a74; padding:10px 2px; line-height:1.5; }
.plmf-f{ display:flex; flex-direction:column; gap:11px; }
.plmf-f label{ display:block; font-size:11px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; color:#6b7a74; margin-bottom:5px; }
.plmf-f input[type=text], .plmf-f input[type=tel]{ width:100%; height:44px; box-sizing:border-box; padding:0 13px; border:1px solid rgba(181,69,27,.2); border-radius:11px; background:rgba(255,255,255,.85); font-size:14px; color:#164A41; }
.plmf-f input.bad{ border-color:#B5451B!important; background:rgba(181,69,27,.06)!important; }
.plmf-row2{ display:grid; grid-template-columns:1fr 1fr; gap:11px; }
.plmf-labs{ display:flex; gap:8px; }
.plmf-labs button{ flex:1 1 0; height:38px; border:1px solid rgba(181,69,27,.22); border-radius:999px; background:rgba(255,255,255,.6); font-size:12.5px; font-weight:700; color:#164A41; cursor:pointer; }
.plmf-labs button.on{ background:#164A41; color:#FFFDEE; border-color:#164A41; }
.plmf-def{ display:flex; align-items:center; gap:9px; font-size:13px; color:#164A41; }
.plmf-err{ font-size:12px; color:#B5451B; min-height:16px; text-align:center; }
.plmf-ok{ font-size:12.5px; color:#164A41; text-align:center; min-height:16px; }
.plmf-pinbox{ display:flex; align-items:flex-start; gap:9px; padding:11px 12px; background:rgba(241,178,74,.14); border:1px solid rgba(241,178,74,.4); border-radius:12px; font-size:12.5px; color:#164A41; line-height:1.45; }
.plmf-pinbox button{ background:none; border:0; padding:0; color:#B5451B; font-weight:700; font-size:12.5px; cursor:pointer; white-space:nowrap; }
body.plmf-nos{ overflow:hidden!important; }
}
/* PLMF-V25B-CSS-END */