/** Shopify CDN: Minification failed

Line 41:0 All "@import" rules must come first

**/
/* ================================================
   NOGY BEAUTY — Bold Purple + Neon Green Theme
   Gen-Z Maximalist Beauty Brand
   ================================================ */

/* Hero dropdown must overflow above next sections */
#shopify-section-nogy_hero,
.shopify-section:has(.nogy-hero) {
  overflow: visible !important;
  z-index: 10 !important;
  position: relative !important;
}

/* --- Brand Tokens --- */
:root {
  --nogy-purple: #450868;
  --nogy-purple-deep: #350550;
  --nogy-purple-light: #5C0E8A;
  --nogy-purple-muted: #2A0440;
  --nogy-green: #A3E635;
  --nogy-green-light: #C5F467;
  --nogy-green-dark: #7CB518;
  --nogy-white: #FFFFFF;
  --nogy-offwhite: #FAF5FF;
  --nogy-cream: #F3E8FF;
  --nogy-dark: #1A0525;
  --nogy-text-light: rgba(255, 255, 255, 0.85);
  --nogy-text-muted: rgba(255, 255, 255, 0.55);
  --nogy-radius: 14px;
  --nogy-radius-lg: 24px;
  --nogy-radius-pill: 999px;
  --nogy-transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* --- Google Fonts Import (Sora + DM Serif Display) --- */
@import url('https://fonts.googleapis.com/css2?family=Sora:wght@300;400;500;600;700&family=DM+Serif+Display:ital@0;1&display=swap');

/* --- Global Refinements --- */
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-family: 'Sora', var(--font-body-family), sans-serif;
  background-color: var(--nogy-purple);
  color: var(--nogy-white);
}

/* Override all Shopify color schemes to use purple bg */
body[class*="color-"],
.color-scheme-1,
.color-scheme-2,
[class*="color-scheme"] {
  --color-background: 69, 8, 104;
  --gradient-background: #450868;
  --color-foreground: 255, 255, 255;
}

html {
  scroll-behavior: smooth;
}

/* --- Kill default Shopify/Dawn section spacing globally --- */
.shopify-section,
.shopify-section .section {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Remove gradient backgrounds from Dawn color schemes (except body — product page uses body bg) */
.gradient:not(body) {
  background: var(--nogy-purple) !important;
}

/* --- Global page typography for Dawn default pages --- */
.main-page-title,
.page-title,
.collection-hero__title,
.collection-banner__heading,
.cart__heading,
.search__heading {
  font-family: 'DM Serif Display', serif;
  font-weight: 400;
  color: var(--nogy-white);
}

/* Global link colors on dark bg */
.rte a,
.main-page a {
  color: var(--nogy-green);
}

/* ============================================
   CART PAGE — Full Styling
   ============================================ */

/* Force dark theme on cart */
.shopify-section:has(.cart-items),
.shopify-section:has(.cart__footer),
.section-main-cart-items,
.section-main-cart-footer,
.cart-items [class*="color-"],
.cart__footer [class*="color-"],
.cart-items .gradient,
.cart__footer .gradient {
  background: var(--nogy-purple) !important;
  --color-background: 69, 8, 104 !important;
  --gradient-background: #450868 !important;
  --color-foreground: 255, 255, 255 !important;
  color: var(--nogy-white) !important;
}

/* Cart heading */
.cart__heading,
.cart-items h1,
.cart-items .title {
  font-family: 'DM Serif Display', serif !important;
  font-weight: 400;
  color: var(--nogy-white) !important;
  font-size: clamp(2.4rem, 3.5vw, 3.6rem);
}

/* Cart empty state */
.cart--empty,
.cart__empty-text {
  color: var(--nogy-white) !important;
  font-family: 'Sora', sans-serif;
}

.cart--empty a {
  color: var(--nogy-green) !important;
}

/* Cart items table */
.cart-items,
.cart__contents {
  color: var(--nogy-white);
}

.cart-items thead th {
  font-family: 'Sora', sans-serif;
  font-size: 1.1rem;
  font-weight: 600;
  letter-spacing: 0.1rem;
  text-transform: uppercase;
  color: var(--nogy-text-muted) !important;
  border-bottom: 1px solid rgba(163, 230, 53, 0.12) !important;
}

/* Cart item row */
.cart-item {
  border-bottom: 1px solid rgba(163, 230, 53, 0.08) !important;
  padding: 2rem 0 !important;
}

/* Cart item image */
.cart-item__media {
  border-radius: 12px !important;
  overflow: hidden;
  border: 1px solid rgba(163, 230, 53, 0.1);
}

.cart-item__image {
  border-radius: 12px !important;
}

/* Cart item name */
.cart-item__name,
.cart-item__details a {
  color: var(--nogy-white) !important;
  font-family: 'Sora', sans-serif;
  font-weight: 600;
  font-size: 1.4rem;
}

.cart-item__name:hover {
  color: var(--nogy-green) !important;
}

/* Cart item price */
.cart-item .price,
.cart-item .price .money,
.cart-item__price .price {
  color: var(--nogy-white) !important;
  font-family: 'Sora', sans-serif;
  font-weight: 700;
}

.cart-item__discounted-prices .cart-item__old-price {
  color: var(--nogy-text-muted) !important;
}

.cart-item__final-price {
  color: var(--nogy-green) !important;
  font-weight: 700;
}

/* Cart item variant info */
.cart-item__details dd,
.cart-item__details dt {
  color: var(--nogy-text-muted) !important;
  font-family: 'Sora', sans-serif;
  font-size: 1.2rem;
}

/* Quantity selector in cart */
.cart-item .quantity {
  border: 2px solid rgba(163, 230, 53, 0.2) !important;
  border-radius: var(--nogy-radius-pill) !important;
  background: rgba(163, 230, 53, 0.06) !important;
}

.cart-item .quantity__input {
  color: var(--nogy-white) !important;
  font-family: 'Sora', sans-serif;
  font-weight: 700;
  background: transparent !important;
}

.cart-item .quantity__button {
  color: var(--nogy-green) !important;
  background: transparent !important;
  border: none !important;
}

.cart-item .quantity__button:hover {
  background: rgba(163, 230, 53, 0.12) !important;
}

/* Remove button */
cart-remove-button a,
.cart-item a[href*="/cart/change"] {
  color: var(--nogy-text-muted) !important;
  transition: color 0.3s ease;
}

cart-remove-button a:hover,
.cart-item a[href*="/cart/change"]:hover {
  color: #ff5555 !important;
}

/* Cart totals / footer */
.cart__footer,
.totals {
  color: var(--nogy-white);
}

.totals__subtotal,
.totals__subtotal-value {
  font-family: 'Sora', sans-serif !important;
  font-weight: 700 !important;
  font-size: 1.6rem !important;
  color: var(--nogy-white) !important;
}

.totals__subtotal-value {
  color: var(--nogy-green) !important;
}

.cart__ctas {
  border-top: 1px solid rgba(163, 230, 53, 0.12) !important;
  padding-top: 2rem !important;
  display: flex !important;
  gap: 1rem !important;
}

.cart__ctas > * {
  flex: 1 !important;
}

/* Tax/shipping note */
.tax-note,
.cart__note {
  color: var(--nogy-text-muted) !important;
  font-family: 'Sora', sans-serif;
  font-size: 1.2rem;
}

.tax-note a {
  color: var(--nogy-green) !important;
}

/* Checkout button */
.cart__checkout-button {
  background: var(--nogy-green) !important;
  color: var(--nogy-purple-deep) !important;
  border-radius: var(--nogy-radius-pill) !important;
  font-family: 'Sora', sans-serif !important;
  font-weight: 700 !important;
  font-size: 1.4rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1rem !important;
  padding: 1.6rem 3.2rem !important;
  border: none !important;
  transition: all var(--nogy-transition) !important;
}

.cart__checkout-button:hover {
  background: var(--nogy-green-light) !important;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(163, 230, 53, 0.35);
}

/* Dynamic checkout buttons in cart */
.cart__dynamic-checkout-buttons .shopify-payment-button__button {
  border-radius: var(--nogy-radius-pill) !important;
  font-family: 'Sora', sans-serif !important;
}

/* Cart note textarea */
.cart__note textarea {
  background: rgba(163, 230, 53, 0.06) !important;
  border: 2px solid rgba(163, 230, 53, 0.2) !important;
  border-radius: var(--nogy-radius) !important;
  color: var(--nogy-white) !important;
  font-family: 'Sora', sans-serif !important;
}

.cart__note label {
  color: var(--nogy-text-light) !important;
  font-family: 'Sora', sans-serif;
}

/* --- Cart Drawer Styling --- */
.cart-drawer,
.cart-drawer .drawer__inner,
.cart-drawer .drawer__inner.gradient,
.cart-drawer .drawer__inner[class*="color-"],
.cart-drawer .drawer__inner-empty,
.cart-drawer .cart-drawer__warnings,
.cart-drawer .cart-drawer__empty-content,
#CartDrawer,
#CartDrawer .drawer__inner,
#CartDrawer .gradient {
  background: var(--nogy-purple-deep) !important;
  --color-background: 53, 5, 80 !important;
  --gradient-background: #350550 !important;
  --color-foreground: 255, 255, 255 !important;
  color: var(--nogy-white) !important;
}

