/* -- El Giraldillo Theme Start -- */
:root{
  --primary:#333;--primary-dark:#222;--secondary:#666;--light:#f8f9fa;--cream:#fff;--cream-light:#fafafa;--border-light:#e9ecef;--text-dark:#333;--text-muted:#666
}
html,body{scroll-behavior:smooth}
body{font-family:'Fira Sans',system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,'Helvetica Neue',sans-serif;color:var(--text-dark);background:#fff}
.fraktur-title, h1,h2,h3,.brand-giraldillo,.section-title-giraldillo{font-family:'Bodoni Moda',serif}
.nav-custom{background:#fff;border-bottom:1px solid #eee}
.nav-custom .nav-list a{color:var(--text-dark)}
.btn{border-radius:8px;padding:.75rem 1.25rem;font-weight:500}
.btn-primary{background:var(--primary)!important;border-color:var(--primary)!important;color:#fff}
.btn-primary:hover{background:var(--primary-dark)!important;border-color:var(--primary-dark)!important}
.btn-outline-primary{border-color:var(--primary);color:var(--primary)}
.btn-outline-primary:hover{background:var(--primary);border-color:var(--primary);color:#fff}
.btn-outline-dark{border-color:var(--text-dark);color:var(--text-dark)}
.btn-outline-dark:hover{background:var(--text-dark);border-color:var(--text-dark);color:#fff}
.section-title{font-size:clamp(1.6rem,4vw,2.2rem);margin-bottom:1rem;color:var(--text-dark)}
.card{border:1px solid var(--border-light);border-radius:8px}
/* Footer CSS đã được inline trong HTML */
/* -- El Giraldillo Theme End -- */
/* -- Nav El Giraldillo Style Professional -- */
.mobile-menu-overlay{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.9);
    opacity:0;
    visibility:hidden;
    transition:all .4s ease;
    z-index:2000;
    backdrop-filter:blur(5px);
    display:none;
}
.mobile-menu-overlay.open{
    opacity:1;
    visibility:visible;
    display:flex;
    align-items:flex-start;
    justify-content:flex-start;
}
.mobile-menu-content{
    background:#fff;
    width:100%;
    max-width:350px;
    height:100vh;
    padding:40px 30px;
    transform:translateX(-100%);
    transition:transform .4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    box-shadow:2px 0 30px rgba(0,0,0,0.2);
    position:relative;
}
.mobile-menu-overlay.open .mobile-menu-content{
    transform:translateX(0);
}
.close-menu{
    background:transparent;
    border:0;
    font-size:24px;
    position:absolute;
    right:20px;
    top:20px;
    color:#666;
    cursor:pointer;
    width:40px;
    height:40px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    transition:all .3s ease;
    font-weight:300;
}
.close-menu:hover{
    background:rgba(139,115,85,0.1);
    color:#8B7355;
    transform:rotate(90deg);
}
.mobile-nav-list{
    list-style:none;
    margin:0;
    padding:0;
    margin-top:80px;
}
.mobile-nav-list li{
    margin-bottom:0;
    border-bottom:1px solid #f5f5f5;
}
.mobile-nav-list li:last-child{
    border-bottom:none;
}
.mobile-nav-list a{
    color:#333;
    text-decoration:none;
    font-size:1.1rem;
    font-weight:500;
    letter-spacing:0.5px;
    transition:all .3s ease;
    display:block;
    padding:20px 0;
    position:relative;
    text-transform:uppercase;
    font-size:0.95rem;
}
.mobile-nav-list a:hover{
    color:#8B7355;
    padding-left:15px;
}
.mobile-nav-list a:hover::before{
    content:'';
    position:absolute;
    left:0;
    top:50%;
    transform:translateY(-50%);
    width:4px;
    height:25px;
    background:#8B7355;
    border-radius:2px;
}
/* Hide mobile menu by default */
@media (min-width: 992px) {
    .mobile-menu-overlay{
        display:none !important;
    }
}
/* Add padding to body to account for fixed header */
body{padding-top:0}
/* -- Nav El Giraldillo End -- */
