
        * { box-sizing: border-box; margin: 0; padding: 0; }

        html { scroll-behavior: smooth; }

        body {
            font-family: Arial, Helvetica, sans-serif;
            background: radial-gradient(circle at top left, #ffe4f0, #fff8fb 38%, #fff);
            color: #33202a;
        }

        header {
            background: linear-gradient(135deg, #9d004f, #e83f8f);
            color: white;
            padding: 26px 7%;
            position: sticky;
            top: 0;
            z-index: 30;
            box-shadow: 0 8px 25px rgba(0,0,0,.15);
        }

        .brand h1 { font-size: 31px; letter-spacing: 1px; }
        .brand p { opacity: .95; margin-top: 5px; }

        .floating-cart {
            position: fixed;
            top: 20px;
            right: 24px;
            width: 64px;
            height: 64px;
            border-radius: 50%;
            background: #ffffff;
            color: #b4005a;
            border: 3px solid #ffd2e5;
            box-shadow: 0 12px 28px rgba(0,0,0,.22);
            z-index: 70;
            cursor: pointer;
            display: grid;
            place-items: center;
            font-size: 28px;
            transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
        }

        .floating-cart:hover {
            transform: scale(1.08);
            background: #fff2f8;
            box-shadow: 0 16px 34px rgba(180,0,90,.30);
        }

        .cart-count {
            position: absolute;
            top: -8px;
            right: -6px;
            min-width: 25px;
            height: 25px;
            padding: 0 7px;
            border-radius: 999px;
            background: #25d366;
            color: white;
            font-size: 13px;
            font-weight: bold;
            display: grid;
            place-items: center;
            border: 2px solid white;
        }

        .hero {
            padding: 48px 7%;
            display: grid;
            grid-template-columns: 1.2fr .8fr;
            gap: 35px;
            align-items: center;
        }

        .hero-card {
            background: rgba(255,255,255,.92);
            padding: 38px;
            border-radius: 32px;
            box-shadow: 0 20px 45px rgba(180,0,90,.13);
            border: 1px solid #ffe0ed;
        }

        .hero h2 {
            font-size: clamp(32px, 6vw, 58px);
            line-height: 1;
            color: #8d0047;
            margin-bottom: 15px;
        }

        .hero p {
            font-size: 18px;
            line-height: 1.6;
            color: #5c4350;
        }

        .hero img {
            width: 100%;
            border-radius: 32px;
            box-shadow: 0 20px 45px rgba(0,0,0,.15);
            background: white;
        }

        .family-nav {
            padding: 0 7% 25px;
            display: flex;
            gap: 12px;
            flex-wrap: wrap;
        }

        .family-nav a {
            text-decoration: none;
            background: white;
            color: #b4005a;
            padding: 11px 16px;
            border-radius: 999px;
            font-weight: bold;
            box-shadow: 0 8px 20px rgba(180,0,90,.10);
            border: 1px solid #ffd2e5;
        }

        .family-nav a:hover {
            background: #b4005a;
            color: white;
        }

        main { padding: 10px 7% 70px; }

        .section-title {
            margin: 38px 0 20px;
            color: #8d0047;
            font-size: 28px;
            border-left: 8px solid #f25ca2;
            padding-left: 12px;
            scroll-margin-top: 110px;
        }

        .grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 24px;
        }

        .product {
            background: white;
            border-radius: 28px;
            overflow: hidden;
            box-shadow: 0 12px 28px rgba(0,0,0,.08);
            border: 1px solid #f7d8e6;
            transition: transform .25s ease, box-shadow .25s ease;
            position: relative;
        }

        .product:hover {
            transform: translateY(-7px);
            box-shadow: 0 20px 40px rgba(180,0,90,.18);
        }

        .image-box{
            height:320px;
            background:#fff;
            padding:15px;
            display:flex;
            align-items:center;
            justify-content:center;
            overflow:hidden;
        }

        .image-box img{
            width:100%;
            height:100%;
            object-fit:contain;
            object-position:center;
            display:block;
            background:white;
            padding:12px;
            transition:transform .3s ease;
        }

        .product:hover .image-box img { transform: scale(1.05); }

        .view-icon {
            position: absolute;
            top: 13px;
            right: 13px;
            width: 48px;
            height: 48px;
            border-radius: 50%;
            background: rgba(255,255,255,.96);
            color: #b4005a;
            display: grid;
            place-items: center;
            font-size: 22px;
            border: 2px solid rgba(180,0,90,.16);
            cursor: pointer;
            box-shadow: 0 8px 16px rgba(0,0,0,.16);
            transition: all .22s ease;
            padding: 0;
            margin: 0;
        }

        .view-icon:hover {
            background: #b4005a;
            color: white;
            transform: scale(1.08);
        }

       .tag{
            position:absolute;
            top:12px;
            left:12px;
            background:linear-gradient(135deg,#b4005a,#ff4f9a);
            color:white;
            padding:8px 14px;
            border-radius:999px;
            font-size:12px;
            font-weight:bold;
            z-index:5;
            box-shadow:0 6px 14px rgba(0,0,0,.18);
            letter-spacing:.4px;
        }

        .product-body { padding: 20px; }

        .product h3 {
            color: #4a1730;
            margin-bottom: 8px;
            font-size: 19px;
            min-height: 46px;
        }

        .description {
            color: #6b5660;
            line-height: 1.45;
            min-height: 62px;
            font-size: 14.5px;
        }

        .price-row {
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 12px;
            margin: 15px 0 5px;
        }

        .price {
            color: #b4005a;
            font-size: 24px;
            font-weight: bold;
        }

        .details-link {
            border: none;
            background: #fff0f7;
            color: #b4005a;
            padding: 9px 11px;
            border-radius: 999px;
            font-weight: bold;
            cursor: pointer;
            font-size: 13px;
            width: auto;
            margin: 0;
        }

        .details-link:hover {
            background: #b4005a;
            color: white;
        }

        button, .buy-link {
            border: none;
            cursor: pointer;
            background: #b4005a;
            color: white;
            padding: 13px 15px;
            border-radius: 15px;
            font-weight: bold;
            width: 100%;
            margin-top: 12px;
            text-decoration: none;
            display: inline-block;
            text-align: center;
        }

        button:hover, .buy-link:hover { background: #8d0047; }

        .toast {
            position: fixed;
            top: 98px;
            right: 25px;
            background: #1f9d55;
            color: white;
            padding: 16px 20px;
            border-radius: 16px;
            box-shadow: 0 14px 30px rgba(0,0,0,.2);
            z-index: 200;
            opacity: 0;
            pointer-events: none;
            transform: translateY(-12px);
            transition: all .25s ease;
            max-width: 330px;
            font-weight: bold;
        }

        .toast.active {
            opacity: 1;
            transform: translateY(0);
        }

        .overlay {
            position: fixed;
            inset: 0;
            background: rgba(0,0,0,.45);
            z-index: 80;
            display: none;
        }

        .overlay.active { display: block; }

        .side-cart {
            position: fixed;
            right: -440px;
            top: 0;
            width: min(440px, 94vw);
            height: 100vh;
            background: white;
            z-index: 90;
            box-shadow: -20px 0 45px rgba(0,0,0,.2);
            transition: right .3s ease;
            display: flex;
            flex-direction: column;
        }

        .side-cart.active { right: 0; }

        .cart-header {
            background: linear-gradient(135deg, #b4005a, #f25ca2);
            color: white;
            padding: 22px;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .cart-header h2 { font-size: 22px; }

        .close-cart {
            background: white;
            color: #b4005a;
            border-radius: 50%;
            width: 42px;
            height: 42px;
            padding: 0;
            margin: 0;
            font-size: 24px;
        }

        .cart-content {
            padding: 18px;
            overflow-y: auto;
            flex: 1;
        }

        .cart-item {
            display: grid;
            grid-template-columns: 78px 1fr;
            gap: 14px;
            padding: 14px 0;
            border-bottom: 1px solid #f1d8e3;
        }

        .cart-item img {
            width: 78px;
            height: 78px;
            object-fit: cover;
            border-radius: 16px;
        }

        .cart-item h3 {
            font-size: 16px;
            color: #4a1730;
            margin-bottom: 4px;
        }

        .cart-controls {
            display: flex;
            gap: 8px;
            align-items: center;
            margin-top: 10px;
            flex-wrap: wrap;
        }

        .mini-btn {
            width: auto;
            min-width: 38px;
            height: 38px;
            padding: 0 12px;
            border-radius: 10px;
            margin: 0;
            font-size: 16px;
        }

        .delete-btn { background: #6d263f; }

        .cart-footer {
            padding: 18px;
            border-top: 1px solid #f1d8e3;
            background: #fff8fb;
        }

        .cart-total {
            text-align: right;
            font-size: 24px;
            color: #8d0047;
            font-weight: bold;
            margin-bottom: 12px;
        }

        .whatsapp { background: #25d366; }
        .whatsapp:hover { background: #159d49; }

        .empty {
            padding: 30px 10px;
            text-align: center;
            color: #7a606d;
            font-size: 18px;
        }

        .modal {
            display: none;
            position: fixed;
            inset: 0;
            z-index: 100;
            background: rgba(0,0,0,.72);
            padding: 25px;
            align-items: center;
            justify-content: center;
        }

        .modal.active { display: flex; }

        .modal-content {
            background: white;
            width: min(930px, 95vw);
            border-radius: 30px;
            overflow: hidden;
            display: grid;
            grid-template-columns: 1fr 1fr;
            position: relative;
            box-shadow: 0 25px 70px rgba(0,0,0,.28);
        }

        .modal-content img {
            width: 100%;
            height: 100%;
            min-height: 430px;
            object-fit: cover;
        }

        .modal-info {
            padding: 35px;
            display: flex;
            flex-direction: column;
            justify-content: center;
        }

        .modal-info h2 {
            color: #8d0047;
            margin-bottom: 12px;
            font-size: 30px;
        }

        .modal-info p {
            line-height: 1.65;
            color: #604b55;
            font-size: 16px;
        }

        .modal-badge {
            display: inline-block;
            background: #fff0f7;
            color: #b4005a;
            padding: 9px 13px;
            border-radius: 999px;
            margin-bottom: 15px;
            font-weight: bold;
            width: fit-content;
        }

        .close {
            position: absolute;
            top: 14px;
            right: 18px;
            width: 42px;
            height: 42px;
            border-radius: 50%;
            background: #b4005a;
            color: white;
            font-size: 25px;
            border: none;
            cursor: pointer;
            padding: 0;
            margin: 0;
            z-index: 2;
        }

        footer {
            text-align: center;
            padding: 25px;
            background: #4a1730;
            color: white;
        }

        @media (max-width: 1050px) {
            .grid { grid-template-columns: repeat(3, 1fr); }
        }

        @media (max-width: 780px) {
            .hero {
                grid-template-columns: 1fr;
                padding-top: 35px;
            }
            .image-box{
            height:260px;
            }
            .grid { grid-template-columns: repeat(2, 1fr); }

            .modal-content {
                grid-template-columns: 1fr;
                max-height: 90vh;
                overflow: auto;
            }

            .modal-content img { min-height: 290px; }

            .toast {
                left: 15px;
                right: 15px;
                top: 95px;
                max-width: none;
            }
        }

        @media (max-width: 520px) {
            header { padding: 20px 5%; }

            main, .hero, .family-nav {
                padding-left: 5%;
                padding-right: 5%;
            }

            .grid { grid-template-columns: 1fr; }
            .brand h1 { font-size: 24px; }
            .hero-card { padding: 25px; }

            .floating-cart {
                width: 58px;
                height: 58px;
                right: 14px;
                top: 16px;
            }
        }