/* Chavill backend-owned CSS chunk: aefbe585773be8e3.css; version: 1.0.0-105db2c98093 */
/* Chavill CSS chunk 8: aefbe585773be8e3.css */

.check-row input[type="checkbox"]:checked::after,
input[type="checkbox"]:checked::after {
  transform: scale(1);
}

.nav input,
.input,
select,
textarea {
  box-shadow: none !important;
}

.nav input:focus,
.input:focus,
select:focus,
textarea:focus {
  border-color: #9bcfbd;
  box-shadow: none !important;
  transform: none;
}

/* Hero breaks out of .container so it reads wider than the page content, but stays
   inset from the viewport edges rather than running fully edge-to-edge. */
#hero {
  width: 100vw;
  max-width: 100vw;
  margin-inline: calc(50% - 50vw);
  padding: 0 clamp(8px, 1vw, 48px);
  gap: clamp(22px, 4vw, 48px);
  align-items: center;
  background: transparent;
  border: 0;
}

#hero > * {
  width: 100%;
  max-width: 1720px;
  margin-inline: auto;
}

#hero > .card {
  padding: clamp(22px, 3vw, 34px);
}

/* #hero is only a bleed wrapper now; its decorative inset frame would float over the slide. */
#hero::before {
  display: none;
}

.product-detail-main {
  grid-column: span 2;
}

.admin-dashboard-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  background: linear-gradient(135deg, #0a8062 0%, #12a87e 100%);
  color: #fff;
  overflow: hidden;
  position: relative;
}

.admin-dashboard-hero::after {
  content: '';
  position: absolute;
  width: 220px;
  height: 220px;
  border: 1px solid #ffffff2d;
  border-radius: 50%;
  left: -70px;
  top: -70px;
}

.admin-dashboard-hero .muted,
.admin-dashboard-hero p {
  color: #e9fff7;
}

.admin-dashboard-hero b {
  font-size: clamp(26px, 4vw, 46px);
  white-space: nowrap;
}

.admin-stat-grid {
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.stat-card {
  display: grid;
  gap: 10px;
}

.stat-card span {
  color: #60746d;
}

.stat-card b {
  color: #0a8062;
  font-size: 22px;
}

.search-chip-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  margin: 8px 0;
  border: 1px solid #dfeee8;
  border-radius: 16px;
  background: #fff;
}

.manager-workspace {
  margin-top: 18px;
}

.manager-toolbar {
  margin-bottom: 16px;
}

.support-orb.is-offline {
  background: #9ca3af;
  box-shadow: 0 0 0 6px #9ca3af24;
}

.support-orb.is-online {
  background: #34d399;
  box-shadow: 0 0 0 6px #34d39933;
}

/* Keep admin markup hidden until the authenticated admin check passes. */
body.admin-locked main,
body.admin-locked .nav {
  display: none !important;
}

/* Textareas may grow vertically only, without breaking horizontal layout. */
textarea,
.input:is(textarea) {
  resize: vertical;
  width: 100%;
  max-width: 100%;
  min-height: 96px;
  max-height: 360px;
  overflow: auto;
}

.chat-textarea {
  min-height: 48px;
  max-height: 160px;
}

.header-cart-icon {
  width: 44px;
  height: 44px;
  padding: 0;
  border-radius: 50%;
}

.header-cart-icon .action-icon {
  width: 20px;
  height: 20px;
}

.hero-kicker {
  display: inline-flex;
  margin-bottom: 10px;
  padding: 6px 12px;
  border-radius: 999px;
  background: #ecfdf5;
  color: #0a8062;
  font-weight: 800;
}

.hero-trust-card {
  position: relative;
  overflow: hidden;
}

.hero-trust-card::before {
  content: '';
  position: absolute;
  inset: -45% auto auto -20%;
  width: 180px;
  height: 180px;
  border-radius: 50%;
  background: #a7f3d055;
}

.hero-mini-stats {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 18px;
  padding: 12px;
  border-radius: 16px;
  background: #f8fafc;
}

