/* layout.css - 页头页脚等布局样式（模块化CSS规范） */

/* 页头模块 */
#Header {width:100%;height:134px;margin:0;box-shadow:var(--shadow-sm);position:relative;z-index:var(--z-index-sticky);}
#Header .header-top {background-color:#f7be00;height:70px;display:flex;align-items:center;}
#Header .header-top-content {width:calc(100% - 3rem);height:100%;margin:0 0 0 3rem;display:flex;justify-content:space-between;align-items:center;padding:0;}
/* @media screen and (min-width: 1681px) {
    #Header .header-top-content {
        width:1590px;margin:0 auto;padding:0;
    }
} */
#Header .logo {height:100%;}
#Header .logo a {height:100%;display:flex;align-items:center;justify-content:center;}
#Header .logo img {height:80%;width:auto;}
#Header .contact-info {height:100%;}
#Header .contact-item {display:flex;width:auto;min-width:5rem;align-items:center;justify-content:center;font-size:var(--font-size-small);color:#333;border-left:1px solid rgba(255, 255, 255, 0.3);height:100%;float:left;position:relative;cursor:pointer;transition:all 0.3s ease;overflow:hidden;}
#Header .contact-item .contact-icon {width:20px;height:20px;flex-shrink:0;z-index:2;}
#Header .contact-item .contact-text {width:0;opacity:0;overflow:hidden;background-color:transparent;border:none;color:#fff;padding:0.5rem 0;font-size:var(--font-size-small);white-space:nowrap;transition:all 0.3s ease;display:flex;align-items:center;position:relative;}
#Header .contact-item .contact-text a {color:#fff;font-size:var(--font-size-small);}
#Header .contact-item:hover {padding: 0 1rem 0 0;}
#Header .contact-item:hover .contact-text {width: auto;opacity: 1;margin:0 15px;padding: 0.5rem;border: 1px solid #fff;border-radius: 0.3rem;}
/* 移动端触控支持 */
@media (hover: none) and (pointer: coarse) {
    #Header .contact-item:active .contact-text {
        width:auto;opacity:1;overflow:visible;margin:0 15px;padding:0.5rem;border:1px solid #fff;border-radius:0.3rem;
    }
}
/* 导航模块 */
#Header .header-nav {width:100%;margin:0;background-color:#232323;height:64px;display:flex;align-items:center;}
#Header .nav-content {width:calc(100% - 3rem);height:100%;padding:0;margin:0 0 0 3rem;display:flex;justify-content:space-between;align-items:center;}
#Header .main-nav {height:100%;}
#Header .main-nav .nav-list {display:flex;align-items:center;list-style:none;padding:0;margin:0;height:100%;}
#Header .main-nav .nav-item {margin: 0;height:100%;}
#Header .main-nav .nav-item:first-child {
    /* border-left: 1px solid #444; */
}

/* ----- */
#Header .main-nav .nav-item .sub_bx {width:100%;position:absolute;z-index:101;left:0;top:134px;background-color:#e6e6e6;}
#Header .main-nav .nav-item .sub_bx dl {width:100%;/*! margin:0 auto; *//*! padding: 0 6%; */}
#Header .main-nav .nav-item .sub_bx dl dt {width:29%;float:left;padding:36px 2% 40px 3%;text-align:left;}
#Header .main-nav .nav-item .sub_bx dl dt h2 {line-height:32px;font-size:24px;color:#333;margin-bottom:12px;text-align:left;font-weight: normal;}
#Header .main-nav .nav-item .sub_bx dl dt h1 {height:56px;line-height:56px;font-size:50px;color:#333;font-family:"bebas";text-align:left;font-weight:normal;margin-bottom:28px;text-transform:uppercase;} 
#Header .main-nav .nav-item .sub_bx dl dt p {font-size:16px;color:#666;font-weight:300;line-height:24px;text-align:left;}
#Header .main-nav .nav-item .sub_bx dl dd {width:64%;float:right;padding:40px 0 10px 2%;text-align:left;background-color: #fafafa;}

#Header .main-nav .nav-item .sub_bx dl dd a.list {display:inline-block;width:160px;margin:0 20px 20px 20px;float:left;}
#Header .main-nav .nav-item .sub_bx dl dd a.list .img {width:100%;height:100px;overflow:hidden;}
#Header .main-nav .nav-item .sub_bx dl dd a.list .img img {width:160px;height:100px;}
#Header .main-nav .nav-item .sub_bx dl dd a.list h3 {height:36px;line-height:18px;font-size:16px;font-family:'Proxima Nova';text-transform:none;color:#333;font-weight:normal;margin:10px 0 6px 0;text-align:left;}
#Header .main-nav .nav-item .sub_bx dl dd a.list p {height:60px;font-size:13px;color:#939393;line-height:20px;text-align:left;overflow:hidden;}