.cart-drawer {
  border-left: 1px solid rgba(163, 230, 53, 0.12) !important;
}

.cart-drawer__overlay,
#CartDrawer-Overlay {
  background: rgba(26, 5, 37, 0.6) !important;
  backdrop-filter: blur(8px);
}

.cart-drawer .drawer__heading,
.cart-drawer h2 {
  font-family: 'DM Serif Display', serif !important;
  color: var(--nogy-white) !important;
}

.cart-drawer .drawer__close,
.cart-drawer .cart-drawer__close,
.cart-drawer button[aria-label] {
  color: var(--nogy-white) !important;
}

.cart-drawer .cart__empty-text {
  color: var(--nogy-white) !important;
  font-family: 'DM Serif Display', serif;
}

.cart-drawer p,
.cart-drawer span,
.cart-drawer label {
  color: var(--nogy-white) !important;
}

.cart-drawer a:not(.button):not(.cart__checkout-button) {
  color: var(--nogy-green) !important;
}

/* Drawer button "Voltar à loja" */
.cart-drawer .button,
.cart-drawer .button--secondary {
  background: transparent !important;
  color: var(--nogy-green) !important;
  border: 2px solid var(--nogy-green) !important;
  border-radius: var(--nogy-radius-pill) !important;
  font-family: 'Sora', sans-serif !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08rem !important;
}

.cart-drawer .button:hover,
.cart-drawer .button--secondary:hover {
  background: var(--nogy-green) !important;
  color: var(--nogy-purple-deep) !important;
}

.cart-drawer .cart__continue-button:hover {
  background: var(--nogy-purple-deep) !important;
  color: var(--nogy-green) !important;
  border-color: var(--nogy-purple-deep) !important;
}

.cart-drawer .cart-item__name {
  color: var(--nogy-white) !important;
  font-family: 'Sora', sans-serif;
  font-weight: 600;
}

.cart-drawer .cart-item__details dd,
.cart-drawer .cart-item__details dt {
  color: var(--nogy-text-muted) !important;
}

.cart-drawer .totals__subtotal {
  color: var(--nogy-white) !important;
}

.cart-drawer .totals__subtotal-value {
  color: var(--nogy-green) !important;
  font-weight: 700;
}

.cart-drawer .cart__ctas {
  display: flex !important;
  gap: 1rem !important;
  align-items: stretch !important;
}

.cart-drawer .cart__ctas > * + * {
  margin-top: 0 !important;
}