.cart-stage {
  position: relative;
  overflow: hidden;
}

.cart-panel {
  animation: cartPanelIn .38s ease both;
  transform-origin: top center;
}

@keyframes cartPanelIn {
  from { opacity: 0; transform: translateY(18px) scale(.985); filter: blur(4px); }
  to { opacity: 1; transform: translateY(0) scale(1); filter: blur(0); }
}

.admin-check-picker {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid #e8f1ed;
  border-radius: 16px;
  background: #fff;
}

.admin-check-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 8px;
}

.input.is-locked {
  background: #f8fafc;
  color: #64748b;
  cursor: not-allowed;
}

.product-media-specs {
  display: grid;
  gap: 16px;
}

.cart-panel[hidden] {
  display: none !important;
}

.cart-panel.is-circle-in {
  animation: cartCircleIn .45s cubic-bezier(.2,.8,.2,1) both;
  clip-path: circle(150% at 50% 0%);
}

@keyframes cartCircleIn {
  from { opacity: 0; clip-path: circle(0% at 50% 0%); transform: translateY(24px) scale(.96); }
  to { opacity: 1; clip-path: circle(150% at 50% 0%); transform: translateY(0) scale(1); }
}

.checkout-confirm article {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px dashed #e8f1ed;
}

#checkoutForm[hidden],
#checkoutConfirm[hidden] {
  display: none !important;
}

.checkout-confirm {
  margin-top: 18px;
  border: 1px solid #bbf7d0;
  box-shadow: 0 22px 50px #127f6318;
}

.cart-summary,
.checkout-totals {
  background: #f8fafc;
  border: 1px solid #e8f1ed;
}

.cart-summary p,
.cart-summary h3,
.checkout-totals p,
.checkout-totals h3 {
  display: flex;
  justify-content: space-between;
  gap: 12px;
}

.discount-amount,
.coupon-state {
  color: #0a8062;
  font-weight: 800;
}

.shell-loader {
  position: fixed;
  inset: auto 50% 24px auto;
  z-index: 1000;
  display: inline-flex;
  gap: 6px;
  padding: 10px 14px;
  border: 1px solid rgba(10, 131, 101, .18);
  border-radius: 999px;
  background: rgba(255, 255, 255, .82);
  box-shadow: 0 18px 45px rgba(10, 131, 101, .16);
  transform: translateX(50%);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}
.shell-loader span {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--primary);
  animation: shellPulse 1s ease-in-out infinite;
}
.shell-loader span:nth-child(2) { animation-delay: .14s; opacity: .72; }
.shell-loader span:nth-child(3) { animation-delay: .28s; opacity: .48; }
body.is-ready .shell-loader { display: none; }
@keyframes shellPulse {
  0%, 100% { transform: translateY(0); opacity: .45; }
  50% { transform: translateY(-4px); opacity: 1; }
}

