/* 织梦58（dede58.com）做最好的织梦整站模板下载网站 */
/*
* base.css
* 一个属性单行，超过一个多行
*/
/*CSS reset*/
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
	margin: 0;
	padding: 0;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
fieldset, img {
	border: 0;
}
address, caption, cite, code, dfn, em, strong, th, var {
	font-style: normal;
	font-weight: normal;
}
ol, ul {
	list-style: none;
}
caption, th {
	text-align: left;
}
h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
	font-weight: normal;
}
q:before, q:after {
	content: '';
}
abbr, acronym {
	border: 0;
}
/*font*/
.f12 {
	font-size: 12px;
}
.f13 {
	font-size: 13px;
}
.f14 {
	font-size: 14px;
}
.f16 {
	font-size: 16px;
}
.f20 {
	font-size: 20px;
}
.fb {
	font-weight: bold;
}
.fn {
	font-weight: normal;
}
.t2 {
	text-indent: 2em;
}
.lh150 {
	line-height: 150%;
}
.lh180 {
	line-height: 180%;
}
.lh200 {
	line-height: 200%;
}
.unl {
	text-decoration: underline;
}
.no_unl {
	text-decoration: none;
}
/*position*/
.clear {
	clear: both
}
.tl {
	text-align: left;
}
.tc {
	text-align: center;
}
.tr {
	text-align: right;
}
.bc {
	margin-left: auto;
	margin-right: auto;
}
.fl {
	float: left;
	display: inline;
}
.fr {
	float: right;
	display: inline;
}
.cl {
	clear: left;
}
.cr {
	clear: right;
}
.cb {
	clear: both;
}
* html .cf {
	display: inline;
	zoom: 1;
}
.cf:after {
	content: '';
	display: table;
	clear: both;
	visibility: hidden;
}
.vm {
	vertical-align: middle;
}
.pr {
	position: relative;
}
.pa {
	position: absolute;
}
.abs-right {
	position: absolute;
	right: 0;
}
.zoom {
	zoom: 1;
}
.hidden {
	visibility: hidden;
}
.none {
	display: none;
}
/*size*/
.w {
	width: 100%
}
.w10 {
	width: 10px;
}
.w20 {
	width: 20px;
}
.w30 {
	width: 30px;
}
.w40 {
	width: 40px;
}
.w50 {
	width: 50px;
}
.w60 {
	width: 60px;
}
.w70 {
	width: 70px;
}
.w80 {
	width: 80px;
}
.w90 {
	width: 90px;
}
.w100 {
	width: 100px;
}
.w200 {
	width: 200px;
}
.w250 {
	width: 250px;
}
.w300 {
	width: 300px;
}
.w400 {
	width: 400px;
}
.w500 {
	width: 500px;
}
.w600 {
	width: 600px;
}
.w700 {
	width: 700px;
}
.w800 {
	width: 800px;
}
.h {
	height: 100%;
}
.h50 {
	height: 50px;
}
.h80 {
	height: 80px;
}
.h100 {
	height: 100px;
}
.h200 {
	height: 200px;
}
/*margin && padding*/
.m10 {
	margin: 10px;
}
.m15 {
	margin: 15px;
}
.m30 {
	margin: 30px;
}
.mt5 {
	margin-top: 5px;
}
.mt10 {
	margin-top: 10px;
}
.mt15 {
	margin-top: 15px;
}
.mt20 {
	margin-top: 20px;
}
.mt30 {
	margin-top: 30px;
}
.mt50 {
	margin-top: 50px;
}
.mt100 {
	margin-top: 100px;
}
.mr5 {
	margin-right: 5px;
}
.mr10 {
	margin-right: 10px;
}
.mr15 {
	margin-right: 15px;
}
.mr20 {
	margin-right: 20px;
}
.mr30 {
	margin-right: 30px;
}
.mr50 {
	margin-right: 50px;
}
.mr100 {
	margin-right: 100px;
}
.mb5 {
	margin-bottom: 5px;
}
.mb10 {
	margin-bottom: 10px;
}
.mb15 {
	margin-bottom: 15px;
}
.mb20 {
	margin-bottom: 20px;
}
.mb30 {
	margin-bottom: 30px;
}
.mb50 {
	margin-bottom: 50px;
}
.mb100 {
	margin-bottom: 100px;
}
.ml5 {
	margin-left: 5px;
}
.ml10 {
	margin-left: 10px;
}
.ml15 {
	margin-left: 15px;
}
.ml20 {
	margin-left: 20px;
}
.ml30 {
	margin-left: 30px;
}
.ml50 {
	margin-left: 50px;
}
.ml100 {
	margin-left: 100px;
}
.p10 {
	padding: 10px;
}
.p15 {
	padding: 15px;
}
.p30 {
	padding: 30px;
}
.pt5 {
	padding-top: 5px;
}
.pt10 {
	padding-top: 10px;
}
.pt15 {
	padding-top: 15px;
}
.pt20 {
	padding-top: 20px;
}
.pt30 {
	padding-top: 30px;
}
.pt50 {
	padding-top: 50px;
}
.pt100 {
	padding-top: 100px;
}
.pr5 {
	padding-right: 5px;
}
.pr10 {
	padding-right: 10px;
}
.pr15 {
	padding-right: 15px;
}
.pr20 {
	padding-right: 20px;
}
.pr30 {
	padding-right: 30px;
}
.pr50 {
	padding-right: 50px;
}
.pr100 {
	padding-right: 100px;
}
.pb5 {
	padding-bottom: 5px;
}
.pb10 {
	padding-bottom: 10px;
}
.pb15 {
	padding-bottom: 15px;
}
.pb20 {
	padding-bottom: 20px;
}
.pb30 {
	padding-bottom: 30px;
}
.pb50 {
	padding-bottom: 50px;
}
.pb100 {
	padding-bottom: 100px;
}
.pl5 {
	padding-left: 5px;
}
.pl10 {
	padding-left: 10px;
}
.pl15 {
	padding-left: 15px;
}
.pl20 {
	padding-left: 20px;
}
.pl30 {
	padding-left: 30px;
}
.pl50 {
	padding-left: 50px;
}
.pl100 {
	padding-left: 100px;
}

