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

    body{
      font-family:'Inter',sans-serif;
      background:#fff7fb;
      color:#1f1f1f;
    }

    a{
      text-decoration:none;
      color:inherit;
    }

    img{
      width:100%;
      display:block;
    }

    .container{
      width:100%;
      max-width:1200px;
      margin:0 auto;
      padding:0 20px;
    }

    /* HEADER */

    header{
      background:white;
      border-bottom:1px solid #f5dce8;
      position:sticky;
      top:0;
      z-index:100;
    }

    .navbar{
      height:80px;
      display:flex;
      align-items:center;
      justify-content:space-between;
    }

    .logo{
      font-size:28px;
      font-weight:800;
      color:#ff4f9a;
    }

    .nav{
      display:flex;
      gap:24px;
      font-weight:500;
      color:#555;
    }

    /* HERO */

    .hero{
      padding:70px 0 40px;
    }

    .hero-box{
      background:linear-gradient(135deg,#ffdbe9,#fff1f7);
      border-radius:36px;
      padding:60px;
      display:grid;
      grid-template-columns:1.1fr .9fr;
      gap:40px;
      align-items:center;
    }

    .hero-text span{
      display:inline-block;
      background:white;
      color:#ff4f9a;
      padding:10px 18px;
      border-radius:999px;
      font-size:14px;
      font-weight:700;
      margin-bottom:20px;
    }

    .hero-text h1{
      font-size:52px;
      line-height:1.1;
      margin-bottom:20px;
    }

    .hero-text p{
      font-size:18px;
      line-height:1.7;
      color:#666;
      margin-bottom:30px;
    }

    .hero-buttons{
      display:flex;
      gap:16px;
      flex-wrap:wrap;
    }

    .btn-primary{
      background:#ff4f9a;
      color:white;
      padding:16px 26px;
      border-radius:16px;
      font-weight:700;
      transition:.2s;
    }

    .btn-primary:hover{
      transform:translateY(-2px);
    }

    .btn-secondary{
      background:white;
      border:1px solid #ffd7e8;
      padding:16px 26px;
      border-radius:16px;
      font-weight:600;
    }

    .hero-image{
      height:420px;
      background:white;
      border-radius:32px;
      display:flex;
      align-items:center;
      justify-content:center;
      font-size:120px;
    }

    /* PRODUCTS */

    .products{
      padding:70px 0;
    }

    .section-title{
      font-size:40px;
      margin-bottom:40px;
    }

    .product-grid{
      display:grid;
      grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
      gap:28px;
    }

    .product-card{
      background:white;
      border-radius:28px;
      overflow:hidden;
      border:1px solid #ffe0ee;
      transition:.2s;
    }

    .product-card:hover{
      transform:translateY(-5px);
    }

    .product-image{
      height:300px;
      background:linear-gradient(135deg,#ffe1ee,#fff4f9);
      display:flex;
      align-items:center;
      justify-content:center;
      font-size:72px;
    }

    .product-content{
      padding:24px;
    }

    .product-number{
      display:inline-block;
      background:#fff0f7;
      color:#ff4f9a;
      padding:8px 14px;
      border-radius:999px;
      font-size:13px;
      font-weight:700;
      margin-bottom:16px;
    }

    .product-content h3{
      font-size:24px;
      line-height:1.3;
      margin-bottom:14px;
    }

    .product-content p{
      color:#666;
      line-height:1.7;
      margin-bottom:26px;
    }

    .product-buttons{
      display:flex;
      gap:12px;
      flex-wrap:wrap;
    }

    .buy-button{
      flex:1;
      background:#ff4f9a;
      color:white;
      text-align:center;
      padding:14px;
      border-radius:14px;
      font-weight:700;
    }

    .save-button{
      background:#fff3f8;
      color:#ff4f9a;
      padding:14px 18px;
      border-radius:14px;
      font-weight:700;
    }

    /* VIP */

    .vip{
      padding-bottom:80px;
    }

    .vip-box{
      background:linear-gradient(135deg,#ff4f9a,#ff7ab5);
      border-radius:36px;
      padding:60px;
      text-align:center;
      color:white;
    }

    .vip-box h2{
      font-size:42px;
      margin-bottom:18px;
    }

    .vip-box p{
      max-width:720px;
      margin:0 auto 30px;
      line-height:1.7;
      font-size:18px;
    }

    .vip-box .btn-primary{
      background:white;
      color:#ff4f9a;
    }

    /* FOOTER */

    footer{
      padding:40px 0 60px;
      text-align:center;
      color:#777;
      font-size:14px;
    }

    .footer-links{
      display:flex;
      justify-content:center;
      gap:20px;
      margin-top:12px;
    }

    /* RESPONSIVE */

    @media(max-width:900px){

      .hero-box{
        grid-template-columns:1fr;
        padding:36px;
      }

      .hero-text h1{
        font-size:40px;
      }

      .hero-image{
        height:300px;
      }

      .vip-box{
        padding:40px 24px;
      }

      .vip-box h2{
        font-size:32px;
      }

    }