.boutique-widget, .shopthepost-widget { max-width: 100%; }
.boutique-widget img, .shopthepost-widget img { max-width: 100%; height: auto; display: block; }
.shopthepost-widget .rs-adblock, .boutique-widget .rs-adblock { display: none !important; }

/* --- General font --- */
body, .menu-cart-link, #cartFab { font-family: 'Karla', sans-serif; }

/* --- Nav Cart: icon on desktop, text on mobile --- */
.menu-cart-link { display:inline-flex; align-items:center; gap:.4ch; }
.menu-cart-icon svg { width:20px; height:20px; display:block; fill:currentColor; }

/* Mobile ≤640px: show text, hide icon */
@media (max-width:640px){ .menu-cart-icon { display:none; } .menu-cart-text { display:inline; } }
/* Desktop ≥641px: show icon, hide text */
@media (min-width:641px){ .menu-cart-icon { display:inline-flex; } .menu-cart-text { display:none; } }

/* --- Floating Cart FAB --- */
#cartFab {
  position: fixed; right: 20px; bottom: 20px; z-index: 9999;
  display: inline-flex; align-items: center;
  gap: 8px; padding: 14px 16px;
  border: none; border-radius: 9999px; background: #111; color: #fff;
  cursor: pointer; font-family: 'Karla', sans-serif;
}

#cartFab:focus-visible { outline: 2px solid #3b82f6; outline-offset: 2px; }
#cartFab svg { display: block; fill: #fff; /* white cart icon */ }
#cartFab .cart-fab-label { font-weight: 600; font-family: 'Karla', sans-serif; }

/* --- Responsive visibility --- */
/* Mobile ≤640px: hide text, keep icon */
@media (max-width: 640px) { #cartFab .cart-fab-label { display: none; } }
/* Desktop ≥641px: show both */
@media (min-width: 641px) { #cartFab .cart-fab-label { display: inline; } }


/* --- Youtube Video Containers -- */
/* Outer wrapper: center and cap width */
[data-element-type="video"].zpelem-video .zpvideo-container {
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
}

/* Remove Zoho's inline padding on the video element wrapper */
[data-element-type="video"].zpelem-video {
  padding-inline-start: 0 !important;
  padding-inline-end: 0 !important;
}

/* Actual iframe: force responsive 16:9 and override Zoho's 560x315 */
[data-element-type="video"].zpelem-video .zpvideo.zpvideo {
  display: block;
  width: 100% !important;          /* override Zoho's width */
  max-width: 600px;
  height: auto !important;          /* override Zoho's height */
  aspect-ratio: 16 / 9 !important;  /* always keep 16:9 */
  border: none;
}