.cart-drawer .cart__ctas > * {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  padding: 1.4rem 1rem !important;
  font-family: 'Sora', sans-serif !important;
  font-size: 1.1rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06rem !important;
  border-radius: var(--nogy-radius-pill) !important;
  text-align: center !important;
  cursor: pointer;
  white-space: nowrap !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.cart-drawer .cart__checkout-button {
  background: var(--nogy-green) !important;
  color: var(--nogy-purple-deep) !important;
  border: none !important;
}

.cart-drawer .cart__checkout-button:hover {
  background: var(--nogy-green-light) !important;
}

.cart-drawer .cart__continue-button {
  background: transparent !important;
  color: var(--nogy-green) !important;
  border: 1.5px solid var(--nogy-green) !important;
}

.cart-drawer .cart__continue-button:hover {
  background: rgba(163, 230, 53, 0.1) !important;
}

.cart-drawer .cart-item {
  border-bottom: 1px solid rgba(163, 230, 53, 0.08) !important;
}

.cart-drawer .cart-item__media,
.cart-drawer .cart-item__image {
  border-radius: 10px !important;
  border: 1px solid rgba(163, 230, 53, 0.1);
}

.cart-drawer .quantity {
  border: 2px solid rgba(163, 230, 53, 0.2) !important;
  border-radius: var(--nogy-radius-pill) !important;
  background: rgba(163, 230, 53, 0.06) !important;
}

.cart-drawer .quantity__input {
  color: var(--nogy-white) !important;
  background: transparent !important;
  font-family: 'Sora', sans-serif;
  font-weight: 700;
}

.cart-drawer .quantity__button {
  color: var(--nogy-green) !important;
  background: transparent !important;
}

.cart-drawer .quantity__button:hover {
  background: rgba(163, 230, 53, 0.12) !important;
}

.cart-drawer .price .money,
.cart-drawer .cart-item__price {
  color: var(--nogy-white) !important;
  font-weight: 700;
}

/* Cart drawer SVGs */
.cart-drawer svg,
.cart-drawer .icon {
  color: var(--nogy-white) !important;
}

.cart-drawer .quantity__button svg {
  color: var(--nogy-green) !important;
}

/* Search page — force dark theme */
.template-search,
.template-search [class*="color-"],
.template-search .gradient,
.shopify-section:has(.template-search) {
  background: var(--nogy-purple) !important;
  --color-background: 69, 8, 104 !important;
  --gradient-background: #450868 !important;
  --color-foreground: 255, 255, 255 !important;
  color: var(--nogy-white) !important;
}

.search__heading,
.template-search h1,
.template-search__header h1 {
  font-family: 'DM Serif Display', serif;
  font-weight: 400;
  color: var(--nogy-white) !important;
}

.template-search .search__input,
.search-modal__input {
  border: 2px solid rgba(163, 230, 53, 0.3) !important;
  color: var(--nogy-white) !important;
  font-family: 'Sora', sans-serif;
  border-radius: var(--nogy-radius-pill) !important;
  background: rgba(163, 230, 53, 0.06) !important;
}

.template-search .search__input:focus {
  border-color: var(--nogy-green) !important;
  background: rgba(163, 230, 53, 0.1) !important;
  box-shadow: 0 0 0 3px rgba(163, 230, 53, 0.15) !important;
}

.search__button,
.template-search .search__button {
  color: var(--nogy-green) !important;
}

/* Search results cards */
.template-search .card-wrapper {
  background: rgba(92, 14, 138, 0.35) !important;
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid rgba(163, 230, 53, 0.08);
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.template-search .card-wrapper:hover {
  border-color: rgba(163, 230, 53, 0.22);
  transform: translateY(-4px);
  box-shadow: 0 12px 32px rgba(26, 5, 37, 0.5);
}

.template-search .card--standard .card__content {
  padding: 1.4rem 1rem;
  text-align: center;
}

.template-search .card__heading a {
  font-family: 'Sora', sans-serif;
  font-size: 1.3rem;
  font-weight: 500;
  color: var(--nogy-white) !important;
}

.template-search .card__information {
  text-align: center !important;
}

/* Search price stacked */
.template-search .price__container {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 0.2rem !important;
}

.template-search .price--on-sale .price__regular {
  display: none !important;
}

.template-search .price__sale {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 0.2rem !important;
}

.template-search .price .money,
.template-search .price-item--regular {
  color: var(--nogy-white) !important;
  font-weight: 500;
  font-size: 1.2rem;
  opacity: 0.6;
}

.template-search .price-item--sale {
  color: var(--nogy-green) !important;
  font-weight: 700 !important;
  font-size: 1.5rem !important;
  opacity: 1 !important;
  order: 2;
}

/* Search filters & sorting */
.template-search .facets-container {
  color: var(--nogy-white);
}

.template-search .facets__label,
.template-search .facet-filters__label {
  font-family: 'Sora', sans-serif;
  color: var(--nogy-text-light);
}

.template-search .product-count__text {
  color: var(--nogy-text-muted);
  font-family: 'Sora', sans-serif;
}

/* Search page background */
.template-search .shopify-section {
  background: transparent;
}

/* Search no results */
.template-search .no-results {
  color: var(--nogy-white);
  font-family: 'Sora', sans-serif;
}

/* 404 page */
.shopify-section--404 h1 {
  font-family: 'DM Serif Display', serif;
  color: var(--nogy-white);
}

.shopify-section--404 a {
  color: var(--nogy-green);
}

h1, h2, h3, h4, h5, h6,
.h0, .h1, .h2, .h3, .h4, .h5 {
  font-family: 'DM Serif Display', var(--font-heading-family), serif;
  font-weight: 400;
  letter-spacing: -0.01em;
}

/* --- Selection & Focus --- */
::selection {
  background: rgba(163, 230, 53, 0.3);
  color: var(--nogy-white);
}

:focus-visible {
  outline: 2px solid var(--nogy-green);
  outline-offset: 2px;
}

/* --- Header Refinements --- */
.header {
  transition: background-color var(--nogy-transition), box-shadow var(--nogy-transition);
}

.shopify-section-header-sticky .header--has-scrolled {
  box-shadow: 0 2px 24px rgba(90, 15, 122, 0.12);
}

.header-wrapper {
  background: var(--nogy-purple) !important;
  color: var(--nogy-white) !important;
}

.header__heading-link {
  color: var(--nogy-green) !important;
}

.header__menu-item span {
  font-family: 'Sora', sans-serif;
  font-size: 1.2rem;
  font-weight: 500;
  letter-spacing: 0.08rem;
  text-transform: uppercase;
  color: var(--nogy-white) !important;
  transition: color var(--nogy-transition);
}

.header__menu-item:hover span,
.header__menu-item .header__active-menu-item {
  color: var(--nogy-green) !important;
}

.header__icon {
  color: var(--nogy-white) !important;
}

.header__icon:hover {
  color: var(--nogy-green) !important;
}

.cart-count-bubble {
  background: var(--nogy-green) !important;
  color: var(--nogy-purple-deep) !important;
  font-weight: 700;
}

/* Fix header SVGs */
.header .svg-wrapper svg,
.header .icon {
  color: var(--nogy-white);
  fill: var(--nogy-white);
}

.header .header__icon:hover .svg-wrapper svg,
.header .header__icon:hover .icon {
  color: var(--nogy-green);
  fill: var(--nogy-green);
}

/* --- Announcement Bar / Frete Grátis --- */
.utility-bar,
.utility-bar.color-scheme-1,
.utility-bar[class*="color-"] {
  background: var(--nogy-green) !important;
  color: var(--nogy-purple-deep) !important;
}

.announcement-bar,
.announcement-bar__message,
.announcement-bar__message span,
.announcement-bar__message.h5 {
  background: var(--nogy-green) !important;
  color: var(--nogy-purple) !important;
  font-family: 'Sora', sans-serif;
  font-size: 1.2rem;
  font-weight: 700;
  letter-spacing: 0.1rem;
  text-transform: uppercase;
}

.announcement-bar a,
.announcement-bar__link {
  color: var(--nogy-purple) !important;
}

.announcement-bar svg,
.announcement-bar .icon {
  color: var(--nogy-purple) !important;
}

/* --- Buttons Global --- */
.button,
.shopify-challenge__button,
.customer button {
  font-family: 'Sora', sans-serif;
  font-weight: 600;
  letter-spacing: 0.08rem;
  text-transform: uppercase;
  transition: all var(--nogy-transition);
  border-radius: var(--nogy-radius-pill) !important;
}

.button--primary,
button.button--primary {
  background: var(--nogy-green) !important;
  color: var(--nogy-purple-deep) !important;
  border: 2px solid var(--nogy-green) !important;
}

.button--primary:hover,
button.button--primary:hover {
  background: var(--nogy-green-light) !important;
  border-color: var(--nogy-green-light) !important;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(163, 230, 53, 0.35);
}

.button--secondary {
  background: transparent !important;
  color: var(--nogy-purple) !important;
  border: 2px solid var(--nogy-purple) !important;
}

.button--secondary:hover {
  background: var(--nogy-purple) !important;
  color: var(--nogy-white) !important;
  transform: translateY(-2px);
}

/* --- Product Cards --- */
.card--standard .card__content {
  padding: 1.2rem 0.4rem;
}

.card__heading a {
  font-family: 'Sora', sans-serif;
  font-size: 1.4rem;
  font-weight: 500;
  color: var(--nogy-white);
  transition: color var(--nogy-transition);
}

.card__heading a:hover {
  color: var(--nogy-purple);
}

.price .money,
.price-item--regular {
  font-weight: 700;
  color: var(--nogy-white);
}

.price-item--sale {
  color: var(--nogy-green-dark);
}

/* --- Badge styling --- */
.badge {
  font-family: 'Sora', sans-serif;
  font-size: 1.1rem;
  letter-spacing: 0.08rem;
  text-transform: uppercase;
  background: var(--nogy-green) !important;
  color: var(--nogy-purple-deep) !important;
  border: none !important;
}

/* --- Fix: remove stacking context that traps wishlist button --- */
.card__inner.gradient {
  transform: none !important;
}

/* --- Wishlist: Heart button on cards --- */
.nogy-wl-btn {
  position: absolute;
  top: 1rem;
  right: 1rem;
  z-index: 2;
  width: 3.6rem;
  height: 3.6rem;
  border-radius: 50%;
  background: rgba(26, 5, 37, 0.5);
  backdrop-filter: blur(6px);
  border: none;
  color: var(--nogy-white);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s ease;
}

.nogy-wl-btn:hover {
  background: rgba(26, 5, 37, 0.7);
  transform: scale(1.1);
}

.nogy-wl-btn.is-active {
  color: var(--nogy-green);
}

/* Heart on green bg cards (queridinhos) */
.nogy-queridinhos .nogy-wl-btn {
  background: rgba(69, 8, 104, 0.5);
  color: var(--nogy-purple);
}

.nogy-queridinhos .nogy-wl-btn.is-active {
  color: var(--nogy-green);
  background: rgba(69, 8, 104, 0.7);
}

/* Heart on product page */
.nogy-wl-pdp {
  display: inline-flex;
  align-items: center;
  gap: 0.8rem;
  padding: 1rem 2rem;
  border-radius: var(--nogy-radius-pill);
  border: 2px solid rgba(163, 230, 53, 0.2);
  background: rgba(163, 230, 53, 0.06);
  color: var(--nogy-text-light);
  font-family: 'Sora', sans-serif;
  font-size: 1.2rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.3s ease;
  margin-bottom: 1rem;
}

.nogy-wl-pdp:hover {
  border-color: var(--nogy-green);
  background: rgba(163, 230, 53, 0.1);
}

.nogy-wl-pdp.is-active {
  color: var(--nogy-green);
  border-color: var(--nogy-green);
  background: rgba(163, 230, 53, 0.12);
}

/* Wishlist badge on header */
.nogy-wishlist-badge {
  position: absolute;
  top: -4px;
  right: -6px;
  min-width: 1.8rem;
  height: 1.8rem;
  border-radius: 50%;
  background: var(--nogy-green);
  color: var(--nogy-purple-deep);
  font-family: 'Sora', sans-serif;
  font-size: 1rem;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

#nogy-wishlist-icon {
  position: relative;
}

/* --- Oxi Social Login Buttons --- */
.oxi-social-login,
#oxi-social-login,
[class*="oxi-social"] {
  font-family: 'Sora', sans-serif !important;
}

.oxi-social-login .oxi-btn,
.oxi-social-login button,
.oxi-social-login a,
[class*="oxi-social"] button,
[class*="oxi-social"] a {
  border-radius: var(--nogy-radius-pill) !important;
  font-family: 'Sora', sans-serif !important;
  font-weight: 600 !important;
  font-size: 1.3rem !important;
  letter-spacing: 0.03rem !important;
  padding: 1.2rem 2.4rem !important;
  transition: all 0.3s ease !important;
  border: 2px solid rgba(163, 230, 53, 0.2) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.8rem !important;
  min-height: 4.8rem !important;
}

.oxi-social-login .oxi-btn:hover,
.oxi-social-login button:hover,
.oxi-social-login a:hover,
[class*="oxi-social"] button:hover,
[class*="oxi-social"] a:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15) !important;
}