#Header .main-nav .nav-item .sub_bx #lk_1 dd a.list {display:inline-block;height:44px;width:240px;border:1px solid #333;margin:0 20px 12px 20px;box-shadow: inset 2px 2px 7px 0px rgba(0,0,0,.06);}
#Header .main-nav .nav-item .sub_bx #lk_1 dd a.list .img {display:none;}
#Header .main-nav .nav-item .sub_bx #lk_1 dd a.list h3 {height:44px;line-height:44px;width:100%;font-size:17px;color:#333;margin:0;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#Header .main-nav .nav-item .sub_bx #lk_1 dd a.list p {display:none;}
#Header .main-nav .nav-item .sub_bx #lk_1 dd a.list:hover {border:1px solid #f28e00;background-color:#f28e00;}
#Header .main-nav .nav-item .sub_bx #lk_1 dd a.list:hover h3 {color:#fff;}

#Header .nav-content .wNavBtn {display:flex;align-items:center;justify-content:center;width:5rem;height:100%;position:relative;border-left:1px solid #444;}
#Header .nav-content .wNavBtn .menuBtn { width:56px;height:31px;/*position: absolute;z-index: 10000;left:52px;top:21px;*/cursor: pointer;}
#Header .nav-content .wNavBtn .menuBtn .bar {height:3px;width:26px;display: block;margin:6px auto;position: relative;background-color: #fff;-moz-transition: 0.4s;-o-transition: 0.4s;-webkit-transition: 0.4s;transition: 0.4s;}
#Header .nav-content .wNavBtn .menuBtn #b_2 {height:2px;width:21px;margin:6px auto 6px 15px;}
#Header .nav-content .wNavBtn .menuBtn #b_3 {height:2px;width:16px;margin:6px auto 6px 15px;}
#Header .nav-content .wNavBtn .cur #b_2,
#Header .nav-content .wNavBtn .cur #b_3 {width:26px;height:3px;}
#Header .nav-content .wNavBtn .cur .bar:nth-of-type(1) {
  -moz-transform: translateY(9px) rotate(45deg);
  -ms-transform: translateY(9px) rotate(45deg);
  -webkit-transform: translateY(9px) rotate(45deg);
  transform: translateY(9px) rotate(45deg);
}
#Header .nav-content .wNavBtn .cur .bar:nth-of-type(2) {
  opacity: 0;
}
#Header .nav-content .wNavBtn .cur .bar:nth-of-type(3) {
  -moz-transform: translateY(-9px) rotate(-45deg);
  -ms-transform: translateY(-9px) rotate(-45deg);
  -webkit-transform: translateY(-9px) rotate(-45deg);
  transform: translateY(-9px) rotate(-45deg);
}

