:root{--brand: #921b00;--brand-deep: #5a1000;--grad: linear-gradient(135deg, var(--brand), var(--brand-deep));--card: #fff;--ink: #0f172a;--muted: #64748b;--bg: #f7f7fb;--line: #e5e7eb}.encased-wrapper{position:relative;width:100%;height:90%;margin:0 auto;background:var(--card);border-radius:20px;box-shadow:0 4px 16px #00000014;display:flex;flex-direction:column;overflow:visible;z-index:2}.encased-wrapper .horizontal-container{display:flex;flex:1 1 auto;width:100%;height:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;border-radius:20px;scrollbar-width:none;justify-content:flex-start;align-items:center;gap:0;padding:0;margin:0;scroll-padding-inline:0;overscroll-behavior-x:contain;touch-action:pan-x pan-y;box-sizing:border-box}.encased-wrapper .horizontal-container::-webkit-scrollbar{display:none}.subcard-wrapper{position:relative;flex:0 0 100%;width:100%;min-width:100%;height:100%;display:flex;justify-content:center;align-items:stretch;scroll-snap-align:start;scroll-snap-stop:always;overflow:hidden}.subcard{position:relative;width:100%;height:100%;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;padding:2rem;box-sizing:border-box;background:var(--card);border-radius:20px;box-shadow:0 3px 12px #0000000d;text-align:center;overflow:visible;transition:transform .2s ease,box-shadow .2s ease}.subcard:hover{transform:translateY(-2px);box-shadow:0 6px 18px #00000014}.subcard:before{content:"";position:absolute;inset:0;background-image:var(--bg-img);background-repeat:no-repeat;background-position:center bottom;background-size:contain;opacity:1;z-index:1;transition:transform .3s ease}.subcard:hover:before{transform:scale(1.02)}.subcard-content,.subcard h3,.subcard h4{position:relative;z-index:3}.subcard h3,.subcard h4,.subcard p{text-shadow:0 1px 3px rgba(0,0,0,.2)}.subcard h3{color:var(--brand);margin-bottom:.4rem;font-size:1.4rem}.subcard h4{color:var(--muted);margin-bottom:1rem;font-size:1rem}.subcard-content p{color:var(--ink);font-size:1rem;line-height:1.5}.subcard-wrapper{position:relative;flex:0 0 100%;scroll-snap-align:start;scroll-snap-stop:always;min-width:100%;height:100%;display:flex;overflow:hidden}.subcard-wrapper .ribbon-corner{position:absolute;bottom:0;right:0;width:clamp(95px,8vw,95px);height:clamp(95px,8vw,95px);background:var(--grad);clip-path:polygon(100% 0,100% 100%,0 100%);border-bottom-right-radius:16px;z-index:4;transition:transform .2s ease,filter .2s ease}.subcard-wrapper .ribbon-btn{position:absolute;bottom:clamp(.9rem,2vw,.5rem);right:clamp(.8rem,2vw,.5rem);background:none;border:none;cursor:pointer;z-index:5;padding:0;line-height:0;transition:transform .2s ease,filter .2s ease}.encased-wrapper+.dot-section{position:relative;bottom:auto;margin-top:.8rem;display:flex;justify-content:center;gap:.4rem;z-index:5}.dot-section .dot{appearance:none;border:none;cursor:pointer;width:9px;height:9px;border-radius:50%;background:#0000004d;transition:background .2s,transform .2s,width .15s,height .15s}.dot-section .dot:hover{transform:scale(1.15)}.dot-section .dot.active{background:#000000b3;width:11px;height:11px}@media (min-width: 900px){.encased-wrapper{width:33%;height:85%;max-width:960px}.encased-wrapper .horizontal-container{border-radius:24px}.subcard{border-radius:24px;padding:2.5rem}}.ribbon-corner{position:absolute;bottom:0;right:0;width:clamp(95px,8vw,95px);height:clamp(95px,8vw,95px);background:var(--grad);clip-path:polygon(100% 0,100% 100%,0 100%);border-bottom-right-radius:16px;z-index:2}.ribbon-btn{position:absolute;bottom:clamp(.9rem,2vw,.5rem);right:clamp(.8rem,2vw,.5rem);background:none;border:none;cursor:pointer;z-index:10;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:.25rem;line-height:1;padding-left:1rem}.ribbon-btn svg{width:30px;height:30px;stroke:currentColor;padding-left:.4rem}.ribbon-label{font-size:.6rem;font-weight:600;text-transform:uppercase;color:#fff;text-align:center;letter-spacing:.03em}@media (max-width: 600px){.ribbon-corner{width:clamp(65px,10vw,80px);height:clamp(65px,10vw,80px)}}.cart-toast{position:fixed;bottom:1.5rem;right:1.5rem;background:var(--grad);color:#fff;padding:.8rem 1.2rem;border-radius:12px;box-shadow:0 4px 14px #00000040;font-size:.9rem;animation:fadeOut 2s forwards ease;z-index:9999}@keyframes fadeOut{0%,70%{opacity:1}to{opacity:0;transform:translateY(10px)}}