/* Google button */
.oxi-social-login .oxi-btn-google,
[class*="oxi"] [class*="google"] {
  background: var(--nogy-white) !important;
  color: #333 !important;
  border-color: rgba(0, 0, 0, 0.1) !important;
}

.oxi-social-login .oxi-btn-google:hover,
[class*="oxi"] [class*="google"]:hover {
  background: #f5f5f5 !important;
}

/* Facebook button */
.oxi-social-login .oxi-btn-facebook,
[class*="oxi"] [class*="facebook"] {
  background: #1877F2 !important;
  color: var(--nogy-white) !important;
  border-color: #1877F2 !important;
}

/* Apple button */
.oxi-social-login .oxi-btn-apple,
[class*="oxi"] [class*="apple"] {
  background: #000 !important;
  color: var(--nogy-white) !important;
  border-color: #000 !important;
}

/* Oxi popup/modal */
.oxi-social-login-popup,
.oxi-modal,
[class*="oxi"] .modal {
  background: var(--nogy-purple) !important;
  border-radius: var(--nogy-radius-lg) !important;
  border: 1px solid rgba(163, 230, 53, 0.12) !important;
  color: var(--nogy-white) !important;
}

.oxi-social-login-popup h2,
.oxi-social-login-popup h3,
.oxi-modal h2,
.oxi-modal h3 {
  font-family: 'DM Serif Display', serif !important;
  color: var(--nogy-white) !important;
}

/* --- Footer (handled by nogy-footer in footer.liquid) --- */

/* --- Collection page --- */
.collection-hero__title,
.collection-banner__heading {
  font-family: 'DM Serif Display', serif;
  font-weight: 400;
  color: var(--nogy-white);
}

/* Override collection "all" title via Liquid-generated class below */

/* Collection banner */
.shopify-section:has(.collection-banner),
.shopify-section:has(.main-collection-banner) {
  margin: 0 !important;
  padding: 0 !important;
}