.body-shadow{width: 100%;height: 100%;position: absolute;background:#383838;/*opacity: 0.8;*/z-index:1000;display: none;}

#nav {background:#fff;position:absolute;z-index:9999;width:0;height:100%; right:0;top:134px;overflow: hidden;}
#nav nav_c_ff {color:#fff;}
#nav dl { padding:0 3%;}
#nav dl dt {height:42px;line-height:42px;border-bottom:1px solid #e5e5e5;padding:0 5px;background:url(../images/inc_t_1.png) no-repeat right center;text-transform:uppercase;}
#nav dl dt a {color:#666;font-size:16px;font-weight:600;font-family:ProximaNova, "Proxima Nova W10", Arial, Helvetica, sans-serif;}
#nav dl dt:hover {background: url(../images/inc_t_1a.png) no-repeat right center;}
#nav dl dt:hover a {color:#f25907;}
#nav dl dt.open {background: url(../images/inc_t_1a.png) no-repeat right center;}
#nav dl dt.open a {color:#f25907;}
#nav dl dd {display: none; padding:0 12px;}
#nav dl dd a {display: block;font-size:1.25rem;color:#666;line-height: 36px;}
#nav dl dd a:hover { color:#f25907;}
#nav_Mask {background:rgba(0,0,0,0.7);position:absolute;z-index:9990;width:100%;height:100%;left:0;top:134px;display: none;}

#Header .nav-link {display:flex;justify-content:center;align-items:center;position:relative;height:100%;line-height:100%;color:var(--color-white);font-family:var(--font-family-body);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);text-transform:uppercase;text-decoration:none;transition:var(--transition-base);padding: 0 2rem;}
#Header .nav-link:before {content: '';position:absolute;height:calc(100% - 12px);width:1px;z-index:1;left:0px;top:6px;background-color:#444;}
#Header .main-nav .nav-item:last-child .nav-link:after {content: '';position:absolute;height:calc(100% - 8px);width:1px;z-index:1;right:0px;top:4px;background-color:#444;}
#Header .nav-link:hover,
#Header .nav-link.active {color: #f7be00;}

#Header .menu-toggle {display:flex;width:5rem;align-items:center;justify-content:center;color:#fff;font-size:2rem;border-left:1px solid #444;height:64px;cursor:pointer;transition:all 0.3s ease;font-family:var(--font-family-body);font-weight:var(--font-weight-normal);position:relative;}
#Header .menu-toggle span {position:relative;display:inline-block;transition:all 0.3s ease;font-size:2rem;line-height:1;}
#Header .menu-toggle:hover {color:#f7be00;}
/* 使用伪元素实现≡到×的变换 */
#Header .menu-toggle span::before {content:'';position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:20px;height:20px;opacity:0;transition:all 0.3s ease;}
#Header .menu-toggle:hover span::before {content:'×';opacity:1;font-size:1.8rem;color:#f7be00;transform:translate(-50%, -50%) rotate(180deg);}
#Header .menu-toggle:hover span {color:transparent;}
#Header .HDnav_fixed {position:fixed;z-index:99999;top:0;left:0;background-color:rgba(0,0,0,0.76);height:60px;}
#Header .HDnav_fixed .nav-item .sub_bx {top:60px;}
.nav_fixed {position:fixed!important;z-index:100000!important;right:0!important;}
@media screen and (min-width: 1681px) {
    /* #Header .nav-content {
        width:1590px;margin:0 auto;padding:0;
    } */
    
    #Header .menu-toggle {
        margin-right: 6%;
    }
}
@media (max-width:1441px) {
    #Header {height:126px;}
    #Header .header-top {height:66px;}
    #Header .header-nav {width:100%;margin:0;height:60px;}
    #Header .main-nav .nav-item .sub_bx {top:126px;}
    #nav {top:126px}
    #nav_Mask {top:126px;}
}
@media (max-width:1361px) {}
@media (max-width:1281px) {
    #Header {height:116px;}
    #Header .header-top {height:60px;}
    #Header .header-nav {width:100%;margin:0;height:56px;}
    #Header .main-nav .nav-item .sub_bx {top:116px;}
    #nav {top:116px}
    #nav_Mask {top:116px;}
}
@media (max-width:1181px) {
    #Header .header-top-content {width:96%;margin:0 0 0 4%;padding:0;}
    #Header .nav-content {width:96%;padding:0;margin:0 0 0 4%;} 
    #Header .main-nav .nav-list {display:none;}
}
@media (max-width:1025px) {
    #Header {height:106px;}
    #Header .header-top {height:54px;}
    #Header .header-nav {width:100%;margin:0;height:52px;}
    #nav {top:106px}
    #nav_Mask {top:106px;}
}
@media (max-width:961px) {}
@media (max-width:801px) {
    #Header {height:98px;}
    #Header .header-top {height:50px;}
    #Header .header-nav {width:100%;margin:0;height:48px;}
    #nav {top:98px}
    #nav_Mask {top:98px;}
}
@media (max-width:701px) {
    #Header .logo img {height:56%;width:auto;}
    #Header .contact-item {width:auto;min-width:4rem;}
    #Header .contact-item:hover {padding: 0 0.6rem 0 0;}
    #Header .contact-item:hover .contact-text {margin:0 3px;padding: 0.12rem;}
    @media (hover: none) and (pointer: coarse) {
        #Header .contact-item:active .contact-text {
            margin:0 3px;padding:0.12rem;
        }
    }
    #Header .nav-content .wNavBtn {width:4rem;}
}
@media (max-width:601px) {}
@media (max-width:501px) {}

/* 全屏菜单 */
.full-screen-menu {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(35, 35, 35, 0.95);
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}

.full-screen-menu.active {
    opacity: 1;
    visibility: visible;
}

.full-screen-menu .menu-close {
    position: absolute;
    top: 2rem;
    right: 2rem;
    color: #fff;
    font-size: 3rem;
    cursor: pointer;
    transition: color 0.3s ease;
}

.full-screen-menu .menu-close:hover {
    color: #f7be00;
}

