* { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Montserrat', sans-serif; }
body { background: #ffffff; color: #000000; -webkit-font-smoothing: antialiased; scroll-behavior: smooth; overflow-x: hidden; }

/* NAVBAR */
.navbar { position: fixed; top: 0; width: 100%; height: 80px; display: flex; justify-content: space-between; align-items: center; padding: 0 40px; z-index: 100; mix-blend-mode: difference; color: white; }
.noreva-logo { font-size: 0.6rem; letter-spacing: 8px; font-weight: 200; text-transform: uppercase; }
.nav-link { background: none; border: none; color: inherit; font-size: 0.5rem; letter-spacing: 3px; cursor: pointer; margin-right: 20px; text-transform: uppercase; }

/* HERO */
.hero { position: relative; height: 100vh; width: 100%; display: flex; align-items: center; justify-content: center; background: #000; overflow: hidden; }
.hero-bg { position: absolute; width: 100%; height: 100%; object-fit: cover; opacity: 0.7; }
.hero-overlay { position: absolute; inset: 0; background: radial-gradient(circle, transparent 20%, rgba(0,0,0,0.5) 100%); }
.hero-content { position: relative; text-align: center; color: white; z-index: 10; }
.hero-content h1 { font-size: clamp(3.5rem, 10vw, 6.5rem); font-weight: 100; letter-spacing: 25px; margin-bottom: 20px; }
.identity-tag { font-size: 0.5rem; letter-spacing: 4px; opacity: 0.8; margin-bottom: 40px; display: flex; gap: 10px; justify-content: center; align-items: center; }
.shop-trigger { background: none; border: 1px solid white; color: white; padding: 15px 40px; font-size: 0.5rem; letter-spacing: 4px; cursor: pointer; }

/* GRID */
.archive-grid { padding: 140px 10% 60px; display: grid; grid-template-columns: repeat(2, 1fr); gap: 100px 50px; background: #fff; }
.product-item { width: 100%; max-width: 300px; margin: 0 auto; }
.product-frame { aspect-ratio: 3/4; overflow: hidden; background: #f5f5f5; margin-bottom: 15px; }
.product-frame img { width: 100%; height: 100%; object-fit: cover; transition: 0.6s ease; }
.product-item:hover img { transform: scale(1.05); }
.product-info { display: flex; justify-content: space-between; font-size: 0.6rem; letter-spacing: 1px; margin-bottom: 20px; font-weight: 300; }
.buy-button { display: block; width: 100%; background: #000; color: #fff; border: none; font-size: 0.5rem; letter-spacing: 2px; padding: 15px; text-align: center; cursor: pointer; }

/* ABOUT SECTION */
.about-section { padding: 100px 10%; background: #fff; border-top: 1px solid #eee; }
.about-container { max-width: 600px; margin: 0 auto; text-align: center; }
.about-container h3 { font-size: 0.7rem; letter-spacing: 5px; margin-bottom: 30px; font-weight: 400; }
.about-container p { font-size: 0.55rem; letter-spacing: 2px; line-height: 1.8; margin-bottom: 20px; opacity: 0.7; }

/* SIDEBAR BAG */
.bag-sidebar { position: fixed; top: 0; right: 0; width: 350px; height: 100vh; background: white; z-index: 2000; padding: 40px; transform: translateX(100%); transition: 0.5s cubic-bezier(0.16, 1, 0.3, 1); border-left: 1px solid #eee; display: flex; flex-direction: column; }
.bag-sidebar.active { transform: translateX(0); }
.bag-header { display: flex; justify-content: space-between; font-size: 0.6rem; margin-bottom: 40px; }
.bag-close { background: none; border: none; font-size: 0.5rem; cursor: pointer; }
.bag-list { flex-grow: 1; overflow-y: auto; }
.cart-item { display: flex; align-items: center; gap: 15px; margin-bottom: 20px; font-size: 0.5rem; }
.cart-item img { width: 45px; height: 60px; object-fit: cover; }
.checkout-btn { display: block; width: 100%; background: black; color: white; text-align: center; text-decoration: none; padding: 15px; font-size: 0.5rem; letter-spacing: 2px; margin-top: 10px; }