/* ===== BASE LAYOUT ===== */
* { box-sizing:border-box; }
html, body { 
  width:100%; 
  max-width:100%; 
  overflow-x:hidden;
  margin:0; 
  padding:0;
}
body { 
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif; 
  color:#333; 
  line-height:1.6; 
}
img, video { 
  max-width:100%; 
  height:auto; 
  display:block; 
}
.wrap { 
  max-width:1400px; 
  width:100%;
  margin:0 auto; 
  padding:0 20px; 
}

/* Hide mobile menu toggle on desktop */
.menu-toggle { display:none; }

/* ===== INNER BANNER (full width, no constraint) ===== */
.inner-banner { width:100%; overflow:hidden; line-height:0; }
.inner-banner img { width:100%; height:auto; display:block; min-height:280px; object-fit:cover; }

/* ===== INNER TITLE (narrower than content) ===== */
.inner-title { text-align:center; padding:0; }

.inner-title h1 { font-size:2rem; margin:0; color:#222; letter-spacing:2px; }
.inner-title p { margin:.5rem 0 0; color:#999; font-size:.95rem; letter-spacing:3px; text-transform:uppercase; }


/* Title area - narrow */
.title-wrap { max-width:700px; margin:0 auto; padding:2rem 20px; text-align:center; background:#f5f5f5; border-bottom:1px solid #eee; }
.title-wrap h1 { font-size:2rem; margin:0; color:#222; letter-spacing:2px; }
.title-wrap p { margin:.5rem 0 0; color:#999; font-size:.95rem; letter-spacing:3px; text-transform:uppercase; }
/* ===== INNER LAYOUT (sidebar + content) ===== */
.inner-layout { display:flex; gap:2.5rem; padding:3rem 0; align-items:flex-start; }

/* Sidebar navigation */
.side-cat { flex:0 0 200px; width:200px; background:#f5f5f5; border-radius:8px; overflow:hidden; box-shadow:0 2px 12px rgba(0,0,0,.06); position:sticky; top:20px; }
.side-cat h3 { background:#c00; color:#fff; padding:1rem; margin:0; font-size:1.05rem; letter-spacing:1px; }
.side-cat a { display:block; padding:.85rem 1rem; color:#555; text-decoration:none; border-bottom:1px solid #eee; font-size:.92rem; transition:all .2s; }
.side-cat a:hover { background:#fff0f0; color:#c00; padding-left:1.3rem; }

/* Main content area */
.inner-content { flex:1; min-width:0; }
/* ===== PRODUCT LIST FIXES ===== */
.product-list { width:100%; }
.product-list .p-row { 
  display:flex; 
  padding:2.5rem 0; 
  border-bottom:1px solid #e8e8e8; 
}
.product-list .p-row:last-child { border-bottom:none; }

.product-list .p-row .p-link { 
  display:flex; 
  gap:2.5rem; 
  width:100%; 
  text-decoration:none; 
  color:inherit; 
  align-items:flex-start;
}

.product-list .p-row .pic { 
  flex:0 0 420px; 
  width:420px;
  max-width:420px; 
}
.product-list .p-row .pic img { 
  width:100%; 
  height:auto; 
  border-radius:8px; 
  box-shadow:0 4px 16px rgba(0,0,0,.12); 
  display:block;
}

.product-list .p-row .p-info { 
  flex:1; 
  min-width:0;
}
.product-list .p-row .p-info h2 { 
  font-size:1.6rem; 
  margin:0 0 1rem; 
  color:#222; 
  font-weight:600;
}
.product-list .p-row .p-info p { 
  color:#555; 
  line-height:1.8; 
  margin:0 0 1.2rem;
  font-size:1rem;
}

/* Tags - horizontal layout */
.product-list .tag-list { 
  display:flex; 
  flex-wrap:wrap; 
  gap:0.6rem; 
  margin:0 0 1.2rem;
}
.product-list .tag-list span { 
  display:inline-block; 
  background:#fff0f0; 
  color:#c00; 
  padding:6px 16px; 
  border-radius:4px; 
  font-size:0.88rem; 
  white-space:nowrap;
  border:1px solid #ffcccc;
}

.product-list .view-detail { 
  display:inline-block; 
  color:#c00; 
  font-weight:600; 
  font-size:1rem;
  transition:transform 0.2s;
}
.product-list .p-link:hover .view-detail { 
  transform:translateX(5px); 
}

/* Hover effect on row */
.product-list .p-row:hover { background:#fafafa; }

/* Responsive */
@media (max-width:900px) {
  .product-list .p-row .p-link { flex-direction:column; }
  .product-list .p-row .pic { flex:0 0 auto; width:100%; max-width:100%; }
}
/*
Theme Name: RuiWo WordPress Theme V2 Fixed
Theme URI: https://ruiwo.local/
Author: RuiWo
Description: RuiWo compressor enterprise website theme with auto pages, subpage banners and sample content.
Version: 2.0.0
Text Domain: ruiwo
*/

/* Smooth scroll & offset for fixed header */
html { scroll-behavior: smooth; }
.p-row { scroll-margin-top: 120px; }
.solution-card { scroll-margin-top: 120px; }

/* News tabs */
.news-tabs { display:flex; gap:0; border-bottom:2px solid #c00; margin-bottom:1.5rem; }
.news-tabs .tab { padding:0.6rem 1.5rem; background:#f5f5f5; color:#333; text-decoration:none; font-size:0.95rem; border-radius:4px 4px 0 0; }
.news-tabs .tab.active { background:#c00; color:#fff; }
.news-tabs .tab:hover { background:#e00; color:#fff; }

/* About numbers */
.about-numbers b { display:block; }
.about-numbers p { margin:0.3rem 0 0; color:#666; font-size:0.9rem; }

/* Service sections spacing */
.energy-box { margin-bottom:2.5rem; padding-bottom:2rem; border-bottom:1px solid #eee; }
.energy-box:last-child { border-bottom:none; }

/* Honor section titles */
.mf-section h2 { font-size:1.4rem; color:#333; margin-bottom:1.5rem; }

/* Product clickable row */
.p-row .p-link { display:flex; gap:1.5rem; text-decoration:none; color:inherit; }
.p-row .p-link:hover { background:rgba(204,0,0,.03); }
.p-row .p-link:hover .view-detail { color:#c00; }
.view-detail { display:inline-block; margin-top:.8rem; color:#999; font-size:.9rem; transition:color .2s; }
.p-row .p-link:hover .view-detail { color:#c00; }

/* Product detail page */
.product-detail { display:flex; gap:2.5rem; flex-wrap:wrap; }
.product-gallery { flex:0 0 420px; max-width:100%; background:#f7f9fc; border:1px solid #e6edf5; border-radius:10px; padding:28px; display:flex; align-items:center; justify-content:center; min-height:380px; }
.product-gallery img { width:100%; max-width:400px; height:auto; object-fit:contain; display:block; border-radius:8px; }
.product-info { flex:1; min-width:280px; }
.product-info h2 { font-size:1.6rem; margin-bottom:.5rem; }
.product-meta .tag { display:inline-block; background:#f0f0f0; padding:2px 10px; border-radius:3px; font-size:.8rem; margin-right:.3rem; margin-bottom:.3rem; }
.product-content { margin:1rem 0; line-height:1.8; color:#555; }
.product-tags span { display:inline-block; background:#fff3f3; color:#c00; padding:4px 12px; border-radius:3px; font-size:.8rem; margin-right:.3rem; margin-bottom:.3rem; }
.product-cta { margin-top:1.5rem; display:flex; gap:1rem; }
.btn-primary { display:inline-block; padding:.7rem 2rem; background:#c00; color:#fff; border-radius:4px; text-decoration:none; font-size:1rem; }
.btn-primary:hover { background:#a00; }
.btn-secondary { display:inline-block; padding:.7rem 2rem; border:2px solid #c00; color:#c00; border-radius:4px; text-decoration:none; font-size:1rem; }
.btn-secondary:hover { background:#fff5f5; }

/* Solution detail */
.solution-detail img { width:100%; max-width:700px; border-radius:8px; margin-bottom:1.5rem; }
.solution-content { line-height:1.8; color:#555; }

/* Case detail */
.case-detail img { width:100%; max-width:700px; border-radius:8px; margin-bottom:1.5rem; }
.case-content { line-height:1.8; color:#555; }
.case-cta { display:flex; justify-content:space-between; align-items:center; margin-top:2rem; padding-top:1rem; border-top:1px solid #eee; }
.case-cta a:first-child { color:#666; text-decoration:none; }

/* Product list layout fix */
.product-list .p-row { display:flex; gap:2rem; padding:2rem 0; border-bottom:1px solid #eee; }
.product-list .p-row .p-link { display:flex; gap:2rem; width:100%; text-decoration:none; color:inherit; }
.product-list .p-row .pic { flex:0 0 380px; max-width:380px; }
.product-list .p-row .pic img { width:100%; height:auto; border-radius:8px; box-shadow:0 4px 12px rgba(0,0,0,.1); }
.product-list .p-row > a > div:last-child { flex:1; }
.product-list .p-row h2 { font-size:1.5rem; margin-bottom:1rem; color:#333; }
.product-list .p-row p { color:#666; line-height:1.8; margin-bottom:1rem; }

/* Tags horizontal */
.tag-list { display:flex; flex-wrap:wrap; gap:0.5rem; margin:1rem 0; }
.tag-list span { display:inline-block; background:#fff3f3; color:#c00; padding:6px 14px; border-radius:3px; font-size:0.85rem; white-space:nowrap; }

/* View detail link */
.view-detail { display:inline-block; margin-top:1rem; color:#c00; font-weight:500; font-size:0.95rem; }
.view-detail:hover { text-decoration:underline; }

/* ===== TABLET (1024px) ===== */
@media (max-width:1024px) {
  .wrap { padding:0 15px; }
  .head-icons { display:none; }
  .mf-nav ul { overflow-x:auto; -webkit-overflow-scrolling:touch; }
  .mf-nav ul::-webkit-scrollbar { display:none; }
  .hero-pure { height:420px; }
  .product-show { grid-template-columns:1fr; }
  .product-cards { grid-template-columns:repeat(2,1fr); }
  .cap-grid { grid-template-columns:repeat(2,1fr); }
  .solution-grid { grid-template-columns:repeat(2,1fr); }
  .case-grid { grid-template-columns:repeat(2,1fr); }
  .certs { grid-template-columns:repeat(2,1fr); }
  .about-home { grid-template-columns:1fr; }
  .news-layout { grid-template-columns:1fr; }
  .inner-layout { grid-template-columns:1fr; }
  .side-cat { position:static; }
  .footer-grid { grid-template-columns:repeat(3,1fr); }
  .footer-contact { grid-column:auto; }
  .power-row { transform:none; }
}

/* ===== MOBILE (768px) - 系统性重写 ===== */
@media (max-width:768px) {
  /* === 基础布局 === */
  html, body { 
    overflow-x:hidden; 
    font-size:14px;
  }
  .wrap { padding:0 16px; }
  
  /* === PC端元素隐藏 === */
  .mf-top, .mf-head, .mf-nav.pc-nav, .head-icons, .head-phone,
  .side-tools { display:none !important; }
  
  /* === 移动端 Header 已在 header.php 中实现 === */
  body { padding-top:56px; padding-bottom:60px; }
  
  /* === Banner / Hero === */
  .hero-pure { 
    height:300px;
    position:relative;
    overflow:hidden;
  }
  .hero-pure img { 
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center center;
  }
  .inner-banner { 
    height:200px;
    overflow:hidden;
  }
  .inner-banner img {
    width:100%;
    height:100%;
    object-fit:cover;
  }
  .title-wrap { padding:1.5rem 16px; }
  .title-wrap h1 { font-size:1.5rem; }
  .title-wrap p { font-size:0.85rem; }
  
  /* === 数据统计栏 === */
  .power-row { 
    grid-template-columns:repeat(2, 1fr); 
    gap:1px;
    padding:20px 0;
  }
  .power-row div { padding:16px 8px; }
  .power-row b { font-size:24px; }
  .power-row span { font-size:11px; }
  
  /* === 模块标题 === */
  .mf-section { padding:40px 0 !important; }
  .sec-title { margin-bottom:24px; text-align:center; }
  .sec-title h2 { font-size:22px; }
  .sec-title p { font-size:13px; }
  .sec-title:after { margin:12px auto 0; }
  
  /* === 产品模块 === */
  .product-show { grid-template-columns:1fr; gap:24px; }
  .product-left { 
    min-height:auto; 
    padding:24px 16px; 
    text-align:center;
  }
  .product-left h3 { font-size:22px; margin-bottom:12px; }
  .product-left p { font-size:14px; line-height:1.7; }
  .product-left a { margin-top:16px; }
  .product-cards { grid-template-columns:1fr; gap:16px; }
  .p-card { padding:16px; }
  .p-card .pic { height:180px; }
  .p-card h3 { font-size:16px; margin-bottom:8px; }
  .p-card p { font-size:13px; line-height:1.6; }
  
  /* === 能力模块 === */
  .cap-grid { grid-template-columns:1fr; gap:16px; }
  .cap-card .pic { height:180px; }
  .cap-card h3 { font-size:16px; }
  .cap-card p { font-size:13px; }
  
  /* === 解决方案 === */
  .solution-grid { grid-template-columns:1fr; gap:16px; }
  .solution-card { 
    height:180px; 
    position:relative;
  }
  .solution-card img { 
    width:100%; 
    height:100%; 
    object-fit:cover; 
  }
  .solution-card b { 
    position:absolute; 
    bottom:0; 
    left:0; 
    right:0; 
    padding:12px 16px;
    background:linear-gradient(transparent, rgba(0,0,0,0.7));
    color:#fff; 
    font-size:15px; 
    font-weight:600;
  }
  
  /* === 行业应用 === */
  .industry-grid { grid-template-columns:repeat(2, 1fr); gap:12px; }
  .industry-card .industry-img { height:100px; }
  .industry-name { font-size:13px; padding:10px 8px; }
  
  /* === 关于瑞沃 === */
  .about-home { grid-template-columns:1fr; gap:24px; }
  .about-home .factory { 
    height:auto;
    aspect-ratio:4/3;
    border-radius:8px;
    overflow:hidden;
  }
  .about-home h2 { font-size:22px; margin-bottom:16px; }
  .about-home p { font-size:14px; line-height:1.8; }
  .about-home .btn-primary { 
    display:inline-block; 
    margin-top:16px; 
    padding:12px 24px;
  }
  .brand-mini { grid-template-columns:repeat(2, 1fr); gap:8px; }
  .brand-mini div { font-size:13px; padding:10px; }
  
  /* === 新闻模块 === */
  .news-layout { grid-template-columns:1fr; gap:20px; }
  .news-main img { height:180px; }
  .news-tabs { flex-wrap:wrap; gap:0; }
  .news-tabs .tab { 
    flex:1; 
    text-align:center; 
    padding:12px 10px; 
    font-size:14px;
    border-radius:0;
    margin:0;
    border-bottom:1px solid #ddd;
  }
  .news-item { padding:12px; gap:12px; }
  .news-date { flex:0 0 60px; padding:10px 8px; }
  .news-date b { font-size:22px; }
  .news-date span { font-size:11px; }
  .news-body h4 { font-size:15px; }
  .news-body p { font-size:13px; line-height:1.6; }
  
  /* === 内页布局 === */
  .inner-layout { 
    display:block; 
    gap:24px; 
    padding:24px 0; 
  }
  .side-cat { 
    width:100%; 
    margin-bottom:20px;
    position:static !important;
  }
  .side-cat h3 { font-size:16px; padding:14px 16px; }
  .side-cat a { padding:12px 16px; font-size:14px; }
  .inner-content { width:100%; }
  
  /* === 产品列表 === */
  .product-list .p-row { 
    flex-direction:column; 
    gap:16px; 
    padding:20px 0; 
  }
  .product-list .p-row .pic { 
    flex:none; 
    width:100%; 
    max-width:100%;
    min-height:280px;
    border-radius:8px;
    overflow:hidden;
  }
  .product-list .p-row .pic img { 
    width:100%; 
    height:100%;
    object-fit:cover;
  }
  .product-list .p-row h2 { font-size:18px; margin-bottom:12px; }
  .product-list .p-row p { font-size:14px; line-height:1.7; }
  .tag-list { flex-wrap:wrap; gap:6px; }
  .tag-list span { font-size:12px; padding:4px 10px; }
  .view-detail { font-size:14px; margin-top:12px; }
  
  /* === 产品详情 === */
  .product-detail { flex-direction:column; gap:24px; }
  .product-gallery { width:100%; }
  .product-gallery img { width:100%; max-width:100%; height:auto; object-fit:contain; display:block; border-radius:8px; }
  .product-info { width:100%; }
  .product-info h2 { font-size:20px; }
  .product-content { font-size:14px; line-height:1.8; }
  .product-tags { gap:6px; }
  .product-tags span { font-size:12px; padding:6px 12px; }
  .product-cta { flex-direction:column; gap:12px; }
  .btn-primary, .btn-secondary { 
    width:100%; 
    text-align:center; 
    padding:14px 20px; 
  }
  
  /* === 解决方案详情 === */
  .solution-detail img { 
    max-width:100%; 
    border-radius:8px; 
  }
  .solution-content { font-size:14px; line-height:1.8; }
  
  /* === 案例列表 === */
  .cases-wrap { grid-template-columns:1fr; gap:16px; }
  .case-item { border-radius:8px; }
  .case-img { height:180px; }
  .case-info { padding:14px; }
  .case-info h3 { font-size:16px; margin-bottom:8px; }
  .case-info p { font-size:13px; line-height:1.6; }
  
  /* === 案例详情 === */
  .case-detail img { 
    max-width:100%; 
    max-height:300px;
    border-radius:8px; 
  }
  .case-content { font-size:14px; line-height:1.8; }
  .case-cta { 
    flex-direction:column; 
    gap:12px; 
    text-align:center;
  }
  
  /* === 服务/维保 === */
  .service-wrap { gap:24px; }
  .service-item { flex-direction:column; }
  .service-item:nth-child(even) { flex-direction:column; }
  .service-img { 
    flex:none; 
    max-width:100%;
    height:200px;
  }
  .service-img img { 
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:8px 8px 0 0;
  }
  .service-content { padding:20px 16px; }
  .service-content h3 { font-size:18px; margin-bottom:12px; }
  .service-content p { font-size:14px; line-height:1.7; }
  .service-btn { margin-top:16px; padding:12px 20px; }
  
  /* === 资质荣誉 === */
  .honor-section { margin-bottom:24px; }
  .honor-title { font-size:18px; margin-bottom:16px; padding-bottom:10px; }
  .certs-wrap { grid-template-columns:1fr; gap:16px; }
  .cert-item { border-radius:8px; }
  .cert-item img { height:300px; }
  .cert-item p { font-size:14px; padding:12px; }
  
  /* === 关于我们 === */
  .about-wrap { gap:24px; }
  .about-intro { flex-direction:column; gap:20px; }
  .about-img { width:100%; max-width:100%; }
  .about-text h2 { font-size:22px; margin-bottom:12px; }
  .about-text p { font-size:14px; line-height:1.8; }
  .about-tags { gap:8px; margin-top:16px; }
  .about-tags span { padding:8px 14px; font-size:12px; }
  .about-stats { 
    grid-template-columns:repeat(2, 1fr); 
    gap:16px; 
    padding:20px;
    border-radius:8px;
  }
  .stat-item b { font-size:28px; }
  .stat-item span { font-size:13px; }
  .about-recruit { padding:20px 16px; border-radius:8px; }
  .about-recruit h3 { font-size:18px; margin-bottom:10px; }
  .about-recruit > p { font-size:14px; margin-bottom:20px; }
  .recruit-jobs { grid-template-columns:1fr; gap:12px; }
  .job-item { padding:16px; border-radius:8px; }
  .job-item h4 { font-size:15px; }
  .job-item p { font-size:13px; }
  
  /* === 联系我们 === */
  .contact-container { grid-template-columns:1fr; gap:24px; padding:16px; }
  .contact-info, .contact-form-wrapper { padding:20px 16px; }
  .contact-info h2 { font-size:18px; margin-bottom:16px; }
  .info-item { font-size:13px; gap:10px; margin-bottom:12px; }
  .contact-form input, 
  .contact-form textarea { 
    padding:12px 14px; 
    font-size:14px; 
  }
  .contact-form textarea { min-height:100px; }
  .submit-btn { width:100%; padding:14px; font-size:15px; }
  
  /* === Footer === */
  .mf-footer { padding-top:20px; }
  .footer-grid { display:block; padding:0 16px; }
  .footer-nav-col { display:none; }
  .footer-contact { display:block; text-align:left; padding:0 0 16px; }
  .footer-contact h4 { font-size:16px; margin-bottom:12px; color:#fff; }
  .footer-contact p { font-size:13px; margin:8px 0; line-height:1.6; color:#b9c5d3; }
  .copyright { font-size:12px; padding:16px; margin-top:16px; }
  
  /* === 弹窗调整 === */
  .quote-modal-content { 
    width:92%; 
    max-width:400px;
    padding:20px 16px;
    margin:20px auto;
    max-height:90vh;
    overflow-y:auto;
  }
  .quote-modal-content h3 { font-size:18px; margin-bottom:16px; }
  .form-row input, .form-row textarea { 
    padding:12px 14px; 
    font-size:14px; 
  }
  .form-row.dual { grid-template-columns:1fr; gap:12px; }
  .quote-submit { padding:14px; font-size:15px; }
  .job-modal-content { 
    width:92%; 
    padding:20px 16px;
    max-height:90vh;
  }
}

/* ===== 小屏手机 (480px) ===== */
@media (max-width:480px) {
  .wrap { padding:0 12px; }
  
  .hero-pure { height:240px; }
  .power-row { grid-template-columns:1fr 1fr; gap:1px; }
  .power-row b { font-size:20px; }
  
  .sec-title h2 { font-size:20px; }
  .mf-section { padding:32px 0 !important; }
  
  .product-left { padding:20px 12px; }
  .product-left h3 { font-size:20px; }
  .p-card .pic { height:160px; }
  
  .cap-card .pic { height:160px; }
  .solution-card { height:160px; }
  .case-img { height:160px; }
  .cert-item img { height:240px; }
  
  .title-wrap h1 { font-size:1.3rem; }
  
  .industry-grid { grid-template-columns:1fr; }
  .industry-card .industry-img { height:120px; }
  
  .brand-mini { grid-template-columns:1fr; }
  
  .about-stats { grid-template-columns:1fr; }
  
  .contact-container { padding:12px; }
  .contact-info, .contact-form-wrapper { padding:16px 12px; }
}