.full-screen-menu .menu-content {
    text-align: center;
    color: #fff;
}

.full-screen-menu .full-menu-list {
    list-style: none;
    padding: 0;
    margin: 0 0 3rem 0;
}

.full-screen-menu .full-menu-list li {
    margin: 1rem 0;
}

.full-screen-menu .full-menu-link {
    color: #fff;
    text-decoration: none;
    font-family: var(--font-family-heading);
    font-size: 3rem;
    font-weight: var(--font-weight-bold);
    text-transform: uppercase;
    transition: color 0.3s ease;
    display: block;
    padding: 1rem 2rem;
}

.full-screen-menu .full-menu-link:hover {
    color: #f7be00;
}

.full-screen-menu .menu-contact {
    font-family: var(--font-family-body);
    font-size: var(--font-size-large);
    color: #ccc;
    line-height: 1.6;
}

.full-screen-menu .menu-contact p {
    margin: 0.5rem 0;
}

/* 主内容区域 */
#MainContent {
    width: 100%;
    margin: 0;
    min-height: 100vh;
    padding: 0;
}

#MainContent .main-wrapper {
    width: 88%;
    margin: 0 auto;
}

@media screen and (min-width: 1681px) {
    #MainContent .main-wrapper {
        width: 1590px;
        margin: 0 auto;
    }
}

#MainContent .section {
    margin-bottom: var(--spacing-xxxl);
}

#MainContent .section:last-child {
    margin-bottom: 0;
}



/* 页脚模块 */
#Footer {
    width: 100%;
    margin: 0;
    color: var(--color-white);
}

#Footer .footer-top {
    background-color: #eea900;
    padding: 2.5rem 0;
}

#Footer .footer-top-content {
    width: 88%;
    margin: 0 auto;
    display:grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem; 
}
@media (max-width:901px) {
    #Footer .footer-top-content {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem; 
    }
}
@media (max-width:601px) {
    #Footer .footer-top-content {
    grid-template-columns: repeat(1, 1fr);
    gap: 1.2rem; 
    }
}

@media screen and (min-width: 1681px) {
    #Footer .footer-top-content,
    #Footer .footer-main-content,
    #Footer .footer-bottom-content {
        width: 1590px;
    }
}

#Footer .footer-contact-item {
    display: flex;
    align-items: center;
    gap: 1rem;
}

#Footer .footer-contact-icon {
    width: 50px;
    height: 50px;
    border: 1px solid #333;
    color: #333;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}

#Footer .footer-contact-icon i {
    color: #333;
    width: 24px;
    height: 24px;
}
#Footer .footer-contact-info {flex: 1;}
#Footer .footer-contact-label {
    font-size: var(--font-size-small);
    text-transform: uppercase;
    color: #fff;
}
#Footer .footer-contact-value {
    font-size: 1.25rem;
    font-weight: var(--font-weight-bold);
    font-family: var(--font-family-numeric);
    color: #fff;
}
#Footer .footer-contact-value a {font-family: var(--font-family-numeric);color: #fff;}
#Footer .footer-contact-value.small {
    font-size: 1rem;
    font-weight: var(--font-weight-semibold);
}


#Footer .footer-main {
    background-color: #282828;
    padding: 0;
    border-top:8px solid #eea900;
}

#Footer .footer-main-content {
    width: 88%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    gap: 3rem;
}

#Footer .footer-nav {
    display: flex;
    gap: 3rem;
    flex: 1;
    padding: 4rem 0;
}

#Footer .footer-nav-section {
    display: flex;
    flex-direction: column;
}

#Footer .footer-nav-section:first-child {
    flex: 0 0 33.33%;
}

#Footer .footer-nav-section:last-child {
    flex: 0 0 66.66%;
}

#Footer .footer-nav-title {
    font-family: var(--font-family-heading);
    font-size: 1.6rem;
    font-weight: var(--font-weight-bold);
    color: var(--color-white);
    margin-bottom: 1.5rem;
    text-transform: uppercase;
    position: relative;
}

#Footer .footer-nav-title::after {
    content: '';
    position: absolute;
    bottom: -0.5rem;
    left: 0;
    width: 5rem;
    height: 2px;
    background-color: #eda900;
}

#Footer .footer-products-nav {
    display: block;
}

#Footer .footer-nav-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}
#Footer .footer-nav-list p {
    width: 100%;
    font-size: 18px;
    color: #a0a0a0;
    font-weight: 300;
    line-height: 1.6;
    padding-top: 10px;
}
#Footer .footer-products-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem;
    column-gap: 3rem;
}

