/* 全局重置确保全宽 
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html, body {
    width: 100%;
    overflow-x: hidden;
    margin: 0;
    padding: 0;
}

 确保所有容器都允许全宽 
body > * {
    max-width: 100% !important;
}*/

/* 全宽容器样式 - 确保header真正全宽
.header-fullwidth-container {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    display: block !important;
    box-sizing: border-box !important;
} */
/* 替代方案：使用vw单位确保全宽 */
.header-fullwidth-container {
    width: 100% !important;
    /*position: relative !important;
    left: 50% !important;
    right: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;*/
    padding: 0 !important;
    display: block !important;
    box-sizing: border-box !important;
}

/* 头部容器 - 所有页面通用 */
.site-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100% !important;
    min-width: 100%;
    z-index: 1000;
    background: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    transition: all 0.3s ease;
    padding: 0;
    margin: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

/* 头部内部容器 - 所有页面通用 */
.header-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 0;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto;
    position: relative;
}

/* 左侧菜单 - 所有页面通用 */
.header-menu {
    flex: 1;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin-left: 3.75dvw;
    min-width: 0;
}

/* 主菜单样式 - 所有页面通用 */
.primary-menu {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 60px;
}

.primary-menu li {
    margin: 0;
}

.primary-menu a {
    color: #333;
    text-decoration: none;
    font-family: "avenir-next-world", sans-serif;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 500;
    transition: all 0.3s ease;
    padding: 8px 0px;
    border-radius: 4px;
    display: block;
}

.primary-menu a:hover {
    color: #000;
    background: rgba(255, 255, 255, 0.3);
}

/* 中间LOGO - 所有页面通用 */
.header-logo {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 1001;
    flex-shrink: 0;
    /* 确保容器本身没有额外空间 */
    line-height: 0;
    height: 70px; /* 明确设置容器高度 */
    display: flex;
    align-items: center;
}

.header-logo img {
    height: 70px;
    width: auto;
    transition: all 0.3s ease;
    display: block;          /* 关键：消除inline元素额外空间 */
    line-height: 0;          /* 消除行高影响 */
}

/* 右侧图标区域 - 所有页面通用 */
.header-extras {
    flex: 1;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 60px;
    margin-right: 3.75dvw;
    min-width: 0;
}

/* 图标样式 - 所有页面通用 */
.my-account-icon,
.cart-icon,
.search-toggle {
    color: #333;
    text-decoration: none;
    display: flex;
    align-items: center;
    transition: all 0.3s ease;
    padding: 8px;
    border-radius: 4px;
}

.my-account-icon:hover,
.cart-icon:hover,
.search-toggle:hover {
    color: #000;
    background: rgba(255, 255, 255, 0.3);
}

.cart-icon {
    position: relative;
}

.cart-count {
    position: absolute;
    top: -2px;
    right: -2px;
    background: #d4af37;
    color: white;
    border-radius: 50%;
    width: 18px;
    height: 18px;
    font-size: 11px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
}

/* 购物车图标样式 - 针对所有页面 */
.header-extras .cart-icon {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}

.header-extras .cart-count {
    position: absolute;
    top: -8px;
    right: -8px;
    background: #ff0000;
    color: #ffffff;
    border-radius: 50%;
    min-width: 18px;
    height: 18px;
    font-size: 12px;
    line-height: 18px;
    text-align: center;
    font-weight: bold;
}

/* 特别针对产品单页的样式重置 */
.single-product .header-extras .cart-icon,
.single-product .header-extras .cart-count {
    all: unset;
}