/* UX polish: scroll boxes, home strips, user/admin panels and tracking page. */
.scroll-box {
  max-height: 24rem;
  overflow: auto;
  padding-inline-end: .35rem;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
}
.scroll-box > :nth-child(n+6) { scroll-margin-top: 1rem; }
.home-scroll-strip {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: clamp(150px, 40vw, 190px);
  grid-template-columns: none;
  overflow-x: auto;
  overflow-y: hidden;
  direction: rtl;
  scroll-snap-type: x mandatory;
  padding-block: .5rem 1rem;
}
.home-scroll-strip > * { scroll-snap-align: start; }
@media (min-width: 1025px) {
  .home-scroll-strip {
    grid-auto-flow: row;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    overflow-x: visible;
    scroll-snap-type: none;
  }
}
.home-hero-premium {
  background: radial-gradient(circle at 15% 15%, rgba(47, 208, 187, .22), transparent 28%), linear-gradient(135deg, #ecfdf5, #ffffff 45%, #fff7ed);
  border: 1px solid rgba(10, 131, 101, .12);
  box-shadow: 0 24px 80px rgba(10, 131, 101, .12);
}
.hero-badges { display: flex; flex-wrap: wrap; gap: .5rem; margin: 1rem 0; }
.hero-badges span, .tracking-steps span {
  border-radius: 999px;
  background: #eefdf8;
  color: #0a8062;
  padding: .45rem .8rem;
  font-weight: 800;
}
.hero-glass { -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); background: rgba(255,255,255,.72); }
.tracking-hero {
  border-radius: 1.5rem;
  padding: 1.25rem;
  background: linear-gradient(135deg, #0a8062, #12a87e);
  color: white;
  box-shadow: 0 18px 50px rgba(47, 208, 187, .24);
}
.tracking-hero h1 { display: block; font-size: clamp(1.6rem, 4vw, 2.6rem); margin-block: .35rem; }
.pretty-order {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border: 1px solid rgba(10, 131, 101, .1);
  background: linear-gradient(135deg, #fff, #f8fffc);
}
.tracking-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 1rem; margin-block: 1rem; }
.tracking-steps { display: flex; flex-wrap: wrap; gap: .6rem; }
.tracking-steps span { background: #f1f5f9; color: #64748b; }
.tracking-steps span.done { background: #dcfce7; color: #166534; }
.panel .side, .admin-ticket-list { max-height: 72vh; overflow: auto; }
#admin > .grid, #panel > .panel-section { animation: panel-pop .28s ease both; }
#admin .card, #panel .card { border: 1px solid rgba(10, 131, 101, .1); }
@keyframes panel-pop { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 1024px) { .pretty-order { align-items: stretch; flex-direction: column; } }

/* Admin-managed animated campaign hero cards. */
.campaign-orbit {
  position: relative;
  min-height: 360px;
  perspective: 1200px;
  isolation: isolate;
}
.campaign-orbit-card {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: .75rem;
  min-height: 320px;
  padding: 1.25rem;
  border-radius: 1.8rem;
  color: white;
  overflow: hidden;
  text-decoration: none;
  border: 1px solid rgba(255,255,255,.42);
  background:
    linear-gradient(145deg, color-mix(in srgb, var(--cv-brand, #2fd0bb) 72%, #1c6151), rgba(6, 61, 49, .72)),
    var(--campaign-poster, radial-gradient(circle at 20% 10%, rgba(255,255,255,.28), transparent 32%));
  background-size: cover;
  background-position: center;
  box-shadow: 0 28px 75px rgba(10, 131, 101, .22);
  transform-origin: center;
  animation: campaign-card-swap 14s cubic-bezier(.2,.8,.2,1) infinite both;
  animation-delay: var(--campaign-delay, 0s);
}
.campaign-orbit-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,.05), rgba(0,0,0,.55));
  z-index: -1;
}
.campaign-orbit-card span,
.campaign-orbit-card b {
  align-self: flex-start;
  border-radius: 999px;
  padding: .45rem .8rem;
  background: rgba(255,255,255,.2);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}
.campaign-orbit-card h2 { font-size: clamp(1.5rem, 4vw, 2.35rem); margin: 0; }
.campaign-orbit-card p { margin: 0; max-width: 38ch; line-height: 1.9; }
.campaign-orbit-card:nth-child(2) { transform: translate3d(22px, 18px, -80px) rotate(-2deg); }
.campaign-orbit-card:nth-child(3) { transform: translate3d(-22px, 34px, -150px) rotate(3deg); }
.campaign-orbit-card:nth-child(n+4) { opacity: .62; transform: translate3d(0, 50px, -220px) scale(.92); }
@keyframes campaign-card-swap {
  0%, 18% { opacity: 1; transform: translate3d(0,0,0) rotate(0) scale(1); z-index: 5; }
  25%, 48% { opacity: .72; transform: translate3d(34px,22px,-100px) rotate(-2deg) scale(.96); z-index: 3; }
  55%, 78% { opacity: .48; transform: translate3d(-28px,42px,-210px) rotate(3deg) scale(.9); z-index: 1; }
  86%, 100% { opacity: 1; transform: translate3d(0,0,0) rotate(0) scale(1); z-index: 5; }
}
@media (prefers-reduced-motion: reduce) { .campaign-orbit-card { animation: none; position: relative; margin-bottom: 1rem; } .campaign-orbit { min-height: auto; } }
@media (max-width: 1024px) { .campaign-orbit-card { position: relative; inset: auto; margin-bottom: 1rem; animation: none; } .campaign-orbit { min-height: auto; } }

/* Safer, more polished campaign stack: stable layering with richer motion. */
.campaign-orbit {
  display: grid;
  align-items: stretch;
}
.campaign-orbit::before {
  content: "";
  position: absolute;
  inset: 7% 5% 2%;
  border-radius: 2.4rem;
  background: radial-gradient(circle at 18% 8%, rgba(255,255,255,.32), transparent 32%), linear-gradient(135deg, rgba(47,208,187,.24), rgba(10,131,101,.12));
  filter: blur(2px);
  transform: rotate(-3deg);
  z-index: -1;
}
.campaign-orbit-card {
  will-change: transform, opacity;
  backface-visibility: hidden;
  isolation: isolate;
  outline: 1px solid rgba(255,255,255,.18);
}
.campaign-orbit-card::after {
  content: "";
  position: absolute;
  inset: -30% -60%;
  background: linear-gradient(115deg, transparent 35%, rgba(255,255,255,.26), transparent 62%);
  transform: translateX(-45%) rotate(8deg);
  pointer-events: none;
}
.campaign-orbit-card i {
  position: absolute;
  top: 1rem;
  left: 1rem;
  z-index: 1;
  font-style: normal;
  font-weight: 900;
  font-size: 2.8rem;
  color: rgba(255,255,255,.22);
}
.campaign-orbit-card > * {
  position: relative;
  z-index: 1;
}
.campaign-orbit-card:hover {
  transform: translate3d(0,-8px,0) scale(1.015) !important;
  box-shadow: 0 34px 95px rgba(10,131,101,.32);
}
/* Full hero campaign slider: the whole hero card swaps per campaign. */
.campaign-hero-slider {
  grid-column: 1 / -1;
  position: relative;
  min-height: clamp(250px, 27vw, 330px);
  border-radius: 2.1rem;
  overflow: hidden;
  isolation: isolate;
}
/* Stands in for the slider only when the campaigns could not be read at request
   time. It takes the slider's own grid placement, height and radius, so what
   arrives afterwards fills a box that is already the right size and nothing on
   the page below it moves. */
.campaign-hero-skeleton {
  grid-column: 1 / -1;
  min-height: clamp(250px, 27vw, 330px);
  border-radius: 2.1rem;
  background: linear-gradient(100deg, rgba(10,131,101,.07) 30%, rgba(10,131,101,.14) 50%, rgba(10,131,101,.07) 70%) 0 0 / 300% 100%;
  animation: campaign-hero-skeleton 1.4s ease-in-out infinite;
}
@keyframes campaign-hero-skeleton { to { background-position: -150% 0; } }
@media (prefers-reduced-motion: reduce) { .campaign-hero-skeleton { animation: none; } }
.campaign-hero-slider::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 20% 8%, rgba(47,208,187,.28), transparent 26%), radial-gradient(circle at 88% 88%, rgba(10,131,101,.18), transparent 30%);
  pointer-events: none;
}
.campaign-hero-slide {
  position: absolute;
  inset: 0;
  display: grid;
  grid-template-columns: 1fr .92fr;
  gap: 2rem;
  align-items: center;
  padding: clamp(1.1rem, 4vw, 3rem);
  opacity: 0;
  transform: translateY(26px) scale(.985);
  animation: hero-campaign-show calc(var(--slide-count, 1) * 5s) cubic-bezier(.2,.8,.2,1) infinite both;
  animation-delay: var(--slide-delay, 0s);
}
.campaign-hero-slide:first-child:last-child {
  opacity: 1;
  transform: none;
  animation: none;
}
.campaign-hero-copy {
  animation: hero-copy-float 5s ease-in-out infinite alternate;
}
.campaign-hero-copy h1 {
  text-shadow: 0 18px 42px rgba(10,131,101,.12);
}
.campaign-hero-visual {
  position: relative;
  display: flex;
  min-height: 100%;
  flex-direction: column;
  justify-content: flex-end;
  gap: .8rem;
  padding: clamp(1.1rem, 3vw, 2rem);
  border-radius: 2rem;
  color: #fff;
  text-decoration: none;
  overflow: hidden;
  background: linear-gradient(145deg, color-mix(in srgb, var(--cv-brand, #2fd0bb) 72%, #1c6151), rgba(6, 61, 49, .7)), var(--campaign-poster, radial-gradient(circle at 18% 10%, rgba(255,255,255,.3), transparent 34%));
  background-size: cover;
  background-position: center;
  box-shadow: 0 30px 90px rgba(10,131,101,.28);
  transform: rotate(-2deg);
}
.campaign-hero-visual::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,.02), rgba(0,0,0,.58));
}
.campaign-hero-visual > * {
  position: relative;
  z-index: 1;
}
.campaign-hero-visual i {
  position: absolute;
  top: 1rem;
  left: 1.2rem;
  font-style: normal;
  font-weight: 900;
  font-size: 4rem;
  color: rgba(255,255,255,.24);
}
.campaign-hero-visual span,
.campaign-hero-visual b {
  align-self: flex-start;
  border-radius: 999px;
  padding: .5rem .85rem;
  background: rgba(255,255,255,.2);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}
.campaign-hero-visual h2 { margin: 0; font-size: clamp(1.6rem, 4vw, 3rem); }
.campaign-hero-visual p { margin: 0; line-height: 1.9; }
@keyframes hero-campaign-show {
  0% { opacity: 0; transform: translateY(30px) scale(.985); filter: blur(8px); pointer-events: none; }
  6%, 76% { opacity: 1; transform: translateY(0) scale(1); filter: blur(0); pointer-events: auto; }
  92%, 100% { opacity: 0; transform: translateY(-30px) scale(.985); filter: blur(8px); pointer-events: none; }
}
@keyframes hero-copy-float { from { transform: translateY(0); } to { transform: translateY(-8px); } }
@media (prefers-reduced-motion: reduce) { .campaign-hero-slide { animation: none; opacity: 1; position: relative; transform: none; } .campaign-hero-slider { min-height: auto; display: grid; gap: 1rem; } .campaign-hero-copy { animation: none; } }

/* JS-controlled hero slide state: no overlap between campaigns. */
.campaign-hero-slide {
  animation: none;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translate3d(0, 28px, 0) scale(.985);
  filter: blur(10px);
  transition: opacity .75s ease, visibility .75s ease, transform .75s cubic-bezier(.2,.8,.2,1), filter .75s ease;
}
.campaign-hero-slide.is-active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translate3d(0, 0, 0) scale(1);
  filter: blur(0);
}
.campaign-hero-visual {
  transform: none;
}
.campaign-hero-visual:hover {
  transform: translateY(-6px);
}