/* ===== 重庆墓地网设计系统 v3 — 庄重·简约·大气 ===== */
:root {
    /* 主色：深墨绿 — 庄重、生命、安宁 */
    --color-primary: #2D5A4D;
    --color-primary-dark: #1E3F35;
    --color-primary-light: #3A7262;
    --color-primary-pale: #EDF4F1;
    --color-primary-bg: #F6FAF8;
    /* 辅色：暖金 — 尊贵、温暖、信赖 */
    --color-accent: #B8860B;
    --color-accent-dark: #956D09;
    --color-accent-light: #D4A843;
    --color-accent-pale: #FDF8ED;
    /* 中性色 */
    --color-bg: #F5F6F8;
    --color-white: #FFFFFF;
    --color-surface: #FAFBFC;
    --color-border: #E3E6EA;
    --color-border-light: #EEF0F3;
    /* 文字色阶 */
    --color-text-dark: #1C2530;
    --color-text: #3D4A57;
    --color-text-secondary: #6B7785;
    --color-text-muted: #9AA3AE;
    --color-text-inverse: #FFFFFF;
    /* 功能色 */
    --color-success: #2D8A5E;
    --color-warning: #D4930A;
    --color-error: #C94040;
    /* 圆角 */
    --radius-xs: 2px;
    --radius-sm: 4px;
    --radius-md: 8px;
    --radius-lg: 12px;
    --radius-xl: 16px;
    --radius-full: 9999px;
    /* 阴影 */
    --shadow-sm: 0 1px 2px rgba(28,37,48,0.04);
    --shadow-md: 0 2px 8px rgba(28,37,48,0.06);
    --shadow-lg: 0 4px 20px rgba(28,37,48,0.08);
    --shadow-xl: 0 8px 40px rgba(28,37,48,0.12);
    --shadow-card: 0 1px 3px rgba(28,37,48,0.05), 0 1px 2px rgba(28,37,48,0.03);
    --shadow-card-hover: 0 8px 24px rgba(28,37,48,0.1);
    /* 字体 */
    --font-serif: 'Noto Serif SC', 'Source Han Serif CN', 'STSong', Georgia, 'Times New Roman', serif;
    --font-sans: 'Noto Sans SC', -apple-system, BlinkMacSystemFont, 'PingFang SC', 'Microsoft YaHei', 'Helvetica Neue', sans-serif;
    --font-mono: 'JetBrains Mono', 'SF Mono', Consolas, monospace;
    /* 间距 */
    --space-xs: 4px;
    --space-sm: 8px;
    --space-md: 16px;
    --space-lg: 24px;
    --space-xl: 32px;
    --space-2xl: 48px;
    --space-3xl: 64px;
    /* 容器 */
    --container-max: 1280px;
    --container-padding: 24px;
    /* 过渡 */
    --transition-fast: 0.15s ease;
    --transition-normal: 0.25s ease;
    --transition-slow: 0.4s ease;
}

* { box-sizing: border-box; }

html {
    scroll-behavior: smooth;
    -webkit-text-size-adjust: 100%;
}

body {
    font-family: var(--font-sans);
    color: var(--color-text);
    line-height: 1.7;
    background: var(--color-bg);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow-x: hidden;
}

a {
    color: var(--color-text);
    text-decoration: none;
    transition: color var(--transition-normal);
}
a:hover { color: var(--color-primary); }

