:root {
            --gold: #d4af37;
            --light-pink: #dad5d7f8;
            --beige: #f5f0e6;
            --text: #222;
        }

        body {
            font-family: 'Poppins', sans-serif;
            background: var(--light-pink);
        }

        /* ============ Ad Banner ============ */
        .ad-banner {
            background: --light-pink;
            color: --gold;
            padding: 4px 0;
            overflow: hidden;
            position: relative;
            white-space: nowrap;
        }

        .ad-text {
            display: inline-block;
            padding-left: 100%;
            animation: scroll-left 12s linear infinite;
            font-weight: 600;
            font-size: 15px;
            letter-spacing: .5px;
        }

        @keyframes scroll-left {
            0% {
                transform: translateX(0)
            }

            100% {
                transform: translateX(-100%)
            }
        }

        /* ============ Navbar ============ */
        .site-nav {
            transition: background-color .25s ease, box-shadow .25s ease;
            background: transparent;
            position: relative;
            z-index: 1040;
        }

        /* Desktop hover bg */
        @media (min-width:992px) {
            .site-nav:hover {
                background: var(--light-pink);
                box-shadow: 0 2px 12px rgba(0, 0, 0, .06);
            }
        }

        /* Mobile/tablet bg */
        @media (max-width:991.98px) {
            .site-nav {
                background: var(--beige) !important;
            }
        }

        .brand {
            font-family: 'Great Vibes', cursive;
            font-size: clamp(24px, 3vw, 36px);
            color: var(--gold);
            white-space: nowrap;
            line-height: 1;
            text-decoration: none;
            user-select: none;
        }

        .nav-links a {
            color: var(--text);
            text-decoration: none;
            font-weight: 500;
            padding: .25rem .6rem;
        }

        .nav-links a:hover {
            text-decoration: underline;
        }

        .icon-btn {
            border: 0;
            background: transparent;
            padding: .375rem .5rem;
            font-size: 1.15rem;
            color: var(--text);
        }

        .icon-btn:hover {
            opacity: .8;
        }

        /* Burger (two lines) */
        .burger {
            width: 26px;
            height: 18px;
            position: relative;
            border: 0;
            background: transparent;
            padding: 0;
        }

        .burger span {
            position: absolute;
            left: 0;
            right: 0;
            height: 2px;
            background: #000;
            border-radius: 2px;
            transition: transform .25s ease;
        }

        .burger span:nth-child(1) {
            top: 4px;
        }

        .burger span:nth-child(2) {
            bottom: 4px;
        }

        /* Search */
        .search-wrap {
            min-width: 210px;
        }

        .form-control.search {
            border-radius: 999px;
            border: 1px solid #ccc;
            padding-left: 12px;
            height: 36px;
        }

        .form-control.search::placeholder {
            color: #777;
        }

        /* Desktop: white UI over hero; revert on hover for contrast */
        @media (min-width:992px) {

            .site-nav .nav-links a,
            .site-nav .icon-btn {
                color: #fff;
            }

            .site-nav .burger span {
                background: #fff;
            }

            .site-nav .form-control.search {
                background: rgba(255, 255, 255, .12);
                border-color: rgba(255, 255, 255, .4);
                color: #fff;
            }

            .site-nav .form-control.search::placeholder {
                color: #eee;
            }

            .site-nav:hover .nav-links a,
            .site-nav:hover .icon-btn {
                color: var(--text);
            }

            .site-nav:hover .burger span {
                background: #000;
            }

            .site-nav:hover .form-control.search {
                background: #fff;
                border-color: #ccc;
                color: #111;
            }

            .site-nav:hover .form-control.search::placeholder {
                color: #777;
            }
        }

        .left-stack {
            gap: .75rem;
        }

        .nav-links {
            gap: .25rem;
        }

        .right-stack {
            gap: .25rem;
        }

        .site-nav .container {
            padding-top: .4rem;
            padding-bottom: .4rem;
        }

        /* Offcanvas Sidebar */
        .custom-offcanvas {
            width: min(86vw, 360px);
            border: none;
            background: var(--light-pink);
        }

        @media (min-width:992px) {
            .custom-offcanvas {
                background: #fff;
            }
        }

        .offcanvas-nav a {
            color: #111;
            text-decoration: none;
            display: block;
            padding: .75rem 0;
            font-weight: 500;
            border-bottom: 1px solid rgba(0, 0, 0, .06);
        }

        .offcanvas-header .btn-close {
            box-shadow: none;
        }

        /* ============ Hero Video ============ */
        .ad-banner,
        .site-nav,
        .hero-video {
            margin-top: 0;
        }

        .hero-video {
            position: relative;
            isolation: isolate;
        }

        .hero-video__wrap {
            position: relative;
            width: 100%;
            aspect-ratio: 16/9;
            max-height: 100vh;
            min-height: 60vh;
        }

        @media (min-width:992px) {
            .hero-video__wrap {
                min-height: 85vh;
            }
        }

        .hero-video__media {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
        }

        .hero-video__overlay {
            position: absolute;
            inset: 0;
            background: radial-gradient(120% 120% at 50% 60%, rgba(0, 0, 0, .10) 0%, rgba(0, 0, 0, .45) 60%, rgba(0, 0, 0, .55) 100%);
            pointer-events: none;
        }

        .hero-video__content {
            position: absolute;
            inset: 0;
            display: grid;
            place-items: center;
            padding: clamp(16px, 3vw, 40px);
            text-align: center;
        }

        .hero-title {
            font-family: "Playfair Display", ui-serif, Georgia, serif;
            font-weight: 700;
            letter-spacing: .3px;
            font-size: clamp(28px, 5vw, 64px);
            color: #fff;
            margin: 0 0 .35rem;
        }

        .hero-subtitle {
            font-family: "Poppins", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
            font-weight: 400;
            color: #f7f7f7;
            opacity: .92;
            font-size: clamp(14px, 2.2vw, 22px);
            margin-bottom: 1.25rem;
        }

        .btn-elite {
            border-radius: 999px;
            padding: .65rem 1.4rem;
            border: 1px solid var(--gold);
            color: #f5f0e6;
            background: rgba(0, 0, 0, .25);
            backdrop-filter: blur(4px);
            text-decoration: none;
            font-weight: 500;
            transition: transform .2s ease, background .2s ease, color .2s ease;
        }

        .btn-elite:hover {
            background: var(--gold);
            color: #111;
            transform: translateY(-1px);
        }

        @media (prefers-reduced-motion:reduce) {
            .hero-video__media {
                animation: none;
            }
        }

        /* ============ 3-Video Strip ============ */
        .video-strip .video-tile {
            position: relative;
            width: 100%;
            aspect-ratio: 1/1;
            overflow: hidden;
        }

        .video-strip .video-media {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .video-name {
            display: block;
            text-align: center;
            padding: 10px 8px;
            text-decoration: none;
            color: #111;
            font-weight: 500;
            letter-spacing: .2px;
        }

        .video-name:hover {
            text-decoration: underline;
        }

        @media (max-width:420px) {
            .video-name {
                padding: 8px 6px;
                font-size: 14px;
            }
        }

        /* ============ Banner ============ */
        .aa-banner {
            position: relative;
            width: 100%;
            aspect-ratio: 21/9;
            min-height: 45vh;
            max-height: 88vh;
            overflow: hidden;
        }

        @media (min-width:992px) {
            .aa-banner {
                min-height: 60vh;
            }
        }

        .aa-banner__media {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
            display: block;
        }

        .aa-banner__overlay {
            position: absolute;
            inset: 0;
            background: linear-gradient(to bottom, rgba(0, 0, 0, .15) 0%, rgba(0, 0, 0, .35) 100%);
            pointer-events: none;
        }

        .aa-banner__content {
            position: absolute;
            inset: 0;
            display: grid;
            place-items: center;
            padding: clamp(14px, 3vw, 40px);
            text-align: center;
        }

        .aa-banner__title {
            color: #fff;
            margin: 0 0 .75rem;
            font-family: "Playfair Display", ui-serif, Georgia, serif;
            font-size: clamp(22px, 4.5vw, 54px);
            letter-spacing: .25px;
            font-weight: 700;
        }

        .aa-banner__cta {
            display: inline-block;
            border: 1px solid var(--gold);
            color: #111;
            background: var(--gold);
            border-radius: 999px;
            padding: .55rem 1.25rem;
            text-decoration: none;
            font-weight: 500;
            transition: transform .2s ease, background .2s ease;
        }

        .aa-banner__cta:hover {
            transform: translateY(-1px);
        }

        /* ============ Feature Section (Heading + 2 Cards, mobile slider) ============ */
        .collection-section {
            background: #fff;
        }

        .circle-link {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 42px;
            height: 42px;
            border-radius: 50%;
            border: 1px solid var(--gold);
            color: #111;
            text-decoration: none;
            transition: background .2s ease, transform .2s ease;
        }

        .circle-link:hover {
            background: var(--gold);
            color: #111;
            transform: translateY(-1px);
        }

        .product-card {
            border: 1px solid #eee;
            border-radius: 14px;
            overflow: hidden;
            background: #fff;
            transition: box-shadow .2s ease, transform .2s ease;
        }

        .product-card:hover {
            box-shadow: 0 10px 26px rgba(0, 0, 0, .08);
            transform: translateY(-2px);
        }

        .media-wrap {
            position: relative;
            aspect-ratio: 4/5;
            background: #f7f7f7;
            overflow: hidden;
        }

        .media-wrap img {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
            transition: transform .5s ease;
        }

        .product-card:hover .media-wrap img {
            transform: scale(1.03);
        }

        .wish-btn {
            position: absolute;
            top: 10px;
            right: 10px;
            border: 0;
            background: #fff;
            width: 38px;
            height: 38px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            box-shadow: 0 4px 10px rgba(0, 0, 0, .08);
            color: #111;
        }

        .wish-btn i {
            font-size: 1.1rem;
        }

        .wish-btn.active i {
            color: #e63946;
        }

        .btn-cart {
            border: none;
            background: var(--gold);
            color: #111;
            font-weight: 500;
            border-radius: 999px;
            padding: .45rem 1.2rem;
            font-size: .9rem;
            transition: background .2s ease, transform .2s ease;
        }

        .btn-cart:hover {
            background: #c9a532;
            transform: translateY(-1px);
        }

        /* Always transparent by default (all breakpoints) */
        .site-nav {
            background: transparent !important;
            box-shadow: none !important;
        }

        /* Default menu over hero: white UI */
        .site-nav .nav-links a,
        .site-nav .icon-btn {
            color: #fff !important;
        }

        .site-nav .burger span {
            background: #fff !important;
        }

        /* Search input (when visible) on transparent bg */
        .site-nav .form-control.search {
            background: rgba(255, 255, 255, .12);
            border-color: rgba(255, 255, 255, .4);
            color: #fff;
        }

        .site-nav .form-control.search::placeholder {
            color: #eee;
        }

        /* On hover: show light pink + switch menu to black */
        .site-nav:hover {
            background: var(--light-pink) !important;
            box-shadow: 0 2px 12px rgba(0, 0, 0, .06);
        }

        .site-nav:hover .nav-links a,
        .site-nav:hover .icon-btn {
            color: var(--text) !important;
        }

        .site-nav:hover .burger span {
            background: #000 !important;
        }

        .site-nav:hover .form-control.search {
            background: #fff;
            border-color: #ccc;
            color: #111;
        }

        .site-nav:hover .form-control.search::placeholder {
            color: #777;
        }

        /* ── 1) Define a fixed ad height so we can offset the nav */
        :root {
            --ad-h: 36px;
        }

        /* Make the ad banner a fixed height (no variable padding), so the nav can sit just below it */
        .ad-banner {
            height: var(--ad-h) !important;
            padding: 0 !important;
            display: grid !important;
            place-items: center !important;
        }

        /* ── 2) Overlay the navbar below the ad and keep it fully transparent by default */
        .site-nav {
            position: absolute !important;
            top: var(--ad-h) !important;
            left: 0;
            right: 0;
            background: transparent !important;
            box-shadow: none !important;
            z-index: 1040;
        }

        /* Kill the old mobile beige background (if any previous rule set it) */
        @media (max-width: 991.98px) {
            .site-nav {
                background: transparent !important;
            }
        }

        /* Default menu (over video): white UI */
        .site-nav .nav-links a,
        .site-nav .icon-btn {
            color: #fff !important;
        }

        .site-nav .burger span {
            background: #fff !important;
        }

        .site-nav .form-control.search {
            background: rgba(255, 255, 255, .12);
            border-color: rgba(255, 255, 255, .4);
            color: #fff;
        }

        .site-nav .form-control.search::placeholder {
            color: #eee;
        }

        /* ── 3) On hover (desktop): light pink bg + black menu */
        @media (hover:hover) {
            .site-nav:hover {
                background: var(--light-pink) !important;
                box-shadow: 0 2px 12px rgba(0, 0, 0, .06);
            }

            .site-nav:hover .nav-links a,
            .site-nav:hover .icon-btn {
                color: var(--text) !important;
            }

            .site-nav:hover .burger span {
                background: #000 !important;
            }

            .site-nav:hover .form-control.search {
                background: #fff;
                border-color: #ccc;
                color: #111;
            }

            .site-nav:hover .form-control.search::placeholder {
                color: #777;
            }
        }

        /* Ensure the hero touches the top (no stray gaps) */
        .hero-video {
            margin-top: 0 !important;
            padding-top: 0 !important;
        }

        .blog-section {
            background: var(--light-pink);
        }

        .blog-title {
            font-family: "Playfair Display", ui-serif, Georgia, serif;
            font-weight: 700;
            font-size: clamp(22px, 3.2vw, 36px);
            letter-spacing: .2px;
            color: #111;
        }

        .blog-desc {
            font-size: clamp(14px, 1.6vw, 16px);
        }

        .blog-readmore {
            display: inline-flex;
            align-items: center;
            gap: 4px;
            text-decoration: none;
            font-weight: 600;
            color: var(--gold);
            border-bottom: 1px solid transparent;
            padding-bottom: 2px;
            transition: border-color .2s ease, transform .2s ease;
        }

        .blog-readmore:hover {
            border-color: var(--gold);
            transform: translateY(-1px);
        }

        /* Media container scales with screen */
        .blog-media {
            border-radius: 16px;
            overflow: hidden;
            aspect-ratio: 1 / 1;
            /* responsive height */
            background: #f7f7f7;
        }

        .blog-img {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
            display: block;
            transition: transform .5s ease;
        }

        .blog-media:hover .blog-img {
            transform: scale(1.02);
        }

        /* Circular arrows */
        .blog-nav {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            width: 44px;
            height: 44px;
            border-radius: 50%;
            border: 1px solid var(--gold);
            background: rgba(255, 255, 255, .7);
            backdrop-filter: blur(3px);
            display: flex;
            align-items: center;
            justify-content: center;
            color: #111;
            transition: background .2s ease, transform .2s ease;
        }

        .blog-prev {
            left: 12px;
        }

        .blog-next {
            right: 12px;
        }

        .blog-nav:hover {
            background: var(--gold);
            transform: translateY(-50%) translateY(-1px);
        }

        .blog-nav i {
            font-size: 1.1rem;
        }

        /* Small screens: text on top, image below (already handled by order) */
        @media (max-width: 575.98px) {
            .blog-media {
                aspect-ratio: 4 / 5;
            }

            /* taller for mobile */
        }

        /* ===== Product Spotlight ===== */
        .product-spotlight {
            background: #000;
        }

        /* safe base behind the image */

        .spotlight__wrap {
            position: relative;
            width: 100%;
            aspect-ratio: 16 / 9;
            /* responsive height */
            min-height: 55vh;
            /* presence on small screens */
            max-height: 90vh;
            /* don’t get too tall on huge screens */
            overflow: hidden;
        }

        @media (min-width: 992px) {
            .spotlight__wrap {
                min-height: 70vh;
            }
        }

        /* Full-bleed media */
        .spotlight__media {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
            display: block;
        }

        /* Gentle gradient (left->right) so copy reads on any image */
        .spotlight__overlay {
            position: absolute;
            inset: 0;
            background:
                linear-gradient(90deg, rgba(0, 0, 0, .55) 0%, rgba(0, 0, 0, .35) 35%, rgba(0, 0, 0, .15) 65%, rgba(0, 0, 0, .05) 100%);
            pointer-events: none;
        }

        /* Content block */
        .spotlight__content {
            position: absolute;
            inset: 0;
            display: grid;
            align-items: center;
            padding: clamp(16px, 3vw, 48px);
        }

        .spotlight__card {
            max-width: 560px;
            color: #fff;
        }

        .spotlight__eyebrow {
            display: inline-block;
            font-size: 12px;
            letter-spacing: .22em;
            text-transform: uppercase;
            opacity: .9;
            margin-bottom: .5rem;
        }

        .spotlight__title {
            font-family: "Playfair Display", ui-serif, Georgia, serif;
            font-weight: 700;
            font-size: clamp(24px, 5vw, 56px);
            line-height: 1.08;
            margin: 0 0 .4rem;
        }

        .spotlight__desc {
            font-size: clamp(14px, 1.9vw, 16px);
            color: #f3f3f3;
            opacity: .92;
            margin: 0 0 1.1rem;
        }

        .spotlight__price {
            font-weight: 600;
            color: #fff;
        }

        /* Secondary link next to the golden CTA */
        .spotlight__link {
            text-decoration: none;
            font-weight: 600;
            color: var(--gold);
            border-bottom: 1px solid transparent;
            padding-bottom: 2px;
            transition: border-color .2s ease, transform .2s ease;
        }

        .spotlight__link:hover {
            border-color: var(--gold);
            transform: translateY(-1px);
        }

        /* Self-Care Simplified */
        .selfcare-section {
            background: var(--light-pink);
        }

        .sc-title {
            font-family: "Playfair Display", ui-serif, Georgia, serif;
            font-weight: 700;
            font-size: clamp(22px, 4vw, 44px);
            letter-spacing: .3px;
            margin: 0;
            color: #111;
        }

        .sc-item {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: .6rem;
            padding: 16px 18px;
            border: 1px solid rgba(0, 0, 0, .08);
            border-radius: 14px;
            background: rgba(255, 255, 255, .55);
            backdrop-filter: blur(2px);
            text-transform: uppercase;
            font-weight: 600;
            letter-spacing: .06em;
            color: #111;
            min-height: 64px;
        }

        .sc-item i {
            font-size: 1.1rem;
            color: var(--gold);
            transform: translateY(-1px);
        }

        /* Subtle hover for desktop */
        @media (hover:hover) {
            .sc-item {
                transition: transform .18s ease, box-shadow .18s ease;
            }

            .sc-item:hover {
                transform: translateY(-2px);
                box-shadow: 0 10px 26px rgba(0, 0, 0, .06);
            }
        }

        /* Make Self-Care section text golden */
        .selfcare-section .sc-title {
            color: var(--gold) !important;
        }

        .selfcare-section .sc-item {
            color: var(--gold) !important;
            /* badge text */
        }

        /* Keep the check icon golden as well (already gold, but reinforcing) */
        .selfcare-section .sc-item i {
            color: var(--gold) !important;
        }
       /* Smaller, animated wallet modal */
  .wallet-modal .modal-dialog {
    max-width: 340px; /* nice & compact */
  }
  .wallet-modal .modal-content{
    border: 0;
    border-radius: 18px;
    padding: 12px;
    background:
      radial-gradient(120% 120% at 10% -10%, rgba(212,175,55,.08), transparent 60%),
      #ffffff;
    box-shadow: 0 18px 50px rgba(0,0,0,.18);
  }

  /* Soft animated entrance */
  .wallet-modal .modal-dialog {
    transform: translateY(14px) scale(.96);
    opacity: 0;
    transition: transform .35s cubic-bezier(.2,.8,.2,1), opacity .35s;
  }
  .wallet-modal.show .modal-dialog {
    transform: translateY(0) scale(1);
    opacity: 1;
  }
  /* Slightly prettier backdrop */
  .modal-backdrop.show {
    background: rgba(0,0,0,.35);
    backdrop-filter: blur(2px);
  }

  /* Header chip + icon */
  .wallet-hero {
    display: grid;
    place-items: center;
    margin-top: 2px;
    margin-bottom: 8px;
  }
  .gift-icon {
    width: 62px; height: 62px;
    border-radius: 50%;
    display: grid; place-items: center;
    background: radial-gradient(120% 120% at 30% 20%, #fff6c5 0%, #f0d56b 35%, #e8c756 60%, #d4af37 100%);
    color: #111;
    box-shadow: 0 8px 26px rgba(212,175,55,.35);
    position: relative;
  }
  .gift-icon i { font-size: 26px; }
  .gift-icon::after{
    /* subtle ping ring */
    content:"";
    position:absolute; inset:-6px;
    border-radius: inherit;
    border: 2px solid rgba(212,175,55,.35);
    animation: ring 1.8s ease-out infinite;
  }
  @keyframes ring {
    0%   { transform: scale(.8); opacity: .9; }
    70%  { transform: scale(1.15); opacity: 0; }
    100% { transform: scale(1.15); opacity: 0; }
  }

  /* Shimmering bonus chip */
  .wallet-badge{
    display:inline-block; padding:.35rem .7rem; border-radius:999px;
    background:linear-gradient(90deg,#caa432,#f0d56b,#caa432);
    background-size:200% 100%; animation:walletShimmer 2.5s linear infinite;
    color:#111; font-weight:800; letter-spacing:.2px; font-size:.95rem;
  }
  @keyframes walletShimmer{0%{background-position:0% 50%}100%{background-position:200% 50%}}

  .wallet-title {
    font-family:'Playfair Display', serif;
    font-weight:700;
    font-size: 1.15rem;
    text-align:center;
    margin: 6px 0 4px;
  }
  .wallet-copy { text-align:center; margin: 0 0 10px; color:#555; font-size:.92rem; }

  .wallet-form .form-control{
    height: 42px;
    border-radius: 12px;
  }
  .form-hint{font-size:.8rem; color:#6c757d;}

  .btn-gold {
    background:#d4af37; color:#111; font-weight:700;
    border-radius: 12px; height: 44px;
    transition: transform .16s ease, background .2s ease;
  }
  .btn-gold:hover { background:#c9a532; transform: translateY(-1px); }
  /* Congrats overlay */
  #walletCongratsOverlay {
    position: fixed; inset: 0; display: none; place-items: center;
    background: rgba(0,0,0,.35); backdrop-filter: blur(2px);
    z-index: 20000;
  }
  #walletCongratsOverlay.show { display: grid; }

  .wc-card {
    width: 320px; max-width: 92vw;
    background: #fff; border-radius: 18px; padding: 16px 16px 18px;
    border: 1px solid #eee; box-shadow: 0 18px 50px rgba(0,0,0,.18);
    transform: translateY(10px) scale(.96); opacity: 0;
    animation: wcIn .45s cubic-bezier(.2,.8,.2,1) forwards;
    text-align: center;
  }
  @keyframes wcIn {
    to { transform: translateY(0) scale(1); opacity: 1; }
  }

  .wc-hero {
    width: 64px; height: 64px; margin: 2px auto 8px; border-radius: 50%;
    display: grid; place-items: center; color:#111;
    background: radial-gradient(120% 120% at 30% 20%, #fff6c5 0%, #f0d56b 35%, #e8c756 60%, #d4af37 100%);
    box-shadow: 0 10px 30px rgba(212,175,55,.4); position: relative;
  }
  .wc-hero::after {
    content:""; position:absolute; inset:-6px; border-radius: inherit;
    border: 2px solid rgba(212,175,55,.35); animation: wcRing 1.8s ease-out infinite;
  }
  @keyframes wcRing {
    0%{ transform: scale(.8); opacity:.9 } 70%,100%{ transform: scale(1.15); opacity:0 }
  }
  .wc-hero i { font-size: 28px; }

  .wc-title {
    font-family:'Playfair Display', serif; font-weight: 700;
    margin: 6px 0 4px; font-size: 1.2rem;
  }
  .wc-sub { color:#555; margin:0 0 10px; font-size:.95rem; }

  .wc-badge {
    display:inline-block; padding:.35rem .7rem; border-radius:999px;
    background:linear-gradient(90deg,#caa432,#f0d56b,#caa432);
    background-size:200% 100%; animation: wcShim 2.5s linear infinite; color:#111;
    font-weight:800; letter-spacing:.2px; font-size:.95rem;
  }
  @keyframes wcShim { 0%{background-position:0% 50%} 100%{background-position:200% 50%} }

  /* Confetti */
  .confetti {
    position: fixed; pointer-events:none; top:-10px; width:8px; height:14px;
    transform: rotate(15deg); opacity: 0; z-index: 20001;
    animation: drop 1.6s ease-out forwards;
  }
  @keyframes drop {
    0%{ transform: translateY(-20px) rotate(0deg); opacity: 0 }
    10%{ opacity: 1 }
    100%{ transform: translateY(100vh) rotate(360deg); opacity: 0 }
  }