.section-main-collection-banner,
.main-collection-banner {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Collection grid section */
.shopify-section:has(.collection),
.shopify-section:has(.main-collection) {
  margin: 0 !important;
}

/* Product card improvements for collection/catalog pages */
.collection .card-wrapper,
.main-collection .card-wrapper,
.collection-product-list .card-wrapper {
  background: rgba(92, 14, 138, 0.35);
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid rgba(163, 230, 53, 0.08);
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.collection .card-wrapper:hover,
.main-collection .card-wrapper:hover,
.collection-product-list .card-wrapper:hover {
  border-color: rgba(163, 230, 53, 0.22);
  transform: translateY(-4px);
  box-shadow: 0 12px 32px rgba(26, 5, 37, 0.5);
}

.collection .card--standard .card__content,
.main-collection .card--standard .card__content {
  padding: 1.4rem 1rem;
  text-align: center;
}

.collection .card__heading a,
.main-collection .card__heading a {
  font-family: 'Sora', sans-serif;
  font-size: 1.3rem;
  font-weight: 500;
  color: var(--nogy-white) !important;
}

.collection .card__information,
.main-collection .card__information {
  text-align: center !important;
}

/* Price stacked: original riscado em cima, venda embaixo */
.collection .price__container,
.main-collection .price__container {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 0.2rem !important;
}

.collection .price--on-sale .price__regular,
.main-collection .price--on-sale .price__regular {
  display: none !important;
}

.collection .price__sale,
.main-collection .price__sale {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 0.2rem !important;
}

.collection .price .money,
.collection .price-item--regular,
.main-collection .price .money,
.main-collection .price-item--regular {
  color: var(--nogy-white) !important;
  font-weight: 500;
  font-size: 1.2rem;
  opacity: 0.6;
}

.collection .price-item--sale,
.main-collection .price-item--sale {
  color: var(--nogy-green) !important;
  font-weight: 700 !important;
  font-size: 1.5rem !important;
  opacity: 1 !important;
  order: 2;
}

/* Filters & sorting bar */
.collection .facets-container,
.main-collection .facets-container {
  color: var(--nogy-white);
}

.collection .facets__label,
.main-collection .facets__label,
.collection .facet-filters__label,
.main-collection .facet-filters__label {
  font-family: 'Sora', sans-serif;
  color: var(--nogy-text-light);
}

.collection .facets__disclosure button,
.collection .facets__sort select,
.main-collection .facets__disclosure button,
.main-collection .facets__sort select {
  color: var(--nogy-white);
  font-family: 'Sora', sans-serif;
}

.collection .active-facets__button,
.main-collection .active-facets__button {
  background: rgba(163, 230, 53, 0.12);
  border-color: rgba(163, 230, 53, 0.25);
  color: var(--nogy-green);
  border-radius: var(--nogy-radius-pill);
}

/* Product count */
.collection .product-count__text,
.main-collection .product-count__text {
  color: var(--nogy-text-muted);
  font-family: 'Sora', sans-serif;
}

/* Pagination */
.collection .pagination__item a,
.main-collection .pagination__item a {
  color: var(--nogy-white);
  font-family: 'Sora', sans-serif;
}

.collection .pagination__item--current,
.main-collection .pagination__item--current {
  background: var(--nogy-green) !important;
  color: var(--nogy-purple-deep) !important;
  border-radius: var(--nogy-radius-pill);
}

/* ============================================
   GLOBAL FORM ELEMENTS
   ============================================ */

/* Inputs, textareas, selects */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="tel"],
input[type="number"],
input[type="search"],
input[type="url"],
textarea,
select,
.field__input,
.select__select,
.form__input {
  font-family: 'Sora', sans-serif !important;
  color: var(--nogy-white) !important;
  background: rgba(163, 230, 53, 0.06) !important;
  border: 2px solid rgba(163, 230, 53, 0.2) !important;
  border-radius: var(--nogy-radius) !important;
  padding: 1.2rem 1.6rem !important;
  transition: border-color var(--nogy-transition), background var(--nogy-transition), box-shadow var(--nogy-transition) !important;
  -webkit-appearance: none;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="tel"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="url"]:focus,
textarea:focus,
select:focus,
.field__input:focus,
.select__select:focus,
.form__input:focus {
  border-color: var(--nogy-green) !important;
  background: rgba(163, 230, 53, 0.1) !important;
  box-shadow: 0 0 0 3px rgba(163, 230, 53, 0.15) !important;
  outline: none !important;
}

input::placeholder,
textarea::placeholder,
.field__input::placeholder {
  color: var(--nogy-text-muted) !important;
}

/* Labels */
label,
.field__label,
.form__label {
  font-family: 'Sora', sans-serif;
  color: var(--nogy-text-light);
  font-size: 1.2rem;
  font-weight: 500;
}

/* Select dropdown arrow */
select,
.select__select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23A3E635' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 1.2rem center !important;
  padding-right: 3.2rem !important;
}

/* Checkboxes & radios */
input[type="checkbox"],
input[type="radio"] {
  accent-color: var(--nogy-green);
}

/* Facets / filters dropdown */
.facets__disclosure .disclosure__button,
.facets__sort .select__select,
.facet-filters .facets__disclosure button {
  font-family: 'Sora', sans-serif !important;
  color: var(--nogy-white) !important;
  background: rgba(163, 230, 53, 0.06) !important;
  border: 2px solid rgba(163, 230, 53, 0.2) !important;
  border-radius: var(--nogy-radius) !important;
  padding: 0.8rem 1.4rem !important;
  transition: all var(--nogy-transition) !important;
}

.facets__disclosure .disclosure__button:hover,
.facets__sort .select__select:hover,
.facet-filters .facets__disclosure button:hover {
  border-color: var(--nogy-green) !important;
  background: rgba(163, 230, 53, 0.1) !important;
}

/* Facets dropdown panel */
.facets__disclosure .disclosure__list,
.facets__display,
.facets-container .disclosure__list,
.collection .disclosure__list,
.select__select option {
  background: var(--nogy-purple) !important;
  border: 1px solid rgba(163, 230, 53, 0.15) !important;
  border-radius: var(--nogy-radius) !important;
  box-shadow: 0 8px 32px rgba(26, 5, 37, 0.5) !important;
  color: var(--nogy-white) !important;
}

/* Select option items (native dropdown) */
select option,
.select__select option {
  background: var(--nogy-purple-deep) !important;
  color: var(--nogy-white) !important;
  font-family: 'Sora', sans-serif;
  padding: 0.8rem !important;
}

/* Facets list items / links */
.facets__disclosure .disclosure__list a,
.facets__disclosure .disclosure__list label,
.facets__disclosure .disclosure__list span,
.disclosure__list .facets__label,
.collection .disclosure__list a,
.collection .disclosure__list label {
  color: var(--nogy-white) !important;
  font-family: 'Sora', sans-serif;
}

.facets__disclosure .disclosure__list a:hover,
.collection .disclosure__list a:hover {
  color: var(--nogy-green) !important;
}

/* Facets price range inputs */
.facets__price .field__input {
  font-size: 1.3rem !important;
}

/* Active filter tags */
.active-facets__button {
  background: rgba(163, 230, 53, 0.12) !important;
  border: 1px solid rgba(163, 230, 53, 0.25) !important;
  color: var(--nogy-green) !important;
  border-radius: var(--nogy-radius-pill) !important;
  font-family: 'Sora', sans-serif !important;
  transition: all var(--nogy-transition) !important;
}

.active-facets__button:hover {
  background: rgba(163, 230, 53, 0.2) !important;
  border-color: var(--nogy-green) !important;
}

/* Sort by select */
.collection-filters__sort .select__select,
.facets__sort select {
  font-family: 'Sora', sans-serif !important;
  color: var(--nogy-white) !important;
}

/* Search input */
.search__input,
.predictive-search__input {
  border-radius: var(--nogy-radius-pill) !important;
}

/* --- Contact page --- */
.contact-form,
.shopify-section:has(.contact-form),
.contact-form [class*="color-"],
.contact-form .gradient {
  background: var(--nogy-purple) !important;
  --color-background: 69, 8, 104 !important;
  --gradient-background: #450868 !important;
  --color-foreground: 255, 255, 255 !important;
  color: var(--nogy-white) !important;
}

.contact-form .section-header,
.contact-form h2,
.contact-form .title {
  font-family: 'DM Serif Display', serif !important;
  color: var(--nogy-white) !important;
}

