/*!
 * Aishennuo Theme — Bootstrap Custom (精简版)
 * 基于 Bootstrap 4.5 核心工具类
 */

/* ========== Reset & Base ========== */
*, *::before, *::after { box-sizing: border-box; }
html { font-family: sans-serif; line-height: 1.15; -webkit-text-size-adjust: 100%; -webkit-tap-highlight-color: transparent; }
body { margin: 0; font-family: "Microsoft YaHei", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; font-size: 1rem; font-weight: 400; line-height: 1.6; color: #333; background-color: #fff; }
article, aside, figcaption, figure, footer, header, hgroup, main, nav, section { display: block; }
a { color: #007bff; text-decoration: none; background-color: transparent; }
a:hover { color: #0056b3; text-decoration: underline; }
img { vertical-align: middle; border-style: none; max-width: 100%; height: auto; }
h1, h2, h3, h4, h5, h6 { margin-top: 0; margin-bottom: .5rem; font-weight: 700; line-height: 1.3; }
p { margin-top: 0; margin-bottom: 1rem; }
ul, ol { margin-top: 0; margin-bottom: 1rem; }
.container { width: 100%; max-width: 1400px; margin-left: auto; margin-right: auto; padding-left: 20px; padding-right: 20px; }

/* ========== Grid ========== */
.row { display: flex; flex-wrap: wrap; margin-left: -15px; margin-right: -15px; }
.col { flex: 1 0 0%; max-width: 100%; padding-left: 15px; padding-right: 15px; }

/* ========== Buttons ========== */
.btn { display: inline-block; font-weight: 400; text-align: center; vertical-align: middle; cursor: pointer; user-select: none; border: 1px solid transparent; padding: 10px 30px; font-size: 16px; line-height: 1.5; border-radius: 4px; transition: all .3s; text-decoration: none; }
.btn:hover { text-decoration: none; }
.btn-primary { background: #0086D1; color: #fff; border-color: #0086D1; }
.btn-primary:hover { background: #006ba6; border-color: #006ba6; }
.btn-outline { background: rgba(255,255,255,.22); color: #666; border: 1px solid #ddd; font-family: "Microsoft YaHei", sans-serif; }
.btn-outline:hover { background: #009654; color: #fff; border-color: #009654; }
.btn-more { background: transparent; color: #fff; border: 1px solid rgba(255,255,255,.8); padding: 8px 25px; font-size: 14px; border-radius: 3px; }
.btn-more:hover { background: #009654; border-color: #009654; color: #fff; }
.btn-consult { background: #fff; color: #0086D1; border: 1px solid #ddd; padding: 8px 25px; font-size: 14px; border-radius: 3px; display: inline-flex; align-items: center; gap: 5px; text-decoration: none; }
.btn-consult:hover { background: #009654; color: #fff; border-color: #009654; }
.btn-consult .consult-icon { width: 16px; height: 16px; }

/* ========== Section Headers ========== */
.section-header { text-align: center; margin-bottom: 50px; }
.section-header h2 { font-size: 36px; font-weight: 700; font-family: "Microsoft YaHei", sans-serif; color: #333; }
.section-header h2 .accent { color: #0086D1; }

/* ========== Layout Helpers ========== */
.content-layout { display: flex; gap: 40px; }
.content-main { flex: 1; min-width: 0; }
.content-sidebar { width: 300px; flex-shrink: 0; }
@media (max-width: 768px) {
    .content-layout { flex-direction: column; }
    .content-sidebar { width: 100%; }
}
