.home-hero{position:relative;overflow:hidden;padding:68px 0 94px}.home-hero:before{content:"";position:absolute;inset:-25% auto auto -12%;width:500px;aspect-ratio:1;border-radius:50%;background:rgba(234,216,220,.75);z-index:-1}.hero-grid{display:grid;grid-template-columns:.92fr 1.08fr;align-items:center;gap:clamp(40px,6vw,95px)}.hero-copy h1 span{display:block;color:var(--wine);font-style:italic}.hero-copy .lead{max-width:560px;margin-bottom:29px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.hero-assurances{margin-top:34px;padding-top:22px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:15px 25px}.assurance{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.76rem;font-weight:720}.assurance svg{width:17px;color:var(--success)}
.hero-media{min-width:0;position:relative;padding:0 36px 30px 0}.hero-frame{min-height:620px;overflow:hidden;border-radius:210px 210px 30px 30px;background:#d9cbc3;box-shadow:var(--shadow)}.hero-frame img{width:100%;height:100%;min-height:620px;object-fit:cover;object-position:62% center}.hero-note{position:absolute;right:0;bottom:0;width:205px;padding:17px;border:1px solid rgba(255,255,255,.8);border-radius:21px;background:var(--paper);box-shadow:0 16px 42px rgba(59,13,31,.16)}.hero-note small{display:block;color:var(--rose);font-size:.63rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.hero-note strong{display:block;margin:4px 0 2px;font:1.15rem var(--serif);color:var(--wine)}.hero-note span{color:var(--muted);font-size:.74rem}.hero-stamp{position:absolute;top:12%;left:-22px;width:96px;aspect-ratio:1;display:grid;place-items:center;border:1px solid rgba(198,161,91,.75);border-radius:50%;background:rgba(248,243,237,.9);color:var(--wine);font:.79rem/1.15 var(--serif);text-align:center;transform:rotate(-8deg)}
.trust-strip{border-block:1px solid var(--line);background:rgba(255,255,255,.46)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-item{padding:22px 24px;display:flex;align-items:center;gap:12px;border-right:1px solid var(--line)}.trust-item:last-child{border:0}.trust-item svg{width:23px;color:var(--gold);flex:0 0 auto}.trust-item strong{display:block;color:var(--wine);font-size:.81rem}.trust-item span{display:block;color:var(--muted);font-size:.71rem}
.collection-grid{display:grid;grid-template-columns:1.05fr .95fr .78fr;gap:18px}.collection-card{position:relative;min-height:500px;overflow:hidden;border-radius:var(--radius);isolation:isolate}.collection-card:nth-child(2){margin-top:38px}.collection-card:nth-child(3){min-height:415px;margin-top:82px}.collection-card img{width:100%;height:100%;object-fit:cover;transition:transform .65s}.collection-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 38%,rgba(26,7,14,.84))}.collection-card:hover img{transform:scale(1.04)}.collection-content{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:28px;color:#fff}.collection-content small{color:#efd591;font-size:.64rem;font-weight:850;letter-spacing:.15em;text-transform:uppercase}.collection-content h3{margin:7px 0;font-size:clamp(1.75rem,2.5vw,2.75rem)}.collection-content p{max-width:330px;color:rgba(255,255,255,.76);font-size:.83rem}.collection-content .text-link{color:#fff}
.filter-tabs{display:flex;gap:5px;padding:5px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.55)}.filter-tab{min-height:39px;padding:8px 15px;border:0;border-radius:999px;background:transparent;cursor:pointer;color:var(--muted);font-size:.71rem;font-weight:820;white-space:nowrap}.filter-tab.active{background:var(--wine);color:#fff}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:22px;background:rgba(255,253,249,.88);transition:transform .28s,box-shadow .28s}.product-card:hover{transform:translateY(-6px);box-shadow:0 20px 44px rgba(59,13,31,.1)}.product-card[hidden]{display:none}.product-image{position:relative;aspect-ratio:.86;overflow:hidden;background:#ede5df}.product-image>a{display:block;width:100%;height:100%}.product-image img{width:100%;height:100%;object-fit:cover;transition:transform .52s}.product-card:hover .product-image img{transform:scale(1.035)}.badge{position:absolute;top:12px;left:12px;padding:6px 10px;border-radius:999px;background:rgba(255,253,249,.92);color:var(--wine);font-size:.59rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase;backdrop-filter:blur(7px)}.wishlist{position:absolute;top:11px;right:11px;width:38px;height:38px;display:grid;place-items:center;border:0;border-radius:50%;background:rgba(255,253,249,.92);cursor:pointer}.wishlist.active{background:var(--wine);color:#fff}.wishlist svg{width:17px}.product-body{padding:17px}.product-type{display:flex;align-items:center;gap:7px;color:var(--rose);font-size:.62rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.product-type:before{content:"";width:18px;height:1px;background:var(--gold)}.product-body h3{margin:6px 0 2px;font-size:1.28rem}.notes{margin-bottom:13px;color:var(--muted);font-size:.73rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-foot{display:flex;align-items:center;justify-content:space-between;gap:10px}.price{display:flex;align-items:baseline;gap:7px}.price strong{color:var(--wine)}.price del{color:#99888e;font-size:.73rem}.add-btn{width:41px;height:41px;display:grid;place-items:center;border:0;border-radius:50%;background:var(--wine);color:#fff;cursor:pointer;transition:.2s}.add-btn:hover{transform:rotate(7deg) scale(1.06);background:var(--gold);color:var(--wine)}.add-btn svg{width:17px}
.story-band{background:var(--wine);color:#fff}.story-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(48px,7vw,98px)}.story-media{position:relative}.story-media img{width:100%;height:630px;object-fit:cover;border-radius:170px 170px 27px 27px}.story-quote{position:absolute;right:-30px;bottom:38px;max-width:255px;padding:22px;border-radius:20px;background:var(--paper);color:var(--wine);box-shadow:var(--shadow);font:1.17rem/1.35 var(--serif)}.story-band .lead{color:rgba(255,255,255,.7)}.story-facts{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin:30px 0 34px}.story-facts div{padding:17px 0;border-top:1px solid rgba(255,255,255,.17)}.story-facts strong{display:block;color:#efd591;font:1.38rem var(--serif)}.story-facts span{color:rgba(255,255,255,.63);font-size:.73rem}
.finder-shell{display:grid;grid-template-columns:.82fr 1.18fr;min-height:500px;overflow:hidden;border:1px solid var(--line);border-radius:30px;background:var(--cream);box-shadow:var(--shadow)}.finder-intro{position:relative;padding:clamp(34px,5vw,65px);overflow:hidden;background:linear-gradient(145deg,var(--wine),#6b2239);color:#fff}.finder-intro:after{content:"D";position:absolute;right:-25px;bottom:-75px;color:rgba(255,255,255,.06);font:19rem/1 var(--serif)}.finder-intro p{color:rgba(255,255,255,.72)}.finder-panel{padding:clamp(34px,5vw,68px);display:flex;flex-direction:column;justify-content:center}.question{margin-bottom:22px;font:clamp(1.7rem,3vw,2.65rem)/1.15 var(--serif)}.mood-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mood-btn{min-height:74px;padding:15px 17px;display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:16px;background:var(--paper);cursor:pointer;color:var(--ink);font-weight:750;text-align:left;transition:.2s}.mood-btn:hover,.mood-btn.selected{transform:translateY(-2px);border-color:var(--gold);background:#fff8ec}.mood-icon{width:39px;height:39px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:var(--blush);color:var(--wine);font:1.12rem var(--serif)}.match-result{display:none;grid-template-columns:130px 1fr;align-items:center;gap:23px}.match-result.show{display:grid}.match-result img{width:130px;height:165px;object-fit:cover;border-radius:68px 68px 13px 13px}.match-result h3{margin-bottom:5px;font-size:1.9rem}
.review-grid{display:grid;grid-template-columns:1.2fr .9fr .9fr;gap:18px}.review-card{padding:27px;border:1px solid var(--line);border-radius:21px;background:rgba(255,253,249,.76)}.review-card.featured{padding:36px;background:var(--wine);color:#fff}.stars{color:var(--gold);letter-spacing:.15em;font-size:.8rem}.review-card blockquote{margin:16px 0 24px;font:1.12rem/1.5 var(--serif)}.review-card.featured blockquote{font-size:clamp(1.45rem,2.4vw,2rem);line-height:1.3}.review-author{display:flex;align-items:center;gap:11px}.avatar,.review-author .avatar{width:41px;height:41px;display:grid;place-items:center;flex:0 0 41px;border-radius:50%;background:var(--blush);color:var(--wine);font-family:var(--serif);font-size:.82rem;line-height:1;text-align:center}.review-author strong,.review-author span{display:block}.review-author strong{font-size:.79rem}.review-author span{color:var(--muted);font-size:.69rem}.featured .review-author span{color:rgba(255,255,255,.72)}.review-card.featured .review-author .avatar{color:var(--wine)}
.review-grid.is-carousel{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 36px)/3);align-items:stretch;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;scrollbar-width:none}.review-grid.is-carousel::-webkit-scrollbar{display:none}.review-grid.is-carousel .review-card{min-width:0;display:flex;flex-direction:column;scroll-snap-align:start;scroll-snap-stop:always}.review-grid.is-carousel .review-card.featured{grid-column:auto}.review-grid.is-carousel .review-card blockquote{flex:1}.testimonial-controls{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:22px}.testimonial-control{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--paper);color:var(--wine);cursor:pointer;transition:transform .2s,border-color .2s,background .2s}.testimonial-control:hover:not(:disabled){transform:translateY(-2px);border-color:var(--gold);background:#fff}.testimonial-control:focus-visible{outline:3px solid rgba(198,161,91,.35);outline-offset:3px}.testimonial-control:disabled{opacity:.38;cursor:not-allowed}.testimonial-control svg{width:17px;height:17px;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.testimonial-status{min-width:54px;color:var(--muted);font-size:.7rem;font-weight:800;text-align:center}
.newsletter-shell{position:relative;overflow:hidden;padding:62px;border-radius:32px;background:var(--blush)}.newsletter-shell:after{content:"";position:absolute;right:-80px;top:-105px;width:360px;aspect-ratio:1;border:1px solid rgba(59,13,31,.15);border-radius:50%;box-shadow:0 0 0 42px rgba(255,255,255,.13),0 0 0 84px rgba(255,255,255,.09)}.newsletter-content{position:relative;z-index:1;max-width:660px}.signup-form{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}.signup-form input{min-width:0;flex:1;height:53px;padding:0 19px;border:1px solid rgba(59,13,31,.18);border-radius:999px;background:rgba(255,255,255,.82)}.signup-form .form-message{width:100%}.form-message{min-height:20px;margin:9px 0 0;color:var(--success);font-size:.75rem;font-weight:750}
