:root {
    --n-bg: #FFEBE5; /* Soft pastel peach */
    --n-text: #4A192C; /* Deep burgundy */
    --n-accent: #E58D75; /* Warm orange/pink */
    
    --font-script: 'Caveat', cursive;
    --font-sans: 'Nunito', sans-serif;
}

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

body { background-color: var(--n-bg); color: var(--n-text); font-family: var(--font-sans); overflow-x: hidden; }

/* Blob button styles */
.blob-btn {
    background: transparent; border: 2px solid var(--n-text); color: var(--n-text);
    padding: 12px 30px; font-family: var(--font-sans); font-weight: 700; font-size: 1rem;
    border-radius: 40px 60px 30px 50px / 50px 30px 60px 40px; cursor: pointer;
    transition: transform 0.3s, border-radius 0.4s, background 0.3s;
}
.blob-btn:hover { border-radius: 50% 50% 50% 50% / 50% 50% 50% 50%; background: var(--n-text); color: var(--n-bg); transform: scale(1.05); }

.blob-btn.primary { background: var(--n-text); color: var(--n-bg); font-size: 1.2rem; padding: 15px 40px; margin-top: 30px; }
.blob-btn.primary:hover { background: var(--n-accent); border-color: var(--n-accent); }

/* Liquid Filter Application */
.distort-hover { transition: filter 0.3s; }
.distort-hover:hover { filter: url('#liquid'); }

/* Nav */
.n-nav { position: fixed; top: 0; width: 100%; padding: 20px 5%; display: flex; justify-content: space-between; align-items: center; z-index: 100; }
.logo { font-family: var(--font-sans); font-weight: 900; font-size: 2.2rem; letter-spacing: -2px; }
.links { display: flex; gap: 40px; }
.links a { color: var(--n-text); text-decoration: none; font-weight: 700; font-size: 1.1rem; transition: color 0.2s; }
.links a:hover { color: var(--n-accent); }

/* Hero */
.n-hero { height: 100vh; position: relative; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.glow-bg { position: absolute; width: 800px; height: 800px; background: radial-gradient(circle, rgba(229,141,117,0.3) 0%, rgba(255,235,229,0) 70%); border-radius: 50%; top: -20%; left: -10%; z-index: 0; animation: floatBlob 10s ease-in-out infinite; }

@keyframes floatBlob { 0%, 100% { transform: translate(0, 0) scale(1); } 50% { transform: translate(50px, 50px) scale(1.1); } }

.hero-inner { position: relative; z-index: 2; display: flex; align-items: center; gap: 50px; max-width: 1200px; padding: 0 5%; width: 100%; }
.text-blob { flex: 1; }
.img-blob { flex: 1; border-radius: 40% 60% 70% 30% / 40% 50% 60% 50%; overflow: hidden; height: 600px; box-shadow: 0 20px 50px rgba(74, 25, 44, 0.1); animation: morph 8s ease-in-out infinite alternate; }
.img-blob img { width: 100%; height: 100%; object-fit: cover; }

@keyframes morph {
    0% { border-radius: 40% 60% 70% 30% / 40% 50% 60% 50%; }
    100% { border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%; }
}

.text-blob h1 { font-size: 5rem; line-height: 1.1; margin-bottom: 20px; font-weight: 900; letter-spacing: -2px; }
.script { font-family: var(--font-script); font-size: 1.2em; font-weight: 400; color: var(--n-accent); margin-left: -10px; }
.text-blob p { font-size: 1.3rem; max-width: 400px; line-height: 1.6; }

/* Curation */
.curation-section { padding: 100px 5% 150px; }
.c-title { text-align: center; margin-bottom: 80px; }
.c-title h2 { font-size: 4rem; color: var(--n-accent); }

.c-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 60px; max-width: 1200px; margin: 0 auto; align-items: start; }
.mt-down { margin-top: 80px; }
.bottle-card { text-align: center; cursor: pointer; }
.b-img { height: 450px; border-radius: 30px 30px 100px 100px; overflow: hidden; margin-bottom: 25px; background: rgba(229,141,117,0.1); padding: 20px; }
.b-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s; border-radius: 15px 15px 80px 80px; }
.bottle-card:hover .b-img img { transform: scale(1.05) rotate(2deg); }

.bottle-card h3 { font-size: 1.5rem; font-weight: 900; margin-bottom: 5px; }
.region { font-family: var(--font-script); font-size: 1.4rem; color: var(--n-accent); }

/* Footer */
.n-footer { background: var(--n-text); color: var(--n-bg); padding: 80px 5% 40px; text-align: center; border-radius: 50% 50% 0 0 / 50px 50px 0 0; }
.f-top h2 { font-size: 6rem; font-weight: 900; margin-bottom: 60px; }
.f-top .script { color: var(--n-bg); }
.f-bot { display: flex; justify-content: space-between; align-items: center; max-width: 1200px; margin: 0 auto; border-top: 1px solid rgba(255,235,229,0.2); padding-top: 30px; }
.f-links { display: flex; gap: 30px; }
.f-links a { color: var(--n-bg); text-decoration: none; font-weight: 700; transition: color 0.3s; }
.f-links a:hover { color: var(--n-accent); }

@media (max-width: 900px) {
    .n-hero { height: auto; padding-top: 120px; padding-bottom: 60px; }
    .hero-inner { flex-direction: column; text-align: center; }
    .img-blob { width: 100%; height: 400px; }
    .c-grid { grid-template-columns: 1fr; gap: 40px; }
    .mt-down { margin-top: 0; }
    .f-bot { flex-direction: column; gap: 20px; }
}
