/* ==========================================================================
   AlphaBuds BC — v1.1 layer
   Loaded after every other theme stylesheet. New components first, then the
   fixes to older ones, so each override sits next to the thing it corrects.
   ========================================================================== */

:root{
  --os-indica:#6b3fa0;   --os-indica-050:#f3ecfb;  --os-indica-line:#dccbf0;
  --os-sativa:#b45f06;   --os-sativa-050:#fdf1e0;  --os-sativa-line:#f1d9b3;
  --os-hybrid:#17753c;   --os-hybrid-050:#e9f4ec;  --os-hybrid-line:#c5e2cf;
  --os-tabbar:64px;
}

html,body{overflow-x:clip;}
img{max-width:100%;height:auto;}

.os-wrap--narrow{max-width:900px;}
.os-btn--lg{padding:16px 28px;font-size:1rem;min-height:52px;}
.os-lead{font-size:1.02rem;line-height:1.6;color:var(--os-ink-2);margin:8px 0 16px;}
.os-fine{font-size:.86rem;line-height:1.55;color:var(--os-muted);margin:12px 0 0;}
.os-fine a{color:var(--os-green);font-weight:650;}

/* --------------------------------------------------------------------------
   Hero with the banner carousel
   -------------------------------------------------------------------------- */
.os-hero2{
  background:
    radial-gradient(1100px 420px at 88% -10%,rgba(63,161,95,.20),transparent 60%),
    linear-gradient(180deg,#f3f8f2 0%,#fff 100%);
  border-bottom:1px solid var(--os-line);
}
.os-hero2__in{
  max-width:var(--os-max);margin:0 auto;padding:clamp(22px,3.4vw,46px) 20px clamp(26px,3.6vw,48px);
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:clamp(22px,3.4vw,52px);align-items:center;
}
.os-hero2__eyebrow{
  display:inline-flex;align-items:center;gap:9px;padding:7px 14px;border-radius:var(--os-r-pill);
  background:#fff;border:1px solid var(--os-line);font-size:.8rem;font-weight:700;color:var(--os-ink-2);
  margin-bottom:16px;box-shadow:var(--os-sh-1);
}
.os-hero2__eyebrow .os-dot{width:8px;height:8px;border-radius:50%;background:#2fb85a;box-shadow:0 0 0 4px rgba(47,184,90,.18);flex:none;}
.os-hero2__t{
  margin:0 0 14px;font-size:clamp(2rem,4.3vw,3.35rem);font-weight:800;letter-spacing:-.035em;line-height:1.04;color:var(--os-ink);
}
.os-hero2__sub{margin:0 0 22px;font-size:clamp(1rem,1.25vw,1.12rem);line-height:1.6;color:var(--os-ink-2);max-width:34em;}
.os-hero2__cta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:22px;}
.os-hero2__pts{list-style:none;margin:0;padding:0;display:grid;gap:10px;}
.os-hero2__pts li{display:flex;align-items:flex-start;gap:11px;font-size:.95rem;line-height:1.45;color:var(--os-ink-2);margin:0;}
.os-hero2__pts svg{flex:none;color:var(--os-green);margin-top:1px;}
.os-hero2__pts b{color:var(--os-ink);font-weight:750;}

.os-bn{position:relative;min-width:0;}
.os-bn__track{
  display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;
  border-radius:22px;box-shadow:var(--os-sh-3);background:#0f3d1f;aspect-ratio:3/2;
  -webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;
}
.os-bn__track::-webkit-scrollbar{display:none;}
.os-bn__slide{flex:0 0 100%;scroll-snap-align:center;scroll-snap-stop:always;display:block;min-width:0;}
.os-bn__img{display:block;width:100%;height:100%;object-fit:cover;}
.os-bn__nav{
  position:absolute;top:50%;transform:translateY(-50%);z-index:2;
  width:42px;height:42px;border-radius:50%;border:0;padding:0;margin:0;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.94);color:var(--os-ink);box-shadow:var(--os-sh-2);
  transition:background .16s ease,color .16s ease;min-height:0;line-height:1;
}
.os-bn__nav:hover{background:var(--os-green);color:#fff;}
.os-bn__nav svg{flex:none;}
.os-bn__nav--prev{left:12px;}
.os-bn__nav--next{right:12px;}
.os-bn__dots{display:flex;justify-content:center;gap:8px;margin-top:12px;}
.os-bn__dot{
  width:26px;height:8px;border-radius:99px;border:0;padding:0;margin:0;min-height:0;cursor:pointer;
  background:#cfdccf;transition:background .2s ease,width .2s ease;
}
.os-bn__dot.is-on{background:var(--os-green);width:38px;}

@media (max-width:900px){
  .os-hero2__in{grid-template-columns:1fr;gap:20px;padding-top:16px;}
  .os-bn{order:-1;}
  .os-bn__track{border-radius:16px;}
  .os-bn__nav{width:36px;height:36px;}
  .os-bn__nav--prev{left:8px;} .os-bn__nav--next{right:8px;}
  .os-hero2__cta .os-btn{flex:1 1 100%;}
}

/* --------------------------------------------------------------------------
   Category tiles: fit the row to the number of shelves
   -------------------------------------------------------------------------- */
.os-cats--7{grid-template-columns:repeat(7,minmax(0,1fr));}
.os-cats--8{grid-template-columns:repeat(8,minmax(0,1fr));}
.os-cats--5{grid-template-columns:repeat(5,minmax(0,1fr));}
@media (max-width:1100px){
  .os-cats--7,.os-cats--8,.os-cats--5{grid-template-columns:repeat(4,minmax(0,1fr));}
}
@media (max-width:700px){
  .os-cats--7,.os-cats--8,.os-cats--5{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (max-width:430px){
  .os-cats--7,.os-cats--8,.os-cats--5{grid-template-columns:repeat(2,minmax(0,1fr));}
  /* An odd count would strand one tile; let the last one take the full row. */
  .os-cats--7 > .os-cat:last-child,.os-cats--5 > .os-cat:last-child{grid-column:1 / -1;aspect-ratio:2.4/1;}
}

/* --------------------------------------------------------------------------
   Indica / sativa / hybrid
   -------------------------------------------------------------------------- */
.os-types{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.os-type{
  --c:var(--os-hybrid);--bg:var(--os-hybrid-050);--ln:var(--os-hybrid-line);
  display:flex;flex-direction:column;gap:8px;padding:22px 22px 20px;border-radius:var(--os-r-lg);
  background:#fff;border:1.5px solid var(--ln);text-decoration:none;color:var(--os-ink);
  position:relative;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.os-type::before{content:"";position:absolute;inset:0 0 auto 0;height:5px;background:var(--c);}
.os-type--indica{--c:var(--os-indica);--bg:var(--os-indica-050);--ln:var(--os-indica-line);}
.os-type--sativa{--c:var(--os-sativa);--bg:var(--os-sativa-050);--ln:var(--os-sativa-line);}
a.os-type,a.os-type:hover{color:var(--os-ink);}
.os-type:hover{transform:translateY(-3px);box-shadow:var(--os-sh-2);border-color:var(--c);}
.os-type__ico{width:50px;height:50px;border-radius:14px;background:var(--bg);color:var(--c);display:flex;align-items:center;justify-content:center;}
.os-type__ico svg{flex:none;}
.os-type__t{font-size:1.4rem;font-weight:800;letter-spacing:-.02em;color:var(--os-ink);}
.os-type__n{position:absolute;top:22px;right:20px;font-size:.76rem;font-weight:700;color:var(--c);background:var(--bg);padding:5px 10px;border-radius:99px;}
.os-type__row{font-size:.95rem;line-height:1.5;color:var(--os-ink-2);}
.os-type__row b{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--c);font-weight:800;margin-bottom:1px;}
.os-type__go{margin-top:auto;padding-top:10px;font-weight:750;font-size:.93rem;color:var(--c);display:inline-flex;align-items:center;gap:7px;}
.os-type__go svg{flex:none;transition:transform .18s ease;}
.os-type:hover .os-type__go svg{transform:translateX(4px);}
.os-types__note{margin:14px 0 0;font-size:.86rem;color:var(--os-muted);}
@media (max-width:820px){.os-types{grid-template-columns:1fr;gap:12px;}.os-type{padding:18px 18px 16px;}}

.os-strainchip{
  display:inline-flex;align-items:center;gap:5px;white-space:nowrap;
  font-size:.68rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;line-height:1;
  padding:5px 8px;border-radius:99px;border:1px solid var(--os-hybrid-line);
  background:var(--os-hybrid-050);color:var(--os-hybrid);
}
.os-strainchip svg{flex:none;}
.os-strainchip--indica{background:var(--os-indica-050);color:var(--os-indica);border-color:var(--os-indica-line);}
.os-strainchip--sativa{background:var(--os-sativa-050);color:var(--os-sativa);border-color:var(--os-sativa-line);}
.os-strainchip--grade{background:var(--os-gold-050);color:#7a5a12;border-color:#e8d3a4;}
.os-strainchip--kind{background:var(--os-surface-2);color:var(--os-ink-2);border-color:var(--os-line);}

/* --------------------------------------------------------------------------
   Product card
   -------------------------------------------------------------------------- */
.os-pc__meta{display:flex;align-items:center;justify-content:space-between;gap:6px;flex-wrap:wrap;min-height:22px;margin-bottom:7px;}
.os-pc__meta .os-pc__eyebrow{margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:0 1 auto;}
.os-pc__t{
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  min-height:2.7em;line-height:1.35;
}
.os-pc__rate{min-height:18px;}
.os-pc__price{align-items:baseline;gap:7px;flex-wrap:wrap;font-size:1.22rem;font-weight:800;letter-spacing:-.02em;color:var(--os-ink);margin-top:auto;}
.os-pc__price del{font-size:.86rem;font-weight:600;color:var(--os-muted);text-decoration-thickness:1.5px;}
.os-pc__price ins{text-decoration:none;color:var(--os-red);}
.os-pc__price del + .os-from,.os-pc__price del ~ .amount,.os-pc__price del ~ ins .amount{color:var(--os-red);}
.os-pc__price .screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
.os-pc__pg{display:block;font-size:.78rem;font-weight:650;color:var(--os-green-600);margin-top:3px;}
.os-pc__pts{
  display:inline-flex;align-items:center;gap:5px;align-self:flex-start;margin-top:8px;
  font-size:.72rem;font-weight:750;color:#7a5a12;background:var(--os-gold-050);border:1px solid #efdcb2;
  padding:4px 8px;border-radius:99px;line-height:1;
}
.os-pc__pts svg{flex:none;}

.os-stars{position:relative;display:inline-block;font-size:.84rem;line-height:1;letter-spacing:1.5px;color:#d9ddd9;white-space:nowrap;flex:none;}
.os-stars::before{content:"\2605\2605\2605\2605\2605";}
.os-stars__fill{position:absolute;inset:0 auto 0 0;overflow:hidden;color:#e0a422;}
.os-stars__fill::before{content:"\2605\2605\2605\2605\2605";}

/* The strain label now prints in the card's own meta row; the label plugin's
   copy in the buy area would be a second, differently styled one. */
.os-pc .berocket_better_labels,
.os-pc .br_alabel{display:none !important;}

/* Buy area: every card ends with the same full-width solid button on the same
   baseline, whether it has a size picker above it or not. */
.os-pc__buy{padding:0 13px 14px;gap:8px;}
.os-pc__buy a.button,
.os-pc__buy button,
.os-pc__buy input[type="submit"],
.os-pc__buy .qvp .qvp-btn,
.os-pc__buy .qvp button,
.os-pc__buy .qvp a.button{
  background:var(--os-green) !important;color:#fff !important;border-color:var(--os-green) !important;
  width:100% !important;margin:0 !important;min-height:44px !important;font-size:.9rem !important;font-weight:750 !important;
}
.os-pc__buy a.button:hover,
.os-pc__buy button:hover,
.os-pc__buy .qvp .qvp-btn:hover{background:var(--os-green-600) !important;border-color:var(--os-green-600) !important;color:#fff !important;}
.os-pc__buy a.button.loading,.os-pc__buy button.loading{opacity:.7;}
.os-pc__buy .added_to_cart{color:var(--os-green) !important;background:none !important;min-height:0 !important;border:0 !important;width:auto !important;}
.os-pc__buy .qvp-select,.os-pc .qvp .qvp-select{min-width:0;max-width:100%;text-overflow:ellipsis;}
.os-pc__buy .screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
@media (max-width:560px){
  .os-pc__body{padding:10px 10px 12px;}
  .os-pc__buy{padding:0 10px 11px;}
  .os-pc__price{font-size:1.08rem;}
  .os-pc__t{font-size:.86rem;}
  .os-pc__pts{font-size:.68rem;}
  .os-pc__buy .qvp-select,.os-pc .qvp .qvp-select{font-size:.78rem !important;padding:0 26px 0 11px !important;}
}

/* --------------------------------------------------------------------------
   Points
   -------------------------------------------------------------------------- */
.os-pts{
  display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(20px,3vw,44px);align-items:center;
  background:linear-gradient(135deg,#0e3a1f 0%,#17753c 100%);color:#fff;
  border-radius:24px;padding:clamp(24px,3.6vw,46px);position:relative;overflow:hidden;
}
.os-pts::after{content:"";position:absolute;right:-90px;top:-90px;width:300px;height:300px;border-radius:50%;background:rgba(255,255,255,.06);pointer-events:none;}
.os-pts__eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#ffd98a;margin-bottom:10px;}
.os-pts__eyebrow svg{flex:none;}
.os-pts__t{margin:0 0 10px;font-size:clamp(1.5rem,2.9vw,2.3rem);font-weight:800;letter-spacing:-.03em;line-height:1.1;color:#fff;}
.os-pts__s{margin:0 0 18px;font-size:1rem;line-height:1.6;color:rgba(255,255,255,.86);max-width:32em;}
.os-pts__bal{margin:0 0 16px;font-size:1.02rem;color:#fff;}
.os-pts__bal b{color:#ffd98a;font-size:1.2rem;}
.os-pts__cta{display:flex;flex-wrap:wrap;align-items:center;gap:16px;}
a.os-pts__more{color:#fff;font-weight:700;text-decoration:underline;text-underline-offset:3px;}
a.os-pts__more:hover{color:#ffd98a;}
.os-pts__steps{display:grid;gap:12px;position:relative;z-index:1;}
.os-pts__step{display:flex;gap:14px;align-items:flex-start;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);border-radius:16px;padding:14px 16px;}
.os-pts__num{flex:none;width:32px;height:32px;border-radius:50%;background:#ffd98a;color:#3d2c05;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:.95rem;}
.os-pts__step p{margin:0;font-size:.95rem;line-height:1.5;color:rgba(255,255,255,.88);}
.os-pts__step b{color:#fff;display:block;font-size:1rem;}
@media (max-width:860px){.os-pts{grid-template-columns:1fr;border-radius:18px;}}

.os-ptsnote{display:flex;gap:12px;align-items:flex-start;background:var(--os-gold-050);border:1px solid #efdcb2;border-radius:14px;padding:13px 15px;margin:0 0 14px;text-align:left;}
.os-ptsnote__ico{flex:none;width:36px;height:36px;border-radius:10px;background:#fff;color:#8a6410;display:flex;align-items:center;justify-content:center;}
.os-ptsnote__ico svg{flex:none;}
.os-ptsnote p{margin:0;}
.os-ptsnote__t{font-size:.95rem;font-weight:650;color:var(--os-ink);line-height:1.4;}
.os-ptsnote__t b{color:#7a5a12;}
.os-ptsnote__s{font-size:.84rem;color:var(--os-ink-2);line-height:1.5;margin-top:2px !important;}
.os-ptsnote a{color:var(--os-green);font-weight:700;text-decoration:underline;}

/* --------------------------------------------------------------------------
   Steps, delivery areas, review rewards, reviews, join
   -------------------------------------------------------------------------- */
.os-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;counter-reset:s;}
.os-step{background:#fff;border:1px solid var(--os-line);border-radius:var(--os-r-lg);padding:22px;}
.os-step__n{width:38px;height:38px;border-radius:50%;background:var(--os-green);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;margin-bottom:12px;}
.os-step__t{margin:0 0 6px;font-size:1.12rem;font-weight:780;color:var(--os-ink);}
.os-step p{margin:0;font-size:.95rem;line-height:1.55;color:var(--os-ink-2);}
@media (max-width:820px){.os-steps{grid-template-columns:1fr;gap:10px;}.os-step{padding:16px 18px;display:grid;grid-template-columns:auto 1fr;column-gap:14px;align-items:start;}
  .os-step__n{grid-row:1 / span 2;margin:0;}.os-step__t{margin:0 0 3px;}}

.os-areas{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;}
.os-area{display:grid;grid-template-columns:auto 1fr;column-gap:12px;row-gap:1px;align-items:center;padding:15px 16px;background:#fff;border:1px solid var(--os-line);border-radius:var(--os-r-lg);text-decoration:none;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;}
a.os-area,a.os-area:hover{color:var(--os-ink);}
.os-area:hover{border-color:var(--os-green);box-shadow:var(--os-sh-2);transform:translateY(-2px);}
.os-area__ico{grid-row:1 / span 2;width:40px;height:40px;border-radius:12px;background:var(--os-green-050);color:var(--os-green);display:flex;align-items:center;justify-content:center;}
.os-area__ico svg{flex:none;}
.os-area__t{font-weight:780;font-size:1.02rem;color:var(--os-ink);}
.os-area__min{font-size:.83rem;color:var(--os-muted);font-weight:600;}
@media (max-width:480px){.os-areas{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}.os-area{padding:12px;grid-template-columns:1fr;}.os-area__ico{display:none;}}

.os-rr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.os-rr__card{background:#fff;border:1px solid var(--os-line);border-radius:var(--os-r-lg);padding:22px;text-align:left;}
.os-rr__ico{width:44px;height:44px;border-radius:12px;background:var(--os-gold-050);color:#8a6410;display:flex;align-items:center;justify-content:center;margin-bottom:12px;}
.os-rr__ico svg{flex:none;}
.os-rr__off{margin:0;font-size:1.9rem;font-weight:800;letter-spacing:-.03em;color:var(--os-green);line-height:1.1;}
.os-rr__what{margin:6px 0 2px;font-size:1.02rem;font-weight:750;color:var(--os-ink);}
.os-rr__spend{margin:0;font-size:.88rem;color:var(--os-muted);line-height:1.5;}
.os-rr__fine{margin:14px 0 0;font-size:.86rem;color:var(--os-muted);}
@media (max-width:820px){.os-rr{grid-template-columns:1fr;gap:10px;}.os-rr__card{display:grid;grid-template-columns:auto 1fr;column-gap:14px;padding:16px;align-items:center;}
  .os-rr__ico{grid-row:1 / span 3;margin:0;}.os-rr__off{font-size:1.45rem;}.os-rr__what{margin:2px 0 0;}}

.os-revs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.os-rev{margin:0;background:#fff;border:1px solid var(--os-line);border-radius:var(--os-r-lg);padding:20px;display:flex;flex-direction:column;gap:10px;}
.os-rev .os-stars{font-size:1rem;align-self:flex-start;}
.os-rev__q{margin:0;padding:0;border:0;font-size:.97rem;line-height:1.6;color:var(--os-ink-2);font-style:normal;quotes:none;}
.os-rev__by{margin-top:auto;font-size:.84rem;color:var(--os-muted);line-height:1.45;}
.os-rev__by b{display:block;color:var(--os-ink);font-size:.92rem;}
.os-rev__by a{color:var(--os-green);font-weight:650;}
@media (max-width:980px){.os-revs{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:620px){.os-revs{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:6px;scrollbar-width:none;}
  .os-revs::-webkit-scrollbar{display:none;}.os-rev{flex:0 0 84%;scroll-snap-align:start;}}

.os-about p{font-size:1.02rem;line-height:1.7;color:var(--os-ink-2);margin:0 0 14px;}
.os-about a{color:var(--os-green);font-weight:650;text-decoration:underline;text-underline-offset:2px;}
.os-join{display:flex;gap:10px;margin-top:20px;max-width:560px;}
.os-join input[type="email"]{flex:1 1 auto;min-width:0;height:50px;margin:0;border:1.5px solid var(--os-line);border-radius:var(--os-r-pill);padding:0 20px;font-size:1rem;font-family:var(--os-font);background:#fff;color:var(--os-ink);box-shadow:none;}
.os-join input[type="email"]:focus{border-color:var(--os-green);outline:none;box-shadow:0 0 0 3px rgba(23,117,60,.14);}
.os-join .os-btn{flex:none;}
.os-join__note{font-size:.86rem;color:var(--os-muted);margin:10px 0 0;}
@media (max-width:560px){.os-join{flex-direction:column;}.os-join .os-btn{width:100%;}}

/* FAQ ---------------------------------------------------------------------- */
.os-faq{background:#fff;border:1px solid var(--os-line);border-radius:14px;margin:0 0 10px;overflow:hidden;}
.os-faq > summary{
  list-style:none;cursor:pointer;padding:16px 50px 16px 18px;position:relative;
  font-size:1.02rem;font-weight:720;color:var(--os-ink);line-height:1.4;
}
.os-faq > summary::-webkit-details-marker{display:none;}
.os-faq > summary::after{
  content:"";position:absolute;right:20px;top:50%;width:10px;height:10px;margin-top:-8px;
  border-right:2.5px solid var(--os-green);border-bottom:2.5px solid var(--os-green);transform:rotate(45deg);transition:transform .2s ease;
}
.os-faq[open] > summary::after{transform:rotate(-135deg);margin-top:-2px;}
.os-faq > summary:hover{color:var(--os-green);}
.os-faq > p{margin:0;padding:0 18px 18px;font-size:.98rem;line-height:1.65;color:var(--os-ink-2);}
.os-faqpage__h{font-size:1.35rem;margin:30px 0 12px;scroll-margin-top:120px;}
.os-faqpage__h:first-child{margin-top:0;}
.os-faqnav{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;}

/* --------------------------------------------------------------------------
   Page hero (city, FAQ, rewards)
   -------------------------------------------------------------------------- */
.os-phero{background:linear-gradient(180deg,#f3f8f2 0%,#fff 100%);border-bottom:1px solid var(--os-line);padding:18px 0 clamp(24px,3.4vw,42px);}
.os-phero .os-crumbs{margin-bottom:18px;}
.os-phero__grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(20px,3vw,48px);align-items:center;}
.os-phero__eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--os-green);margin-bottom:10px;}
.os-phero__eyebrow svg{flex:none;}
.os-phero__t{margin:0 0 12px;font-size:clamp(1.85rem,3.9vw,3rem);font-weight:800;letter-spacing:-.035em;line-height:1.06;color:var(--os-ink);}
.os-phero__sub{margin:0 0 20px;font-size:clamp(1rem,1.2vw,1.1rem);line-height:1.62;color:var(--os-ink-2);max-width:40em;}
.os-phero__cta{display:flex;flex-wrap:wrap;gap:12px;}
.os-phero--dark{background:linear-gradient(135deg,#0e3a1f 0%,#17753c 100%);border-bottom:0;padding-top:clamp(26px,3.6vw,46px);color:#fff;}
.os-phero--dark .os-phero__t{color:#fff;}
.os-phero--dark .os-phero__sub{color:rgba(255,255,255,.88);}
.os-phero--dark .os-phero__eyebrow{color:#ffd98a;}
@media (max-width:860px){.os-phero__grid{grid-template-columns:1fr;}.os-phero__cta .os-btn{flex:1 1 100%;}}

.os-keyfacts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;}
.os-keyfact{background:#fff;border:1px solid var(--os-line);border-radius:16px;padding:16px 18px;box-shadow:var(--os-sh-1);}
.os-keyfact dt{font-size:.74rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--os-muted);margin:0 0 4px;}
.os-keyfact dd{margin:0;font-size:1.3rem;font-weight:800;letter-spacing:-.02em;color:var(--os-ink);line-height:1.2;}
.os-keyfact:first-child dd{color:var(--os-green);font-size:1.9rem;}
@media (max-width:480px){.os-keyfact{padding:13px 14px;}.os-keyfact dd{font-size:1.08rem;}.os-keyfact:first-child dd{font-size:1.5rem;}}

.os-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(22px,3.4vw,54px);align-items:start;}
@media (max-width:860px){.os-two{grid-template-columns:1fr;gap:28px;}}
.os-windows,.os-hoods{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
.os-windows li,.os-hoods li{display:flex;align-items:center;gap:9px;margin:0;background:#fff;border:1px solid var(--os-line);border-radius:12px;padding:11px 13px;font-size:.93rem;font-weight:650;color:var(--os-ink);}
.os-windows svg,.os-hoods svg{flex:none;color:var(--os-green);}
@media (max-width:420px){.os-windows,.os-hoods{grid-template-columns:1fr;}}

.os-citygrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.os-citycard{display:flex;flex-direction:column;gap:10px;padding:22px;background:#fff;border:1px solid var(--os-line);border-radius:var(--os-r-lg);text-decoration:none;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;}
a.os-citycard,a.os-citycard:hover{color:var(--os-ink);}
.os-citycard:hover{border-color:var(--os-green);box-shadow:var(--os-sh-2);transform:translateY(-3px);}
.os-citycard__top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;}
.os-citycard__t{font-size:1.35rem;font-weight:800;letter-spacing:-.02em;color:var(--os-ink);}
.os-citycard__min{font-size:.82rem;font-weight:650;color:var(--os-green-700);background:var(--os-green-050);padding:6px 11px;border-radius:99px;white-space:nowrap;}
.os-citycard__hoods{font-size:.92rem;line-height:1.55;color:var(--os-muted);}
.os-citycard__go{margin-top:auto;font-weight:750;font-size:.92rem;color:var(--os-green);display:inline-flex;align-items:center;gap:7px;}
.os-citycard__go svg{flex:none;}
@media (max-width:980px){.os-citygrid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:600px){.os-citygrid{grid-template-columns:1fr;gap:12px;}.os-citycard{padding:18px;}}

.os-callout{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-top:26px;background:var(--os-green-050);border:1px solid #c5e2cf;border-radius:var(--os-r-lg);padding:22px 24px;}
.os-callout__t{margin:0 0 4px;font-size:1.25rem;}
.os-callout p{margin:0;color:var(--os-ink-2);}
.os-callout__cta{display:flex;flex-wrap:wrap;gap:10px;}
@media (max-width:560px){.os-callout__cta,.os-callout__cta .os-btn{width:100%;}}

.os-balance{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:22px;padding:26px 28px;text-align:center;}
.os-balance p{margin:0;}
.os-balance__lbl{font-size:.78rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#ffd98a;}
.os-balance__n{font-size:clamp(2.6rem,6vw,4rem);font-weight:800;letter-spacing:-.04em;line-height:1.05;color:#fff;margin:6px 0 !important;}
.os-balance__n small{font-size:.38em;font-weight:700;letter-spacing:0;color:rgba(255,255,255,.8);}
.os-balance__v{font-size:1.02rem;color:rgba(255,255,255,.9);}
.os-balance__v b{color:#ffd98a;}

.os-ptable{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--os-line);border-radius:16px;overflow:hidden;margin:0;font-size:.98rem;}
.os-ptable th,.os-ptable td{padding:13px 16px;text-align:left;border:0;border-bottom:1px solid var(--os-line-2);color:var(--os-ink);}
.os-ptable th{background:var(--os-surface-3);font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;color:var(--os-muted);font-weight:800;}
.os-ptable tr:last-child td{border-bottom:0;}
.os-ptable td:last-child{color:var(--os-green);font-weight:750;}
.os-howto{margin:8px 0 0;padding-left:1.3em;display:grid;gap:10px;font-size:1rem;line-height:1.55;color:var(--os-ink-2);}
.os-howto li{margin:0;padding-left:4px;}
.os-howto a{color:var(--os-green);font-weight:650;text-decoration:underline;}
.os-moreways{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px;}
.os-moreway{display:flex;gap:14px;align-items:flex-start;background:var(--os-surface-2);border:1px solid var(--os-line);border-radius:var(--os-r-lg);padding:20px;}
.os-moreway__ico{flex:none;width:44px;height:44px;border-radius:12px;background:#fff;color:var(--os-green);display:flex;align-items:center;justify-content:center;border:1px solid var(--os-line);}
.os-moreway__ico svg{flex:none;}
.os-moreway h3{margin:0 0 4px;font-size:1.08rem;}
.os-moreway p{margin:0;font-size:.94rem;line-height:1.55;color:var(--os-ink-2);}
.os-moreway a{color:var(--os-green);font-weight:650;text-decoration:underline;}
@media (max-width:760px){.os-moreways{grid-template-columns:1fr;}}

/* --------------------------------------------------------------------------
   Product page
   -------------------------------------------------------------------------- */
.single-product .os-shop{max-width:var(--os-max);margin:0 auto;padding:0 20px 20px;}
.woocommerce div.product{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(22px,3.4vw,52px);align-items:start;
}
.woocommerce div.product .summary{min-width:0;max-width:none;width:auto !important;float:none !important;padding:0;}
.woocommerce div.product > .os-gal,
.woocommerce div.product div.images{min-width:0;width:auto !important;float:none !important;position:relative;}
.woocommerce div.product .os-facts,
.woocommerce div.product .woocommerce-tabs,
.woocommerce div.product .related,
.woocommerce div.product .up-sells{grid-column:1 / -1;min-width:0;}
@media (max-width:900px){.woocommerce div.product{grid-template-columns:minmax(0,1fr);gap:20px;}}

.woocommerce div.product .product_title{font-size:clamp(1.6rem,3vw,2.3rem);font-weight:800;letter-spacing:-.03em;line-height:1.1;margin:0 0 10px;}
.os-pdp-chips{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 12px;}
.os-pdp-chips .os-strainchip{font-size:.74rem;padding:7px 11px;}
.woocommerce div.product .woocommerce-product-rating{margin:0 0 10px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.woocommerce div.product p.price,.woocommerce div.product span.price{font-size:clamp(1.6rem,2.6vw,2.1rem);font-weight:800;letter-spacing:-.03em;color:var(--os-ink);margin:0 0 10px;line-height:1.15;}
.woocommerce div.product p.price del{font-size:.6em;font-weight:600;color:var(--os-muted);margin-right:6px;}
.woocommerce div.product p.price ins{color:var(--os-red);text-decoration:none;}
.woocommerce div.product .woocommerce-product-details__short-description{font-size:1rem;line-height:1.65;color:var(--os-ink-2);margin:0 0 16px;}
.woocommerce div.product .woocommerce-product-details__short-description p{margin:0 0 10px;}

a.os-pdp-points{display:flex;gap:12px;align-items:flex-start;background:var(--os-gold-050);border:1px solid #efdcb2;border-radius:14px;padding:12px 14px;margin:0 0 16px;text-decoration:none;color:var(--os-ink-2);font-size:.93rem;line-height:1.5;}
a.os-pdp-points:hover{border-color:#d9bd7c;color:var(--os-ink-2);}
.os-pdp-points__ico{flex:none;width:34px;height:34px;border-radius:10px;background:#fff;color:#8a6410;display:flex;align-items:center;justify-content:center;}
.os-pdp-points__ico svg{flex:none;}
.os-pdp-points b{color:#7a5a12;}
.os-pdp-points__how{display:inline-block;margin-left:4px;color:var(--os-green);font-weight:700;text-decoration:underline;text-underline-offset:2px;}

.woocommerce div.product span.onsale,
.woocommerce span.onsale.os-badge{
  position:absolute;top:14px;left:14px;right:auto;z-index:3;min-height:0;min-width:0;line-height:1;margin:0;
  background:var(--os-red);color:#fff;border-radius:8px;padding:8px 11px;font-size:.76rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;
}

.woocommerce div.product form.cart{display:flex;flex-wrap:wrap;align-items:stretch;gap:10px;margin:0 0 14px;}
.woocommerce div.product form.cart.variations_form{display:block;}
.woocommerce div.product form.cart .variations{margin:0 0 12px;border:0;width:100%;}
.woocommerce div.product form.cart .variations td,.woocommerce div.product form.cart .variations th{padding:0 0 8px;border:0;text-align:left;display:block;line-height:1.3;background:none;}
.woocommerce div.product form.cart .variations label{font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--os-muted);}
.woocommerce div.product form.cart .variations select{width:100%;max-width:100%;height:50px;border:1.5px solid var(--os-line);border-radius:14px;padding:0 40px 0 16px;font-size:1rem;font-weight:650;font-family:var(--os-font);background-color:#fff;color:var(--os-ink);}
.woocommerce div.product form.cart .reset_variations{font-size:.82rem;color:var(--os-muted);}
.woocommerce div.product .woocommerce-variation-add-to-cart{display:flex;flex-wrap:wrap;align-items:stretch;gap:10px;}
.woocommerce div.product .woocommerce-variation-price{margin:0 0 12px;}
.woocommerce div.product form.cart div.quantity{float:none;margin:0;display:flex;flex:none;}
.woocommerce div.product form.cart .quantity .qty,
.woocommerce div.product form.cart input.qty{
  width:74px;height:54px;margin:0;border:1.5px solid var(--os-line);border-radius:14px;background:#fff;color:var(--os-ink);
  font-size:1.05rem;font-weight:750;text-align:center;font-family:var(--os-font);box-shadow:none;padding:0 6px;
}
.woocommerce div.product form.cart .button,
.woocommerce div.product .single_add_to_cart_button{
  flex:1 1 200px;min-height:54px;height:auto;margin:0;padding:14px 26px;border:0;border-radius:14px;float:none;
  background:var(--os-green);color:#fff;font-size:1.03rem;font-weight:780;letter-spacing:0;text-transform:none;font-family:var(--os-font);
  display:flex;align-items:center;justify-content:center;box-shadow:var(--os-sh-1);opacity:1;
}
.woocommerce div.product form.cart .button:hover{background:var(--os-green-600);color:#fff;}
.woocommerce div.product form.cart .button.disabled,
.woocommerce div.product form.cart .button:disabled{background:#b9c7bc;cursor:not-allowed;}

.os-pdp-trust{list-style:none;margin:16px 0 0;padding:14px 16px;display:grid;grid-template-columns:1fr;gap:9px;background:var(--os-surface-2);border:1px solid var(--os-line);border-radius:14px;}
.os-pdp-trust li{display:flex;align-items:flex-start;gap:10px;margin:0;font-size:.92rem;line-height:1.45;color:var(--os-ink-2);}
.os-pdp-trust svg{flex:none;color:var(--os-green);margin-top:1px;}
.os-pdp-trust b{color:var(--os-ink);}
.os-pdp-trust a{color:var(--os-green);font-weight:650;text-decoration:underline;}
.woocommerce div.product .product_meta{grid-column:auto;font-size:.84rem;color:var(--os-muted);margin-top:14px;padding-top:12px;border-top:1px solid var(--os-line);}
.woocommerce div.product .product_meta > span{display:block;margin-bottom:3px;}
.woocommerce div.product .product_meta .sku_wrapper{display:none;}

.os-facts{background:#fff;border:1px solid var(--os-line);border-radius:var(--os-r-lg);padding:clamp(18px,2.6vw,30px);margin:6px 0 0;}
.os-facts__h{margin:0 0 14px;font-size:1.45rem;}
.os-facts__list{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.os-facts__row{background:var(--os-surface-2);border-radius:14px;padding:14px 16px;}
.os-facts__row dt{font-size:.76rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--os-green);margin:0 0 4px;}
.os-facts__row dd{margin:0;font-size:.98rem;line-height:1.55;color:var(--os-ink-2);}
.os-facts__sub{margin:22px 0 10px;font-size:1.1rem;}
.os-tiers{display:grid;gap:8px;max-width:620px;}
.os-tier{display:grid;grid-template-columns:minmax(70px,1fr) minmax(90px,auto) minmax(0,1.4fr);gap:12px;align-items:center;border:1px solid var(--os-line);border-radius:12px;padding:12px 16px;background:#fff;}
.os-tier.is-best{border-color:var(--os-green);background:var(--os-green-050);}
.os-tier.is-out{opacity:.55;}
.os-tier__size{font-weight:800;font-size:1.02rem;color:var(--os-ink);}
.os-tier__price{font-size:1.05rem;color:var(--os-ink);white-space:nowrap;}
.os-tier__price del{color:var(--os-muted);font-size:.85em;margin-right:5px;}
.os-tier__pg{font-size:.9rem;color:var(--os-ink-2);text-align:right;}
.os-tier__pg em{font-style:normal;font-size:.7rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;background:var(--os-green);color:#fff;padding:4px 8px;border-radius:99px;margin-left:6px;white-space:nowrap;}
.os-facts__note{margin:10px 0 0;font-size:.86rem;color:var(--os-muted);}
@media (max-width:700px){.os-facts__list{grid-template-columns:1fr;}
  .os-tier{grid-template-columns:1fr auto;row-gap:2px;padding:11px 13px;}.os-tier__pg{grid-column:1 / -1;text-align:left;font-size:.84rem;}}

.woocommerce div.product .woocommerce-tabs{margin-top:10px;}
.woocommerce div.product .woocommerce-tabs ul.tabs{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;padding:0;margin:0 0 4px;border-bottom:1px solid var(--os-line);}
.woocommerce div.product .woocommerce-tabs ul.tabs::-webkit-scrollbar{display:none;}
.woocommerce div.product .woocommerce-tabs ul.tabs li{flex:none;margin:0;}
.woocommerce div.product .woocommerce-tabs .panel{font-size:1rem;line-height:1.7;color:var(--os-ink-2);max-width:900px;}
.woocommerce div.product .related > h2,.woocommerce div.product .up-sells > h2{font-size:1.5rem;margin:26px 0 14px;}

/* Legacy "Explore more categories" block from the SEO mu-plugin: same links,
   house style, full width instead of a half-width black box. */
.single-product .os-explore-cats,
.single-product [class*="explore-more"],
.single-product .alphabuds-explore{max-width:var(--os-max);margin-left:auto;margin-right:auto;}

/* --------------------------------------------------------------------------
   Notices: the icon sat on top of the first two letters
   -------------------------------------------------------------------------- */
.woocommerce-message,.woocommerce-info,.woocommerce-error,
.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-info{
  position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;
  padding:14px 18px 14px 50px !important;margin:0 0 14px !important;border-radius:14px;border:1px solid var(--os-line);
  border-top-width:1px;background:var(--os-surface-2);color:var(--os-ink-2);font-size:.96rem;line-height:1.5;list-style:none;
  outline:0;width:auto;
}
.woocommerce-message{background:var(--os-green-050);border-color:#bfe3cb;color:var(--os-green-700);}
.woocommerce-error{background:var(--os-red-050);border-color:#f0c4c1;color:#8a1c16;}
.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before{
  position:absolute !important;left:18px !important;top:15px !important;margin:0 !important;font-size:1.1rem;line-height:1.3;
}
.woocommerce-message::after,.woocommerce-info::after,.woocommerce-error::after{display:none !important;content:none !important;}
.woocommerce-error li{margin:0;padding:0;list-style:none;width:100%;}
.woocommerce-message .button,.woocommerce-info .button,.woocommerce-error .button,
.woocommerce-message a.button.wc-forward{
  order:2;margin:0 0 0 auto !important;float:none !important;flex:none;
  background:var(--os-green);color:#fff;border:0;border-radius:var(--os-r-pill);padding:10px 18px;min-height:40px;
  font-size:.88rem;font-weight:750;text-transform:none;letter-spacing:0;display:inline-flex;align-items:center;
}
.woocommerce-message a:not(.button),.woocommerce-info a:not(.button){color:var(--os-green);font-weight:700;text-decoration:underline;}
/* One "added to cart" message is enough when several land at once. */
.woocommerce-notices-wrapper .woocommerce-message ~ .woocommerce-message{margin-top:-4px !important;}
@media (max-width:560px){
  .woocommerce-message .button,.woocommerce-info .button{margin:0 !important;width:100%;justify-content:center;}
}

/* --------------------------------------------------------------------------
   Cart and checkout
   -------------------------------------------------------------------------- */
.os-flow{list-style:none;margin:0 0 20px;padding:0;display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.os-flow__i{display:flex;align-items:center;gap:8px;margin:0;font-size:.9rem;font-weight:700;color:var(--os-muted);}
.os-flow__i + .os-flow__i::before{content:"";width:28px;height:2px;background:var(--os-line);border-radius:2px;margin-right:2px;}
.os-flow__n{width:28px;height:28px;border-radius:50%;background:var(--os-surface-3);color:var(--os-muted);display:flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:800;flex:none;}
.os-flow__n svg{flex:none;}
.os-flow__i.is-on{color:var(--os-ink);}
.os-flow__i.is-on .os-flow__n{background:var(--os-green);color:#fff;}
.os-flow__i.is-done{color:var(--os-green);}
.os-flow__i.is-done .os-flow__n{background:var(--os-green-050);color:var(--os-green);}
@media (max-width:520px){.os-flow__i:not(.is-on) .os-flow__l{display:none;}.os-flow__i + .os-flow__i::before{width:18px;}}

.woocommerce-cart .os-page .os-wrap,.woocommerce-checkout .os-page .os-wrap,.woocommerce-account .os-page .os-wrap{max-width:1240px;}
.woocommerce-cart .woocommerce{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr);gap:clamp(18px,2.6vw,36px);align-items:start;}
.woocommerce-cart .woocommerce > *{grid-column:1 / -1;min-width:0;}
.woocommerce-cart .woocommerce > form.woocommerce-cart-form{grid-column:1;margin:0;}
.woocommerce-cart .woocommerce > .cart-collaterals{grid-column:2;width:auto;float:none;margin:0;position:sticky;top:150px;}
.woocommerce-cart .cart-collaterals .cart_totals{width:100%;float:none;}
.woocommerce-cart .cart-collaterals .cross-sells{display:none;}
@media (max-width:980px){
  .woocommerce-cart .woocommerce{grid-template-columns:minmax(0,1fr);}
  .woocommerce-cart .woocommerce > form.woocommerce-cart-form,
  .woocommerce-cart .woocommerce > .cart-collaterals{grid-column:1;position:static;}
}

.woocommerce-cart table.shop_table{border:1px solid var(--os-line);border-radius:var(--os-r-lg);border-collapse:separate;border-spacing:0;overflow:hidden;background:#fff;margin:0;width:100%;}
.woocommerce-cart table.shop_table th{background:var(--os-surface-2);font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:var(--os-muted);font-weight:800;padding:13px 14px;border:0;}
.woocommerce-cart table.shop_table td{padding:14px;border:0;border-top:1px solid var(--os-line-2);vertical-align:middle;}
.woocommerce-cart table.cart td.product-name a{color:var(--os-ink);font-weight:720;text-decoration:none;font-size:1rem;}
.woocommerce-cart table.cart td.product-name a:hover{color:var(--os-green);}
.woocommerce-cart table.cart td.product-name dl.variation{margin:4px 0 0;font-size:.84rem;color:var(--os-muted);}
.woocommerce-cart table.cart td.product-thumbnail img{width:72px;height:72px;object-fit:cover;border-radius:12px;border:1px solid var(--os-line);display:block;}
.woocommerce-cart table.cart td.product-subtotal{font-weight:780;color:var(--os-ink);}
.woocommerce-cart table.cart a.remove{
  width:34px;height:34px;line-height:32px;border-radius:50%;border:1px solid var(--os-line);color:var(--os-muted) !important;
  font-size:1.25rem;font-weight:500;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;background:#fff;
}
.woocommerce-cart table.cart a.remove:hover{background:var(--os-red-050);border-color:#f0c4c1;color:var(--os-red) !important;}
.woocommerce-cart table.cart .quantity .qty,.woocommerce-cart table.cart input.qty{
  width:72px;height:46px;border:1.5px solid var(--os-line);border-radius:12px;text-align:center;font-weight:750;font-size:1rem;margin:0;background:#fff;color:var(--os-ink);box-shadow:none;padding:0 4px;
}
.woocommerce-cart table.cart td.actions{padding:16px 14px;background:var(--os-surface-2);}
.woocommerce-cart table.cart td.actions .coupon{display:flex;gap:8px;float:none;align-items:stretch;margin:0 0 12px;width:100%;max-width:520px;}
.woocommerce-cart table.cart td.actions .coupon label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);}
.woocommerce-cart table.cart td.actions .coupon .input-text{
  flex:1 1 auto;min-width:0;width:auto !important;height:48px;margin:0 !important;float:none !important;border:1.5px solid var(--os-line);border-radius:12px;padding:0 14px;font-size:.96rem;background:#fff;box-shadow:none;
}
.woocommerce-cart table.cart td.actions .button,
.woocommerce-cart table.cart td.actions button{
  height:48px;min-height:48px;margin:0;float:none;border-radius:12px;padding:0 20px;font-size:.92rem;font-weight:750;text-transform:none;letter-spacing:0;
  background:#fff;color:var(--os-ink);border:1.5px solid var(--os-line);white-space:nowrap;flex:none;width:auto;
}
.woocommerce-cart table.cart td.actions .button:hover{border-color:var(--os-green);color:var(--os-green);background:#fff;}
.woocommerce-cart table.cart td.actions > .button[name="update_cart"]{float:right;}
.woocommerce-cart table.cart td.actions > .button[name="update_cart"]:disabled{opacity:.45;}
.woocommerce-cart table.cart td.actions::after{content:"";display:table;clear:both;}

.woocommerce-cart .cart_totals > h2{font-size:1.3rem;margin:0 0 12px;}
.woocommerce-cart .cart_totals table.shop_table th{background:var(--os-surface-2);width:38%;text-align:left;vertical-align:top;}
.woocommerce-cart .cart_totals table.shop_table td{text-align:right;}
.woocommerce-cart .cart_totals .order-total td,.woocommerce-cart .cart_totals .order-total th{font-size:1.15rem;font-weight:800;color:var(--os-ink);}
.woocommerce-cart .wc-proceed-to-checkout{padding:16px 0 0;}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  display:flex;align-items:center;justify-content:center;width:100%;min-height:56px;margin:0;padding:14px 22px;border-radius:14px;
  background:var(--os-green);color:#fff;font-size:1.06rem;font-weight:800;text-transform:none;letter-spacing:0;box-shadow:var(--os-sh-2);
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover{background:var(--os-green-600);}
.os-minnote{margin:14px 0 0;border:1px solid var(--os-line);border-radius:12px;background:#fff;padding:0;}
.os-minnote summary{cursor:pointer;list-style:none;padding:12px 14px;font-size:.9rem;font-weight:700;color:var(--os-ink);display:flex;align-items:center;gap:8px;}
.os-minnote summary::-webkit-details-marker{display:none;}
.os-minnote summary svg{flex:none;color:var(--os-green);}
.os-minnote p{margin:0;padding:0 14px 12px;font-size:.88rem;line-height:1.6;color:var(--os-ink-2);}

.os-emptycart{margin:8px 0 0;}
.os-emptycart__t{margin:0 0 10px;font-weight:700;color:var(--os-ink);}
.os-emptycart__chips{display:flex;flex-wrap:wrap;gap:8px;}
.woocommerce-cart .return-to-shop{margin:14px 0 0;}
.woocommerce-cart .return-to-shop .button{background:var(--os-green);color:#fff;border:0;border-radius:var(--os-r-pill);padding:14px 24px;font-weight:750;text-transform:none;letter-spacing:0;}

@media (max-width:768px){
  .woocommerce-cart table.shop_table_responsive thead{display:none;}
  .woocommerce-cart table.shop_table_responsive tr.cart_item{display:grid;grid-template-columns:76px minmax(0,1fr) auto;gap:4px 12px;padding:14px;border-top:1px solid var(--os-line-2);position:relative;align-items:center;}
  .woocommerce-cart table.shop_table_responsive tr.cart_item:first-child{border-top:0;}
  .woocommerce-cart table.shop_table_responsive tr.cart_item td{display:block;padding:0;border:0;text-align:left !important;background:none !important;}
  .woocommerce-cart table.shop_table_responsive tr.cart_item td::before{display:none;}
  .woocommerce-cart table.shop_table_responsive td.product-thumbnail{display:block !important;grid-row:1 / span 3;grid-column:1;}
  .woocommerce-cart table.shop_table_responsive td.product-name{grid-column:2;grid-row:1;padding-right:6px !important;}
  .woocommerce-cart table.shop_table_responsive td.product-remove{grid-column:3;grid-row:1;justify-self:end;}
  .woocommerce-cart table.shop_table_responsive td.product-price{grid-column:2 / -1;grid-row:2;color:var(--os-muted);font-size:.9rem;}
  .woocommerce-cart table.shop_table_responsive td.product-quantity{grid-column:2;grid-row:3;}
  .woocommerce-cart table.shop_table_responsive td.product-subtotal{grid-column:3;grid-row:3;justify-self:end;font-size:1.05rem;}
  .woocommerce-cart table.shop_table_responsive tr:not(.cart_item) td{display:block;}
  .woocommerce-cart table.cart td.actions .coupon{max-width:none;}
  .woocommerce-cart table.cart td.actions > .button[name="update_cart"]{float:none;width:100%;}
}

/* Delivery-type switch printed by the delivery plugin inside the cart form */
.woocommerce-cart .pi-delivery-type-container,.woocommerce-cart #pi_delivery_type_container,
.woocommerce-cart .pisol_delivery_type_container{margin:12px 0 0;}

/* Checkout */
.woocommerce-checkout form.checkout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,1fr);gap:clamp(18px,2.6vw,36px);align-items:start;}
.woocommerce-checkout form.checkout > *{grid-column:1;min-width:0;}
.woocommerce-checkout form.checkout > #order_review_heading{display:none;}
.woocommerce-checkout form.checkout > #order_review,
.woocommerce-checkout form.checkout > .woocommerce-checkout-review-order{grid-column:2;grid-row:1 / span 30;position:sticky;top:150px;width:auto;float:none;}
.woocommerce-checkout form.checkout #customer_details{width:auto;float:none;}
.woocommerce-checkout form.checkout #customer_details .col-1,
.woocommerce-checkout form.checkout #customer_details .col-2{width:100%;float:none;max-width:none;flex:none;}
@media (max-width:980px){
  .woocommerce-checkout form.checkout{grid-template-columns:minmax(0,1fr);}
  .woocommerce-checkout form.checkout > #order_review,
  .woocommerce-checkout form.checkout > .woocommerce-checkout-review-order{grid-column:1;grid-row:auto;position:static;}
}
.woocommerce-checkout form.checkout h3{font-size:1.2rem;margin:0 0 14px;}
.woocommerce-checkout form .form-row{margin:0 0 14px;padding:0;}
.woocommerce-checkout form .form-row label{display:block;font-size:.86rem;font-weight:700;color:var(--os-ink);margin:0 0 6px;line-height:1.3;}
.woocommerce-checkout form .form-row .input-text,
.woocommerce-checkout form .form-row select,
.woocommerce-checkout form .form-row textarea,
.woocommerce-checkout .select2-container .select2-selection--single{
  width:100%;min-height:50px;border:1.5px solid var(--os-line);border-radius:12px;padding:0 14px;font-size:1rem;font-family:var(--os-font);
  background-color:#fff;color:var(--os-ink);box-shadow:none;margin:0;
}
.woocommerce-checkout form .form-row textarea{padding:12px 14px;min-height:96px;line-height:1.5;}
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered{line-height:47px;padding:0;color:var(--os-ink);}
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow{height:48px;right:8px;}
.woocommerce-checkout form .form-row .input-text:focus,
.woocommerce-checkout form .form-row select:focus,
.woocommerce-checkout form .form-row textarea:focus{border-color:var(--os-green);outline:none;box-shadow:0 0 0 3px rgba(23,117,60,.14);}
.woocommerce-checkout form .form-row.woocommerce-invalid .input-text,
.woocommerce-checkout form .form-row.woocommerce-invalid select{border-color:var(--os-red);}
.woocommerce-checkout form .form-row-first,.woocommerce-checkout form .form-row-last{width:calc(50% - 7px);float:left;clear:none;}
.woocommerce-checkout form .form-row-last{float:right;}
.woocommerce-checkout form .form-row-wide{clear:both;width:100%;}
@media (max-width:560px){.woocommerce-checkout form .form-row-first,.woocommerce-checkout form .form-row-last{width:100%;float:none;}}
.woocommerce-checkout #order_review{background:#fff;border:1px solid var(--os-line);border-radius:var(--os-r-lg);padding:clamp(16px,2vw,24px);}
.woocommerce-checkout #order_review::before{content:"Your order";display:block;font-size:1.2rem;font-weight:800;letter-spacing:-.02em;margin:0 0 12px;color:var(--os-ink);}
.woocommerce-checkout #order_review > h3:first-child,.woocommerce-checkout #order_review > h2:first-child{display:none;}
.woocommerce-checkout table.woocommerce-checkout-review-order-table{border:1px solid var(--os-line);border-radius:14px;border-collapse:separate;border-spacing:0;overflow:hidden;width:100%;margin:0 0 14px;}
.woocommerce-checkout table.woocommerce-checkout-review-order-table th,
.woocommerce-checkout table.woocommerce-checkout-review-order-table td{padding:11px 13px;border:0;border-top:1px solid var(--os-line-2);font-size:.93rem;text-align:left;}
.woocommerce-checkout table.woocommerce-checkout-review-order-table thead th{border-top:0;background:var(--os-surface-2);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--os-muted);}
.woocommerce-checkout table.woocommerce-checkout-review-order-table td:last-child,
.woocommerce-checkout table.woocommerce-checkout-review-order-table th:last-child{text-align:right;white-space:nowrap;}
.woocommerce-checkout table.woocommerce-checkout-review-order-table .order-total th,
.woocommerce-checkout table.woocommerce-checkout-review-order-table .order-total td{font-size:1.1rem;font-weight:800;color:var(--os-ink);}
.woocommerce-checkout #payment{background:none;border-radius:0;}
.woocommerce-checkout #payment ul.payment_methods{padding:0;margin:0 0 14px;border:0;display:grid;gap:8px;list-style:none;}
.woocommerce-checkout #payment ul.payment_methods li{border:1.5px solid var(--os-line);border-radius:14px;padding:13px 14px;margin:0;background:#fff;line-height:1.4;}
.woocommerce-checkout #payment ul.payment_methods li:has(input:checked){border-color:var(--os-green);background:var(--os-green-050);}
.woocommerce-checkout #payment ul.payment_methods li label{display:inline-flex;align-items:center;gap:8px;font-weight:750;font-size:.98rem;color:var(--os-ink);margin:0;cursor:pointer;flex-wrap:wrap;}
.woocommerce-checkout #payment ul.payment_methods li label img{max-height:26px;width:auto;margin:0;border-radius:4px;}
.woocommerce-checkout #payment ul.payment_methods li input[type="radio"]{margin:0 6px 0 0;accent-color:var(--os-green);width:18px;height:18px;vertical-align:middle;}
.woocommerce-checkout #payment div.payment_box{background:transparent;margin:8px 0 0;padding:0;font-size:.89rem;line-height:1.55;color:var(--os-ink-2);}
.woocommerce-checkout #payment div.payment_box::before{display:none;}
.woocommerce-checkout #payment div.payment_box p{margin:0 0 6px;}
.woocommerce-checkout #payment .place-order{padding:0;margin:0;}
.woocommerce-checkout #payment #place_order{
  width:100%;min-height:58px;float:none;margin:10px 0 0;border:0;border-radius:14px;background:var(--os-green);color:#fff;
  font-size:1.08rem;font-weight:800;text-transform:none;letter-spacing:0;box-shadow:var(--os-sh-2);display:block;
}
.woocommerce-checkout #payment #place_order:hover{background:var(--os-green-600);}
.woocommerce-checkout .woocommerce-privacy-policy-text{font-size:.82rem;color:var(--os-muted);line-height:1.5;}
.woocommerce-checkout .woocommerce-form-coupon,.woocommerce-checkout .woocommerce-form-login{border:1px solid var(--os-line);border-radius:14px;padding:16px;margin:0 0 14px;background:#fff;}
.woocommerce-checkout .woocommerce-form-coupon .button,.woocommerce-checkout .woocommerce-form-login .button{background:var(--os-green);color:#fff;border:0;border-radius:12px;min-height:50px;padding:0 20px;font-weight:750;text-transform:none;letter-spacing:0;}

.os-next{background:#fff;border:1px solid var(--os-line);border-radius:var(--os-r-lg);padding:clamp(18px,2.4vw,28px);margin:0 0 22px;}
.os-next__h{margin:0 0 12px;font-size:1.3rem;}
.os-next__list{margin:0;padding-left:1.3em;display:grid;gap:9px;font-size:1rem;line-height:1.55;color:var(--os-ink-2);}
.os-next__list li{margin:0;}
.os-next__list a{color:var(--os-green);font-weight:650;text-decoration:underline;}

.os-acctpts{display:flex;align-items:center;gap:22px;flex-wrap:wrap;background:linear-gradient(135deg,#0e3a1f 0%,#17753c 100%);color:#fff;border-radius:var(--os-r-lg);padding:20px 24px;margin:0 0 20px;}
.os-acctpts p{margin:0;color:rgba(255,255,255,.9);}
.os-acctpts__lbl{font-size:.74rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#ffd98a !important;}
.os-acctpts__n{font-size:2.4rem;font-weight:800;letter-spacing:-.03em;line-height:1.05;color:#fff !important;}
.os-acctpts__txt{flex:1 1 220px;font-size:.96rem;line-height:1.5;}
.os-acctpts__txt b{color:#ffd98a;}
.os-acctpts a{color:#fff;font-weight:700;text-decoration:underline;text-underline-offset:3px;}

/* --------------------------------------------------------------------------
   Header: points balance
   -------------------------------------------------------------------------- */
.os-act__pts{position:absolute;top:-6px;right:-14px;background:#ffd98a;color:#3d2c05;font-size:.64rem;font-weight:800;line-height:1;padding:3px 6px;border-radius:99px;white-space:nowrap;}
.os-act__ico{position:relative;}

/* --------------------------------------------------------------------------
   Floating extras (reviews badge, prize wheel tab, chat bubble)
   They are useful, but they must never sit on top of a button.
   -------------------------------------------------------------------------- */
.woocommerce-cart .cr-trustbadge-floating,.woocommerce-checkout .cr-trustbadge-floating,.woocommerce-account .cr-trustbadge-floating,
.woocommerce-cart .cr-floating-trustbadge,.woocommerce-checkout .cr-floating-trustbadge,.woocommerce-account .cr-floating-trustbadge,
.woocommerce-cart .os-wheel-tab,.woocommerce-checkout .os-wheel-tab,
.woocommerce-cart #os-wheel-tab,.woocommerce-checkout #os-wheel-tab{display:none !important;}

/* Footer credit strip from the fleet mu-plugin: no white gap above it. */
.os-footer + *{margin-top:0;}
body.os{background:#fff;}

/* Keep the last content clear of the mobile tab bar. */
@media (max-width:900px){
  body.os{padding-bottom:calc(var(--os-tabbar) + env(safe-area-inset-bottom,0px));}
}


/* ---- round 2 ---- */

/* The legacy bottom nav and its popup are unhooked in PHP; this is the belt. */
#alpha-mob-nav,#alpha-sub-popup,#alpha-sub-backdrop,#alpha-desktop-cat-bar{display:none !important;}

a.os-chip--deal{border-color:#f0c4c1;color:var(--os-red);background:var(--os-red-050);}

/* Price: the number first, the old price after it. */
.os-pc__price{column-gap:7px;row-gap:0;}
.os-pc__price .os-pc__price--sale,.os-pc__price .os-pc__price--sale .amount{color:var(--os-red);}
.os-pc__price .os-pc__price--sale{display:inline-flex;align-items:baseline;gap:6px;}
.os-pc__price > del{order:2;}
.os-pc__price ins .amount{color:var(--os-red);}
.os-pc__price > ins{order:1;}

/* Size picker on phones: keep 16px type (smaller makes iOS zoom the page on
   focus) and win the room back from the padding instead. */
@media (max-width:560px){
  .os-pc__buy .qvp-select,.os-pc .qvp .qvp-select{
    font-size:16px !important;font-weight:600 !important;letter-spacing:-.02em;
    padding:0 22px 0 10px !important;background-position:right 7px center !important;background-size:12px !important;
  }
  .os-prail{grid-auto-columns:minmax(176px,1fr);}
  .os-pc__pg{font-size:.74rem;}
}
@media (max-width:380px){
  .os-pc__buy .qvp-select,.os-pc .qvp .qvp-select{letter-spacing:-.04em;padding:0 20px 0 8px !important;}
}

/* Floating review badge: desktop only, smaller, never on the pay pages. */
#cr_floatingtrustbadge{transform:scale(.78);transform-origin:bottom right;right:14px !important;bottom:14px !important;}
@media (max-width:1280px){#cr_floatingtrustbadge{display:none !important;}}
.woocommerce-cart #cr_floatingtrustbadge,.woocommerce-checkout #cr_floatingtrustbadge,.woocommerce-account #cr_floatingtrustbadge{display:none !important;}

/* Prize-wheel tab: stay inside the page gutter on phones. */
@media (max-width:700px){
  #os-wheel-tab{width:22px !important;padding:10px 0 !important;border-radius:8px 0 0 8px !important;top:62% !important;}
  #os-wheel-tab .os-wheel-tab-icon{font-size:12px !important;}
  #os-wheel-tab .os-wheel-tab-text{font-size:8.5px !important;letter-spacing:1px !important;}
}
.woocommerce-cart #os-wheel-tab,.woocommerce-checkout #os-wheel-tab{display:none !important;}

/* Blog cards with no picture: a quiet branded tile instead of a grey box. */
.os-post__img--empty{background:linear-gradient(135deg,#e9f4ec,#f7f9f6);position:relative;}

.os-bn__dot{position:relative;}
.os-bn__dot::after{content:"";position:absolute;inset:-14px -4px;}


/* ---- round 3: search ---- */

/* Desktop: a lighter field. Icon inside on the left, a plain text button on
   the right, and no heavy grey pill. */
.os-search{max-width:560px;}
.os-search__box{
  display:flex;align-items:center;gap:0;height:48px;padding:0 5px 0 0;overflow:hidden;
  background:#fff;border:1.5px solid var(--os-line);border-radius:14px;box-shadow:none;
  transition:border-color .16s ease,box-shadow .16s ease;
}
.os-search__box:focus-within{border-color:var(--os-green);box-shadow:0 0 0 3px rgba(23,117,60,.12);background:#fff;}
.os-search__ico{flex:none;display:flex;align-items:center;justify-content:center;width:44px;color:var(--os-muted);}
.os-search__ico svg{flex:none;}
.os-search__box input[type="search"]{
  flex:1 1 auto;min-width:0;width:auto;height:44px;margin:0;padding:0 8px 0 0;border:0;border-radius:0;background:transparent;
  box-shadow:none;outline:none;font-size:16px;font-family:var(--os-font);color:var(--os-ink);-webkit-appearance:none;appearance:none;
}
.os-search__box input[type="search"]::placeholder{color:#8b978e;}
.os-search__box input[type="search"]::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none;}
.os-search__box .os-search__btn{
  flex:none;width:auto;height:38px;min-height:0;margin:0;padding:0 18px;border:0;border-radius:10px;cursor:pointer;
  background:var(--os-green);color:#fff;font-size:.9rem;font-weight:750;font-family:var(--os-font);letter-spacing:0;text-transform:none;line-height:1;
  display:flex;align-items:center;justify-content:center;box-shadow:none;
}
.os-search__box .os-search__btn:hover{background:var(--os-green-600);}

/* Phones: one clean top row. Search is an icon that opens a panel. */
.os-mhd{position:relative;}
.os-mtop{display:grid !important;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;}
.os-mtop__l{display:flex;justify-content:flex-start;}
.os-mtop__r{display:flex;justify-content:flex-end;align-items:center;gap:2px;}
.os-mhd .os-logo{margin:0;justify-self:center;}
.os-mtop .os-iconbtn{position:relative;}
.os-msearch{
  position:absolute;left:0;right:0;top:100%;z-index:519;background:#fff;
  padding:14px 16px 16px;border-top:1px solid var(--os-line);border-bottom:1px solid var(--os-line);
  box-shadow:0 18px 30px rgba(16,23,16,.14);
}
.os-msearch[hidden]{display:none !important;}
.os-hd.is-stuck .os-msearch{position:fixed;top:var(--os-mtop-h,61px);}
.os-msearch__lbl{margin:14px 0 8px;font-size:.72rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--os-muted);}
.os-msearch__quick{display:flex;flex-wrap:wrap;gap:8px;}
.os-msearch__quick .os-chip{padding:9px 14px;}
#os-msearch-toggle[aria-expanded="true"]{color:var(--os-green);background:var(--os-green-050);border-radius:12px;}


/* ---- round 4 ---- */
/* Sort bar on phones: one tidy row. */
@media (max-width:820px){
  .os-toolbar__in{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;}
  .os-toolbar__l{display:block;min-width:0;}
  .os-toolbar__n{display:block !important;font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .os-toolbar__r{flex:none;display:flex;align-items:center;gap:8px;}
  .os-toolbar__r > label,.os-toolbar__r .os-toolbar__lbl,.os-toolbar .woocommerce-ordering > label{display:none;}
  .os-toolbar .woocommerce-ordering{margin:0;float:none;}
  .os-toolbar select{height:42px;max-width:190px;font-size:16px;}
}
.os-cathero__t{overflow-wrap:anywhere;}


/* ---- round 5 ---- */
/* Checkout: the summary column spans many implicit rows; a row gap on each of
   those opened a screen of empty space under the form. */
.woocommerce-checkout form.checkout{row-gap:0;}
.woocommerce-checkout form.checkout > *{margin-bottom:16px;}
.woocommerce-checkout form.checkout > #order_review,
.woocommerce-checkout form.checkout > .woocommerce-checkout-review-order{margin-bottom:0;}

/* Info notices: the stock icon font is not loaded here, so its glyph fell back
   to a stray box. Drop it and close up the padding. */
.woocommerce-info::before{display:none !important;content:none !important;}
.woocommerce-info{padding-left:18px !important;}
.woocommerce-message::before,.woocommerce-error::before{font-family:inherit !important;content:"" !important;width:18px;height:18px;border-radius:50%;background:var(--os-green);left:18px !important;top:17px !important;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm-1.6 14.6-4-4 1.4-1.4 2.6 2.6 5.8-5.8 1.4 1.4z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm-1.6 14.6-4-4 1.4-1.4 2.6 2.6 5.8-5.8 1.4 1.4z'/%3E%3C/svg%3E") center/contain no-repeat;}
.woocommerce-error::before{background:var(--os-red);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm1 15h-2v-2h2zm0-4h-2V7h2z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm1 15h-2v-2h2zm0-4h-2V7h2z'/%3E%3C/svg%3E") center/contain no-repeat;}

/* Cart: "Delivery" is a label for how the order arrives, not a button. */
.woocommerce-cart tr.pisol-dtt-cart-row td{padding:13px 14px !important;background:#fff !important;border-top:1px solid var(--os-line-2) !important;}
#pi_delivery_type_field_cart{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0;}
#pi_delivery_type_field_cart::before{content:"How you get it";font-size:.74rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--os-muted);}
#pi_delivery_type_field_cart input[type="radio"]{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none;}
#pi_delivery_type_field_cart label.radio{
  display:inline-flex !important;align-items:center;gap:7px;width:auto !important;min-height:0 !important;margin:0 !important;padding:8px 14px !important;
  background:var(--os-green-050) !important;color:var(--os-green-700) !important;border:1px solid #c5e2cf !important;border-radius:99px !important;
  font-size:.88rem !important;font-weight:750 !important;line-height:1 !important;box-shadow:none !important;cursor:default;text-transform:none !important;
}
#pi_delivery_type_field_cart label.radio::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--os-green);display:inline-block;}
.woocommerce-cart .woocommerce-notices-wrapper:empty{display:none;}
.woocommerce-cart .os-flow,.woocommerce-checkout .os-flow{margin-bottom:16px;}

/* The fleet footer-links strip sits on the page background; give it the footer's. */
.os-footer-nav{background:var(--os-ink) !important;margin:0 !important;border-top:1px solid rgba(255,255,255,.08);}
.os-footer-nav a{color:rgba(255,255,255,.6) !important;}

/* Support chat bubble: keep it off the phone tab bar. */
@media (max-width:1099px){
  .woot-widget-bubble,.woot--bubble-holder{bottom:calc(var(--os-tabbar) + 14px + env(safe-area-inset-bottom,0px)) !important;}
  .woot-widget-bubble{transform:scale(.86);transform-origin:bottom left;}
  .woocommerce-checkout .woot-widget-bubble,.woocommerce-cart .woot-widget-bubble{display:none !important;}
}

/* Product page: category links */
.os-pdp-explore{grid-column:1 / -1;min-width:0;background:var(--os-surface-2);border:1px solid var(--os-line);border-radius:var(--os-r-lg);padding:20px 22px;margin:10px 0 0;}
.os-pdp-explore__h{margin:0 0 12px;font-size:1.15rem;}
.os-pdp-explore__chips{display:flex;flex-wrap:wrap;gap:8px;}
.alpha-product-related{display:none !important;}

.os-cathero__flag{display:inline-flex;align-items:center;gap:7px;margin:0 0 10px;padding:7px 12px;border-radius:99px;background:var(--os-red-050);border:1px solid #f0c4c1;color:var(--os-red);font-size:.84rem;font-weight:750;}
.os-cathero__flag svg{flex:none;}


/* ---- round 6 ---- */
/* Prize wheel: the side tab is the launcher. The plugin's own round icon sat
   on the phone tab bar on the cart and checkout pages, where the tab is off. */
.wlwl_wheel_icon,.woocommerce-lucky-wheel-popup-icon,#wlwl_popup_canvas{display:none !important;}
#os-wheel-tab{z-index:400 !important;}

/* Drawer logo was stretched to the full row. */
.os-drawer__hd img{height:46px !important;width:auto !important;max-width:160px;object-fit:contain;}

/* Phone cart lines: no stray rules between the stacked cells. */
@media (max-width:768px){
  .woocommerce-cart table.shop_table_responsive tr.cart_item td{border:0 !important;}
  .woocommerce-cart table.shop_table_responsive tr.cart_item{border-top:1px solid var(--os-line-2) !important;}
  .woocommerce-cart table.shop_table_responsive tr.cart_item:first-child{border-top:0 !important;}
  .woocommerce-cart .cart_totals table.shop_table_responsive tr{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;}
  .woocommerce-cart .cart_totals table.shop_table_responsive tr th{display:block !important;background:none;border:0;padding:13px 14px;width:auto;}
  .woocommerce-cart .cart_totals table.shop_table_responsive tr td{display:block;border:0 !important;padding:13px 14px;text-align:right !important;}
  .woocommerce-cart .cart_totals table.shop_table_responsive tr td::before{display:none !important;}
  .woocommerce-cart .cart_totals table.shop_table_responsive tr + tr{border-top:1px solid var(--os-line-2);}
}


/* ---- round 7 ---- */
.os-why{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.os-why__i{background:#fff;border:1px solid var(--os-line);border-radius:var(--os-r-lg);padding:22px;}
.os-why__ico{width:44px;height:44px;border-radius:12px;background:var(--os-green-050);color:var(--os-green);display:flex;align-items:center;justify-content:center;margin-bottom:12px;}
.os-why__ico svg{flex:none;}
.os-why__i h3{margin:0 0 6px;font-size:1.1rem;}
.os-why__i p{margin:0;font-size:.95rem;line-height:1.55;color:var(--os-ink-2);}
.os-why__i a{color:var(--os-green);font-weight:650;text-decoration:underline;}
@media (max-width:900px){.os-why{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:560px){.os-why{grid-template-columns:1fr;gap:10px;}.os-why__i{padding:16px 18px;}}
.os-areas--stack{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px;}

/* Reviews widget inside the page container */
.os-reviewspage__list{min-width:0;}
.os-reviewspage__list .cr-all-reviews-shortcode,.os-reviewspage__list .cr-reviews-grid{max-width:100%;}
.os-reviewspage__list .cr-summaryBox-wrap{border-radius:var(--os-r-lg);overflow:hidden;border:1px solid var(--os-line);background:var(--os-surface-2);}
.os-reviewspage__list .cr-ajax-search{display:flex;gap:8px;align-items:stretch;margin:14px 0;}
.os-reviewspage__list .cr-ajax-search input[type="text"]{flex:1 1 auto;min-width:0;height:46px;border:1.5px solid var(--os-line);border-radius:12px;font-size:16px;margin:0;box-shadow:none;}
.os-reviewspage__list .cr-button-search{flex:none;height:46px;border-radius:12px;background:var(--os-green);color:#fff;border:0;padding:0 18px;font-weight:750;text-transform:none;margin:0;}
.os-reviewspage__list .cr-show-more-reviews,.os-reviewspage__list .cr-show-more-button{border-radius:var(--os-r-pill);border:1.5px solid var(--os-line);background:#fff;color:var(--os-ink);padding:12px 22px;font-weight:750;text-transform:none;}


/* ---- round 8 ---- */
/* Floating review badge: only where there is an empty page margin for it to
   sit in. On narrower screens it covered buttons and prices as you scrolled. */
@media (max-width:1659px){#cr_floatingtrustbadge{display:none !important;}}
/* Prize-wheel tab: slim enough to stay inside the page gutter until the page
   has real side margins. */
@media (max-width:1439px){
  #os-wheel-tab{width:22px !important;padding:10px 0 !important;border-radius:8px 0 0 8px !important;}
  #os-wheel-tab .os-wheel-tab-icon{font-size:12px !important;}
  #os-wheel-tab .os-wheel-tab-text{font-size:8.5px !important;letter-spacing:1px !important;}
}
.os-about a.os-area,.os-about a.os-area span{text-decoration:none;}
.os-about a.os-area{font-weight:inherit;}
.os-about a.os-area .os-area__t{color:var(--os-ink);}
.os-about a.os-area .os-area__min{color:var(--os-muted);}


/* ---- round 9 ---- */
/* Sticky header with no jump. The header element itself is flattened so each
   bar can stick against the page, and the bar that follows you never leaves
   the document flow (which is what made the page snap while scrolling). */
.os-hd{display:contents;}
.os-nav{position:relative;z-index:510;}
.os-ann,.os-util{position:relative;z-index:505;}
@media (min-width:1100px){
  .os-main{position:sticky !important;top:0;z-index:520;background:#fff;}
  .os-toolbar{top:84px;}
}
@media (max-width:1099px){
  .os-mhd{position:sticky;top:0;z-index:520;background:#fff;box-shadow:0 1px 0 var(--os-line);}
  .os-mtop{position:static !important;box-shadow:none !important;}
  .os-msearch{position:absolute !important;top:100% !important;}
  /* One sticky bar is enough on a phone. */
  .os-toolbar{position:static;backdrop-filter:none;}
}

/* Bottom of the page on phones: the credit strip carried a 95px margin meant
   for the old bottom menu, on top of the body padding for the tab bar. That
   left a band of white under the footer. Use one dark spacer exactly the
   height of the tab bar instead. */
@media (max-width:1099px){
  html body.os #splx-c{margin-bottom:0 !important;z-index:1 !important;}
  body.os{padding-bottom:0 !important;}
  body.os::after{content:"";display:block;height:calc(59px + env(safe-area-inset-bottom,0px));background:var(--os-ink);}
}
html{background:var(--os-ink);}
body.os{background:#fff;}

/* Support chat on phones: small, tucked into the corner above the tab bar. */
@media (max-width:1099px){
  .woot-widget-bubble{
    width:44px !important;height:44px !important;min-width:0 !important;
    left:10px !important;right:auto !important;
    bottom:calc(59px + 10px + env(safe-area-inset-bottom,0px)) !important;
    transform:none !important;box-shadow:0 2px 10px rgba(0,0,0,.22) !important;opacity:.94;
  }
  .woot-widget-bubble.woot-elements--right{left:auto !important;right:10px !important;}
  .woot-widget-bubble svg,.woot-widget-bubble img{width:20px !important;height:20px !important;margin:12px !important;}
  .woot-widget-bubble.woot--close::before,.woot-widget-bubble.woot--close::after{top:12px !important;left:21px !important;height:20px !important;}
  .woot--bubble-holder{bottom:0 !important;}
}


/* ---- round 10 ---- */
/* A rounder, friendlier typeface. */
:root{--os-font:"Nunito",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;}
body,button,input,select,textarea{font-family:var(--os-font);}
h1,h2,h3,h4,h5,h6{letter-spacing:-.012em;}
.os-hero2__t,.os-phero__t,.os-pts__t,.os-page__t,.os-cathero__t,.woocommerce div.product .product_title{letter-spacing:-.018em;}
.os-head__t,.os-type__t,.os-rr__off,.os-citycard__t,.os-keyfact dd,.os-balance__n,.os-pc__price{letter-spacing:-.01em;}

/* Pagination: clear, evenly spaced buttons with room above them. */
#products{scroll-margin-top:96px;}
.woocommerce nav.woocommerce-pagination,
nav.woocommerce-pagination{margin:30px 0 6px !important;padding:0 !important;text-align:center !important;border:0 !important;float:none !important;width:100%;clear:both;}
.woocommerce nav.woocommerce-pagination ul,
nav.woocommerce-pagination ul.page-numbers{
  display:inline-flex !important;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px !important;
  margin:0 !important;padding:0 !important;border:0 !important;list-style:none !important;white-space:normal;
}
.woocommerce nav.woocommerce-pagination ul li,
nav.woocommerce-pagination ul.page-numbers li{border:0 !important;margin:0 !important;padding:0 !important;float:none !important;overflow:visible !important;list-style:none !important;display:block;}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span,
nav.woocommerce-pagination ul.page-numbers li .page-numbers{
  display:flex !important;align-items:center;justify-content:center;min-width:46px !important;height:46px !important;margin:0 !important;padding:0 16px !important;
  border:1.5px solid var(--os-line) !important;border-radius:14px !important;background:#fff !important;color:var(--os-ink) !important;
  font-size:1rem !important;font-weight:750 !important;line-height:1 !important;text-decoration:none !important;box-shadow:none !important;
  transition:border-color .16s ease,background .16s ease,color .16s ease;
}
.woocommerce nav.woocommerce-pagination ul li a:hover,
nav.woocommerce-pagination ul.page-numbers li a.page-numbers:hover{border-color:var(--os-green) !important;background:var(--os-green-050) !important;color:var(--os-green) !important;}
.woocommerce nav.woocommerce-pagination ul li span.current,
nav.woocommerce-pagination ul.page-numbers li .page-numbers.current{background:var(--os-green) !important;border-color:var(--os-green) !important;color:#fff !important;}
.woocommerce nav.woocommerce-pagination ul li span.dots,
nav.woocommerce-pagination ul.page-numbers li .page-numbers.dots{border-color:transparent !important;background:transparent !important;min-width:20px !important;padding:0 !important;}
.os-pagination{margin-top:30px;}
.os-pagination .page-numbers{min-width:46px;height:46px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;padding:0 16px;font-weight:750;}

/* "Show more products": keep browsing without leaving the page. */
.os-loadmore-wrap{display:flex;flex-direction:column;align-items:center;gap:10px;margin:28px 0 0;}
.os-loadmore-wrap + nav.woocommerce-pagination{margin-top:16px !important;}
.os-loadmore{min-width:min(100%,320px);min-height:54px;font-size:1.02rem;}
.os-loadmore.is-loading{opacity:.7;pointer-events:none;}
.os-loadmore__count{margin:0;font-size:.88rem;color:var(--os-muted);font-weight:650;}
.os-loadmore__bar{width:min(100%,320px);height:6px;border-radius:99px;background:var(--os-surface-3);overflow:hidden;}
.os-loadmore__bar > span{display:block;height:100%;background:var(--os-green);border-radius:99px;transition:width .3s ease;}
ul.products > li.os-just-added{animation:abFadeUp .35s ease both;}
@keyframes abFadeUp{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:none;}}
@media (prefers-reduced-motion:reduce){ul.products > li.os-just-added{animation:none;}}

/* "Shop inside ..." : one tidy row of chips instead of two thin link lists. */
.os-explore{padding:26px 0 8px;background:transparent;border:0;margin:0;}
.os-explore__row{display:flex;align-items:center;gap:12px 18px;flex-wrap:wrap;}
.os-explore__h{margin:0;font-size:1.15rem;font-weight:800;flex:none;}
.os-explore__chips{display:flex;flex-wrap:wrap;gap:8px;min-width:0;}

/* Footer: say things once. The plugin's extra link strip repeats the columns above it. */
.os-footer-nav{display:none !important;}
.os-footer__age{white-space:nowrap;}


/* ---- round 11 ---- */
nav.woocommerce-pagination{margin-bottom:22px !important;}
@media (max-width:600px){
  /* The Show more button is the "next" on a phone; keep the page numbers on one row. */
  nav.woocommerce-pagination ul.page-numbers li:has(> .prev),
  nav.woocommerce-pagination ul.page-numbers li:has(> .next){display:none !important;}
  nav.woocommerce-pagination ul.page-numbers{gap:6px !important;}
  .woocommerce nav.woocommerce-pagination ul li a,
  .woocommerce nav.woocommerce-pagination ul li span,
  nav.woocommerce-pagination ul.page-numbers li .page-numbers{min-width:44px !important;height:44px !important;padding:0 12px !important;}
  .os-explore__row{flex-direction:column;align-items:flex-start;}
}
.os-related-categories{display:none !important;}


/* ---- round 12 ---- */
/* Product photo stays where it is. (It was sticky, and because the facts box,
   tabs and related products share its grid, it slid down over all of them.) */
.woocommerce div.product > .os-gal,
.woocommerce div.product div.images,
.woocommerce div.product .woocommerce-product-gallery{position:relative !important;top:auto !important;}

/* Search button sits inside the field instead of poking past its edges. */
.os-search__box{height:52px;padding:0 6px 0 0;border-radius:16px;}
.os-search__box .os-search__btn{height:40px !important;min-height:0 !important;max-height:40px;align-self:center;margin:0 !important;padding:0 20px !important;border-radius:12px !important;line-height:1 !important;}
.os-search__box input[type="search"]{height:48px;}

/* Tab-bar spacer matches the tab bar. */
@media (max-width:1099px){
  body.os::after{height:calc(60px + env(safe-area-inset-bottom,0px));}
}


/* ---- mini cart ---- */
.os-mc{position:fixed;inset:0;z-index:2000;}
.os-mc[hidden]{display:none !important;}
.os-mc__scrim{position:absolute;inset:0;background:rgba(16,23,16,.45);opacity:0;transition:opacity .25s ease;}
.os-mc__panel{position:absolute;top:0;right:0;bottom:0;width:min(420px,100%);background:#fff;display:flex;flex-direction:column;box-shadow:-12px 0 40px rgba(0,0,0,.18);transform:translateX(100%);transition:transform .26s ease;}
.os-mc.is-open .os-mc__scrim{opacity:1;}
.os-mc.is-open .os-mc__panel{transform:none;}
.os-mc__hd{display:flex;align-items:center;justify-content:space-between;padding:12px 14px 12px 20px;border-bottom:1px solid var(--os-line);}
.os-mc__t{margin:0;font-size:1.15rem;font-weight:800;color:var(--os-ink);}
.os-mc__panel > .os-mc__body{flex:1;display:flex;flex-direction:column;min-height:0;overflow-y:auto;}
.os-mc__loading{padding:30px 20px;color:var(--os-muted);text-align:center;}
.os-mc__empty{padding:40px 24px;text-align:center;}
.os-mc__empty-t{font-size:1.1rem;font-weight:800;color:var(--os-ink);margin:0 0 6px;}
.os-mc__empty p{color:var(--os-ink-2);margin:0 0 18px;}
.os-mc__list{list-style:none;margin:0;padding:4px 20px;flex:1;}
.os-mc__item{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--os-line-2);margin:0;}
.os-mc__thumb img,.os-mc__img{width:64px !important;height:64px !important;object-fit:cover;border-radius:12px;border:1px solid var(--os-line);display:block;}
.os-mc__info{min-width:0;display:flex;flex-direction:column;gap:3px;}
a.os-mc__name,.os-mc__name{font-weight:750;font-size:.95rem;color:var(--os-ink);text-decoration:none;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.os-mc__meta{font-size:.86rem;color:var(--os-muted);}
.os-mc__rm{width:34px;height:34px;min-height:0;padding:0;border-radius:50%;border:1px solid var(--os-line);background:#fff;color:var(--os-muted);font-size:1.25rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;}
.os-mc__rm:hover{background:var(--os-red-050);color:var(--os-red);border-color:#f0c4c1;}
.os-mc__rm:disabled{opacity:.4;}
.os-mc__foot{position:sticky;bottom:0;background:#fff;border-top:1px solid var(--os-line);padding:14px 20px calc(16px + env(safe-area-inset-bottom,0px));display:grid;gap:9px;}
.os-mc__sub{display:flex;justify-content:space-between;font-size:1.02rem;color:var(--os-ink);}
.os-mc__sub--disc{color:var(--os-green);font-size:.92rem;}
.os-mc__pts{display:flex;align-items:center;gap:7px;margin:0;font-size:.86rem;color:#7a5a12;background:var(--os-gold-050);border-radius:10px;padding:8px 10px;}
.os-mc__pts svg{flex:none;}

.os-prog{padding:14px 20px 12px;background:var(--os-surface-2);border-bottom:1px solid var(--os-line);}
.woocommerce-cart .os-prog{border:1px solid var(--os-line);border-radius:14px;margin:0 0 14px;background:#fff;}
.os-prog__msg{margin:0 0 10px;font-size:.92rem;line-height:1.45;color:var(--os-ink-2);}
.os-prog__msg b{color:var(--os-ink);}
.os-prog__bar{position:relative;height:10px;border-radius:99px;background:var(--os-surface-3);margin:0 7px;}
.os-prog__fill{position:absolute;inset:0 auto 0 0;border-radius:99px;background:linear-gradient(90deg,#3fa15f,var(--os-green));transition:width .4s ease;}
.os-prog__tick{position:absolute;top:50%;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:#fff;border:2px solid #c9d6cc;}
.os-prog__tick.is-hit{border-color:var(--os-green);background:var(--os-green);}
.os-prog__labels{position:relative;height:18px;margin:6px 7px 0;}
.os-prog__labels span{position:absolute;transform:translateX(-50%);font-size:.72rem;font-weight:750;color:var(--os-muted);white-space:nowrap;}
.os-prog__labels span:last-child{transform:translateX(-100%);}
.os-prog__labels span.is-hit{color:var(--os-green);}
.os-prog__ok{display:flex;align-items:center;gap:6px;margin:8px 0 0;font-size:.82rem;font-weight:700;color:var(--os-green);}
.os-prog__ok svg{flex:none;}

/* Nothing floats over the open cart or menu. */
html:has(.os-mc.is-open) .woot-widget-bubble,html:has(.os-mc.is-open) .woot--bubble-holder,html:has(.os-mc.is-open) #os-wheel-tab,html:has(.os-mc.is-open) #cr_floatingtrustbadge,html:has(.os-drawer.is-open) .woot-widget-bubble,html:has(.os-drawer.is-open) #os-wheel-tab{display:none !important;}

/* ---- round 13 ---- */
/* Desktop: the category bar follows you down too, right under the search bar. */
@media (min-width:1100px){
  .os-nav{position:sticky !important;top:84px;z-index:515;}
  .os-toolbar{top:136px;}
  #products{scroll-margin-top:190px;}
}
.os-emptyshelf{background:#fff;border:1px solid var(--os-line);border-radius:var(--os-r-lg);padding:28px 24px;text-align:center;margin:10px 0 30px;}
.os-emptyshelf__t{font-size:1.2rem;font-weight:800;color:var(--os-ink);margin:0 0 6px;}
.os-emptyshelf p{color:var(--os-ink-2);margin:0 0 16px;}
.os-emptyshelf__chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;}

/* ---- round 14: one Add to Cart button, everywhere ---- */
.os-pc__buy{align-items:stretch;}
.os-pc__buy .qvp{align-items:stretch !important;width:100% !important;}
.os-pc__buy a.button,
.os-pc__buy a.add_to_cart_button,
.os-pc__buy button,
.os-pc__buy .qvp .qvp-btn,
.os-pc__buy .qvp button{
  display:flex !important;align-items:center !important;justify-content:center !important;text-align:center !important;
  width:100% !important;max-width:none !important;height:48px !important;min-height:48px !important;padding:0 16px !important;
  border-radius:var(--os-r-pill) !important;font-size:.95rem !important;font-weight:800 !important;line-height:1 !important;
  margin:0 !important;box-sizing:border-box !important;
}
.os-pc__buy .qvp-select,.os-pc .qvp .qvp-select{width:100% !important;height:46px !important;box-sizing:border-box !important;}
/* Price block sits on the same line in every card, picker or not. */
.os-pc__body{display:flex;flex-direction:column;}
.os-pc__price{margin-top:auto;}

/* ---- checkout date and time pickers in house style ---- */
#ui-datepicker-div.ui-datepicker{
  width:300px;padding:10px;margin-top:6px;background:#fff !important;border:1px solid var(--os-line) !important;border-radius:16px !important;
  box-shadow:var(--os-sh-3);font-family:var(--os-font);z-index:1000 !important;
}
#ui-datepicker-div .ui-datepicker-header{background:var(--os-green) !important;border:0 !important;border-radius:10px !important;color:#fff !important;padding:8px 0 !important;position:relative;}
#ui-datepicker-div .ui-datepicker-title{color:#fff !important;font-weight:800;font-size:1rem;line-height:1.6em;}
#ui-datepicker-div .ui-datepicker-prev,#ui-datepicker-div .ui-datepicker-next{top:50% !important;transform:translateY(-50%);width:30px !important;height:30px !important;border-radius:50% !important;border:0 !important;background:rgba(255,255,255,.18) !important;cursor:pointer;}
#ui-datepicker-div .ui-datepicker-prev{left:6px !important;}
#ui-datepicker-div .ui-datepicker-next{right:6px !important;}
#ui-datepicker-div .ui-datepicker-prev-hover,#ui-datepicker-div .ui-datepicker-next-hover{background:rgba(255,255,255,.32) !important;}
#ui-datepicker-div .ui-datepicker-prev span,#ui-datepicker-div .ui-datepicker-next span{display:none !important;}
#ui-datepicker-div .ui-datepicker-prev::before,#ui-datepicker-div .ui-datepicker-next::before{content:"";position:absolute;top:50%;left:50%;width:8px;height:8px;border-top:2.5px solid #fff;border-right:2.5px solid #fff;}
#ui-datepicker-div .ui-datepicker-prev::before{transform:translate(-30%,-50%) rotate(-135deg);}
#ui-datepicker-div .ui-datepicker-next::before{transform:translate(-70%,-50%) rotate(45deg);}
#ui-datepicker-div .ui-datepicker-prev.ui-state-disabled{opacity:.35;}
#ui-datepicker-div table{margin:8px 0 0 !important;width:100%;border:0 !important;font-size:.95rem;}
#ui-datepicker-div th{color:var(--os-muted);font-weight:800;font-size:.74rem;padding:6px 0;background:none !important;border:0 !important;}
#ui-datepicker-div td{padding:2px !important;border:0 !important;background:none !important;}
#ui-datepicker-div td a.ui-state-default,#ui-datepicker-div td span.ui-state-default{
  display:block;text-align:center;padding:8px 0 !important;border-radius:10px !important;border:1px solid transparent !important;
  background:var(--os-green-050) !important;color:var(--os-green-700) !important;font-weight:750;
}
#ui-datepicker-div td a.ui-state-default:hover{background:var(--os-green) !important;color:#fff !important;}
#ui-datepicker-div td a.ui-state-highlight{border-color:var(--os-green) !important;}
#ui-datepicker-div td a.ui-state-active{background:var(--os-green) !important;color:#fff !important;}
#ui-datepicker-div td.ui-state-disabled span.ui-state-default,#ui-datepicker-div td.ui-datepicker-unselectable span{background:transparent !important;color:#b8c2ba !important;font-weight:600;}
.select2-dropdown{border:1px solid var(--os-line) !important;border-radius:14px !important;overflow:hidden;box-shadow:var(--os-sh-3);font-family:var(--os-font);}
.select2-results__option{padding:12px 14px !important;font-size:.98rem;}
.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected]{background:var(--os-green) !important;color:#fff !important;}
.select2-container--default .select2-results__option[aria-selected=true],
.select2-container--default .select2-results__option[data-selected=true]{background:var(--os-green-050);color:var(--os-green-700);font-weight:700;}
