/*
 * 丹家文创 - 古风商业主题样式 v2.0
 * 品牌色：朱红 #8B2500 / 墨绿 #2F4F4F / 金色 #C9A96E / 宣纸色 #F5E6C8
 * 字体：Noto Serif SC 为主，体现古韵与品质
 */

/* ============================================
   1. 基础重置与全局
   ============================================ */
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }

body {
    font-family:'Noto Serif SC','STSong','SimSun','Songti SC',serif;
    background:#FBF5E8;
    color:#3C2415;
    line-height:1.8;
    font-size:16px;
    -webkit-font-smoothing:antialiased;
}
a { color:#8B2500; text-decoration:none; transition:color .3s,opacity .3s; }
a:hover { color:#C9A96E; }
img { max-width:100%; height:auto; display:block; }

.container {
    max-width:1200px;
    margin:0 auto;
    padding:0 24px;
}

/* 古风装饰分隔线 */
.section-divider {
    text-align:center;
    margin:50px 0 30px;
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
}
.section-divider::before,
.section-divider::after {
    content:'';
    flex:0 1 80px;
    height:1px;
    background:linear-gradient(90deg,transparent,#C9A96E);
}
.section-divider::after {
    background:linear-gradient(90deg,#C9A96E,transparent);
}
.section-divider span {
    padding:0 20px;
    font-size:13px;
    color:#C9A96E;
    letter-spacing:5px;
    font-weight:500;
}

/* 古风角花装饰 */
.dj-corner-deco {
    position:relative;
}
.dj-corner-deco::before,
.dj-corner-deco::after {
    content:'◆';
    position:absolute;
    font-size:10px;
    color:#C9A96E;
    opacity:.4;
}
.dj-corner-deco::before { top:-8px; left:-8px; }
.dj-corner-deco::after { bottom:-8px; right:-8px; }

/* ============================================
   2. 按钮系统
   ============================================ */
.dj-btn {
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:12px 32px;
    font-family:inherit;
    font-size:14px;
    letter-spacing:3px;
    border:2px solid #8B2500;
    background:transparent;
    color:#8B2500;
    cursor:pointer;
    transition:all .35s ease;
    text-decoration:none;
    position:relative;
    overflow:hidden;
}
.dj-btn::after {
    content:'';
    position:absolute;
    inset:0;
    background:#8B2500;
    transform:scaleX(0);
    transform-origin:right;
    transition:transform .35s ease;
    z-index:-1;
}
.dj-btn:hover::after { transform:scaleX(1); transform-origin:left; }
.dj-btn:hover { color:#FBF5E8; }

.dj-btn-primary {
    background:#8B2500;
    color:#FBF5E8;
}
.dj-btn-primary::after { display:none; }
.dj-btn-primary:hover { background:#6B1C00; border-color:#6B1C00; }

.dj-btn-secondary { border-color:#999; color:#666; }
.dj-btn-secondary::after { background:#666; }
.dj-btn-secondary:hover { border-color:#666; }

.dj-btn-white {
    border-color:#FBF5E8;
    color:#FBF5E8;
}
.dj-btn-white::after { background:#FBF5E8; }
.dj-btn-white:hover { color:#8B2500; }

.dj-btn-gold {
    border-color:#C9A96E;
    color:#C9A96E;
}
.dj-btn-gold::after { background:#C9A96E; }
.dj-btn-gold:hover { color:#3C2415; }

.dj-btn-taobao {
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:14px 40px;
    background:linear-gradient(135deg,#FF4400 0%,#E63E00 100%);
    color:#fff;
    font-size:16px;
    letter-spacing:3px;
    border:none;
    cursor:pointer;
    transition:all .3s;
    box-shadow:0 4px 15px rgba(255,68,0,.25);
}
.dj-btn-taobao:hover {
    background:linear-gradient(135deg,#E63E00 0%,#CC3600 100%);
    color:#fff;
    transform:translateY(-2px);
    box-shadow:0 6px 20px rgba(255,68,0,.35);
}

.dj-btn-sm {
    padding:8px 20px;
    font-size:13px;
    letter-spacing:2px;
}

/* ============================================
   3. Alert / 提示
   ============================================ */
.dj-alert {
    padding:16px 20px;
    margin:20px 0;
    border-left:4px solid;
    font-size:14px;
    border-radius:0 4px 4px 0;
    line-height:1.6;
}
.dj-alert-info    { background:#e8f4fd; border-color:#2196F3; color:#0c5460; }
.dj-alert-warning { background:#fff3cd; border-color:#ffc107; color:#856404; }
.dj-alert-error   { background:#f8d7da; border-color:#dc3545; color:#721c24; }
.dj-alert-success { background:#d4edda; border-color:#28a745; color:#155724; }

/* ============================================
   4. 顶部栏
   ============================================ */
.dj-topbar {
    background:linear-gradient(135deg,#2C1A0E 0%,#3C2415 50%,#4A2F1E 100%);
    color:#C9A96E;
    padding:6px 0;
    font-size:12px;
    letter-spacing:1px;
    border-bottom:1px solid rgba(201,169,110,.15);
}
.dj-topbar .container {
    display:flex;
    justify-content:space-between;
    align-items:center;
}
.dj-topbar-left span { color:#C9A96E; opacity:.85; }
.dj-topbar-left span em { font-style:normal; color:#C9A96E; }
.dj-topbar-right { display:flex; align-items:center; gap:18px; }
.dj-topbar-right span { color:#C9A96E; opacity:.7; }
.dj-topbar-right a {
    color:#C9A96E;
    font-size:12px;
    opacity:.85;
    transition:all .3s;
    padding:2px 8px;
    border:1px solid transparent;
}
.dj-topbar-right a:hover {
    opacity:1;
    color:#FBF5E8;
    border-color:rgba(201,169,110,.4);
}

/* ============================================
   5. 页头 / 导航
   ============================================ */
.dj-header {
    background:linear-gradient(180deg,#FBF5E8 0%,#F5E6C8 100%);
    border-bottom:3px solid #8B2500;
    padding:18px 0;
    position:sticky;
    top:0;
    z-index:1000;
    box-shadow:0 3px 15px rgba(60,36,21,.08);
    transition:box-shadow .3s;
}
.dj-header.dj-header-scrolled {
    box-shadow:0 4px 25px rgba(60,36,21,.15);
    padding:12px 0;
}
.dj-header-inner {
    display:flex;
    align-items:center;
    justify-content:space-between;
}

.dj-site-branding { display:flex; align-items:center; gap:16px; }
.dj-site-logo img { max-height:56px; width:auto; }
.dj-site-title {
    font-size:22px;
    font-weight:700;
    color:#8B2500;
    letter-spacing:5px;
    line-height:1.2;
}
.dj-site-subtitle {
    font-size:11px;
    color:#C9A96E;
    letter-spacing:6px;
    margin-top:2px;
    text-transform:uppercase;
}

/* 导航 */
.dj-nav { display:flex; align-items:center; }
.dj-nav ul {
    display:flex;
    list-style:none;
    gap:2px;
}
.dj-nav ul li { position:relative; }
.dj-nav ul li a {
    display:block;
    padding:10px 20px;
    color:#3C2415;
    font-size:14px;
    letter-spacing:2px;
    border:1px solid transparent;
    transition:all .3s;
    position:relative;
}
.dj-nav ul li a::before {
    content:'';
    position:absolute;
    bottom:0; left:50%;
    width:0; height:2px;
    background:#8B2500;
    transition:all .3s;
    transform:translateX(-50%);
}
.dj-nav ul li a:hover::before,
.dj-nav ul li.current-menu-item a::before { width:60%; }
.dj-nav ul li a:hover,
.dj-nav ul li.current-menu-item a { color:#8B2500; }

/* 下拉菜单 */
.dj-nav ul li ul.sub-menu {
    display:none;
    position:absolute;
    top:100%;
    left:0;
    background:#FBF5E8;
    border:1px solid rgba(201,169,110,.5);
    border-top:3px solid #8B2500;
    min-width:200px;
    z-index:999;
    flex-direction:column;
    box-shadow:0 8px 25px rgba(60,36,21,.12);
    padding:6px 0;
}
.dj-nav ul li:hover > ul.sub-menu { display:flex; }
.dj-nav ul li ul.sub-menu li a {
    padding:10px 20px;
    border:none;
    border-bottom:1px solid rgba(201,169,110,.2);
    font-size:13px;
}
.dj-nav ul li ul.sub-menu li:last-child a { border-bottom:none; }
.dj-nav ul li ul.sub-menu li a::before { display:none; }
.dj-nav ul li ul.sub-menu li a:hover { background:rgba(201,169,110,.1); }

/* 汉堡菜单 */
.dj-menu-toggle {
    display:none;
    background:none;
    border:none;
    font-size:28px;
    color:#8B2500;
    cursor:pointer;
    padding:8px;
    line-height:1;
}

/* ============================================
   6. Banner 轮播
   ============================================ */
.dj-hero-slider {
    position:relative;
    overflow:hidden;
    height:520px;
    background:#3C2415;
}
.dj-slide {
    position:absolute;
    inset:0;
    opacity:0;
    transition:opacity .9s ease,transform 1.2s ease;
    background-size:cover;
    background-position:center;
    display:flex;
    align-items:center;
    justify-content:center;
    transform:scale(1.05);
}
.dj-slide.active {
    opacity:1;
    transform:scale(1);
}
.dj-slide-overlay {
    position:absolute;
    inset:0;
    background:linear-gradient(135deg,rgba(44,26,14,.7) 0%,rgba(139,37,0,.3) 50%,rgba(44,26,14,.5) 100%);
}
.dj-slide-content {
    position:relative;
    z-index:2;
    text-align:center;
    color:#FBF5E8;
    max-width:720px;
    padding:0 24px;
    animation:djFadeUp 1s ease forwards;
    opacity:0;
}
.dj-slide.active .dj-slide-content { animation:djFadeUp .8s ease .3s forwards; }
.dj-slide-content h2 {
    font-size:44px;
    font-weight:700;
    letter-spacing:10px;
    margin-bottom:16px;
    text-shadow:2px 3px 12px rgba(0,0,0,.5);
}
.dj-slide-content p {
    font-size:17px;
    line-height:1.9;
    margin-bottom:28px;
    letter-spacing:4px;
    opacity:.92;
}
.slider-dots {
    position:absolute;
    bottom:28px;
    left:50%;
    transform:translateX(-50%);
    display:flex;
    gap:10px;
    z-index:3;
}
.slider-dot {
    width:10px; height:10px;
    border-radius:50%;
    background:rgba(255,255,255,.3);
    cursor:pointer;
    transition:all .35s;
    border:2px solid rgba(255,255,255,.5);
}
.slider-dot.active {
    background:#C9A96E;
    border-color:#C9A96E;
    transform:scale(1.2);
}

@keyframes djFadeUp {
    0% { opacity:0; transform:translateY(30px); }
    100% { opacity:1; transform:translateY(0); }
}

/* ============================================
   7. 首页内容区块
   ============================================ */

/* 关于我们 - 带中式边框 */
.dj-section-about {
    padding:70px 0 60px;
    text-align:center;
    position:relative;
}
.dj-section-about::before {
    content:'';
    position:absolute;
    top:0; left:50%;
    transform:translateX(-50%);
    width:200px;
    height:3px;
    background:linear-gradient(90deg,transparent,#C9A96E,transparent);
}

.dj-section-title {
    font-size:32px;
    color:#8B2500;
    letter-spacing:7px;
    margin-bottom:8px;
    position:relative;
    display:block;
    text-align:center;
}
.dj-section-title::after {
    content:'';
    display:block;
    width:50px;
    height:2px;
    background:linear-gradient(90deg,#C9A96E,transparent);
    margin:14px auto 0;
}
.dj-section-title::before {
    content:'';
    display:block;
    width:50px;
    height:2px;
    background:linear-gradient(90deg,transparent,#C9A96E);
    margin:0 auto 14px;
}

.dj-section-subtitle {
    font-size:13px;
    color:#C9A96E;
    letter-spacing:8px;
    margin-bottom:35px;
    font-weight:500;
    text-align:center;
}

.dj-about-content {
    max-width:820px;
    margin:0 auto;
    font-size:15px;
    line-height:2.2;
    color:#5C4A3A;
}
.dj-about-content p { margin-bottom:16px; }
.dj-about-content strong { color:#8B2500; }

/* 品牌标语 */
.dj-brand-tagline {
    display:flex;
    justify-content:center;
    gap:30px;
    flex-wrap:wrap;
    margin-top:35px;
}
.dj-brand-tagline span {
    padding:8px 24px;
    border:1px solid rgba(201,169,110,.4);
    font-size:13px;
    color:#8B2500;
    letter-spacing:3px;
    background:rgba(251,245,232,.6);
}

/* 产品展示区 */
.dj-section-products {
    padding:70px 0;
    background:linear-gradient(180deg,#F5E6C8 0%,#F0DFC0 100%);
}

.dj-products-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
}

.dj-product-card {
    background:#FBF5E8;
    border:1px solid rgba(201,169,110,.5);
    overflow:hidden;
    transition:all .4s ease;
    position:relative;
}
.dj-product-card:hover {
    transform:translateY(-6px);
    box-shadow:0 12px 35px rgba(60,36,21,.15);
    border-color:#C9A96E;
}
.dj-product-card .product-thumb {
    height:240px;
    overflow:hidden;
    position:relative;
}
.dj-product-card .product-thumb::after {
    content:'';
    position:absolute;
    bottom:0; left:0; right:0;
    height:60px;
    background:linear-gradient(0deg,rgba(251,245,232,.8),transparent);
}
.dj-product-card .product-thumb img {
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .6s ease;
}
.dj-product-card:hover .product-thumb img { transform:scale(1.08); }

.dj-product-card .product-info {
    padding:18px 20px 22px;
    text-align:center;
}
.dj-product-card .product-info h3 {
    font-size:16px;
    color:#3C2415;
    margin-bottom:8px;
    letter-spacing:2px;
    font-weight:600;
}
.dj-product-card .product-info .product-excerpt {
    font-size:12px;
    color:#999;
    margin-bottom:10px;
    line-height:1.6;
}
.dj-product-card .product-info .product-price {
    color:#8B2500;
    font-size:22px;
    font-weight:700;
    letter-spacing:1px;
}
.dj-product-card .product-info .product-price::before {
    content:'¥ ';
    font-size:14px;
    font-weight:400;
}
.dj-product-price .dj-currency { font-size:14px; font-weight:400; }

/* 产品卡片上的分类标签 */
.dj-product-card .product-cat-tag {
    position:absolute;
    top:12px; left:12px;
    padding:4px 12px;
    background:rgba(139,37,0,.85);
    color:#FBF5E8;
    font-size:11px;
    letter-spacing:1px;
    z-index:2;
    backdrop-filter:blur(4px);
}

/* ==================== 邯郸文旅新闻 ==================== */
.dj-section-news {
    padding:70px 0;
    background:#fff;
}
.dj-news-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
    margin-bottom:40px;
}
.dj-news-card {
    background:#FBF5E8;
    border-radius:10px;
    overflow:hidden;
    transition:transform .3s, box-shadow .3s;
    border:1px solid rgba(201,169,110,.3);
}
.dj-news-card:hover {
    transform:translateY(-4px);
    box-shadow:0 8px 25px rgba(139,37,0,.1);
}
.dj-news-card a {
    text-decoration:none;
    color:inherit;
    display:block;
}
.news-thumb {
    width:100%;
    height:160px;
    overflow:hidden;
}
.news-thumb img {
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .3s;
}
.dj-news-card:hover .news-thumb img {
    transform:scale(1.08);
}
.news-thumb-placeholder {
    background:linear-gradient(135deg,#e8ddd0,#d4c4b0);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:36px;
}
.news-body {
    padding:14px 16px 18px;
}
.news-date {
    font-size:11px;
    color:#b8a898;
    letter-spacing:1px;
    display:block;
    margin-bottom:6px;
}
.news-body h3 {
    font-size:14px;
    color:#3C2415;
    line-height:1.5;
    margin-bottom:8px;
    font-weight:600;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}
.news-excerpt {
    font-size:12px;
    color:#8a7a6a;
    line-height:1.7;
    margin-bottom:10px;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}
.news-readmore {
    font-size:12px;
    color:#8B2500;
    letter-spacing:1px;
}
.dj-news-more {
    text-align:center;
}

@media (max-width:1024px) {
    .dj-news-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:480px) {
    .dj-news-grid { grid-template-columns:1fr; }
}

/* 邯郸成语专区 */
.dj-section-idioms {
    padding:70px 0;
    background:url('') repeat;
}
.dj-idioms-showcase {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
}
.dj-idiom-card {
    text-align:center;
    padding:36px 28px;
    background:#FBF5E8;
    border:1px solid rgba(201,169,110,.4);
    transition:all .4s ease;
    position:relative;
}
.dj-idiom-card::before {
    content:'「';
    position:absolute;
    top:10px; left:14px;
    font-size:40px;
    color:#C9A96E;
    opacity:.3;
    line-height:1;
}
.dj-idiom-card::after {
    content:'」';
    position:absolute;
    bottom:10px; right:14px;
    font-size:40px;
    color:#C9A96E;
    opacity:.3;
    line-height:1;
}
.dj-idiom-card:hover {
    background:#8B2500;
    border-color:#8B2500;
    transform:translateY(-4px);
    box-shadow:0 8px 25px rgba(139,37,0,.2);
}
.dj-idiom-card:hover h4,
.dj-idiom-card:hover p { color:#FBF5E8; }
.dj-idiom-card:hover::before,
.dj-idiom-card:hover::after { color:rgba(251,245,232,.25); }

.dj-idiom-card h4 {
    font-size:34px;
    color:#8B2500;
    letter-spacing:10px;
    margin-bottom:12px;
    transition:color .3s;
    font-weight:700;
}
.dj-idiom-card p {
    font-size:13px;
    color:#888;
    line-height:1.9;
    transition:color .3s;
}

/* 联系我们区块 */
.dj-section-contact {
    padding:70px 0;
    background:linear-gradient(135deg,#3C2415 0%,#2C1A0E 100%);
    color:#F5E6C8;
    text-align:center;
    position:relative;
}
.dj-section-contact::before {
    content:'';
    position:absolute;
    top:0; left:0; right:0;
    height:4px;
    background:linear-gradient(90deg,transparent,#C9A96E,transparent);
}
.dj-section-contact .dj-section-title { color:#C9A96E; }
.dj-section-contact .dj-section-title::after { background:linear-gradient(90deg,#FBF5E8,transparent); }
.dj-section-contact .dj-section-title::before { background:linear-gradient(90deg,transparent,#FBF5E8); }

.dj-contact-info {
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:20px;
    margin-top:35px;
}
.dj-contact-item {
    text-align:center;
    padding:28px 36px;
    background:rgba(251,245,232,.05);
    border:1px solid rgba(201,169,110,.2);
    transition:all .3s;
    flex:0 1 260px;
}
.dj-contact-item:hover {
    background:rgba(251,245,232,.1);
    border-color:rgba(201,169,110,.4);
    transform:translateY(-3px);
}
.dj-contact-item .icon {
    font-size:38px;
    margin-bottom:10px;
}
.dj-contact-item h4 {
    color:#C9A96E;
    margin-bottom:8px;
    letter-spacing:4px;
    font-size:15px;
}
.dj-contact-item p,
.dj-contact-item a {
    color:#FBF5E8;
    font-size:15px;
    letter-spacing:1px;
}

/* ============================================
   8. 页脚
   ============================================ */
.dj-footer {
    background:#2C1A0E;
    color:#C9A96E;
    padding:50px 0 20px;
    font-size:13px;
    border-top:1px solid rgba(201,169,110,.15);
}
.dj-footer-widgets {
    display:grid;
    grid-template-columns:2fr 1fr 1.5fr;
    gap:50px;
    margin-bottom:35px;
}
.dj-footer-widget h4 {
    color:#F5E6C8;
    font-size:15px;
    margin-bottom:18px;
    letter-spacing:4px;
    position:relative;
    padding-bottom:10px;
}
.dj-footer-widget h4::after {
    content:'';
    position:absolute;
    bottom:0; left:0;
    width:30px;
    height:2px;
    background:#C9A96E;
}
.dj-footer-widget p {
    font-size:13px;
    line-height:2;
    color:rgba(201,169,110,.8);
}
.dj-footer-widget ul { list-style:none; }
.dj-footer-widget ul li {
    margin-bottom:8px;
    font-size:13px;
    color:rgba(201,169,110,.8);
}
.dj-footer-widget ul li a {
    color:rgba(201,169,110,.8);
    transition:color .3s;
}
.dj-footer-widget ul li a:hover { color:#FBF5E8; }
.dj-footer-idioms li {
    font-size:12px;
    letter-spacing:1px;
    padding-left:4px;
    border-left:2px solid rgba(201,169,110,.2);
    padding-left:10px;
}
.dj-footer-idioms li::before {
    content:'✦';
    margin-right:6px;
    color:#C9A96E;
    font-size:9px;
}

.dj-footer-bottom {
    border-top:1px solid rgba(201,169,110,.12);
    padding-top:20px;
    text-align:center;
    font-size:12px;
    color:rgba(201,169,110,.6);
}
.dj-footer-bottom p { margin-bottom:6px; }
.dj-footer-bottom a { color:rgba(201,169,110,.7); }
.dj-footer-bottom a:hover { color:#FBF5E8; }
.dj-footer-bottom .dj-icp-info { margin-top:10px; }
.dj-footer-bottom .dj-icp-info img { vertical-align:middle; margin-right:4px; display:inline; }
.dj-footer-bottom .dj-icp-info a { margin:0 4px; }

/* ============================================
   9. 产品归档页
   ============================================ */
.dj-archive-header {
    padding:60px 0 35px;
    text-align:center;
    background:linear-gradient(180deg,#F5E6C8 0%,#FBF5E8 100%);
    border-bottom:1px solid rgba(201,169,110,.3);
}
.dj-archive-header h1 {
    font-size:36px;
    color:#8B2500;
    letter-spacing:8px;
    margin-bottom:8px;
}
.dj-archive-header p {
    color:#999;
    font-size:14px;
    letter-spacing:3px;
}
.dj-archive-header .dj-breadcrumb {
    font-size:12px;
    color:#bbb;
    margin-bottom:10px;
    letter-spacing:1px;
}
.dj-archive-header .dj-breadcrumb a { color:#8B2500; }

.dj-product-filters {
    padding:24px 0;
    text-align:center;
    border-bottom:1px solid rgba(201,169,110,.2);
    margin-bottom:10px;
}
.dj-product-filters a {
    display:block;
    text-align:center;
    padding:8px 22px;
    margin:0 4px 10px;
    border:1px solid rgba(201,169,110,.5);
    color:#3C2415;
    font-size:13px;
    letter-spacing:2px;
    transition:all .3s;
}
.dj-product-filters a:hover,
.dj-product-filters a.active {
    background:#8B2500;
    color:#FBF5E8;
    border-color:#8B2500;
}
.dj-products-list {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
    padding:40px 0;
}

/* 分页 */
.dj-pagination {
    text-align:center;
    padding:40px 0 60px;
}
.dj-pagination a,
.dj-pagination span {
    display:block;
    text-align:center;
    padding:9px 16px;
    margin:0 3px;
    border:1px solid rgba(201,169,110,.5);
    color:#3C2415;
    font-size:14px;
    transition:all .3s;
}
.dj-pagination span.current {
    background:#8B2500;
    color:#FBF5E8;
    border-color:#8B2500;
}
.dj-pagination a:hover {
    background:rgba(139,37,0,.08);
    border-color:#8B2500;
}

/* ============================================
   10. 产品详情页
   ============================================ */
.dj-product-detail {
    padding:60px 0;
}
.dj-breadcrumb {
    font-size:12px;
    color:#bbb;
    margin-bottom:20px;
    letter-spacing:1px;
}
.dj-breadcrumb a { color:#8B2500; }

/* 产品顶部：图册 + 基本信息 */
.dj-product-top {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:50px;
    align-items:start;
    margin-bottom:40px;
}

/* 图册列 */
.dj-product-gallery-col { }
.dj-gallery-main-img {
    border:1px solid rgba(201,169,110,.4);
    overflow:hidden;
    position:relative;
    margin-bottom:12px;
    background:#f9f5eb;
}
.dj-gallery-main-img::after {
    content:'';
    position:absolute;
    inset:0;
    border:1px solid rgba(201,169,110,.15);
    pointer-events:none;
}
.dj-gallery-main-img img {
    width:100%;
    display:block;
}
.dj-gallery-thumbs {
    display:flex;
    gap:8px;
    flex-wrap:wrap;
}
.dj-gallery-thumb {
    width:72px;
    height:72px;
    border:2px solid transparent;
    border-radius:4px;
    overflow:hidden;
    cursor:pointer;
    transition:border-color .2s, opacity .2s;
    opacity:.65;
}
.dj-gallery-thumb:hover { opacity:1; }
.dj-gallery-thumb.active {
    border-color:#8B2500;
    opacity:1;
}
.dj-gallery-thumb img {
    width:100%;
    height:100%;
    object-fit:cover;
}

/* 信息列 */
.dj-product-info-col { padding:10px 0; }
.dj-product-info-col h1 {
    font-size:26px;
    color:#3C2415;
    letter-spacing:3px;
    margin-bottom:12px;
    font-weight:700;
}
.dj-product-info-col .product-price-lg {
    font-size:34px;
    color:#8B2500;
    font-weight:700;
    margin-bottom:20px;
    padding-bottom:20px;
    border-bottom:2px solid rgba(201,169,110,.3);
}
.dj-product-info-col .product-price-lg .dj-currency {
    font-size:16px;
    font-weight:400;
    margin-right:2px;
}
.dj-product-info-col .product-meta {
    padding:16px 0;
    border-top:1px solid rgba(201,169,110,.3);
    border-bottom:1px solid rgba(201,169,110,.3);
    margin-bottom:20px;
}
.dj-product-info-col .product-meta span {
    display:block;
    font-size:13px;
    color:#888;
    margin-bottom:4px;
}
.dj-product-info-col .product-meta span a { color:#8B2500; }
.dj-product-info-col .product-actions {
    display:flex;
    gap:12px;
    flex-wrap:wrap;
}

/* 产品详情描述区（图册下方） */
.dj-product-description {
    margin-bottom:40px;
    padding:30px 0;
    border-top:1px solid rgba(201,169,110,.3);
}
.dj-product-description h2 {
    font-size:22px;
    color:#3C2415;
    letter-spacing:3px;
    margin-bottom:20px;
    padding-bottom:12px;
    border-bottom:2px solid #8B2500;
    display:block;
    text-align:center;
}
.dj-product-description-content {
    font-size:14px;
    line-height:2.1;
    color:#5C4A3A;
}

/* 旧版详情布局 - 保留兼容 */
.dj-product-detail-inner {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:50px;
    align-items:start;
}
.dj-product-gallery .main-image {
    border:1px solid rgba(201,169,110,.4);
    overflow:hidden;
    position:relative;
}
.dj-product-gallery .main-image::after {
    content:'';
    position:absolute;
    inset:0;
    border:1px solid rgba(201,169,110,.15);
    pointer-events:none;
}
.dj-product-gallery .main-image img { width:100%; }

.dj-product-info-detail { padding:10px 0; }
.dj-product-info-detail h1 {
    font-size:26px;
    color:#3C2415;
    letter-spacing:3px;
    margin-bottom:12px;
    font-weight:700;
}
.dj-product-info-detail .product-price-lg {
    font-size:34px;
    color:#8B2500;
    font-weight:700;
    margin-bottom:20px;
    padding-bottom:20px;
    border-bottom:2px solid rgba(201,169,110,.3);
}
.dj-product-info-detail .product-price-lg .dj-currency {
    font-size:16px;
    font-weight:400;
    margin-right:2px;
}
.dj-product-info-detail .product-meta {
    padding:16px 0;
    border-top:1px solid rgba(201,169,110,.3);
    border-bottom:1px solid rgba(201,169,110,.3);
    margin-bottom:20px;
}
.dj-product-info-detail .product-meta span {
    display:block;
    font-size:13px;
    color:#888;
    margin-bottom:4px;
}
.dj-product-info-detail .product-meta span a { color:#8B2500; }
.dj-product-info-detail .product-description {
    font-size:14px;
    line-height:2.1;
    color:#5C4A3A;
    margin-bottom:28px;
}
.dj-product-info-detail .product-actions {
    display:flex;
    gap:12px;
    flex-wrap:wrap;
}

/* 相关推荐区 */
.dj-related-section {
    margin-top:60px;
    padding-top:40px;
    border-top:1px solid rgba(201,169,110,.3);
}
.dj-related-section h2 {
    font-size:22px;
    color:#8B2500;
    letter-spacing:5px;
    margin-bottom:30px;
    text-align:center;
}
.dj-related-section .dj-products-grid { margin-bottom:0; }

/* ============================================
   11. 会员页面
   ============================================ */
.dj-auth-form {
    max-width:440px;
    margin:60px auto;
    padding:45px 40px 40px;
    background:#FBF5E8;
    border:1px solid rgba(201,169,110,.5);
    box-shadow:0 4px 20px rgba(60,36,21,.06);
}
.dj-auth-form h2 {
    text-align:center;
    color:#8B2500;
    font-size:22px;
    letter-spacing:5px;
    margin-bottom:28px;
    padding-bottom:16px;
    border-bottom:2px solid rgba(201,169,110,.3);
}
.dj-auth-form label {
    display:block;
    font-size:13px;
    color:#3C2415;
    margin-bottom:4px;
    letter-spacing:1px;
    font-weight:500;
}
.dj-auth-form input[type="text"],
.dj-auth-form input[type="email"],
.dj-auth-form input[type="password"],
.dj-auth-form input[type="tel"],
.dj-auth-form input[type="url"] {
    width:100%;
    padding:11px 15px;
    border:1px solid rgba(201,169,110,.6);
    background:#fff;
    font-family:inherit;
    font-size:14px;
    transition:all .3s;
    border-radius:0;
}
.dj-auth-form input:focus {
    outline:none;
    border-color:#8B2500;
    box-shadow:0 0 0 3px rgba(139,37,0,.08);
}
.dj-auth-form .dj-btn { width:100%; padding:13px; font-size:15px; margin-top:8px; justify-content:center; }
.dj-auth-links { text-align:center; margin-top:16px; font-size:14px; color:#888; }
.dj-auth-links a { color:#8B2500; font-weight:500; }

/* 会员中心 */
.dj-member-center {
    max-width:820px;
    margin:50px auto;
    padding:0 10px;
}
.dj-member-header {
    display:flex;
    align-items:center;
    gap:25px;
    padding:30px 35px;
    background:#FBF5E8;
    border:1px solid rgba(201,169,110,.5);
    margin-bottom:20px;
}
.dj-member-avatar img {
    border-radius:50%;
    border:3px solid #C9A96E;
    width:80px; height:80px;
    object-fit:cover;
}
.dj-member-info h3 {
    font-size:20px;
    color:#8B2500;
    letter-spacing:3px;
    margin-bottom:4px;
}
.dj-member-info p {
    font-size:13px;
    color:#888;
    margin-top:2px;
}
.dj-member-actions {
    display:flex;
    gap:12px;
    margin-bottom:24px;
    flex-wrap:wrap;
}
.dj-member-content {
    padding:35px;
    background:#FBF5E8;
    border:1px solid rgba(201,169,110,.5);
}
.dj-member-content h4 {
    font-size:17px;
    color:#8B2500;
    letter-spacing:3px;
    margin-bottom:22px;
    padding-bottom:12px;
    border-bottom:2px solid rgba(201,169,110,.3);
}
.dj-favorites-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
}
.dj-fav-item {
    text-align:center;
    padding:15px;
    border:1px solid rgba(201,169,110,.2);
    transition:all .3s;
}
.dj-fav-item:hover { border-color:#C9A96E; }
.dj-fav-item img { max-height:100px; object-fit:cover; margin:0 auto; }
.dj-fav-item h5 { font-size:13px; margin:10px 0 6px; letter-spacing:1px; font-weight:500; }
.dj-fav-item .dj-price { color:#8B2500; font-weight:700; font-size:15px; }

/* ============================================
   12. 通用页面
   ============================================ */
.dj-page-content {
    padding:60px 0;
    max-width:780px;
    margin:0 auto;
}
.dj-page-content h1 {
    font-size:30px;
    color:#8B2500;
    letter-spacing:5px;
    margin-bottom:25px;
    text-align:center;
}
.dj-page-content h2 {
    font-size:20px;
    color:#3C2415;
    margin:30px 0 15px;
    letter-spacing:3px;
}
.dj-page-content p {
    line-height:2.1;
    margin-bottom:16px;
    font-size:15px;
    color:#5C4A3A;
}
.dj-page-content ul, .dj-page-content ol {
    margin:10px 0 20px 25px;
    line-height:2;
}
.dj-page-content li { margin-bottom:6px; }

/* ============================================
   F. 动画
   ============================================ */
@keyframes djFadeInUp {
    0% { opacity:0; transform:translateY(30px); }
    100% { opacity:1; transform:translateY(0); }
}
@keyframes djFadeIn {
    0% { opacity:0; }
    100% { opacity:1; }
}
.dj-animate {
    opacity:0;
    transform:translateY(30px);
    transition:all .7s ease;
}
.dj-animate.dj-visible {
    opacity:1;
    transform:translateY(0);
}

/* ============================================
   13. 响应式
   ============================================ */
@media (max-width:1024px) {
    .dj-products-grid { grid-template-columns:repeat(3,1fr); }
    .dj-products-list { grid-template-columns:repeat(2,1fr); }
    .dj-idioms-showcase { grid-template-columns:repeat(2,1fr); }
    .dj-hero-slider { height:420px; }
    .dj-slide-content h2 { font-size:34px; }
    .dj-footer-widgets { grid-template-columns:1.5fr 1fr 1.5fr; gap:30px; }
}

@media (max-width:768px) {
    .dj-menu-toggle { display:block; }
    .dj-nav ul {
        display:none;
        flex-direction:column;
        position:absolute;
        top:100%;
        left:0;
        right:0;
        background:#FBF5E8;
        border-top:3px solid #8B2500;
        box-shadow:0 8px 30px rgba(0,0,0,.15);
        max-height:80vh;
        overflow-y:auto;
    }
    .dj-nav ul.open { display:flex; }
    .dj-nav ul li a { padding:14px 20px; border-bottom:1px solid rgba(201,169,110,.15); }
    .dj-nav ul li a::before { display:none; }
    .dj-nav ul li ul.sub-menu {
        position:static;
        display:none;
        box-shadow:none;
        border:none;
        padding-left:20px;
        background:rgba(245,230,200,.5);
    }
    .dj-nav ul li:hover > ul.sub-menu { display:none; }
    .dj-nav ul li ul.sub-menu.open { display:flex; }

    .dj-hero-slider { height:360px; }
    .dj-slide-content h2 { font-size:28px; letter-spacing:6px; }
    .dj-slide-content p { font-size:15px; }
    .dj-products-grid { grid-template-columns:repeat(2,1fr); }
    .dj-products-list { grid-template-columns:1fr; }
    .dj-idioms-showcase { grid-template-columns:1fr; }
    .dj-product-top,
    .dj-product-detail-inner { grid-template-columns:1fr; gap:30px; }
    .dj-footer-widgets { grid-template-columns:1fr; gap:30px; }
    .dj-hide-mobile { display:none !important; }
    .dj-section-title { font-size:26px; }
    .dj-contact-item { flex:0 1 100%; max-width:300px; }
    .dj-member-header { flex-direction:column; text-align:center; }
    .dj-favorites-grid { grid-template-columns:repeat(2,1fr); }
}

@media (max-width:480px) {
    .dj-products-grid { grid-template-columns:1fr; }
    .dj-hero-slider { height:300px; }
    .dj-slide-content h2 { font-size:22px; }
    .dj-slide-content p { font-size:14px; }
    .dj-favorites-grid { grid-template-columns:1fr; }
    .dj-product-filters a { padding:6px 14px; font-size:12px; }
    .dj-auth-form { padding:30px 20px; margin:40px 10px; }
    .dj-member-content { padding:20px; }
    .dj-idiom-card { padding:28px 20px; }
    .dj-idiom-card h4 { font-size:28px; }
}

/* ============================================
   14. 邯郸印象 · 城市名片
   ============================================ */
.dj-section-handan-profile {
    padding:70px 0 50px;
    text-align:center;
    background:linear-gradient(180deg,#FBF5E8 0%,#F5E6C8 100%);
    position:relative;
}
.dj-handan-facts {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:28px;
    margin-top:10px;
}
.dj-handan-fact {
    padding:35px 28px;
    background:#FBF5E8;
    border:1px solid rgba(201,169,110,.4);
    text-align:center;
    transition:all .4s;
}
.dj-handan-fact:hover {
    transform:translateY(-4px);
    box-shadow:0 8px 25px rgba(60,36,21,.1);
    border-color:#C9A96E;
}
.dj-handan-fact .fact-icon {
    font-size:44px;
    margin-bottom:12px;
}
.dj-handan-fact h4 {
    font-size:18px;
    color:#8B2500;
    letter-spacing:4px;
    margin-bottom:12px;
    font-weight:600;
}
.dj-handan-fact p {
    font-size:13px;
    color:#777;
    line-height:1.9;
}
.dj-handan-fact p strong {
    color:#8B2500;
    font-size:16px;
}

/* ============================================
   15. 成语升级卡片 + 典故详解
   ============================================ */
.dj-idiom-card .idiom-era {
    display:block;
    text-align:center;
    padding:2px 12px;
    background:rgba(201,169,110,.2);
    color:#C9A96E;
    font-size:11px;
    letter-spacing:3px;
    margin-bottom:8px;
}
.dj-idiom-card .idiom-from {
    font-size:12px !important;
    color:#bbb !important;
    margin-top:-4px !important;
    margin-bottom:10px !important;
    font-style:italic;
    transition:color .3s;
}
.dj-idiom-card .idiom-desc {
    font-size:13px !important;
    line-height:1.9 !important;
    text-align:left !important;
    text-indent:2em;
}
.dj-idiom-card:hover .idiom-era {
    background:rgba(251,245,232,.2);
    color:#FBF5E8;
}
.dj-idiom-card:hover .idiom-from {
    color:rgba(251,245,232,.6) !important;
}

/* 典故展开收起 */
.idiom-story {
    margin-top:12px;
    text-align:left;
}
.idiom-story-btn {
    display:inline-flex;
    align-items:center;
    gap:6px;
    background:none;
    border:1px solid rgba(201,169,110,.4);
    padding:6px 16px;
    font-family:inherit;
    font-size:12px;
    color:#C9A96E;
    cursor:pointer;
    transition:all .3s;
    letter-spacing:2px;
    width:100%;
    justify-content:center;
}
.idiom-story-btn:hover {
    background:rgba(201,169,110,.15);
    border-color:#C9A96E;
}
.idiom-card-hover .idiom-story-btn {
    border-color:rgba(251,245,232,.3);
    color:rgba(251,245,232,.8);
}
.idiom-card-hover .idiom-story-btn:hover {
    background:rgba(251,245,232,.1);
    border-color:rgba(251,245,232,.5);
}
.idiom-story-btn .arrow {
    transition:transform .3s;
    font-size:10px;
}
.idiom-story-btn.open .arrow {
    transform:rotate(180deg);
}
.idiom-story-content {
    max-height:0;
    overflow:hidden;
    transition:max-height .5s ease, opacity .3s ease, margin .3s;
    opacity:0;
    margin-top:0;
}
.idiom-story-content.open {
    max-height:2000px;
    opacity:1;
    margin-top:15px;
}

.idiom-quote,
.idiom-full-story,
.idiom-moral {
    padding:14px 16px;
    margin-bottom:12px;
    background:rgba(251,245,232,.6);
    border-left:3px solid #C9A96E;
}
.dj-idiom-card:hover .idiom-quote,
.dj-idiom-card:hover .idiom-full-story,
.dj-idiom-card:hover .idiom-moral {
    background:rgba(255,255,255,.08);
    border-left-color:rgba(251,245,232,.4);
}

.quote-label,
.story-label,
.moral-label {
    font-size:12px;
    font-weight:600;
    color:#8B2500;
    letter-spacing:2px;
    margin-bottom:8px;
}
.dj-idiom-card:hover .quote-label,
.dj-idiom-card:hover .story-label,
.dj-idiom-card:hover .moral-label {
    color:#FBF5E8;
}
.idiom-quote blockquote {
    font-style:italic;
    font-size:13px;
    line-height:1.8;
    color:#5C4A3A;
    padding:8px 0 8px 12px;
    border-left:2px solid #C9A96E;
    margin:0;
}
.dj-idiom-card:hover .idiom-quote blockquote {
    color:rgba(251,245,232,.9);
    border-left-color:rgba(251,245,232,.3);
}
.idiom-full-story p,
.idiom-moral p {
    font-size:13px !important;
    line-height:1.9 !important;
    color:#666 !important;
    text-indent:2em !important;
}
.dj-idiom-card:hover .idiom-full-story p,
.dj-idiom-card:hover .idiom-moral p {
    color:rgba(251,245,232,.85) !important;
}

/* ============================================
   16. 邯郸文化地标
   ============================================ */
.dj-section-landmarks {
    padding:70px 0 60px;
    background:#FBF5E8;
}
.dj-landmarks-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
}
.dj-landmark-card {
    background:#FBF5E8;
    border:1px solid rgba(201,169,110,.35);
    transition:all .4s;
    position:relative;
    overflow:hidden;
    display:flex;
    flex-direction:column;
}
.dj-landmark-card::before {
    content:'';
    position:absolute;
    top:0; left:0; right:0;
    height:3px;
    background:linear-gradient(90deg,transparent,#8B2500,transparent);
    transform:scaleX(0);
    transition:transform .4s;
    z-index:2;
}
.dj-landmark-card:hover::before { transform:scaleX(1); }
.dj-landmark-card:hover {
    transform:translateY(-5px);
    box-shadow:0 10px 30px rgba(60,36,21,.12);
}

/* 地标图片 */
.dj-landmark-card .landmark-img {
    height:160px;
    background-size:cover;
    background-position:center;
    position:relative;
}
.dj-landmark-card .landmark-img::after {
    content:'';
    position:absolute;
    bottom:0; left:0; right:0;
    height:40px;
    background:linear-gradient(0deg,rgba(251,245,232,1),transparent);
}

/* 地标正文 */
.dj-landmark-card .landmark-body {
    padding:20px 24px 24px;
    text-align:center;
    flex:1;
    display:flex;
    flex-direction:column;
}
.dj-landmark-card .landmark-icon {
    font-size:32px;
    margin-bottom:6px;
}
.dj-landmark-card h4 {
    font-size:17px;
    color:#8B2500;
    letter-spacing:4px;
    margin-bottom:8px;
    font-weight:600;
}
.dj-landmark-card > .landmark-body > p {
    font-size:13px;
    color:#888;
    line-height:1.8;
    margin-bottom:8px;
}

/* 地标展开按钮和内容 */
.landmark-story { margin-top:auto; }
.landmark-story-btn {
    display:inline-flex; align-items:center; gap:6px;
    background:none; border:1px solid rgba(201,169,110,.4);
    padding:6px 16px; font-family:inherit;
    font-size:12px; color:#C9A96E; cursor:pointer;
    transition:all .3s; letter-spacing:2px;
    width:100%; justify-content:center;
}
.landmark-story-btn:hover {
    background:rgba(201,169,110,.15);
    border-color:#C9A96E;
}
.landmark-story-btn .arrow {
    transition:transform .3s; font-size:10px;
}
.landmark-story-btn.open .arrow {
    transform:rotate(180deg);
}
.landmark-story-content {
    max-height:0; overflow:hidden;
    transition:max-height .5s ease, opacity .3s ease, margin .3s;
    opacity:0; margin-top:0;
    text-align:left;
}
.landmark-story-content.open {
    max-height:3000px; opacity:1; margin-top:15px;
}
.lm-section {
    padding:12px 14px;
    margin-bottom:10px;
    background:rgba(251,245,232,.5);
    border-left:3px solid #C9A96E;
}
.lm-section h5 {
    font-size:13px;
    color:#8B2500;
    letter-spacing:2px;
    margin-bottom:6px;
}
.lm-section p {
    font-size:12px !important;
    color:#666 !important;
    line-height:1.8 !important;
    text-indent:2em !important;
}

/* ============================================
   17. 响应式
   ============================================ */
@media (max-width:1024px) {
    .dj-handan-facts { grid-template-columns:repeat(2,1fr); }
    .dj-landmarks-grid { grid-template-columns:repeat(2,1fr); }
}

@media (max-width:768px) {
    .dj-handan-facts { grid-template-columns:1fr; }
    .dj-landmarks-grid { grid-template-columns:1fr; }
    .dj-handan-fact { padding:25px 20px; }
    .dj-landmark-card { padding:24px 18px; }
}

/* ============================================
   18. 页面加载滚动动画
   ============================================ */
.section-divider span { animation:djFadeIn 1s ease; }

/* ==================== 文章详情页 ==================== */
.dj-post-detail {
    padding:40px 0 60px;
}
.dj-post-article {
    max-width:800px;
    margin:0 auto;
    background:#fff;
    border-radius:12px;
    padding:40px;
    box-shadow:0 2px 15px rgba(0,0,0,.05);
}
.dj-post-header {
    margin-bottom:30px;
    padding-bottom:20px;
    border-bottom:2px solid rgba(201,169,110,.3);
}
.dj-post-header h1 {
    font-size:28px;
    color:#3C2415;
    letter-spacing:2px;
    line-height:1.4;
    margin-bottom:12px;
}
.dj-post-meta {
    font-size:13px;
    color:#999;
    letter-spacing:1px;
}
.dj-post-meta span {
    margin-right:20px;
}
.dj-post-meta a {
    color:#8B2500;
    text-decoration:none;
}
.dj-post-thumbnail {
    margin-bottom:30px;
    border-radius:8px;
    overflow:hidden;
}
.dj-post-thumbnail img {
    width:100%;
    height:auto;
    display:block;
}
.dj-post-content {
    font-size:15px;
    line-height:2.2;
    color:#5C4A3A;
}
.dj-post-content p {
    margin-bottom:16px;
    text-indent:2em;
}
.dj-post-footer {
    margin-top:40px;
    padding-top:20px;
    border-top:1px solid rgba(201,169,110,.3);
}

@media (max-width:768px) {
    .dj-post-article { padding:25px 20px; }
    .dj-post-header h1 { font-size:22px; }
    .dj-post-content { font-size:14px; }
}

/* ==================== 门店展示 ==================== */
.dj-section-store{padding:70px 0;background:#fff}
.dj-store-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.dj-store-item{border-radius:8px;overflow:hidden;border:1px solid rgba(201,169,110,.3);transition:transform .3s;aspect-ratio:1}
.dj-store-item:hover{transform:translateY(-3px);box-shadow:0 8px 25px rgba(139,37,0,.12)}
.dj-store-item a{display:block;width:100%;height:100%}
.dj-store-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}
.dj-store-item:hover img{transform:scale(1.06)}
@media(max-width:768px){.dj-store-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.dj-store-grid{grid-template-columns:1fr}}
/* ==================== 客户店内展示 ==================== */
.dj-section-store{padding:70px 0 60px;background:#FBF5E8;position:relative}
.dj-section-store::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,transparent,#C9A96E,transparent)}
.store-gallery{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;max-width:1100px;margin:0 auto}
.store-item{position:relative;border-radius:10px;overflow:hidden;box-shadow:0 8px 25px rgba(60,36,21,.1);transition:transform .4s,box-shadow .4s;aspect-ratio:4/3;background:#F5E6C8}
.store-item:hover{transform:translateY(-6px);box-shadow:0 15px 40px rgba(60,36,21,.18)}
.store-item-featured{transform:scale(1.03);box-shadow:0 10px 30px rgba(139,37,0,.15)}
.store-item-featured:hover{transform:scale(1.03) translateY(-6px)}
.store-img-wrap{width:100%;height:100%;position:relative;cursor:pointer;overflow:hidden}
.store-img-wrap img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s}
.store-item:hover .store-img-wrap img{transform:scale(1.08)}
.store-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(60,36,21,.6),transparent 50%);display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding-bottom:25px;opacity:0;transition:opacity .4s}
.store-item:hover .store-overlay{opacity:1}
.store-icon{font-size:28px;margin-bottom:6px;display:block;animation:storeBounce 1.5s infinite}
.store-label{font-size:13px;color:#FBF5E8;letter-spacing:3px;text-shadow:0 2px 8px rgba(0,0,0,.3)}
.store-img-wrap.expanded{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90vw;max-width:900px;height:auto;aspect-ratio:auto;z-index:9999;border-radius:12px;box-shadow:0 25px 60px rgba(0,0,0,.5);cursor:zoom-out}
.store-img-wrap.expanded img{object-fit:contain;max-height:85vh}
.store-img-wrap.expanded::after{content:'\2715';position:fixed;top:20px;right:30px;font-size:30px;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.5);z-index:10000;cursor:pointer}
.store-img-wrap.expanded~.store-overlay{display:none}
.store-footer{display:flex;justify-content:center;gap:15px;margin-top:35px;flex-wrap:wrap}
.store-badge{display:inline-flex;align-items:center;gap:6px;padding:8px 20px;background:#fff;border:1px solid rgba(201,169,110,.4);font-size:13px;color:#8B2500;letter-spacing:2px;box-shadow:0 2px 10px rgba(60,36,21,.06);transition:all .3s}
.store-badge:hover{background:#8B2500;color:#FBF5E8;border-color:#8B2500;transform:translateY(-2px)}
@keyframes storeBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@media(max-width:768px){.store-gallery{grid-template-columns:1fr;gap:15px}.store-item-featured{transform:none}.store-item-featured:hover{transform:translateY(-4px)}.store-img-wrap.expanded{width:95vw}.store-badge{font-size:12px;padding:6px 14px}}
/* ==================== 邯郸印象（优化版） ==================== */
.dj-section-handan-profile{padding:60px 0 50px;text-align:center;background:linear-gradient(180deg,#FBF5E8 0%,#F5E6C8 100%);position:relative}
.handan-hero-text{max-width:780px;margin:0 auto 35px}
.handan-hero-text p{font-size:15px;line-height:2.2;color:#5C4A3A;margin-bottom:10px}
.handan-hero-text p:first-child{font-size:22px;color:#8B2500;letter-spacing:5px;font-weight:600;margin-bottom:16px}
.handan-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;max-width:900px;margin:0 auto 35px}
.handan-stat{padding:25px 15px;background:#FBF5E8;border:1px solid rgba(201,169,110,.4);transition:all .4s}
.handan-stat:hover{transform:translateY(-4px);box-shadow:0 8px 25px rgba(60,36,21,.1);border-color:#C9A96E}
.stat-number{display:block;font-size:28px;font-weight:700;color:#8B2500;letter-spacing:3px;margin-bottom:4px}
.stat-label{display:block;font-size:14px;color:#3C2415;letter-spacing:3px;margin-bottom:6px;font-weight:600}
.stat-desc{display:block;font-size:11px;color:#999;line-height:1.5}
.handan-stories{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1000px;margin:0 auto}
.handan-story-card{padding:30px 25px;background:#FBF5E8;border:1px solid rgba(201,169,110,.4);text-align:center;transition:all .4s}
.handan-story-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px rgba(60,36,21,.1);border-color:#C9A96E}
.handan-story-card .story-icon{font-size:40px;margin-bottom:10px}
.handan-story-card h4{font-size:17px;color:#8B2500;letter-spacing:4px;margin-bottom:10px;font-weight:600}
.handan-story-card p{font-size:13px;color:#888;line-height:1.9}
.handan-story-card p strong{color:#8B2500;font-size:15px}

@media(max-width:768px){
.handan-stats{grid-template-columns:repeat(2,1fr);gap:10px}
.handan-stories{grid-template-columns:1fr;gap:15px}
.stat-number{font-size:24px}
}