img, svg, video, canvas {
    max-width: 100%;
    height: auto;
    display: block;
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-serif);
    color: var(--color-text-dark);
    font-weight: 600;
    line-height: 1.4;
}

::selection {
    background: var(--color-primary-pale);
    color: var(--color-primary-dark);
}

/* ===== 全站自适应布局 ===== */
@media screen and (max-width: 1200px) {
    .container, #download, #activity, #news, .index-news-section {
        max-width: 100%;
        padding: 0 var(--container-padding);
    }
    #header .headerBox { padding: 0 var(--container-padding); }
    .searchContent { width: 90%; }
    #search_keyword { width: 60%; }
    .search-bar-wrap { width: 100% !important; padding: 10px var(--container-padding) !important; }
    .breadcrumb-nav { width: 100% !important; padding: 10px var(--container-padding) !important; }
    .map-page { width: 100% !important; padding: var(--container-padding) !important; }
}
@media screen and (max-width: 992px) {
    #download .main { flex-direction: column; }
    #download .mright { width: 100%; }
    .newsBox { flex-direction: column; }
    .newImg, .newItems { width: 100%; }
    .index-news-row { flex-direction: column; }
    .actImg ul { flex-wrap: wrap; }
    .actImg ul li { flex: 0 0 calc(50% - 8px); }
    #bodyMain { display: flex; flex-direction: column; }
    #leftMain { width: 100% !important; }
    #aside { width: 100% !important; margin-top: 15px; }
    .newBox { display: flex; flex-direction: column; }
    .newBox-pic, .newBox-info { width: 100% !important; float: none !important; }
}
@media screen and (max-width: 768px) {
    #search { height: 300px; padding-top: 60px; }
    .searchContent { width: 95%; }
    #search_keyword { width: 55%; height: 44px; font-size: 14px; }
    .searchBox button { height: 44px; padding: 0 24px; font-size: 14px; }
    .searchBox .tab a { padding: 6px 16px; font-size: 13px; }
    .con ul { gap: 12px; }
    .con li { width: 100px; }
    .con li img { width: 100px; height: 70px; }
    #header .headerBox { height: 56px; }
    #header .nav li a { padding: 14px 10px; font-size: 13px; min-height: 44px; display: flex; align-items: center; }
    #header .tel { font-size: 16px; }
    .rec_pic ul li { width: 100%; }
    .mright_lphot_top h3 { font-size: 16px; }
    .search-bar-wrap div[style*="width:1200px"] { width: 100% !important; }
    a, button, input[type="submit"], .actionList-li a { min-height: 44px; }
    .asideBar-tit { min-height: 44px; display: flex; align-items: center; }
    .widget a { min-height: 44px; min-width: 44px; display: flex; align-items: center; justify-content: center; }
    #header .nav { flex-wrap: wrap; }
    #header .nav li { flex: 0 0 auto; }
    .search-bar-inner { flex-direction: column; align-items: stretch; }
    .search-bar-actions { justify-content: flex-start; }
}
@media screen and (max-width: 480px) {
    #search { height: 260px; padding-top: 40px; }
    #search_keyword { width: 50%; height: 40px; padding: 0 16px; }
    .searchBox button { height: 40px; padding: 0 16px; font-size: 13px; letter-spacing: 1px; }
    .searchBox .tab a { padding: 4px 12px; font-size: 12px; }
    .hotWords { display: none; }
    .con ul { gap: 8px; }
    .con li { width: 80px; }
    .con li img { width: 80px; height: 55px; }
    .con .txt h2 { font-size: 12px; }
    #header .nav li a { padding: 10px 6px; font-size: 12px; }
    #header .tel { display: none; }
    #searchPageForm { flex-wrap: wrap; }
    #searchPageForm input[name="keyword"] { width: 140px !important; }
    .mleft_lphot_n .lphot_n_left { width: 100%; height: auto; }
    .lphot_n_left img { height: auto; }
    .mleft_lphot_n .lphot_n_right { width: 100%; height: auto; }
    .rec_pic ul li { width: 100%; }
    .rec_pic ul li img { height: auto; }
    .mright_lphot { width: 100%; }
    .mright_lphot_top { width: 100%; }
    .mright_lphot_n dl { width: 100%; }
    .mright_lphot_n dt img { width: 100%; height: auto; }
    .main { width: 100%; }
    .mleft { width: 100%; height: auto; }
    .mright { width: 100%; height: auto; }
    .actImg { width: 100%; height: auto; }
    #actSlide li { width: 100%; height: auto; }
    #actSlide li img { width: 100%; height: auto; }
    .newsContent { width: 100%; }
    .newImg, .newItems { width: 100%; margin-left: 0; }
    .newImg li { width: 100%; }
    .newImg li img { width: 100%; height: auto; }
}