/* Compact bottom-left cookie consent and hero switch controls. */
.cookie-consent-pop {
  inset: auto auto 18px 18px;
  width: min(420px, calc(100vw - 28px));
  place-items: start;
}
.cookie-card {
  grid-template-columns: auto 1fr;
  gap: 10px;
  padding: 12px;
  border-radius: 22px;
}
.cookie-copy h2 { font-size: 1rem; }
.cookie-copy p { font-size: .86rem; line-height: 1.65; }
.cookie-actions { grid-column: 1 / -1; grid-template-columns: repeat(4, auto); min-width: 0; }
.cookie-actions .btn { padding: 9px 11px; border-radius: 13px; font-size: .86rem; }
.campaign-hero-controls {
  position: absolute;
  left: 1rem;
  top: 50%;
  z-index: 5;
  display: grid;
  gap: .55rem;
  transform: translateY(-50%);
}
.campaign-hero-controls button {
  width: 46px;
  height: 46px;
  border: 1px solid rgba(10,131,101,.15);
  border-radius: 16px;
  background: rgba(255,255,255,.82);
  color: #0a8062;
  box-shadow: 0 16px 34px rgba(10,131,101,.16);
  cursor: pointer;
  font: 900 1.2rem/1 Tahoma, Arial, sans-serif;
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  transition: transform .2s ease, background .2s ease;
}
.campaign-hero-controls button:hover { transform: translateY(-2px); background: #e7fff7; }
@media (max-width: 1024px) {
  .cookie-consent-pop { inset: auto auto 12px 12px; width: min(340px, calc(100vw - 24px)); }
  .cookie-card { grid-template-columns: 1fr; padding: 10px; }
  .cookie-actions { grid-template-columns: repeat(2, 1fr); }
  .campaign-hero-controls { left: .65rem; top: auto; bottom: .65rem; transform: none; grid-template-columns: repeat(2, auto); }
  .campaign-hero-controls button { width: 40px; height: 40px; }
}

/* Stable product catalog layout. */
.catalog-page{width:min(1180px,calc(100% - 28px));padding-top:30px}
.catalog-heading{display:block;margin:0 0 24px;padding:0 0 18px;border:0;border-bottom:1px solid #e8f1ed;border-radius:0;background:transparent;color:#1d3129;box-shadow:none}
.catalog-heading::after{display:none!important}.catalog-heading h1{margin:0 0 5px;color:#1d3129;font-size:clamp(1.8rem,3vw,2.45rem)}.catalog-heading p{margin:0;color:#64736c;font-size:.88rem}
.catalog-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:24px;align-items:start}.catalog-sidebar,.catalog-results{min-width:0}
.catalog-page .product-filters{position:sticky;top:84px;gap:13px;padding:16px;border:1px solid #e8f1ed;border-radius:18px;background:#fff;box-shadow:none}
.filter-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:11px;border-bottom:1px solid #eef5f2}.filter-heading b{font-size:.92rem}.filter-heading a{color:#0a8062;font-size:.74rem;font-weight:800;text-decoration:none}
.catalog-search,.catalog-sort{display:grid;gap:7px;color:#1d3129;font-size:.78rem;font-weight:800}.catalog-search svg{display:none!important}.catalog-search .input{min-height:46px;padding-inline:12px!important}
.catalog-page .filter-panel{padding:12px;border:1px solid #eef5f2;border-radius:13px;background:#fff}.catalog-page .filter-panel summary{font-size:.82rem}.catalog-page .check-list{max-height:190px;overflow-y:auto}.catalog-page .check-row{min-height:40px;margin:0;padding:5px 7px;border-radius:9px;font-size:.79rem}.catalog-switches{display:grid;gap:3px}.catalog-filter-submit{width:100%;min-height:44px}
.catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:54px;margin-bottom:14px;padding:8px 4px 11px;border:0;border-bottom:1px solid #e8f1ed;background:transparent}.catalog-toolbar>div{display:grid;gap:3px}.catalog-toolbar b{font-size:.9rem}.catalog-toolbar span{color:#64736c;font-size:.72rem}.catalog-toolbar>a{color:#0a8062;font-size:.76rem;font-weight:800;text-decoration:none}

.catalog-page .product-icon-actions{position:absolute;top:11px;left:11px;right:auto}
.catalog-pager{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin-top:25px;padding:11px;border:1px solid #e8f1ed;border-radius:14px;background:#fff}.catalog-pager[hidden]{display:none}.catalog-pager a{justify-self:start;color:#0a8062;font-size:.76rem;font-weight:800;text-decoration:none}.catalog-pager a:last-child{justify-self:end}.catalog-pager b{font-size:.76rem}
@media(max-width: 1024px){.catalog-page{padding-top:22px}.catalog-layout{grid-template-columns:1fr}.catalog-page .product-filters{position:relative;top:auto}.catalog-sidebar{order:0}.catalog-results{order:1}}
@media(max-width: 560px){.catalog-page{width:min(100% - 20px,1180px)}.catalog-heading{padding-bottom:14px}}