/* Main page section (title "Contato") */
.main-page-title,
.page-title {
  font-family: 'DM Serif Display', serif;
  color: var(--nogy-white);
}

.shopify-section:has(.main-page-title),
.shopify-section:has(.page-title) {
  background: var(--nogy-purple) !important;
  --color-background: 69, 8, 104 !important;
  --gradient-background: #450868 !important;
  color: var(--nogy-white) !important;
}

/* Contact form fields */
.contact .field__input,
.contact textarea {
  min-height: auto;
}

.contact .field__label {
  color: var(--nogy-text-muted) !important;
}

.contact textarea {
  min-height: 12rem !important;
  border-radius: var(--nogy-radius) !important;
}

/* Form submit buttons */
.contact__button {
  text-align: center !important;
  background: var(--nogy-purple) !important;
}

.form__submit,
.contact__button .button,
.contact__button button {
  background: var(--nogy-green) !important;
  color: var(--nogy-purple-deep) !important;
  font-family: 'Sora', sans-serif !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08rem !important;
  border-radius: var(--nogy-radius-pill) !important;
  border: none !important;
  padding: 1.4rem 3.2rem !important;
  transition: all var(--nogy-transition) !important;
}

.form__submit:hover,
.contact__button:hover,
.contact__button .button:hover,
.contact__button button:hover {
  background: var(--nogy-green-light) !important;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(163, 230, 53, 0.35);
}

/* ============================================
   PRODUCT PAGE — Full Overhaul
   ============================================ */

/* --- Product Gallery --- */
.section-main-product .product__media-wrapper {
  position: relative;
}

.section-main-product .product__media-list .product__media {
  border-radius: 16px;
  overflow: hidden;
  position: relative;
}

.section-main-product .product__media-list .product__media::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 16px;
  border: 1px solid rgba(163, 230, 53, 0.08);
  pointer-events: none;
  z-index: 1;
}

.section-main-product .product__media-list .product__media img {
  border-radius: 16px;
}

/* Thumbnails on desktop */
.section-main-product .thumbnail-list .thumbnail {
  border-radius: 10px;
  overflow: hidden;
  border: 2px solid transparent;
  transition: border-color var(--nogy-transition), box-shadow var(--nogy-transition);
}

.section-main-product .thumbnail-list .thumbnail.is-active,
.section-main-product .thumbnail-list .thumbnail:hover {
  border-color: var(--nogy-green);
  box-shadow: 0 0 12px rgba(163, 230, 53, 0.3);
}

/* --- Product Title & Vendor --- */
.product__title {
  font-family: 'DM Serif Display', serif;
  font-weight: 400;
  font-size: clamp(2.8rem, 4vw, 4.2rem);
  color: var(--nogy-white);
  line-height: 1.15;
}

.product__title h1 {
  font-family: 'DM Serif Display', serif;
  font-weight: 400;
  line-height: 1.15;
}

.section-main-product .caption-with-letter-spacing {
  font-family: 'Sora', sans-serif;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.25rem;
  text-transform: uppercase;
  color: var(--nogy-green);
  background: rgba(163, 230, 53, 0.12);
  display: inline-block;
  padding: 0.4rem 1.2rem;
  border-radius: var(--nogy-radius-pill);
  margin-bottom: 0.8rem;
}

/* --- Price --- */
.section-main-product .price--large .price-item--regular {
  font-family: 'Sora', sans-serif;
  font-size: 2.8rem;
  font-weight: 700;
  color: var(--nogy-white);
}

.section-main-product .price--large .price-item--sale {
  color: var(--nogy-green);
  font-size: 2.8rem;
  font-weight: 700;
}

.section-main-product .price--large .price-item--regular.price-item--last {
  font-size: 1.6rem;
  opacity: 0.5;
  text-decoration: line-through;
}

.section-main-product .price .badge {
  background: var(--nogy-green) !important;
  color: var(--nogy-purple-deep) !important;
  font-family: 'Sora', sans-serif;
  font-weight: 700;
  font-size: 1.1rem;
  padding: 0.3rem 1rem;
  border-radius: var(--nogy-radius-pill);
}

.section-main-product .installment {
  color: var(--nogy-text-muted);
  font-size: 1.2rem;
}

.section-main-product .product__tax {
  color: var(--nogy-text-muted);
}

/* Hide variant picker when product has single variant with value "Único" */
.section-main-product variant-selects fieldset:only-child:has(input[type="radio"]:only-of-type) {
  display: none !important;
}

/* --- Variant Picker (Pills) --- */
.section-main-product .product-form__input--pill .product-form__input-label,
.section-main-product .variant-picker__label,
.section-main-product .product-form__group-label {
  font-family: 'Sora', sans-serif;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1rem;
  font-size: 1.1rem;
  color: var(--nogy-text-light);
  margin-bottom: 0.8rem;
}

.section-main-product .product-form__input input[type="radio"] + label {
  font-family: 'Sora', sans-serif;
  font-weight: 500;
  font-size: 1.3rem;
  padding: 0.9rem 2rem;
  border-radius: var(--nogy-radius-pill);
  border: 2px solid rgba(163, 230, 53, 0.25) !important;
  color: var(--nogy-white);
  background: rgba(163, 230, 53, 0.06);
  transition: all var(--nogy-transition);
  cursor: pointer;
}

.section-main-product .product-form__input input[type="radio"] + label:hover {
  border-color: var(--nogy-green) !important;
  background: rgba(163, 230, 53, 0.12);
}

.section-main-product .product-form__input input[type="radio"]:checked + label,
.section-main-product variant-selects input[type="radio"]:checked + label,
.section-main-product variant-radios input[type="radio"]:checked + label,
.product-form__input input[type="radio"]:checked + label {
  background: var(--nogy-green) !important;
  color: var(--nogy-purple-deep) !important;
  border-color: var(--nogy-green) !important;
  font-weight: 700 !important;
  box-shadow: 0 4px 16px rgba(163, 230, 53, 0.3) !important;
}

/* Select dropdown fallback */
.section-main-product .product-form__input select,
.section-main-product variant-selects select {
  background: rgba(163, 230, 53, 0.06) !important;
  color: var(--nogy-white) !important;
  border: 2px solid rgba(163, 230, 53, 0.25) !important;
  border-radius: var(--nogy-radius-pill) !important;
  font-family: 'Sora', sans-serif !important;
  font-size: 1.3rem !important;
  padding: 0.9rem 2rem !important;
}

/* Swatch inputs (color circles) */
.section-main-product .swatch-input__input:checked + .swatch {
  outline-color: var(--nogy-green);
  outline-offset: 3px;
}

/* --- Quantity Selector --- */
.section-main-product .quantity__label,
.section-main-product .quantity__label .form__label {
  font-family: 'Sora', sans-serif;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1rem;
  font-size: 1.1rem;
  color: var(--nogy-text-light);
}

.section-main-product .quantity {
  border-radius: var(--nogy-radius-pill);
  border: 2px solid rgba(163, 230, 53, 0.25);
  background: rgba(163, 230, 53, 0.06);
  overflow: hidden;
  min-height: 4.8rem;
}

