/*
 * Glow theme — beauty and cosmetics look: pink and violet accents, blush
 * sections, soft rounded photo panels, add-to-bag buttons, flash sale
 * timer, brand marquee and a deep teal footer.
 * Markup: views/layouts/_header-glow.php, _footer-glow.php,
 * views/site/_home-glow.php, views/site/_product-card-glow.php.
 * Colours follow the theme tokens, so the store editor's colour pickers work.
 */

html[data-theme="glow"] {
    --gl-accent: var(--theme-color-primary, #e61f7f);
    --gl-on-accent: var(--theme-color-text-inverse, #fff);
    --gl-violet: var(--theme-color-secondary, #583fa8);
    --gl-ink: var(--theme-color-text, #303030);
    --gl-muted: var(--theme-color-text-muted, #636363);
    --gl-line: var(--theme-color-border, #e0e0e0);
    --gl-blush: var(--theme-color-surface, #faeff2);
    --gl-photo: #f6f6f6;
    --gl-cream: #f9f3eb;
    --gl-teal: #13282f;
    --gl-r: 10px;
}

html[data-theme="glow"] body { background: var(--theme-color-bg, #fff); }
html[data-theme="glow"] .container { max-width: 1320px; }
html[data-theme="glow"] .sf-main, html[data-theme="glow"] .sf-main:has(.sf-home) { padding-bottom: 0; background: transparent; }
html[data-theme="glow"] h1, html[data-theme="glow"] h2, html[data-theme="glow"] h3 { color: var(--gl-ink); }

/* =================== Header =================== */
html[data-theme="glow"] .gl-header { position: relative; z-index: 1030; background: #fff; }
html[data-theme="glow"] .gl-header[data-sticky="1"] { position: sticky; top: 0; }
html[data-theme="glow"] .gl-header.is-scrolled { box-shadow: 0 8px 30px -14px rgba(48, 48, 48, 0.3); }
html[data-theme="glow"] .gl-topbar { background: var(--gl-blush); font-size: 13px; color: var(--gl-muted); }
html[data-theme="glow"] .gl-topbar-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 40px; }
html[data-theme="glow"] .gl-topbar-start, html[data-theme="glow"] .gl-topbar-end { display: flex; align-items: center; gap: 14px; }
html[data-theme="glow"] .gl-topbar a { color: var(--gl-ink); text-decoration: none; }
html[data-theme="glow"] .gl-topbar a:hover { color: var(--gl-accent); }
html[data-theme="glow"] .gl-topbar i { margin-inline-end: 4px; }
html[data-theme="glow"] .gl-topbar-msg { padding-inline-start: 14px; border-inline-start: 1px solid var(--gl-line); }
html[data-theme="glow"] .gl-topbar-start a + .gl-topbar-msg { margin-inline-start: 2px; }
html[data-theme="glow"] .gl-topbar-start .gl-topbar-msg:first-child { padding: 0; border: 0; }
@media (max-width: 767.98px) { html[data-theme="glow"] .gl-topbar-start a { display: none; } html[data-theme="glow"] .gl-topbar-msg { border: 0; padding: 0; } html[data-theme="glow"] .gl-topbar-end a:first-child { display: none; } }

html[data-theme="glow"] .gl-main-row { display: flex; align-items: center; gap: 32px; min-height: 92px; }
html[data-theme="glow"] .gl-brand img { height: var(--gl-logo-h, 40px); width: auto; display: block; }
html[data-theme="glow"] .gl-icon-btn { border: 0; background: none; padding: 0; font-size: 28px; color: var(--gl-ink); line-height: 1; }
html[data-theme="glow"] .gl-search { flex: 1; max-width: 640px; margin-inline: auto; display: flex; height: 50px; border: 1px solid var(--gl-line); border-radius: 999px; background: #fff; overflow: hidden; transition: border-color 0.2s, box-shadow 0.2s; }
html[data-theme="glow"] .gl-search:focus-within { border-color: var(--gl-accent); box-shadow: 0 0 0 4px color-mix(in srgb, var(--gl-accent) 12%, transparent); }
html[data-theme="glow"] .gl-search input { flex: 1; min-width: 0; border: 0; padding: 0 24px; outline: none; background: transparent; color: var(--gl-ink); }
html[data-theme="glow"] .gl-search button { border: 0; margin: 5px; width: 40px; border-radius: 50%; background: var(--gl-accent); color: var(--gl-on-accent); }
html[data-theme="glow"] .gl-actions { display: flex; align-items: center; gap: 24px; }
html[data-theme="glow"] .gl-action { display: flex; align-items: center; gap: 10px; color: var(--gl-ink); text-decoration: none; }
html[data-theme="glow"] .gl-action:hover { color: var(--gl-accent); }
html[data-theme="glow"] .gl-action-icon { position: relative; width: 46px; height: 46px; border-radius: 50%; background: var(--gl-blush); display: grid; place-items: center; font-size: 20px; color: var(--gl-accent); }
html[data-theme="glow"] .gl-action-icon .sf-cart-badge { position: absolute; top: -3px; inset-inline-end: -3px; min-width: 20px; height: 20px; padding: 0 5px; border-radius: 999px; background: var(--gl-violet); color: #fff; font-size: 11px; font-weight: 600; display: grid; place-items: center; border: 2px solid #fff; box-sizing: content-box; }
html[data-theme="glow"] .gl-action-text { flex-direction: column; line-height: 1.2; }
html[data-theme="glow"] .gl-action-text small { color: var(--gl-muted); font-size: 12px; }
html[data-theme="glow"] .gl-action-text strong { font-weight: 600; font-size: 15px; }

html[data-theme="glow"] .gl-nav { border-top: 1px solid var(--gl-line); border-bottom: 1px solid var(--gl-line); }
html[data-theme="glow"] .gl-nav-row { display: flex; align-items: center; gap: 28px; min-height: 58px; }
html[data-theme="glow"] .gl-cats { position: relative; }
html[data-theme="glow"] .gl-cats-btn { display: flex; align-items: center; gap: 10px; height: 42px; padding: 0 20px; border: 0; border-radius: 6px; background: var(--gl-accent); color: var(--gl-on-accent); font-weight: 500; letter-spacing: 0.2px; }
html[data-theme="glow"] .gl-cats-btn .bi-chevron-down { font-size: 11px; }
html[data-theme="glow"] .gl-cats-panel { display: none; position: absolute; top: calc(100% + 8px); inset-inline-start: 0; width: 560px; padding: 18px; grid-template-columns: repeat(3, 1fr); gap: 6px; background: #fff; border-radius: 14px; box-shadow: 0 24px 50px -20px rgba(48, 48, 48, 0.35); border: 1px solid var(--gl-line); z-index: 6; }
html[data-theme="glow"] .gl-cats.is-open .gl-cats-panel { display: grid; }
html[data-theme="glow"] .gl-cats-panel a { display: flex; align-items: center; gap: 10px; padding: 8px; border-radius: 10px; color: var(--gl-ink); text-decoration: none; font-size: 14px; }
html[data-theme="glow"] .gl-cats-panel a:hover { background: var(--gl-blush); color: var(--gl-accent); }
html[data-theme="glow"] .gl-cats-panel img { width: 40px; height: 40px; object-fit: contain; border-radius: 8px; background: var(--gl-photo); padding: 4px; }
html[data-theme="glow"] .gl-menu { display: flex; flex-wrap: wrap; gap: 4px 30px; margin: 0; padding: 0; list-style: none; }
html[data-theme="glow"] .gl-menu-link { display: block; padding: 6px 0; color: var(--gl-ink); text-decoration: none; font-weight: 500; text-transform: uppercase; font-size: 15px; }
html[data-theme="glow"] .gl-menu-link:hover, html[data-theme="glow"] .gl-menu-link.active { color: var(--gl-accent); }
html[data-theme="glow"] .gl-hotline { margin-inline-start: auto; display: flex; align-items: center; gap: 10px; color: var(--gl-ink); text-decoration: none; }
html[data-theme="glow"] .gl-hotline i { font-size: 28px; color: var(--gl-accent); }
html[data-theme="glow"] .gl-hotline span { display: flex; flex-direction: column; line-height: 1.2; }
html[data-theme="glow"] .gl-hotline strong { font-weight: 600; }
html[data-theme="glow"] .gl-hotline small { font-size: 12px; color: var(--gl-muted); }
@media (max-width: 991.98px) {
    html[data-theme="glow"] .gl-main-row { flex-wrap: wrap; gap: 12px 14px; min-height: 0; padding-block: 12px; }
    html[data-theme="glow"] .gl-brand { margin-inline-end: auto; }
    html[data-theme="glow"] .gl-brand img { height: min(var(--gl-logo-h, 40px), 34px); }
    html[data-theme="glow"] .gl-actions { gap: 10px; }
    html[data-theme="glow"] .gl-action-icon { width: 40px; height: 40px; font-size: 18px; }
    html[data-theme="glow"] .gl-search { order: 5; flex: 1 0 100%; max-width: none; height: 46px; }
    html[data-theme="glow"] .gl-nav { border: 0; }
    html[data-theme="glow"] .gl-nav-row { min-height: 0; }
    html[data-theme="glow"] .gl-offcanvas .gl-menu { flex-direction: column; gap: 0; }
    html[data-theme="glow"] .gl-offcanvas .gl-menu-link { padding: 12px 4px; border-bottom: 1px solid var(--gl-line); }
}

/* =================== Shared =================== */
html[data-theme="glow"] .gl-block { margin-top: 64px; }
html[data-theme="glow"] .gl-head { display: flex; align-items: center; gap: 12px 24px; flex-wrap: wrap; margin-bottom: 26px; }
html[data-theme="glow"] .gl-h2 { margin: 0; font-size: clamp(24px, 2.4vw, 34px); font-weight: 600; text-transform: uppercase; letter-spacing: 0.2px; color: var(--gl-ink); }
html[data-theme="glow"] .gl-more { margin-inline-start: auto; color: var(--gl-ink); font-weight: 500; text-decoration: none; display: inline-flex; gap: 6px; align-items: center; border-bottom: 1px solid currentColor; padding-bottom: 2px; }
html[data-theme="glow"] .gl-more:hover { color: var(--gl-accent); }
html[data-theme="glow"] .gl-sub { margin: -14px 0 22px; color: var(--gl-muted); }
html[data-theme="glow"] .gl-eyebrow { display: inline-block; color: var(--gl-accent); font-weight: 500; text-transform: uppercase; letter-spacing: 1px; font-size: 14px; margin-bottom: 10px; }
html[data-theme="glow"] .gl-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-width: 170px; padding: 15px 26px; border-radius: 5px; border: 1px solid var(--gl-accent); background: var(--gl-accent); color: var(--gl-on-accent); font-weight: 500; text-transform: uppercase; letter-spacing: 0.8px; text-decoration: none; transition: transform 0.3s, box-shadow 0.3s, background 0.3s, color 0.3s; }
html[data-theme="glow"] .gl-btn:hover { transform: translateY(-3px); box-shadow: 0 12px 24px -10px color-mix(in srgb, var(--gl-accent) 70%, transparent); color: var(--gl-on-accent); }
html[data-theme="glow"] .gl-btn.is-outline { background: transparent; color: var(--gl-accent); }
html[data-theme="glow"] .gl-btn.is-outline:hover { background: var(--gl-accent); color: var(--gl-on-accent); }
html[data-theme="glow"] .gl-btn.is-light { background: #fff; border-color: #fff; color: var(--gl-ink); }

/* =================== Hero =================== */
html[data-theme="glow"] .gl-hero-wrap { margin-top: 26px; }
html[data-theme="glow"] .gl-slider { border-radius: 20px; overflow: hidden; }
html[data-theme="glow"] .gl-slide-img { display: block; aspect-ratio: 16 / 6; background-size: cover; background-position: center; }
html[data-theme="glow"] .gl-slider .swiper-pagination-bullet-active { background: var(--gl-accent); }
html[data-theme="glow"] .gl-hero { position: relative; display: grid; grid-template-columns: 1.05fr 1fr; align-items: center; gap: 24px; padding: 60px 70px; border-radius: 24px; background: linear-gradient(120deg, var(--gl-blush), #fff 55%, color-mix(in srgb, var(--gl-violet) 10%, #fff)); overflow: hidden; min-height: 480px; }
html[data-theme="glow"] .gl-hero-text h2 { font-size: clamp(32px, 4.2vw, 58px); font-weight: 700; line-height: 1.15; margin-bottom: 16px; text-transform: uppercase; }
html[data-theme="glow"] .gl-hero-text p { color: var(--gl-muted); font-size: 17px; max-width: 460px; margin-bottom: 30px; }
html[data-theme="glow"] .gl-hero-art { position: relative; height: 360px; }
html[data-theme="glow"] .gl-hero-circle { position: absolute; inset: 0; margin: auto; width: 340px; height: 340px; border-radius: 50%; background: radial-gradient(circle at 30% 30%, #fff, color-mix(in srgb, var(--gl-accent) 18%, #fff)); }
html[data-theme="glow"] .gl-hero-p { position: absolute; object-fit: contain; filter: drop-shadow(0 24px 26px rgba(48, 48, 48, 0.2)); animation: gl-float 6s ease-in-out infinite; }
html[data-theme="glow"] .gl-hero-p.is-0 { width: 250px; height: 250px; inset: 0; margin: auto; }
html[data-theme="glow"] .gl-hero-p.is-1 { width: 130px; height: 130px; top: 0; inset-inline-start: 4%; animation-delay: -2s; }
html[data-theme="glow"] .gl-hero-p.is-2 { width: 120px; height: 120px; bottom: 0; inset-inline-end: 6%; animation-delay: -4s; }
@keyframes gl-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-12px); } }
@media (prefers-reduced-motion: reduce) { html[data-theme="glow"] .gl-hero-p { animation: none; } }
@media (max-width: 991.98px) {
    html[data-theme="glow"] .gl-hero { grid-template-columns: 1fr; padding: 34px 24px; min-height: 0; text-align: center; }
    html[data-theme="glow"] .gl-hero-text p { margin-inline: auto; }
    html[data-theme="glow"] .gl-hero-art { height: 240px; order: -1; }
    html[data-theme="glow"] .gl-hero-circle { width: 220px; height: 220px; }
    html[data-theme="glow"] .gl-hero-p.is-0 { width: 170px; height: 170px; }
    html[data-theme="glow"] .gl-hero-p.is-1, html[data-theme="glow"] .gl-hero-p.is-2 { width: 80px; height: 80px; }
    html[data-theme="glow"] .gl-slide-img { aspect-ratio: 16 / 9; }
}

/* =================== Brand strip =================== */
html[data-theme="glow"] .gl-brands { margin-top: 40px; padding-block: 22px; border-block: 1px solid var(--gl-line); overflow: hidden; }
html[data-theme="glow"] .gl-brands-track { display: flex; width: max-content; animation: gl-marquee 40s linear infinite; }
html[dir="rtl"][data-theme="glow"] .gl-brands-track { animation-name: gl-marquee-rtl; }
html[data-theme="glow"] .gl-brands:hover .gl-brands-track { animation-play-state: paused; }
html[data-theme="glow"] .gl-brands ul { display: flex; gap: 64px; margin: 0; padding: 0 32px; list-style: none; }
html[data-theme="glow"] .gl-brands a { display: flex; align-items: center; gap: 10px; color: var(--gl-muted); text-decoration: none; font-size: 22px; font-weight: 600; text-transform: uppercase; white-space: nowrap; opacity: 0.75; transition: opacity 0.2s, color 0.2s; }
html[data-theme="glow"] .gl-brands a:hover { opacity: 1; color: var(--gl-accent); }
html[data-theme="glow"] .gl-brands img { height: 40px; width: auto; filter: grayscale(1); }
html[data-theme="glow"] .gl-brands a:hover img { filter: none; }
html[data-theme="glow"] .gl-brands i { color: var(--gl-accent); font-size: 18px; }
@keyframes gl-marquee { to { transform: translateX(-50%); } }
@keyframes gl-marquee-rtl { to { transform: translateX(50%); } }
@media (prefers-reduced-motion: reduce) { html[data-theme="glow"] .gl-brands-track { animation: none; } }

/* =================== Product grid & card =================== */
html[data-theme="glow"] .gl-grid { display: grid; grid-template-columns: repeat(var(--gl-cols, 4), minmax(0, 1fr)); gap: 30px 24px; }
html[data-theme="glow"] .gl-grid.is-6 { --gl-cols: 6; gap: 24px 18px; }
@media (max-width: 1199.98px) { html[data-theme="glow"] .gl-grid.is-6 { --gl-cols: 3; } }
@media (max-width: 991.98px) { html[data-theme="glow"] .gl-grid { --gl-cols: 3 !important; } }
@media (max-width: 575.98px) { html[data-theme="glow"] .gl-grid { --gl-cols: 2 !important; gap: 22px 12px !important; } }
html[data-theme="glow"] .gl-card { display: flex; flex-direction: column; }
html[data-theme="glow"] .gl-card-media { position: relative; aspect-ratio: 1 / 1.06; border-radius: var(--gl-r); background: var(--gl-photo); overflow: hidden; }
html[data-theme="glow"] .gl-card-media > a { display: block; height: 100%; padding: 14%; }
html[data-theme="glow"] .gl-card-media img { width: 100%; height: 100%; object-fit: contain; transition: transform 0.45s ease; }
html[data-theme="glow"] .gl-card:hover .gl-card-media img { transform: scale(1.07); }
html[data-theme="glow"] .gl-card-flags { position: absolute; top: 12px; inset-inline-start: 12px; display: flex; flex-direction: column; align-items: flex-start; gap: 5px; }
html[data-theme="glow"] .gl-flag { padding: 4px 10px; border-radius: 4px; background: var(--gl-accent); color: var(--gl-on-accent); font-size: 12px; font-weight: 500; letter-spacing: 0.3px; }
html[data-theme="glow"] .gl-flag.is-dark { background: var(--gl-violet); }
html[data-theme="glow"] .gl-flag.is-muted { background: #8a8a8a; }
html[data-theme="glow"] .gl-add { position: absolute; inset-inline: 12px; bottom: 12px; display: flex; align-items: center; justify-content: center; gap: 8px; height: 42px; border: 0; border-radius: 5px; background: var(--gl-ink); color: #fff; font-size: 14px; font-weight: 500; text-transform: uppercase; letter-spacing: 0.4px; transform: translateY(8px); opacity: 0; transition: opacity 0.3s, transform 0.3s, background 0.2s; }
html[data-theme="glow"] .gl-card:hover .gl-add, html[data-theme="glow"] .gl-add:focus-visible { opacity: 1; transform: none; }
html[data-theme="glow"] .gl-add:hover { background: var(--gl-accent); }
@media (hover: none) { html[data-theme="glow"] .gl-add { opacity: 1; transform: none; height: 36px; font-size: 12px; inset-inline: 8px; bottom: 8px; } }
html[data-theme="glow"] .gl-card-body { padding-top: 14px; display: flex; flex-direction: column; gap: 4px; }
html[data-theme="glow"] .gl-card-cat { font-size: 12px; text-transform: uppercase; letter-spacing: 0.8px; color: var(--gl-accent); font-weight: 500; }
html[data-theme="glow"] .gl-card-title { margin: 0; font-size: 16px; font-weight: 500; line-height: 1.4; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
html[data-theme="glow"] .gl-card-title a { color: var(--gl-ink); text-decoration: none; }
html[data-theme="glow"] .gl-card-title a:hover { color: var(--gl-accent); }
html[data-theme="glow"] .gl-card-rating { font-size: 13px; color: var(--gl-muted); display: inline-flex; gap: 5px; align-items: center; }
html[data-theme="glow"] .gl-card-rating i { color: #f5a623; font-size: 12px; }
html[data-theme="glow"] .gl-card-price { display: flex; align-items: baseline; gap: 10px; justify-content: flex-end; flex-direction: row-reverse; }
html[data-theme="glow"] .gl-now { font-size: 18px; font-weight: 600; color: var(--gl-ink); }
html[data-theme="glow"] .gl-now small { font-size: 12px; font-weight: 500; }
html[data-theme="glow"] .gl-was { color: var(--gl-muted); font-size: 14px; }
html[data-theme="glow"] .gl-card-stock { font-size: 12px; color: var(--gl-violet); font-weight: 500; }
html[data-theme="glow"] .gl-card.is-out { opacity: 0.65; }

/* =================== Flash sale timer =================== */
html[data-theme="glow"] .gl-timer { display: flex; align-items: center; gap: 12px; padding: 6px 6px 6px 16px; border-radius: 999px; background: var(--gl-blush); }
html[dir="rtl"][data-theme="glow"] .gl-timer { padding: 6px 16px 6px 6px; }
html[data-theme="glow"] .gl-timer > span { color: var(--gl-accent); font-weight: 500; }
html[data-theme="glow"] .gl-countdown { display: flex; align-items: center; gap: 4px; }
html[data-theme="glow"] .gl-countdown b { min-width: 38px; height: 34px; display: grid; place-items: center; border-radius: 999px; background: var(--gl-accent); color: var(--gl-on-accent); font-weight: 600; }
html[data-theme="glow"] .gl-countdown i { font-style: normal; color: var(--gl-accent); font-weight: 700; }

/* =================== Trending banner =================== */
html[data-theme="glow"] .gl-trend { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 50px 70px; border-radius: 24px; background: linear-gradient(110deg, var(--gl-violet), color-mix(in srgb, var(--gl-violet) 55%, var(--gl-accent))); color: #fff; text-decoration: none; overflow: hidden; }
html[data-theme="glow"] .gl-trend::after { content: ""; position: absolute; width: 420px; height: 420px; border-radius: 50%; background: rgba(255, 255, 255, 0.08); inset-inline-end: -60px; top: -120px; }
html[data-theme="glow"] .gl-trend-text { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
html[data-theme="glow"] .gl-trend small { text-transform: uppercase; letter-spacing: 1.5px; opacity: 0.85; }
html[data-theme="glow"] .gl-trend strong { font-size: clamp(26px, 3vw, 42px); line-height: 1.15; font-weight: 700; max-width: 560px; }
html[data-theme="glow"] .gl-trend em { font-style: normal; opacity: 0.9; margin-bottom: 10px; }
html[data-theme="glow"] .gl-trend img { position: relative; z-index: 1; width: 260px; height: 220px; object-fit: contain; filter: drop-shadow(0 20px 26px rgba(0, 0, 0, 0.3)); transition: transform 0.4s; }
html[data-theme="glow"] .gl-trend:hover { color: #fff; }
html[data-theme="glow"] .gl-trend:hover img { transform: rotate(-6deg) scale(1.05); }
@media (max-width: 767.98px) { html[data-theme="glow"] .gl-trend { flex-direction: column-reverse; padding: 30px 24px; text-align: center; } html[data-theme="glow"] .gl-trend-text { align-items: center; } html[data-theme="glow"] .gl-trend img { width: 160px; height: 150px; } }

/* =================== Promo cards =================== */
html[data-theme="glow"] .gl-promos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
html[data-theme="glow"] .gl-promo { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 200px; padding: 30px; border-radius: 16px; color: var(--gl-ink); text-decoration: none; overflow: hidden; }
html[data-theme="glow"] .gl-promo.is-pink { background: var(--gl-blush); }
html[data-theme="glow"] .gl-promo.is-cream { background: var(--gl-cream); }
html[data-theme="glow"] .gl-promo.is-violet { background: color-mix(in srgb, var(--gl-violet) 12%, #fff); }
html[data-theme="glow"] .gl-promo span { display: flex; flex-direction: column; gap: 6px; }
html[data-theme="glow"] .gl-promo small { color: var(--gl-accent); text-transform: uppercase; letter-spacing: 1px; font-weight: 500; font-size: 13px; }
html[data-theme="glow"] .gl-promo strong { font-size: 24px; font-weight: 700; line-height: 1.2; }
html[data-theme="glow"] .gl-promo em { font-style: normal; font-weight: 500; margin-top: 8px; display: inline-flex; gap: 6px; align-items: center; }
html[data-theme="glow"] .gl-promo img { width: 120px; height: 120px; object-fit: contain; flex: 0 0 auto; transition: transform 0.4s; }
html[data-theme="glow"] .gl-promo:hover { color: var(--gl-ink); }
html[data-theme="glow"] .gl-promo:hover img { transform: scale(1.1) rotate(4deg); }
@media (max-width: 991.98px) { html[data-theme="glow"] .gl-promos { grid-template-columns: 1fr; gap: 14px; } html[data-theme="glow"] .gl-promo { min-height: 150px; padding: 22px; } html[data-theme="glow"] .gl-promo img { width: 96px; height: 96px; } }

/* =================== Features =================== */
html[data-theme="glow"] .gl-features { display: grid; grid-template-columns: repeat(5, 1fr); gap: 20px; margin: 0; padding: 40px 30px; list-style: none; border-radius: 20px; background: var(--gl-blush); }
html[data-theme="glow"] .gl-features li { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 6px; }
html[data-theme="glow"] .gl-features span { width: 70px; height: 70px; border-radius: 50%; background: #fff; display: grid; place-items: center; font-size: 28px; color: var(--gl-accent); margin-bottom: 8px; box-shadow: 0 10px 22px -12px color-mix(in srgb, var(--gl-accent) 60%, transparent); }
html[data-theme="glow"] .gl-features strong { font-weight: 600; }
html[data-theme="glow"] .gl-features small { color: var(--gl-muted); font-size: 13px; }
@media (max-width: 991.98px) { html[data-theme="glow"] .gl-features { grid-template-columns: repeat(2, 1fr); padding: 26px 16px; } html[data-theme="glow"] .gl-features li:last-child { grid-column: 1 / -1; } }

/* =================== Categories =================== */
html[data-theme="glow"] .gl-cat-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 24px 16px; margin: 0; padding: 0; list-style: none; }
html[data-theme="glow"] .gl-cat-list a { display: flex; flex-direction: column; align-items: center; gap: 12px; color: var(--gl-ink); text-decoration: none; font-weight: 500; text-align: center; }
html[data-theme="glow"] .gl-cat-list span { width: 130px; height: 130px; border-radius: 50%; background: var(--gl-blush); display: grid; place-items: center; transition: box-shadow 0.3s, transform 0.3s; }
html[data-theme="glow"] .gl-cat-list img { width: 62%; height: 62%; object-fit: contain; }
html[data-theme="glow"] .gl-cat-list a:hover { color: var(--gl-accent); }
html[data-theme="glow"] .gl-cat-list a:hover span { box-shadow: 0 0 0 3px var(--gl-accent); transform: translateY(-4px); }
@media (max-width: 575.98px) { html[data-theme="glow"] .gl-cat-list { grid-template-columns: repeat(3, 1fr); gap: 16px 8px; } html[data-theme="glow"] .gl-cat-list span { width: 90px; height: 90px; } html[data-theme="glow"] .gl-cat-list a { font-size: 13px; } }

/* =================== FAQ =================== */
html[data-theme="glow"] .gl-faq { display: grid; grid-template-columns: 0.8fr 1.2fr; gap: 50px; align-items: start; }
html[data-theme="glow"] .gl-faq-intro p { color: var(--gl-muted); margin: 14px 0 24px; }
html[data-theme="glow"] .gl-accordion .accordion-item { border: 1px solid var(--gl-line); border-radius: 8px !important; margin-bottom: 12px; overflow: hidden; }
html[data-theme="glow"] .gl-accordion .accordion-button { font-weight: 500; color: var(--gl-ink); background: #fff; box-shadow: none; }
html[data-theme="glow"] .gl-accordion .accordion-button:not(.collapsed) { color: var(--gl-accent); background: var(--gl-blush); }
html[data-theme="glow"] .gl-accordion .accordion-body { color: var(--gl-muted); }
@media (max-width: 991.98px) { html[data-theme="glow"] .gl-faq { grid-template-columns: 1fr; gap: 20px; } }

/* =================== Newsletter =================== */
html[data-theme="glow"] .gl-news { display: flex; align-items: center; justify-content: space-between; gap: 24px 40px; flex-wrap: wrap; padding: 48px 56px; border-radius: 24px; background: var(--gl-cream); }
html[data-theme="glow"] .gl-news p { color: var(--gl-muted); margin: 8px 0 0; max-width: 520px; }
html[data-theme="glow"] .gl-news-form { display: flex; gap: 10px; flex: 1 1 420px; max-width: 560px; }
html[data-theme="glow"] .gl-news-form input { flex: 1; min-width: 0; height: 54px; padding: 0 20px; border: 1px solid var(--gl-line); border-radius: 5px; background: #fff; outline: none; }
html[data-theme="glow"] .gl-news-form input:focus { border-color: var(--gl-accent); }
html[data-theme="glow"] .gl-news-form .gl-btn { min-width: 0; }
@media (max-width: 575.98px) { html[data-theme="glow"] .gl-news { padding: 30px 20px; } html[data-theme="glow"] .gl-news-form { flex-direction: column; } }

/* =================== Footer =================== */
html[data-theme="glow"] .gl-footer { margin-top: 80px; background: var(--gl-teal); color: rgba(255, 255, 255, 0.72); }
html[data-theme="glow"] .gl-foot-grid { display: grid; grid-template-columns: 1.4fr repeat(4, 1fr); gap: 32px; padding-block: 70px 50px; }
html[data-theme="glow"] .gl-footer h3 { color: #fff; font-size: 17px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.4px; margin-bottom: 20px; }
html[data-theme="glow"] .gl-footer ul { list-style: none; margin: 0; padding: 0; }
html[data-theme="glow"] .gl-footer li { margin-bottom: 11px; font-size: 15px; }
html[data-theme="glow"] .gl-footer a { color: rgba(255, 255, 255, 0.72); text-decoration: none; }
html[data-theme="glow"] .gl-footer a:hover { color: var(--gl-accent); }
html[data-theme="glow"] .gl-foot-logo { display: inline-block; padding: 10px 16px; border-radius: 10px; background: #fff; margin-bottom: 26px; }
html[data-theme="glow"] .gl-foot-logo img { height: 36px; width: auto; display: block; }
html[data-theme="glow"] .gl-foot-brand li { display: flex; gap: 10px; align-items: flex-start; }
html[data-theme="glow"] .gl-foot-brand li i, html[data-theme="glow"] .gl-foot-perks i { color: var(--gl-accent); }
html[data-theme="glow"] .gl-foot-perks li { display: flex; gap: 10px; }
html[data-theme="glow"] .gl-foot-social { display: flex; gap: 10px; margin-top: 18px; }
html[data-theme="glow"] .gl-social-btn { width: 38px; height: 38px; border-radius: 50%; border: 1px solid rgba(255, 255, 255, 0.25); display: grid; place-items: center; color: #fff; }
html[data-theme="glow"] .gl-social-btn:hover { background: var(--gl-accent); border-color: var(--gl-accent); color: #fff; }
html[data-theme="glow"] .gl-foot-bottom { border-top: 1px solid rgba(255, 255, 255, 0.12); font-size: 14px; }
html[data-theme="glow"] .gl-foot-bottom-row { display: flex; justify-content: space-between; gap: 12px 24px; flex-wrap: wrap; padding-block: 20px; }
html[data-theme="glow"] .gl-foot-bottom nav { display: flex; gap: 20px; flex-wrap: wrap; }
@media (max-width: 991.98px) { html[data-theme="glow"] .gl-foot-grid { grid-template-columns: 1fr 1fr; padding-block: 44px 30px; } html[data-theme="glow"] .gl-foot-brand { grid-column: 1 / -1; } }
