.minicart-overlay{z-index:300;background:#0006;animation:.2s fadeIn;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}}.minicart{background:var(--white);z-index:301;border-left:1px solid var(--border-light);flex-direction:column;width:380px;max-width:90vw;height:100vh;animation:.25s slideIn;display:flex;position:fixed;top:0;right:0}@keyframes slideIn{0%{transform:translate(100%)}}.minicart-header{padding:var(--sp-5);border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;display:flex}.minicart-header h3{letter-spacing:1px;text-transform:uppercase;font-size:14px;font-weight:700}.minicart-close{color:var(--text-muted);background:0 0;border:none;padding:4px}.minicart-close:hover{color:var(--text)}.minicart-empty{color:var(--text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.minicart-empty-icon{font-size:48px}.minicart-items{padding:var(--sp-4);flex:1;overflow-y:auto}.minicart-item{border-bottom:1px solid var(--border-light);align-items:center;gap:12px;padding:12px 0;display:flex}.minicart-item-img{border-radius:var(--r-md);background:var(--bg-muted);flex-shrink:0;width:60px;height:60px;overflow:hidden}.minicart-item-img img{object-fit:cover;width:100%;height:100%}.minicart-item-info{flex:1;min-width:0}.minicart-item-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;font-weight:500;line-height:1.4;display:-webkit-box;overflow:hidden}.minicart-item-price{color:var(--text);margin-top:4px;font-size:13px;font-weight:600}.minicart-item-remove{color:var(--text-muted);background:0 0;border:none;flex-shrink:0;padding:4px}.minicart-item-remove:hover{color:var(--accent-red)}.minicart-footer{padding:var(--sp-5);border-top:1px solid var(--border-light)}.minicart-total{margin-bottom:var(--sp-4);justify-content:space-between;align-items:center;font-size:15px;display:flex}.minicart-total strong{font-size:18px;font-weight:700}.minicart-btn{text-align:center;width:100%;margin-bottom:8px}
.header{z-index:100;background:var(--bg-dark);transition:box-shadow var(--ease);position:fixed;top:0;left:0;right:0}.header--scrolled{box-shadow:0 2px 12px #00000026}.header-inner{height:var(--header-h);justify-content:space-between;align-items:center;display:flex}.header-logo{flex-shrink:0}.header-logo-brand{letter-spacing:2.5px;color:var(--text-inverse);font-size:13px;font-weight:600}.header-nav{align-items:center;gap:0;display:flex}.header-nav-link{height:var(--header-h);color:#ffffffb3;transition:color var(--ease);cursor:pointer;white-space:nowrap;align-items:center;padding:0 18px;font-size:14px;font-weight:400;display:flex;position:relative}.header-nav-link:hover{color:var(--white)}.header-nav-dropdown{position:relative}.header-dropdown{background:var(--white);border:1px solid var(--border);border-radius:var(--r-lg);width:260px;box-shadow:var(--shadow-lg);padding:6px;animation:.15s ddIn;position:absolute;top:100%;left:50%;transform:translate(-50%)}@keyframes ddIn{0%{opacity:0;transform:translate(-50%)translateY(-4px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.header-dropdown-item{color:var(--text-secondary);border-radius:var(--r-md);transition:all var(--ease);align-items:center;gap:10px;padding:10px 14px;font-size:14px;display:flex}.header-dropdown-item:hover{background:var(--bg);color:var(--text)}.header-dropdown-icon{text-align:center;width:20px;font-size:16px}.header-actions{align-items:center;gap:var(--sp-2);display:flex}.header-icon-btn{color:#ffffffb3;width:38px;height:38px;transition:color var(--ease);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.header-icon-btn:hover{color:var(--white)}.header-cart{position:relative}.header-cart-badge{background:var(--accent-gold);min-width:16px;height:16px;color:var(--white);border-radius:var(--r-full);justify-content:center;align-items:center;padding:0 4px;font-size:10px;font-weight:800;display:flex;position:absolute;top:2px;right:2px}.header-menu-btn{color:#ffffffb3;background:0 0;border:none;justify-content:center;align-items:center;width:38px;height:38px;display:none}.mobile-menu{z-index:500;position:fixed;inset:0}.mobile-menu-overlay{background:#0006;position:absolute;inset:0}.mobile-menu-panel{background:var(--white);width:min(320px,85vw);height:100%;animation:.25s slideIn;position:absolute;top:0;right:0;overflow-y:auto}@keyframes slideIn{0%{transform:translate(100%)}}.mobile-menu-header{padding:var(--sp-5);border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;display:flex}.mobile-menu-header .header-logo-brand{color:var(--text);font-size:12px}.mobile-close-btn{border:1px solid var(--border);width:36px;height:36px;color:var(--text-secondary);background:0 0;border-radius:50%;justify-content:center;align-items:center;display:flex}.mobile-menu-section{padding:var(--sp-3) 0}.mobile-menu-label{padding:var(--sp-2) var(--sp-5);letter-spacing:1.5px;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:600;display:block}.mobile-menu-item{padding:14px var(--sp-5);color:var(--text-secondary);transition:background var(--ease);align-items:center;gap:10px;font-size:15px;display:flex}.mobile-menu-item:hover{background:var(--bg);color:var(--text)}@media (max-width:768px){.header-nav{display:none}.header-menu-btn{display:flex}}.main-content{padding-top:var(--header-h)}
.footer{background:var(--bg-dark);color:var(--text-inverse)}.footer-top{padding:var(--sp-16) 0}.footer-grid{gap:var(--sp-12);grid-template-columns:1.5fr 1fr 1fr 1fr;display:grid}.footer-brand{margin-bottom:var(--sp-6);align-items:center;gap:12px;display:flex}.footer-logo-icon{font-size:28px}.footer-logo-brand{letter-spacing:2px;color:var(--white);font-size:13px;font-weight:600}.footer-logo-tagline{color:var(--accent-gold);font-size:13px;font-style:italic}.footer-desc{color:#ffffff80;margin-bottom:var(--sp-6);font-size:14px;line-height:1.7}.footer-phone{color:#ffffff80;font-size:14px}.footer-phone strong{color:var(--accent-gold)}.footer-col h4{letter-spacing:1.5px;text-transform:uppercase;color:#fff6;margin-bottom:var(--sp-6);font-size:11px;font-weight:600}.footer-col ul{flex-direction:column;gap:10px;display:flex}.footer-col li a{color:#fff9;transition:color var(--ease);align-items:center;gap:8px;font-size:14px;display:flex}.footer-col li a:hover{color:var(--white)}.footer-dot{border-radius:50%;flex-shrink:0;width:5px;height:5px}.footer-bottom{padding:var(--sp-6) 0;border-top:1px solid #ffffff14}.footer-bottom-inner{justify-content:space-between;align-items:center;display:flex}.footer-bottom p{color:#ffffff59;font-size:13px}.footer-bottom strong{color:var(--accent-gold)}.footer-social{gap:16px;display:flex}.footer-social a{color:#fff6;letter-spacing:.5px;transition:color var(--ease);font-size:12px;font-weight:500}.footer-social a:hover{color:var(--white)}@media (max-width:768px){.footer-grid{gap:var(--sp-8);grid-template-columns:1fr}.footer-bottom-inner{gap:var(--sp-4);text-align:center;flex-direction:column}}
:root{--white:#fff;--black:#111;--bg:#f7f7f7;--bg-card:#fff;--bg-muted:#f0f0f0;--bg-dark:#111;--text:#1a1a1a;--text-secondary:#555;--text-muted:#999;--text-inverse:#fff;--border:#e5e5e5;--border-light:#f0f0f0;--accent:#3d2b1f;--accent-gold:#d4a853;--accent-green:#2d7f46;--accent-red:#c0392b;--accent-orange:#e67e22;--civ-ottoman:#b8860b;--civ-roman:#8b4513;--civ-thien:#2d5016;--font-sans:"Be Vietnam Pro", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:"Be Vietnam Pro", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--text-hero:clamp(2.8rem, 6vw, 5rem);--text-h1:clamp(2rem, 4vw, 3rem);--text-h2:clamp(1.5rem, 3vw, 2rem);--text-h3:1.25rem;--text-body:1rem;--text-sm:.875rem;--text-xs:.75rem;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--sp-16:64px;--sp-20:80px;--sp-24:96px;--sp-32:128px;--r-sm:4px;--r-md:8px;--r-lg:12px;--r-xl:16px;--r-2xl:24px;--r-full:9999px;--shadow-sm:0 1px 2px #0000000a;--shadow-md:0 4px 12px #0000000f;--shadow-lg:0 8px 24px #00000014;--max-w:1280px;--header-h:64px;--ease:.2s ease;--ease-slow:.4s cubic-bezier(.4, 0, .2, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-sans);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit}ul,ol{list-style:none}.container{max-width:var(--max-w);padding:0 var(--sp-6);margin:0 auto}.btn{justify-content:center;align-items:center;gap:var(--sp-2);font-size:var(--text-sm);letter-spacing:.5px;border-radius:var(--r-full);transition:all var(--ease);white-space:nowrap;border:1px solid #0000;padding:14px 32px;font-weight:600;display:inline-flex}.btn-primary{background:var(--black);color:var(--text-inverse)}.btn-primary:hover{box-shadow:var(--shadow-md);background:#333;transform:translateY(-1px)}.btn-outline{color:var(--text);border-color:var(--border);background:0 0}.btn-outline:hover{border-color:var(--black);background:var(--black);color:var(--text-inverse)}.btn-ghost{color:var(--text-inverse);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #ffffff40}.btn-ghost:hover{background:#ffffff40}.btn-gold{background:var(--accent-gold);color:var(--white);border:none}.btn-gold:hover{background:#c49a45;transform:translateY(-1px);box-shadow:0 4px 16px #d4a8534d}.btn-sm{font-size:var(--text-xs);padding:8px 20px}.btn-lg{font-size:var(--text-body);padding:16px 40px}.btn-outline-light{color:var(--text-inverse);background:0 0;border-color:#ffffff4d}.btn-outline-light:hover{background:var(--white);color:var(--black);border-color:var(--white)}.badge{border-radius:var(--r-full);letter-spacing:.3px;align-items:center;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}.badge-red{background:var(--accent-red);color:#fff}.badge-green{background:var(--accent-green);color:#fff}.skeleton{background:linear-gradient(90deg, var(--bg-muted) 25%, #e8e8ea 50%, var(--bg-muted) 75%);border-radius:var(--r-lg);background-size:200% 100%;animation:1.5s infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.toast-container{top:var(--sp-6);right:var(--sp-6);z-index:9999;gap:var(--sp-2);flex-direction:column;display:flex;position:fixed}.toast{padding:var(--sp-4) var(--sp-6);background:var(--black);color:var(--text-inverse);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);font-weight:500;font-size:var(--text-sm);animation:.3s toastIn,.3s 2.7s forwards toastOut}@keyframes toastIn{0%{opacity:0;transform:translate(100%)}}@keyframes toastOut{to{opacity:0;transform:translateY(-10px)}}.section-label{font-size:var(--text-xs);letter-spacing:3px;text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--sp-4);font-weight:600}.section-title{font-family:var(--font-display);font-size:var(--text-h1);color:var(--text);margin-bottom:var(--sp-4);font-weight:600;line-height:1.2}.section-title--center{text-align:center}.section-subtitle{font-size:var(--text-body);color:var(--text-muted);max-width:560px;line-height:1.7}.section-subtitle--center{text-align:center;margin-left:auto;margin-right:auto}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(24px)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}.divider-gold{background:var(--accent-gold);width:40px;height:2px;margin:var(--sp-6) 0}.divider-gold--center{margin-left:auto;margin-right:auto}.form-group{margin-bottom:var(--sp-4)}.form-label{font-size:var(--text-xs);color:var(--text-muted);margin-bottom:var(--sp-1);text-transform:uppercase;letter-spacing:.5px;font-weight:600;display:block}.form-input{border:1px solid var(--border);border-radius:var(--r-md);background:var(--white);width:100%;color:var(--text);transition:border-color var(--ease);padding:12px 16px;font-size:15px}.form-input:focus{border-color:var(--black);outline:none}.form-input.error{border-color:var(--accent-red)}.form-error{color:var(--accent-red);margin-top:4px;font-size:12px}.products-grid{gap:var(--sp-6);grid-template-columns:repeat(4,1fr);display:grid}@media (max-width:1024px){.products-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.container{padding:0 var(--sp-4)}:root{--header-h:56px}.products-grid{gap:var(--sp-4);grid-template-columns:repeat(2,1fr)}}