.section-main-product .quantity__input {
  font-family: 'Sora', sans-serif;
  font-weight: 700;
  font-size: 1.5rem;
  color: var(--nogy-white);
  background: transparent;
  border: none;
}

.section-main-product .quantity__button {
  color: var(--nogy-green);
  background: transparent;
  border: none;
  transition: all var(--nogy-transition);
}

.section-main-product .quantity__button:hover {
  background: rgba(163, 230, 53, 0.15);
  color: var(--nogy-green-light);
}

.section-main-product .quantity__button svg,
.section-main-product .quantity__button .svg-wrapper {
  color: var(--nogy-green);
}

/* --- Buy Button (Primary CTA) --- */
.product-form__submit {
  background: var(--nogy-green) !important;
  color: var(--nogy-purple-deep) !important;
  font-family: 'Sora', sans-serif !important;
  font-weight: 700 !important;
  font-size: 1.5rem !important;
  letter-spacing: 0.12rem !important;
  text-transform: uppercase !important;
  border-radius: var(--nogy-radius-pill) !important;
  border: none !important;
  padding: 1.8rem 3.2rem !important;
  transition: all var(--nogy-transition) !important;
  position: relative;
  overflow: hidden;
}

.product-form__submit::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, transparent 40%, rgba(255,255,255,0.2) 50%, transparent 60%);
  transform: translateX(-100%);
  transition: transform 0.6s ease;
}

.product-form__submit:hover::before {
  transform: translateX(100%);
}

.product-form__submit:hover {
  background: var(--nogy-green-light) !important;
  transform: translateY(-3px);
  box-shadow: 0 10px 32px rgba(163, 230, 53, 0.4);
}

.product-form__submit:active {
  transform: translateY(-1px);
  box-shadow: 0 4px 16px rgba(163, 230, 53, 0.3);
}

/* Dynamic checkout buttons (Shop Pay, etc) */
.section-main-product .shopify-payment-button__button {
  border-radius: var(--nogy-radius-pill) !important;
  font-family: 'Sora', sans-serif !important;
  min-height: 5rem;
}

.section-main-product .shopify-payment-button__button--unbranded {
  background: transparent !important;
  border: 2px solid rgba(163, 230, 53, 0.4) !important;
  color: var(--nogy-white) !important;
}

.section-main-product .shopify-payment-button__button--unbranded:hover {
  border-color: var(--nogy-green) !important;
  background: rgba(163, 230, 53, 0.08) !important;
}

/* --- Product Description --- */
.section-main-product .product__description {
  font-family: 'Sora', sans-serif;
  font-size: 1.4rem;
  line-height: 1.9;
  color: var(--nogy-text-light);
  padding: 2rem 0;
  border-top: 1px solid rgba(163, 230, 53, 0.1);
  margin-top: 1.2rem;
}

.section-main-product .product__description h1,
.section-main-product .product__description h2,
.section-main-product .product__description h3 {
  font-family: 'DM Serif Display', serif;
  color: var(--nogy-white);
  margin-bottom: 0.8rem;
}

.section-main-product .product__description ul {
  list-style: none;
  padding: 0;
}

.section-main-product .product__description ul li {
  position: relative;
  padding-left: 2rem;
  margin-bottom: 0.6rem;
}

.section-main-product .product__description ul li::before {
  content: '✦';
  position: absolute;
  left: 0;
  color: var(--nogy-green);
  font-size: 0.8em;
}

/* --- Share Button --- */
.section-main-product .share-button {
  color: var(--nogy-text-muted);
  font-family: 'Sora', sans-serif;
  font-size: 1.2rem;
}

.section-main-product .share-button__button {
  color: var(--nogy-text-muted);
  transition: color var(--nogy-transition);
}

.section-main-product .share-button__button:hover {
  color: var(--nogy-green);
}

/* --- Product Info Container Glass Effect --- */
.section-main-product .product__info-container {
  padding: 2.4rem;
  border-radius: 20px;
  background: rgba(69, 8, 104, 0.5);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(163, 230, 53, 0.08);
}

@media screen and (min-width: 750px) {
  .section-main-product .product__info-container {
    padding: 3.2rem;
  }
}

/* --- Related Products Enhancement --- */
.section-related-products,
.related-products {
  position: relative;
}

.section-related-products .related-products__heading,
.related-products .related-products__heading {
  font-family: 'DM Serif Display', serif !important;
  font-weight: 400;
  font-size: clamp(2.4rem, 3.5vw, 3.6rem);
  color: var(--nogy-white);
  text-align: center;
}

