:root{--accent-gold:#B08D26;--accent-gold-dim:#D4AF37;--bg-color:#FDFBF7;--border-color:#E5E0D8;--card-bg:#FFFFFF;--font-body:'Montserrat', sans-serif;--font-heading:'Cinzel', serif;--spacing-lg:4rem;--spacing-md:2rem;--spacing-sm:1rem;--spacing-xs:.5rem;--text-primary:#1C1C1C;--text-secondary:#5A5A5A}
*{box-sizing:border-box;margin:0;padding:0}
body{background-color:var(--bg-color);color:var(--text-primary);font-family:var(--font-body);font-weight:300;line-height:1.6;overflow-x:hidden}
footer{border-top:1px solid var(--border-color);color:var(--text-secondary);font-size:.8rem;margin-top:var(--spacing-lg);padding:var(--spacing-md);text-align:center}
h1,h2,h3,h4{font-family:var(--font-heading);font-weight:400;letter-spacing:.05em}
.add-btn{align-items:center;background:transparent;border:1px solid #CCCCCC;color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:.8rem;justify-content:center;letter-spacing:1px;margin-top:auto;padding:10px;text-decoration:none;text-transform:uppercase;transition:all .2s;width:100%}
.add-btn:hover{background:var(--text-primary);border-color:var(--text-primary);color:#FFFFFF}
.back-btn{align-items:center;background:none;border:none;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:.9rem;gap:8px;margin-bottom:var(--spacing-sm);text-decoration:none}
.back-btn:hover{color:var(--accent-gold)}
.badge{align-items:center;background:var(--accent-gold);border-radius:50%;color:#FFFFFF;display:flex;font-size:.7rem;font-weight:700;height:16px;justify-content:center;position:absolute;right:0;top:0;width:16px}
.brand-link{text-decoration:none}
.brand-logo{color:var(--accent-gold);font-size:1.2rem;text-transform:uppercase}
.breadcrumbs{color:var(--text-secondary);font-size:.85rem;letter-spacing:.5px;margin-bottom:var(--spacing-sm);opacity:.8;text-transform:uppercase}
.cart-actions{align-items:flex-end;display:flex;flex-direction:column;gap:.5rem;text-align:right}
.cart-details h4{font-size:1rem;margin-bottom:.2rem}
.cart-details p{color:var(--text-secondary);font-size:.85rem}
.cart-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:var(--spacing-md);padding-bottom:1rem}
.cart-header h2{font-size:2rem}
.cart-item-row{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);display:grid;gap:1rem;grid-template-columns:80px 1fr auto;padding:1rem}
.cart-items{display:flex;flex-direction:column;gap:1rem}
.cart-layout{display:grid;gap:var(--spacing-lg);grid-template-columns:2fr 1fr}
.cart-modal{background:transparent;border:none;inset:0;margin:auto;padding:0}
.cart-modal::backdrop{background:rgba(0, 0, 0, 0.45)}
.cart-modal__actions{display:flex;gap:var(--spacing-sm);justify-content:center;margin-top:var(--spacing-sm)}
.cart-modal__btn{background:transparent;border:1px solid var(--accent-gold);color:var(--accent-gold);cursor:pointer;font-family:var(--font-body);letter-spacing:2px;padding:10px 20px;text-decoration:none;text-transform:uppercase;transition:all .3s}
.cart-modal__btn--primary{background:var(--accent-gold);color:#000000}
.cart-modal__btn--primary:hover{background:var(--accent-gold-dim)}
.cart-modal__btn--secondary:hover{background:var(--accent-gold);color:#000000}
.cart-modal__close{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:1.4rem;position:absolute;right:10px;top:10px}
.cart-modal__content{background:var(--card-bg);border:1px solid var(--border-color);min-width:280px;padding:var(--spacing-md);position:relative;text-align:center}
.cart-page-container{margin:0 auto;margin-top:-120px;max-width:1200px;min-height:80vh;padding:var(--spacing-md);padding-top:100px;position:relative;z-index:2}
.cart-qty{align-items:center;display:inline-flex;gap:6px}
.cart-summary{background:#FAFAFA;border:1px solid var(--border-color);height:fit-content;padding:2rem}
.cart-summary .checkout-btn{display:block;font-size:.85rem;letter-spacing:.15em;margin-top:var(--spacing-md);padding:14px 0;text-align:center;width:100%}
.cart-summary h3{font-size:1.2rem;margin-bottom:1.5rem}
.cart-thumb{background:#F2F0EB;height:80px;object-fit:contain;width:80px}
.checkbox-label{align-items:center;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.9rem}
.checkbox-label input{accent-color:var(--accent-gold);margin-right:10px}
.close-nav{position:absolute;right:20px;top:20px}
.color-black{background-color:#000000}
.color-blue{background-color:#2E5FA8}
.color-bronze{background-color:#B26F3A}
.color-circle{border:1px solid #DDDDDD;border-radius:50%;cursor:pointer;display:inline-block;height:24px;transition:transform .2s, box-shadow .2s;width:24px}
.color-circle.active{border-color:transparent;box-shadow:0 0 0 2px var(--accent-gold);outline:1.5px solid white}
.color-circle:hover{transform:scale(1.1)}
.color-gold{background-color:#D4AF37}
.color-green{background-color:#2F7D56}
.color-more{align-items:center;display:inline-flex}
.color-more-toggle{align-items:center;border:1px solid var(--border-color);border-radius:50%;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:1rem;height:24px;justify-content:center;list-style:none;width:24px}
.color-more-toggle::-webkit-details-marker{display:none}
.color-more-toggle::before{content:"+"}
.color-more-toggle:hover{border-color:var(--accent-gold);color:var(--accent-gold)}
.color-more[open]{flex-basis:auto}
.color-more[open] .color-more-toggle::before{content:"-"}
.color-more[open] .color-options{left:0;position:absolute;right:0;top:calc(100% + 10px);width:auto}
.color-nude{background-color:#E6C7A5}
.color-options{display:flex;flex-wrap:wrap;gap:10px;position:relative}
.color-pink{background-color:#D78BAA}
.color-purple{background-color:#6B4FA3}
.color-red{background-color:#800000}
.color-silver{background-color:#C0C0C0}
.color-white{background-color:#F0F0F0}
.cta-btn{background:transparent;border:1px solid var(--accent-gold);color:var(--accent-gold);cursor:pointer;display:inline-block;font-family:var(--font-body);letter-spacing:2px;margin-top:var(--spacing-md);padding:12px 30px;text-decoration:none;text-transform:uppercase;transition:all .3s}
.cta-btn:hover{background:var(--accent-gold);color:#000000}
.detail-content{display:flex;flex-direction:column;height:100%}
.detail-content h2{color:var(--text-primary);font-size:2rem;margin-bottom:var(--spacing-xs)}
.detail-desc{color:var(--text-secondary);line-height:1.8;margin-bottom:var(--spacing-md)}
.detail-gallery{align-items:center;background:#f2f0eb;display:flex;flex-direction:column;gap:var(--spacing-sm);height:100%;justify-content:center;padding:var(--spacing-sm)}
.detail-main-image{align-items:center;display:flex;height:min(520px, 60vh);justify-content:center;width:100%}
.detail-main-image img{height:100%;object-fit:contain;width:100%}
.detail-price{color:var(--accent-gold);font-size:1.5rem;margin-bottom:var(--spacing-md)}
.detail-specs{background:#FAFAFA;border:1px solid #EEEEEE;margin-bottom:var(--spacing-md);padding:var(--spacing-sm)}
.detail-specs h4{color:var(--text-primary);font-size:.9rem;margin-bottom:var(--spacing-xs);text-transform:uppercase}
.detail-thumb{background:#FFFFFF;border:1px solid var(--border-color);cursor:pointer;padding:4px;transition:border-color .2s, transform .2s}
.detail-thumb img{display:block;height:64px;object-fit:cover;width:64px}
.detail-thumb.active{border-color:var(--accent-gold);box-shadow:0 0 0 1px var(--accent-gold)}
.detail-thumb:hover{border-color:var(--accent-gold);transform:translateY(-2px)}
.detail-thumbs{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);justify-content:center}
.detail-view{align-items:stretch;background:var(--card-bg);border:1px solid var(--border-color);display:grid;gap:var(--spacing-lg);grid-template-columns:1fr 1fr;padding:var(--spacing-md)}
.dropcap{color:var(--accent-gold);float:left;font-family:var(--font-heading);font-size:2rem;line-height:.8;margin-right:10px}
.empty-cart-message{padding:4rem 0;text-align:center}
.empty-cart-message p{color:var(--text-secondary);margin-bottom:1.5rem}
.filter-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;display:block;font-family:var(--font-body);font-size:.9rem;text-align:left;text-decoration:none;transition:color .2s;width:100%}
.filter-btn.active{border-left:2px solid var(--accent-gold);color:var(--text-primary);font-weight:500;padding-left:8px}
.filter-group{margin-bottom:var(--spacing-md)}
.filter-group h4{color:var(--accent-gold);font-size:.9rem;margin-bottom:var(--spacing-sm)}
.filter-list{list-style:none}
.filter-list li{margin-bottom:8px}
.filter-parent{align-items:center;display:flex;gap:.5rem;justify-content:space-between}
.filter-search{border:1px solid var(--border-color);box-sizing:border-box;font-family:var(--font-body);font-size:.9rem;padding:10px 12px;width:100%}
.filters-sidebar{background:var(--bg-color);border-right:1px solid var(--border-color);height:calc(100vh - 70px);overflow-y:auto;padding:var(--spacing-md);position:sticky;top:70px;width:250px}
.form-grid{display:grid;gap:1rem}
.grid{display:grid;gap:var(--spacing-md);grid-template-columns:repeat(auto-fill, minmax(250px, 1fr))}
.hero{align-items:center;background-image:url('/images/banner/hero-bg.webp');background-position:center;background-size:cover;display:flex;height:80vh;justify-content:center;position:relative;text-align:center;width:100%}
.hero--about{background-image:url('/images/banner/hero-about.webp')}
.hero--contact{background-image:url('/images/banner/hero-contact.webp')}
.hero--materials{background-image:url('/images/banner/hero-materials.webp')}
.hero--tutorials{background-image:url('/images/banner/hero-tutorials.webp')}
.hero-content{backdrop-filter:blur(5px);background:rgba(253, 251, 247, .7);border:1px solid rgba(255,255,255,0.5);max-width:600px;padding:3rem;position:relative;z-index:2}
.hero-content h2{color:#1A1A1A;font-size:2.5rem;margin-bottom:var(--spacing-sm)}
.hero-overlay{background:linear-gradient(to bottom, rgba(255,255,255,0.2), var(--bg-color));inset:0;position:absolute}
.hero.empty{height:0}
.hidden{display:none !important}
.icon{align-items:center;background-color:currentColor;background-image:url(/icons.png?1.0);background-position-y:bottom;display:inline-block;font-size:14px;height:24px;justify-content:center;line-height:1;mask-position:center;mask-repeat:no-repeat;mask-size:contain;overflow:hidden;padding:0;width:24px;-webkit-mask-position:center;-webkit-mask-repeat:no-repeat;-webkit-mask-size:contain}
.icon-btn{align-items:center;background:none;border:none;color:transparent;cursor:pointer;display:inline-flex;justify-content:center;padding:8px;text-decoration:none;transition:color .3s}
.icon.bars{background-position-x:-48px}
.icon.cart{background-position-x:-24px}
.icon.cart,.icon.bars{filter:brightness(0)}
.icon.cart:hover,.icon.bars:hover{filter:none}
.img-filter-black-busk{filter:grayscale(100%) brightness(30%)}
.img-filter-black-fabric{filter:grayscale(100%) brightness(50%)}
.img-filter-silver-busk{filter:grayscale(100%)}
.img-filter-white-busk{filter:brightness(200%)}
.img-filter-white-fabric{filter:grayscale(100%) brightness(150%)}
.img-primary{opacity:1;z-index:1}
.img-secondary{opacity:0;z-index:2}
.img-wrapper{align-items:center;aspect-ratio:1;background:#F2F0EB;display:flex;justify-content:center;margin-bottom:var(--spacing-sm);overflow:hidden;position:relative;width:100%}
.img-wrapper img{height:100%;left:0;object-fit:contain;position:absolute;top:0;transition:opacity .4s ease, transform .5s ease;width:100%}
.input{border:1px solid #CCCCCC;padding:10px}
.input.is-invalid,.textarea.is-invalid{border-color:#C0392B;box-shadow:0 0 0 1px #C0392B}
.item-price{font-weight:500}
.mobile-nav{inset:0;opacity:0;position:fixed;transition:opacity .3s ease, visibility .3s ease;visibility:hidden;z-index:999}
.mobile-nav-content{backdrop-filter:blur(10px);background:rgba(253, 251, 247, .98);border-right:1px solid var(--border-color);box-shadow:5px 0 20px rgba(0,0,0,0.1);height:100%;left:0;max-width:85vw;min-width:280px;padding:2rem;padding-top:80px;position:absolute;text-align:left;top:0;transform:translateX(-100%);transition:transform .4s cubic-bezier(0.16, 1, .3, 1);width:max-content}
.mobile-nav-links{list-style:none}
.mobile-nav-links a{color:var(--text-primary);display:block;font-family:var(--font-body);font-size:.95rem;font-weight:400;letter-spacing:.08em;line-height:1.4;margin-left:10px;text-decoration:none;text-transform:uppercase;transition:color .3s}
.mobile-nav-links a:hover{color:var(--accent-gold)}
.mobile-nav-links li{margin:10px 0}
.mobile-nav-links span{color:var(--text-secondary);display:block;font-family:var(--font-heading);font-size:.9rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase}
.mobile-nav.open{opacity:1;visibility:visible}
.mobile-nav.open .mobile-nav-content{transform:translateX(0)}
.navbar{align-items:center;backdrop-filter:blur(10px);background:rgba(253, 251, 247, .95);border-bottom:1px solid var(--border-color);display:flex;height:70px;justify-content:space-between;padding:0 var(--spacing-sm);position:fixed;top:0;width:100%;z-index:100}
.navbar .nav-link{align-items:center;color:var(--text-primary);display:inline-flex;font-family:var(--font-body);font-size:.9rem;letter-spacing:1px;padding:8px;text-decoration:none;text-transform:uppercase}
.page-card{background:var(--card-bg);border:1px solid var(--border-color);margin-bottom:4rem;padding:2rem}
.page-center{text-align:center}
.page-grid-2{display:grid;gap:2rem;grid-template-columns:1fr 1fr}
.page-main{margin:0 auto;margin-top:-120px;max-width:800px;min-height:50vh;padding:var(--spacing-md);position:relative;z-index:2}
.page-main--wide{max-width:1000px}
.page-text{color:var(--text-secondary);font-size:1.1rem;line-height:1.8}
.page-text p{margin-bottom:1.5rem}
.page-title-gold{color:var(--accent-gold);margin-bottom:2rem;text-align:center}
.payment-icons{display:flex;gap:.5rem;justify-content:center}
.payment-icons span{background:transparent;border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);font-size:.7rem;letter-spacing:.05em;padding:4px 10px;text-transform:uppercase}
.payment-methods{margin-top:1.5rem;text-align:center}
.payment-methods p{color:var(--text-secondary);font-size:.75rem;margin-bottom:.75rem;opacity:.75}
.product-card{background:var(--card-bg);border:1px solid var(--border-color);color:inherit;cursor:pointer;display:flex;flex-direction:column;padding:var(--spacing-sm);position:relative;text-decoration:none;transition:transform .3s ease, border-color .3s}
.product-card:hover{border-color:var(--accent-gold-dim);transform:translateY(-5px)}
.product-card:hover .img-primary{opacity:0}
.product-card:hover .img-secondary{opacity:1;transform:scale(1.05)}
.product-info h3{color:var(--text-primary);font-size:1.1rem;margin-bottom:.5rem}
.product-meta{color:var(--text-secondary);font-size:.8rem;margin-bottom:.5rem;text-transform:uppercase}
.product-price{color:var(--accent-gold);font-size:1.1rem;font-weight:500;margin-bottom:1rem}
.products-area{flex:1;padding:var(--spacing-md);position:relative}
.qty-btn{align-items:center;background:transparent;border:1px solid transparent;border-radius:4px;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-family:var(--font-body);font-size:1rem;height:28px;justify-content:center;line-height:1;padding:0;transition:color .2s, border-color .2s, background .2s;width:28px}
.qty-btn:hover{background:#FFFFFF;border-color:var(--border-color);color:var(--accent-gold)}
.qty-input{appearance:textfield;background:#FFFFFF;border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-family:var(--font-body);font-size:.9rem;height:28px;outline:none;padding:0 8px;text-align:center;width:4ch;-moz-appearance:textfield}
.qty-input::-webkit-inner-spin-button{margin:0;-webkit-appearance:none}
.qty-input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}
.qty-input:focus{border-color:var(--accent-gold);box-shadow:0 0 0 2px var(--accent-gold-dim)}
.related-card{background:var(--card-bg);border:1px solid transparent;color:inherit;cursor:pointer;text-decoration:none;transition:border-color .3s ease, transform .3s ease}
.related-card .img-wrapper{margin-bottom:0;padding:12px}
.related-card .img-wrapper img{height:calc(100% - 32px);left:16px;top:16px;width:calc(100% - 32px)}
.related-card:hover{border-color:var(--accent-gold-dim);transform:translateY(-3px)}
.related-card:hover .img-primary{opacity:0}
.related-card:hover .img-secondary{opacity:1;transform:scale(1.05)}
.related-grid{display:grid;gap:var(--spacing-md);grid-template-columns:repeat(3, 1fr)}
.related-img{align-items:center;aspect-ratio:1;background:#F2F0EB;display:flex;justify-content:center}
.related-img img{max-height:100%;max-width:100%;object-fit:contain}
.related-info{padding:.75rem;text-align:center}
.related-info h4{font-size:.9rem;margin-bottom:.25rem}
.related-price{color:var(--accent-gold);font-size:.9rem}
.related-section{border-top:1px solid var(--border-color);grid-column:1 / -1;margin-top:var(--spacing-lg);padding-top:var(--spacing-md)}
.related-section h3{color:var(--text-primary);font-size:1.5rem;margin-bottom:var(--spacing-md);text-align:center}
.relative{position:relative}
.remove-btn{align-items:center;background:none;border:none;color:#999999;cursor:pointer;display:flex;font-size:.8rem;gap:4px}
.remove-btn:hover{color:#CC0000}
.shop-container{display:flex;margin:0 auto;margin-top:-120px;max-width:1400px;min-height:100vh;padding-top:66px;position:relative;z-index:2}
.shop-container--no-hero{margin-top:0}
.sort-dropdown{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;font-family:var(--font-body);outline:none;padding:5px 10px}
.spec-row{border-bottom:1px solid #EEEEEE;display:flex;font-size:.9rem;justify-content:space-between;padding:4px 0}
.spec-row:last-child{border-bottom:none}
.sub-filter-btn{color:#888888;font-size:.85rem;padding:4px 0}
.sub-filter-btn.active{color:var(--accent-gold);font-weight:500}
.sub-filter-group{animation:fadeIn .3s ease;border-left:1px solid #EEEEEE;display:none;margin-bottom:.5rem;margin-left:1rem;margin-top:.5rem;padding-left:.5rem}
.sub-filter-group.is-open{display:block}
.summary-divider{background:var(--border-color);height:1px;margin:1rem 0}
.summary-row{color:var(--text-secondary);display:flex;font-size:.95rem;justify-content:space-between;margin-bottom:1rem}
.summary-row.total{color:var(--text-primary);font-size:1.2rem;font-weight:700}
.textarea{border:1px solid #CCCCCC;font-family:sans-serif;padding:10px}
.toolbar{align-items:center;color:var(--text-secondary);display:flex;flex-wrap:wrap;font-size:.9rem;gap:1rem;justify-content:space-between;margin-bottom:var(--spacing-md)}
.toolbar .breadcrumbs{margin-bottom:0}
.toolbar-left,.toolbar-right{align-items:center;display:flex;gap:1rem}
@keyframes fadeIn{
from{opacity:0;transform:translateY(-5px)}
to{opacity:1;transform:translateY(0)}}
@media (max-width: 768px){
.cart-actions{align-items:center;flex-direction:row;grid-column:2;justify-content:space-between;margin-top:.5rem;width:100%}
.cart-details{margin-top:2px}
.cart-item-row{align-items:start;column-gap:12px;grid-template-columns:72px 1fr;grid-template-rows:auto auto auto;row-gap:8px}
.cart-layout{grid-template-columns:1fr}
.cart-page-container{margin-left:0;margin-right:0;margin-top:-80px;max-width:none;padding-left:calc(12px + env(safe-area-inset-left));padding-right:calc(12px + env(safe-area-inset-right));width:100%}
.cart-thumb{grid-row:1 / 4;height:72px;width:72px}
.detail-view{gap:var(--spacing-md);grid-template-columns:1fr}
.filters-sidebar{border-bottom:1px solid var(--border-color);border-right:0;height:auto;position:static;width:100%}
.grid{gap:10px;grid-template-columns:1fr 1fr}
.hero-content h2{font-size:1.8rem}
.page-grid-2{grid-template-columns:1fr}
.page-main{margin-top:-80px}
.product-info h3{font-size:.9rem}
.products-area{padding:var(--spacing-md)}
.related-grid{grid-template-columns:1fr 1fr}
.shop-container{flex-direction:column;margin-top:-80px}
.shop-container--no-hero{margin-top:0;padding-top:60px}}