/* ============================== Legal Page CSS ============================== */

.legal-page .page-section{
     padding:48px 0 72px;
}

.legal-page .content.container{
     max-width:860px;
     padding-left:clamp(16px,4vw,24px);
     padding-right:clamp(16px,4vw,24px);
}

.legal-page .legal-header{
     margin-bottom:40px;
}

.legal-page .legal-title{
     margin-bottom:8px;
     color:#0c0d0d;
     font-size:clamp(26px,4vw,32px);
     font-weight:700;
     line-height:1.25;
}

.legal-page .legal-updated{
     margin-bottom:18px;
     color:#6b7280;
     font-size:14px;
}

.legal-page .legal-intro{
     color:#2b2f33;
     font-size:16px;
     line-height:1.75;
}

.legal-page .legal-section{
     margin-bottom:42px;
}

.legal-page .legal-section:last-child{
     margin-bottom:0;
}

.legal-page .legal-intro a,
.legal-page .legal-section a{
     color:var(--hw-orange);
}

.legal-page .legal-section h2{
     margin-bottom:14px;
     color:#0c0d0d;
     font-size:22px;
     font-weight:600;
}

.legal-page .legal-section h3{
     margin-top:20px;
     margin-bottom:8px;
     color:#1f2328;
     font-size:16px;
     font-weight:600;
}

.legal-page .legal-section p,
.legal-page .legal-section li{
     color:#2e3136;
     font-size:15px;
     line-height:1.75;
}

.legal-page .legal-section ul,
.legal-page .legal-section ol{
     margin-top:8px;
     padding-left:20px;
}

.legal-page .legal-section li{
     margin-bottom:6px;
}

.legal-page .legal-divider{
     height:1px;
     margin:36px 0;
     background-color:#e5e7eb;
}

@media (max-width:768px){
     .legal-page .page-section{
          padding:36px 0 56px;
     }

     .legal-page .legal-title{
          font-size:26px;
     }

     .legal-page .legal-section h2{
          font-size:20px;
     }
}


/* ============================== Legal Footer CSS ============================== */
.hw-legal-footer{
     background:#0e182a;
     color:#e5e7eb;
     overflow:hidden;
}

.hw-legal-footer,
.hw-legal-footer *{
     box-sizing:border-box;
}

.hw-legal-footer__container{
     width:min(1100px,calc(100% - 40px));
     margin:0 auto;
}

.hw-legal-footer__grid{
     display:grid;
     grid-template-columns:minmax(0,420px) minmax(0,300px);
     justify-content:center;
     column-gap:90px;
     padding:26px 0 36px;
}

.hw-legal-footer__brand,
.hw-legal-footer__contact{
     min-width:0;
}

.hw-legal-footer__title{
     margin:0 0 16px;
     color:#f97316;
     font-size:21px;
     font-weight:700;
     line-height:1.4;
}

.hw-legal-footer__title a{
     color:inherit;
     text-decoration:none;
}

.hw-legal-footer__description{
     max-width:380px;
     margin:0 0 18px;
     color:#cbd5e1;
     font-size:14px;
     line-height:1.7;
}

.hw-legal-footer__hours{
     display:flex;
     align-items:center;
     gap:10px;
     color:#cbd5e1;
     font-size:14px;
     line-height:1.6;
}

.hw-legal-footer__hours-icon{
     flex:0 0 18px;
     width:18px;
     height:18px;
     color:#f97316;
}

.hw-legal-footer__contact-link i{
     flex:0 0 18px;
     width:18px;
     color:#f97316;
     font-size:15px;
     text-align:center;
}

.hw-legal-footer__contact{
     display:flex;
     flex-direction:column;
     align-items:flex-start;
}

.hw-legal-footer__contact-link{
     display:inline-flex;
     align-items:center;
     gap:10px;
     min-height:30px;
     margin:0 0 10px;
     color:#cbd5e1;
     font-size:14px;
     line-height:1.6;
     text-decoration:none;
     overflow-wrap:anywhere;
     transition:color .2s ease;
}

.hw-legal-footer__contact-link:last-child{
     margin-bottom:0;
}

/* =============================== Copyright / 底部版权 =============================== */
.hw-legal-footer__bottom{
     position:relative;
     display:flex;
     align-items:center;
     justify-content:center;
     flex-wrap:nowrap;
     gap:24px;
     padding:14px 0;
     text-align:center;
}

.hw-legal-footer__bottom::before{
     content:"";
     position:absolute;
     top:0;
     left:50%;
     width:100vw;
     height:1px;
     background:rgba(255,255,255,.10);
     transform:translateX(-50%);
}

.hw-legal-footer__nav{
     display:flex;
     justify-content:center;
     align-items:center;
     flex-wrap:nowrap;
     gap:24px;
     margin:0;
}

.hw-legal-footer__nav a{
     color:#7f8da3;
     font-size:13px;
     line-height:1.5;
     text-decoration:none;
     white-space:nowrap;
     transition:color .2s ease;
}

.hw-legal-footer__copyright{
     margin:0;
     color:#7f8da3;
     font-size:13px;
     line-height:1.5;
     white-space:nowrap;
}

.hw-legal-footer a:focus-visible{
     outline:2px solid #f97316;
     outline-offset:4px;
     border-radius:2px;
}

@media (hover:hover){
     .hw-legal-footer__title a:hover,
     .hw-legal-footer__contact-link:hover,
     .hw-legal-footer__nav a:hover{
          color:#fb923c;
     }
}

/* =============================== Mobile / 移动端布局 =============================== */
@media (max-width:767.98px){
     .hw-legal-footer__container{
          width:calc(100% - 32px);
     }

     .hw-legal-footer__grid{
          grid-template-columns:minmax(0,1fr);
          gap:30px;
          padding:24px 0 30px;
     }

     .hw-legal-footer__title{
          margin-bottom:12px;
          font-size:18px;
     }

     .hw-legal-footer__description{
          margin-bottom:14px;
          font-size:14px;
     }

     .hw-legal-footer__bottom{
          flex-direction:column;
          flex-wrap:nowrap;
          gap:8px;
          padding:12px 0;
     }

     .hw-legal-footer__nav{
          flex-wrap:nowrap;
          column-gap:12px;
          row-gap:0;
     }

     .hw-legal-footer__nav a{
          font-size:11px;
          white-space:nowrap;
     }

     .hw-legal-footer__copyright{
          font-size:12px;
          text-align:center;
          white-space:nowrap;
     }
}

@media (prefers-reduced-motion:reduce){
     .hw-legal-footer a{
          transition:none;
     }
}