.section-related-products .card-wrapper,
.related-products .card-wrapper {
  border-radius: 16px;
  overflow: hidden;
  background: rgba(92, 14, 138, 0.3);
  border: 1px solid rgba(163, 230, 53, 0.06);
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.section-related-products .card-wrapper:hover,
.related-products .card-wrapper:hover {
  border-color: rgba(163, 230, 53, 0.2);
  transform: translateY(-4px);
  box-shadow: 0 12px 32px rgba(26, 5, 37, 0.4);
}

.section-related-products .card__heading a,
.related-products .card__heading a {
  color: var(--nogy-white) !important;
  font-family: 'Sora', sans-serif;
  font-size: 1.3rem;
  font-weight: 500;
}

.section-related-products .price .money,
.related-products .price .money {
  color: var(--nogy-green) !important;
  font-weight: 700;
}

/* --- Sticky Add-to-Cart (Mobile) --- */
.nogy-sticky-atc {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 999;
  background: rgba(26, 5, 37, 0.95);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border-top: 1px solid rgba(163, 230, 53, 0.15);
  padding: 1rem 1.6rem;
  transform: translateY(100%);
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.nogy-sticky-atc.visible {
  transform: translateY(0);
}

.nogy-sticky-atc__inner {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  max-width: var(--page-width);
  margin: 0 auto;
}

.nogy-sticky-atc__info {
  flex: 1;
  min-width: 0;
}

.nogy-sticky-atc__title {
  font-family: 'Sora', sans-serif;
  font-size: 1.2rem;
  font-weight: 600;
  color: var(--nogy-white);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.nogy-sticky-atc__price {
  font-family: 'Sora', sans-serif;
  font-size: 1.4rem;
  font-weight: 700;
  color: var(--nogy-green);
}

.nogy-sticky-atc__btn {
  flex-shrink: 0;
  background: var(--nogy-green);
  color: var(--nogy-purple-deep);
  font-family: 'Sora', sans-serif;
  font-weight: 700;
  font-size: 1.2rem;
  letter-spacing: 0.08rem;
  text-transform: uppercase;
  padding: 1.2rem 2.4rem;
  border: none;
  border-radius: var(--nogy-radius-pill);
  cursor: pointer;
  transition: all var(--nogy-transition);
}

.nogy-sticky-atc__btn:hover {
  background: var(--nogy-green-light);
  transform: translateY(-1px);
}

@media (max-width: 749px) {
  .nogy-sticky-atc {
    display: block;
  }

  /* Add bottom padding to body so content isn't hidden behind sticky bar */
  body:has(.nogy-sticky-atc.visible) {
    padding-bottom: 7rem;
  }
}

/* --- Product page entrance animations --- */
@media (prefers-reduced-motion: no-preference) {
  .section-main-product .product__media-wrapper {
    animation: nogy-product-slideIn 0.6s cubic-bezier(0.4, 0, 0.2, 1) both;
  }

  .section-main-product .product__info-wrapper {
    animation: nogy-product-slideIn 0.6s cubic-bezier(0.4, 0, 0.2, 1) 0.15s both;
  }

  @keyframes nogy-product-slideIn {
    from {
      opacity: 0;
      transform: translateY(24px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
}

/* --- Cart Drawer --- */
.cart-drawer__overlay {
  background: rgba(26, 5, 37, 0.5);
  backdrop-filter: blur(6px);
}

.cart-drawer {
  border-left: 2px solid var(--nogy-green);
}

/* --- Scrollbar --- */
::-webkit-scrollbar {
  width: 6px;
}

::-webkit-scrollbar-track {
  background: var(--nogy-purple);
}

::-webkit-scrollbar-thumb {
  background: var(--nogy-purple-light);
  border-radius: 3px;
}

::-webkit-scrollbar-thumb:hover {
  background: var(--nogy-green);
}

/* --- Image hover effects --- */
.card .media img {
  transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.card:hover .media img {
  transform: scale(1.04);
}

/* --- Halftone pattern utility --- */
.nogy-halftone::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle, var(--nogy-green) 1px, transparent 1px);
  background-size: 12px 12px;
  opacity: 0.12;
  pointer-events: none;
  z-index: 0;
}

/* --- Sparkle decoration utility --- */
.nogy-sparkle {
  display: inline-block;
  position: relative;
}

.nogy-sparkle::after {
  content: '✦';
  position: absolute;
  top: -0.3em;
  right: -0.6em;
  font-size: 0.5em;
  color: var(--nogy-green);
  animation: nogy-twinkle 2s ease-in-out infinite;
}

@keyframes nogy-twinkle {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.4; transform: scale(0.7); }
}

/* --- Drip SVG animation --- */
@keyframes nogy-drip {
  0% { transform: translateY(-100%); }
  100% { transform: translateY(0); }
}

/* --- Section fade-in animations --- */
@media (prefers-reduced-motion: no-preference) {
  .nogy-hero,
  .nogy-categories,
  .nogy-shop-by-look,
  .nogy-about,
  .nogy-testimonials,
  .nogy-newsletter,
  .nogy-ugc-gallery {
    animation: nogy-fadeInUp 0.7s cubic-bezier(0.4, 0, 0.2, 1) both;
  }

  @keyframes nogy-fadeInUp {
    from {
      opacity: 0;
      transform: translateY(30px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
}

/* --- Menu drawer mobile --- */
.menu-drawer {
  background: var(--nogy-purple-deep) !important;
  color: var(--nogy-white) !important;
}

.menu-drawer a {
  color: var(--nogy-white) !important;
}

.menu-drawer a:hover {
  color: var(--nogy-green) !important;
}

.menu-drawer__close-button {
  color: var(--nogy-white) !important;
}

/* --- Featured Collection / Os Queridinhos --- */
.section-featured-collection,
section.featured-collection,
[class*="shopify-section"] .featured-collection {
  background-image: url('nogy-banner-verde.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-color: var(--nogy-green);
  position: relative;
}

.featured-collection .title-wrapper-with-link .title {
  font-family: 'DM Serif Display', serif !important;
  color: var(--nogy-purple) !important;
  font-size: clamp(2.8rem, 4.5vw, 4.8rem);
}

.featured-collection .view-all a {
  color: var(--nogy-purple) !important;
  font-family: 'Sora', sans-serif;
  font-weight: 600;
}

.featured-collection .view-all a:hover {
  color: var(--nogy-purple-deep) !important;
}

/* Product cards on green bg */
.featured-collection .card-wrapper {
  background: var(--nogy-white);
  border-radius: 16px;
  overflow: hidden;
}

.featured-collection .card__heading a {
  color: var(--nogy-purple) !important;
}

.featured-collection .price .money,
.featured-collection .price-item--regular {
  color: var(--nogy-purple) !important;
}

/* ============================================
   MOBILE GLOBAL FIXES (max-width: 749px)
   ============================================ */
@media (max-width: 749px) {

  /* --- Header --- */
  .header__heading-link img,
  .header__heading-logo {
    max-width: 10rem;
  }

  .header__menu-item span {
    font-size: 1rem;
    letter-spacing: 0.05rem;
  }

  /* --- Announcement bar --- */
  .announcement-bar,
  .announcement-bar__message,
  .announcement-bar__message span,
  .announcement-bar__message.h5 {
    font-size: 1rem !important;
    letter-spacing: 0.05rem;
  }

  /* --- Global typography --- */
  h1, .h1 { font-size: clamp(2.4rem, 6vw, 3.6rem); }
  h2, .h2 { font-size: clamp(2rem, 5vw, 3rem); }
  h3, .h3 { font-size: clamp(1.6rem, 4vw, 2.4rem); }

  /* --- Buttons --- */
  .button,
  .button--primary,
  .product-form__submit {
    font-size: 1.2rem !important;
    padding: 1.2rem 2.4rem !important;
  }

  /* --- Product page --- */
  .section-main-product .product__info-container {
    padding: 1.6rem !important;
    border-radius: 16px;
  }

  .product__title,
  .product__title h1 {
    font-size: 2.4rem !important;
  }

  .section-main-product .price--large .price-item--regular,
  .section-main-product .price--large .price-item--sale {
    font-size: 2.2rem;
  }

  .section-main-product .product__description {
    font-size: 1.3rem;
  }

  .section-main-product .product__media-list .product__media {
    border-radius: 12px;
  }

  /* --- Collection page --- */
  .collection .card-wrapper,
  .main-collection .card-wrapper {
    border-radius: 12px;
  }

  .collection .card__heading a,
  .main-collection .card__heading a {
    font-size: 1.2rem;
  }

  /* --- Testimonials --- */
  .nogy-testimonial {
    padding: 2.4rem;
  }

  .nogy-testimonial__quote {
    font-size: 1.3rem;
  }

  /* --- Form elements on mobile --- */
  input[type="text"],
  input[type="email"],
  input[type="password"],
  input[type="tel"],
  input[type="number"],
  input[type="search"],
  textarea,
  select,
  .field__input,
  .select__select {
    font-size: 1.6rem !important; /* Prevents iOS zoom on focus */
    padding: 1rem 1.2rem !important;
  }

  /* --- Cart drawer mobile --- */
  .cart-drawer {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* --- Menu drawer mobile --- */
  .menu-drawer {
    width: 100% !important;
  }

  .menu-drawer a {
    font-size: 1.6rem;
    padding: 1rem 0;
  }

  /* --- Prevent horizontal overflow --- */
  body {
    overflow-x: hidden;
  }

  .page-width {
    padding-left: 1.6rem;
    padding-right: 1.6rem;
  }

  /* --- Related products mobile --- */
  .section-related-products .card-wrapper,
  .related-products .card-wrapper {
    border-radius: 12px;
  }
}
