.banner-container{background-color:var(--obsidian,#17080c);flex-direction:column;width:100%;min-height:92vh;display:flex;position:relative;overflow:hidden}.banner-media-video,.banner-media-image{z-index:1;width:100%;height:100%;transition:opacity var(--transition-base,.3s ease);position:absolute;top:0;left:0}.banner-media-video{object-fit:cover;object-position:center;filter:brightness(.5)}.banner-media-image{filter:brightness(.45);background-position:50%;background-size:cover}.banner-media-fallback{background:radial-gradient(circle at center, var(--garnet,#7a0f1f) 0%, var(--obsidian,#17080c) 100%);z-index:1;width:100%;height:100%;position:absolute;top:0;left:0}.banner-content{z-index:2;text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:900px;min-height:92vh;margin:0 auto;padding:4rem 1.5rem;display:flex;position:relative}.banner-subtitle{font-family:var(--font-sans);font-size:var(--font-size-md,.85rem);letter-spacing:3px;text-transform:uppercase;color:var(--champagne,#c9a66b);margin-bottom:1rem;font-weight:600;display:block}.banner-title{font-family:var(--font-serif);color:#fff;letter-spacing:2px;text-shadow:0 4px 25px #000c;max-width:750px;margin-bottom:1.5rem;font-size:4rem;font-style:italic;font-weight:400;line-height:1.2}.banner-description{font-family:var(--font-sans);color:#fff;letter-spacing:.3px;opacity:.92;max-width:680px;margin-bottom:2.75rem;font-size:1.05rem;line-height:1.7}.banner-cta-group{flex-wrap:wrap;justify-content:center;align-items:center;gap:1.25rem;display:flex}.banner-btn-primary{font-family:var(--font-sans);letter-spacing:2.5px;text-transform:uppercase;color:#17080c;border-radius:var(--radius-sm,2px);transition:all var(--transition-smooth,.4s ease);background-color:#fff;justify-content:center;align-items:center;gap:.6rem;padding:1rem 2.5rem;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-flex;box-shadow:0 6px 20px #00000040}.banner-btn-primary:hover{color:#17080c;background-color:#f5eae3;transform:translateY(-2px);box-shadow:0 8px 25px #0006}.banner-btn-primary i{font-size:1.05rem;transition:transform .25s}.banner-btn-primary:hover i{transform:translate(4px)}.banner-btn-secondary{font-family:var(--font-sans);letter-spacing:2.5px;text-transform:uppercase;color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:var(--radius-sm,2px);transition:all var(--transition-smooth,.4s ease);background-color:#17080c80;border:1px solid #fff9;justify-content:center;align-items:center;padding:1rem 2.5rem;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-flex}.banner-btn-secondary:hover{color:#17080c;background-color:#fff;border-color:#fff;transform:translateY(-2px)}.banner-indicators{z-index:10;gap:8px;display:flex;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.banner-indicator-dot{cursor:pointer;width:10px;height:10px;transition:all var(--transition-base,.3s ease);background-color:#fff6;border:none;border-radius:5px;padding:0}.banner-indicator-active{background-color:#fff;width:28px}.banner-loading-container{background-color:var(--obsidian,#17080c);min-height:82vh;color:var(--champagne,#c9a66b);justify-content:center;align-items:center;display:flex}@media (min-width:1200px){.banner-title{font-size:4.25rem}}@media (max-width:1199px) and (min-width:769px){.banner-container,.banner-content{min-height:80vh}.banner-title{font-size:3.25rem}.banner-content{padding:3.5rem 2rem}}@media (max-width:768px){.banner-container,.banner-content{min-height:75vh}.banner-content{padding:3rem 1.25rem}.banner-title{margin-bottom:1.25rem;font-size:2.5rem;line-height:1.2}.banner-description{margin-bottom:2.25rem;font-size:.95rem;line-height:1.6}.banner-cta-group{justify-content:center;width:100%;display:flex}.banner-btn-primary,.banner-btn-secondary{width:auto;max-width:280px;padding:.85rem 2.2rem;font-size:.8rem}}@media (max-width:480px){.banner-container,.banner-content{min-height:65vh}.banner-content{padding:2.5rem 1rem}.banner-title{letter-spacing:1px;margin-bottom:1rem;font-size:2.1rem}.banner-description{margin-bottom:2rem;font-size:.875rem;line-height:1.55}.banner-cta-group{flex-direction:column;align-items:center;width:100%}.banner-btn-primary,.banner-btn-secondary{letter-spacing:2px;width:auto;min-width:180px;max-width:260px;padding:.85rem 2rem;font-size:.775rem}}
.category-slider-section{background-color:#f5eae3;background-color:var(--bg-light-section,#f5eae3);width:100%;color:var(--color-text-heading-dark,#17080c);padding:4rem 1.5rem}.category-slider-container{max-width:1400px;margin:0 auto}.category-slider-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2.5rem;display:flex}.category-slider-title{font-family:var(--font-serif);font-size:var(--font-size-3xl,2.5rem);color:var(--color-text-heading-dark,#17080c);letter-spacing:1.5px;margin:0;font-style:italic;font-weight:400}.category-slider-controls{align-items:center;gap:1.25rem;display:flex}.category-view-all-link{font-family:var(--font-sans);font-size:var(--font-size-md,.8rem);letter-spacing:2px;text-transform:uppercase;color:var(--color-text-heading-dark,#17080c);border-bottom:1.5px solid var(--color-text-heading-dark,#17080c);padding-bottom:2px;font-weight:600;text-decoration:none;transition:all .25s}.category-view-all-link:hover{color:var(--accent,#c9a66b);border-color:var(--accent,#c9a66b)}.category-nav-btns{align-items:center;gap:.5rem;display:flex}.category-nav-btn{border:1px solid var(--color-border-light-medium,#d4c3b7);background-color:var(--bg-white,#fff);width:40px;height:40px;color:var(--color-text-heading-dark,#17080c);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;transition:all .25s;display:flex;box-shadow:0 2px 6px #0000000a}.category-nav-btn:hover:not(:disabled){border-color:var(--color-text-heading-dark,#17080c);color:var(--color-text-heading-dark,#17080c);background-color:var(--bg-light-hover,#efe2da);transform:translateY(-1px)}.category-nav-btn:disabled{opacity:.3;cursor:not-allowed}.category-track-wrapper{width:100%;position:relative}.category-track{scroll-behavior:smooth;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;gap:1.5rem;padding-bottom:.5rem;display:flex;overflow-x:auto}.category-track::-webkit-scrollbar{display:none}.category-card-item{scroll-snap-align:start;min-width:200px;color:inherit;flex-direction:column;flex:0 0 calc(20% - 1.2rem);text-decoration:none;transition:transform .3s;display:flex}.category-card-image-box{aspect-ratio:3/4;background-color:var(--bg-light-card,#faf2ed);border:1px solid var(--color-border-light-subtle,#e5d8cf);border-radius:var(--radius-sm,2px);width:100%;margin-bottom:.85rem;position:relative;overflow:hidden}.category-card-img{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.25,1,.5,1),filter .3s}.category-card-item:hover .category-card-img{filter:brightness(1.02);transform:scale(1.06)}.category-card-fallback{width:100%;height:100%;color:var(--accent,#c9a66b);text-align:center;background:linear-gradient(135deg,#f5eae3 0%,#faf2ed 100%);flex-direction:column;justify-content:center;align-items:center;padding:1rem;display:flex}.category-card-fallback-icon{opacity:.85;margin-bottom:.5rem;font-size:2.2rem}.category-card-name{font-family:var(--font-sans);letter-spacing:1.5px;text-transform:uppercase;color:var(--color-text-heading-dark,#17080c);text-align:center;margin:0;font-size:.8rem;font-weight:600;transition:color .25s}.category-card-item:hover .category-card-name{color:var(--accent,#c9a66b)}.category-slider-loading,.category-slider-empty{text-align:center;color:var(--mauve,#a9787a);padding:3rem 1rem}@media (max-width:1200px){.category-card-item{flex:0 0 calc(25% - 1.15rem)}}@media (max-width:992px){.category-card-item{flex:0 0 calc(33.333% - 1rem)}.category-slider-title{font-size:2rem}}@media (max-width:640px){.category-slider-section{padding:2.5rem 1rem}.category-slider-header{text-align:center;flex-direction:column;align-items:center;gap:.75rem;margin-bottom:1.75rem}.category-slider-title{text-align:center;font-size:1.85rem}.category-nav-btns{display:none}.category-track{gap:1rem;padding-bottom:.75rem}.category-card-item{flex:0 0 calc(50% - .5rem);min-width:140px}.category-card-image-box{aspect-ratio:3/4;margin-bottom:.65rem}.category-card-name{letter-spacing:1px;text-align:center;font-size:.725rem}.category-view-all-link{letter-spacing:1.5px;font-size:.75rem}}