#Footer .footer-nav-link {
    font-size:1.1rem;
    font-weight:300;
    color: #a0a0a0;
    text-decoration: none;
    transition: color 0.3s;
}

#Footer .footer-nav-link:hover {
    color: var(--color-primary);
}

#Footer .footer-message {
    flex: 0 0 40%;
    max-width: 450px;
    padding: 4rem 0 4rem 2rem;
    border-left: 1px solid #555;
}
#Footer .footer-message-title {
    font-family: var(--font-family-heading);
    font-size: 1.6rem;
    font-weight: var(--font-weight-bold);
    color: var(--color-white);
    margin-bottom: 1.5rem;
    text-transform: uppercase;
    position: relative;
}

#Footer .footer-message-title::after {
    content: '';
    position: absolute;
    bottom: -0.5rem;
    left: 0;
    width: 5rem;
    height: 2px;
    background-color: #eda900;
}

#Footer .message-form .form-group {
    margin-bottom: 1rem;
    display: block;
}

#Footer .message-form .form-label {
    display: none;
}

#Footer .message-form .form-input,
#Footer .message-form .form-textarea {
    width: 100%;
    background-color: #333;
    border: 1px solid #555;
    border-radius: 4px;
    padding: 0.5rem 1rem;
    color: #fff;
    font-weight: 300;
    font-family: var(--font-family-body);
}

#Footer .message-form select.form-input {
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url('data:image/svg+xml;charset=US-ASCII,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6,9 12,15 18,9"></polyline></svg>');
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 16px;
}

#Footer .message-form select.form-input option {
    background-color: #333;
    color: #fff;
}

#Footer .message-form .form-input::placeholder,
#Footer .message-form .form-textarea::placeholder {
    color: #888;
}


#Footer .form-submit {
    background-color: #f7be00;
    color: #333;
    border: none;
    padding: 0.5rem 2rem;
    text-transform: uppercase;
    font-weight: var(--font-weight-bold);
    cursor: pointer;
    transition: background-color 0.3s;
}

#Footer .form-submit:hover {
    background-color: #ffd449;
}

#Footer .footer-bottom {
    background-color: #000;
    padding: 1.5rem 0;
}

#Footer .footer-bottom-content {
    width: 88%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: var(--font-size-small);
    color: #888;
}
#Footer .footer-bottom-content a,
#Footer .footer-bottom-content p {
    color:#999;
}
#Footer .footer-links {
    display: flex;
    gap: 1.5rem;
}

#Footer .footer-links .footer-link {
    color: #888;
    text-decoration: none;
}
#Footer .footer-links .footer-link:hover {
    color: #fff;
}
#Footer .social-share {width: 170px;height:auto;margin: 0 auto;grid-template-columns: repeat(4, 1fr);gap:0;display: grid;}
@media (max-width:1181px) {
  #Footer .footer-top-content {
    width: 92%;
    margin: 0 auto;
  }
  #Footer .footer-main-content {
    width: 92%;
    margin: 0 auto;
  }
  #Footer .footer-bottom-content {
    width: 92%;
    margin: 0 auto;
  }
}

@media screen and (max-width: 992px) {
    #Footer .footer-main-content {
        flex-direction: column;
    }
    #Footer .footer-nav {
        width: 100%;
        padding: 3rem 0 2rem 0;
    }
    #Footer .footer-nav-section:first-child,
    #Footer .footer-nav-section:last-child {
        flex: 1;
    }
    #Footer .footer-products-list {
        grid-template-columns: repeat(2, 1fr);
        column-gap: 2rem;
    }
    #Footer .footer-message {
        width: 100%;
        max-width: none;
        padding: 2rem 0 3rem 0;
        border-left: none;
        border-top: 1px solid #555;
    }
}
@media screen and (max-width: 767px) {
    #Footer .footer-top-content {
        flex-direction: column;
        align-items: flex-start;
    }
    #Footer .footer-nav {
        padding: 2rem 0 1rem 0;
    }
    #Footer .footer-nav-section {
        margin-bottom: 2rem;
    }
    #Footer .footer-nav-section:last-child {
        margin-bottom: 0;
    }
    #Footer .footer-products-list {
        grid-template-columns: 1fr;
        column-gap: 0;
    }
    #Footer .footer-message {
        padding: 1rem 0 2rem 0;
    }
    #Footer .footer-bottom-content {
        flex-direction: column;
        gap: 1rem;
        text-align: center;
    }
} 