.single-product .header-extras .cart-icon {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.single-product .header-extras .cart-count {
    position: absolute !important;
    top: -8px !important;
    right: -8px !important;
    background: #ff0000 !important;
    color: #ffffff !important;
    border-radius: 50% !important;
    min-width: 18px !important;
    height: 18px !important;
    font-size: 12px !important;
    line-height: 18px !important;
    text-align: center !important;
    font-weight: bold !important;
}

/* 滚动时头部样式 - 所有页面通用 */
.site-header.scrolled {
    background-color: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.site-header.scrolled .primary-menu a,
.site-header.scrolled .my-account-icon,
.site-header.scrolled .cart-icon,
.site-header.scrolled .search-toggle {
    color: #333;
}

.site-header.scrolled .header-logo {
    height: 60px; /* 与图片高度同步 */
}

.site-header.scrolled .header-logo img {
    filter: brightness(0.8);
    height: 60px;
}

/* 内容区域基础样式 - 所有页面通用 */
.site-content {
    position: relative;
    background: #fffbf6;
    z-index: 997;
}

/* 确保整个网站背景色一致 */
body {
    background-color: rgba(255, 251, 246) !important;
}

.site-content {
    background-color: rgba(255, 251, 246) !important;
}

/* 非首页的内容区域需要顶部边距 */
body:not(.home) .site-content {
    margin-top: 3vh; /* 为固定header留出空间 从80px改为3vh 大约25px*/
}

/* 首页内容区域特殊处理 */
.home .site-content {
    margin-top: calc(100vh - 80px - 50px); /* 确保内容从幻灯片底部开始 */
}

/* 响应式设计 - 所有页面通用 */
@media (max-width: 1200px) {
    .header-menu {
        margin-left: 3%;
    }
    
    .header-extras {
        margin-right: 3%;
        gap: 20px;
    }
    
    .primary-menu {
        gap: 20px;
    }

    /* 重点：重置主内容区域的大边距 */
    .home .site-content {
        margin-top: 0 !important;    /* 覆盖原有计算值 */
    }
}

@media (max-width: 768px) {
    .header-inner {
        padding: 10px 0;
    }
    
    .header-menu {
        margin-left: 2%;
    }
    
    .header-extras {
        margin-right: 2%;
        gap: 10px;
    }

    .header-logo {
        height: 45px; /* 移动端容器高度 */
    }
    
    .header-logo img {
        height: 45px;
    }
    
    .site-header.scrolled .header-logo {
        height: 40px; /* 移动端滚动时容器高度 */
    }

    .site-header.scrolled .header-logo img {
        height: 40px;
    }
    
    .primary-menu {
        gap: 10px;
    }
    
    .primary-menu a {
        font-size: 12px;
        letter-spacing: 1px;
        padding: 6px 0px;
    }
    
    body:not(.home) .site-content {
        margin-top: 60px; /* 移动端减少顶部边距 */
    }
}

@media (max-width: 480px) {
    .header-menu {
        margin-left: 1%;
    }
    
    .header-extras {
        margin-right: 1%;
        gap: 8px;
    }
    
    .primary-menu {
        gap: 8px;
    }
    
    .primary-menu a {
        font-size: 11px;
        padding: 4px 0px;
    }
}

/* 我的账户菜单样式 */
.account-menu-wrapper {
    position: relative;
    display: inline-block;
}

.my-account-icon {
    color: #333;
    text-decoration: none;
    display: flex;
    align-items: center;
    transition: all 0.3s ease;
    padding: 8px;
    border-radius: 4px;
}

.my-account-icon:hover {
    color: #000;
    background: rgba(255, 255, 255, 0.3);
}

/* 账户下拉菜单 */
.account-dropdown {
    position: absolute;
    top: 100%;
    right: 0;
    background: white;
    border-radius: 8px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
    padding: 15px 0;
    min-width: 180px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all 0.3s ease;
    z-index: 1002;
    border: 1px solid rgba(0, 0, 0, 0.1);
}

.account-menu-wrapper:hover .account-dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

/* 账户下拉菜单项 */
.account-welcome {
    padding: 0 20px 10px;
    border-bottom: 1px solid #f0f0f0;
    margin-bottom: 10px;
    font-size: 13px;
    color: #666;
}

.account-link {
    display: block;
    padding: 8px 20px;
    color: #333;
    text-decoration: none;
    font-size: 14px;
    transition: all 0.2s ease;
    font-family: "avenir-next-world", sans-serif;
}

.account-link:hover {
    background: #f8f8f8;
    color: #000;
}

/* 确保下拉菜单箭头 */
.account-dropdown::before {
    content: '';
    position: absolute;
    top: -6px;
    right: 20px;
    width: 12px;
    height: 12px;
    background: white;
    transform: rotate(45deg);
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    border-left: 1px solid rgba(0, 0, 0, 0.1);
}

/* 滚动时账户图标样式 */
.site-header.scrolled .my-account-icon {
    color: #333;
}

.site-header.scrolled .my-account-icon:hover {
    color: #000;
}

/* 针对搜索表单的提交按钮 */
/* 搜索表单容器 */
.custom-search-form {
    position: absolute;
    top: 100%;
    right: 0;
    background: white;
    padding: 15px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    z-index: 1000;
}

/* 搜索表单内部布局 */
.custom-search-form form {
    display: flex;
    align-items: center;
}

/* 搜索输入框 */
.custom-search-form input[type="text"] {
    padding: 8px 12px;
    border: 1px solid #ddd;
    border-radius: 4px;
    margin-right: 5px;
}

/* 搜索提交按钮 */
.custom-search-form button[type="submit"] {
    background-color: #000000 !important;
    color: #ffffff !important;
    border: none;
    padding: 8px 15px;
    border-radius: 4px;
    cursor: pointer;
}

/* 关闭按钮 */
.close-search {
    background-color: #000000 !important;
    color: #ffffff !important;
    padding: 8px 12px;
    text-decoration: none;
    border-radius: 4px;
    margin-left: 5px;
    display: inline-block;
}

/* 悬停效果 */
.custom-search-form button[type="submit"]:hover,
.close-search:hover {
    background-color: #333333 !important;
}


/* 响应式设计 */
@media (max-width: 768px) {
    .account-dropdown::before {
        display: none;
    }

    /* 移动端账户菜单激活状态 */
    .account-menu-wrapper.active .my-account-icon {
        background: rgba(255, 255, 255, 0.3);
    }
    
    .account-dropdown {
        display: none;
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        border-radius: 15px 15px 0 0;
        transform: none;
        opacity: 1;
        visibility: visible;
    }
    
    .account-menu-wrapper.active .account-dropdown {
        display: block;
    }
    
    .account-menu-wrapper:hover .account-dropdown {
        transform: none;
    }
}


/* Footer 基础样式（保留原有视觉风格） */
.site-footer {
    width: 100% !important;
    max-width: 100% !important;
    background-color: rgba(255, 255, 255, 0.8);
    color: rgb(51, 51, 51);
    padding: 40px 0;
    box-sizing: border-box;
    font-family: "avenir-next-world", sans-serif;
}

.footer-inner {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto;
    padding: 0 3.75dvw; /* 保留原有的左右边距比例 */
    display: block; /* 确保块级布局 */
}

/* 第一行：LOGO 居中 */
.footer-logo-row {
    text-align: center;
    margin-bottom: 40px;
}

.footer-logo-image {
    max-height: 50px;   /* 保留原有高度限制 */
    width: auto;
    opacity: 0.8;
    display: inline-block;
}

/* 第二行：左右两大列 */
.footer-links-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 30px;
    margin-bottom: 40px;
}

.footer-links-col {
    flex: 1 1 calc(50% - 15px);
    min-width: 250px;
}

.links-col-title {
    font-size: 14px;            /* 与原有菜单字体一致 */
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: normal;        /* 可根据需要改为 bold */
    margin-bottom: 15px;
    color: rgb(51, 51, 51);
}

/* 链接网格：使用 flex 实现两列 */
.links-grid {
    display: flex;
    gap: 20px;
}

.grid-list {
    flex: 1;
    list-style: none;
    padding: 0;
    margin: 0;
}

.grid-list li {
    margin-bottom: 10px;
}

.grid-list a {
    color: rgb(51, 51, 51);
    text-decoration: none;
    font-size: 14px;
    transition: color 0.3s ease;
    font-family: "avenir-next-world", sans-serif;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.grid-list a:hover {
    color: rgb(205,185,160);
}

/* 第三行：版权声明 */
.footer-copyright-row {
    text-align: center;
    border-top: 1px solid rgba(51, 51, 51, 0.1); /* 浅色分隔线 */
    padding-top: 20px;
    font-size: 12px;
    color: rgb(130,100,70);  /* 保留原有版权颜色 */
}

/* 响应式设计 */
@media (max-width: 1200px) {
    .footer-inner {
        padding: 0 3%;  /* 对应原有 margin 缩放的逻辑 */
    }
}

@media (max-width: 768px) {
    .footer-links-row {
        flex-direction: column; /* 左右列上下堆叠 */
        gap: 30px;
    }

    .footer-links-col {
        flex: 1 1 100%;
    }

    /* 每列内部链接网格也改为单列 */
    .links-grid {
        flex-direction: column;
        gap: 0;
    }

    .grid-list {
        margin-bottom: 10px;
    }

    .grid-list li {
        margin-bottom: 8px;
    }

    /* 可以保留原有移动端 logo 和菜单的居中调整 */
    .footer-logo-image {
        max-height: 40px; /* 略小一点 */
    }
}

@media (max-width: 480px) {
    .grid-list a {
        font-size: 11px;       /* 与原有移动端一致 */
        letter-spacing: 1px;
    }
}

/* 临时添加参考线让客户确认
.header-menu::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 63.725px;
    background: rgba(255,0,0,0.3);
    pointer-events: none;
} */

/* 产品单页内容区域统一左右边距，但排除footer 
body.single-product #content > *:not(#site-footer)
扩展到除了主页的每一页

body.single-product #content > *:not(#site-footer) {
    margin-left: 3.75vw;
    margin-right: 3.75vw;
    box-sizing: border-box;
}
*/

/* body:not(.home) #content > *:not(footer):not(.site-footer):not(.no-margin):not(.full-width) {
    margin-left: 3.75vw;
    margin-right: 3.75vw;
    box-sizing: border-box;
} */

/* 排除Shop主页，因为Shop页面有独立的布局规则 */
body:not(.home):not(.woocommerce-shop) #content > *:not(footer):not(.site-footer):not(.no-margin):not(.full-width) {
    margin-left: 3.75vw;
    margin-right: 3.75vw;
    box-sizing: border-box;
}

/* 让所有产品单页的tab下面没有空间*/
.woocommerce div.product .woocommerce-tabs .panel {
    margin-bottom: 0 !important;
}

.site-footer .footer-logo-row,
.site-footer .footer-links-row,
.site-footer .footer-copyright-row {
    display: block !important;
    width: 100% !important;
    clear: both !important;
}