/*
Theme Name: Shenghao Industrial
Theme URI: https://shenghaorecycling.com/
Author: SHENGHAO
Description: Industrial equipment catalogue and project enquiries for Shenghao Recycling Equipment.
Version: 2.3.4
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: shenghao-industrial
*/
:root {
  --navy:#172a35; --navy-deep:#101e26; --orange:#b94d20; --orange-dark:#963c16;
  --ink:#172a35; --muted:#5b676b; --paper:#f4f4ef; --line:#dce0dd; --white:#fff;
  --max:1280px; --radius:2px; --accent:#ec8b50;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:110px; }
body { margin:0; color:var(--ink); background:#fff; overflow-x:hidden; font-family:Arial,Helvetica,sans-serif; font-size:16px; line-height:1.65; }
[hidden] { display:none!important; }
img { max-width:100%; height:auto; display:block; }
button,input,select,textarea { font:inherit; }
button,a,input,select,textarea { -webkit-tap-highlight-color:transparent; }
button { cursor:pointer; }
a { color:inherit; text-decoration:none; }
a:hover { color:var(--orange); }
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible { outline:3px solid #bd5b2f; outline-offset:4px; }
p { margin:0 0 20px; }
h1,h2,h3,h4 { line-height:1.12; margin:0; }
.container { width:min(var(--max),calc(100% - 80px)); margin-inline:auto; }
.skip-link { position:absolute; left:-9999px; top:8px; z-index:100; padding:12px 18px; background:#fff; color:var(--ink); }
.skip-link:focus { left:10px; }
.topbar { background:var(--navy-deep); color:#d8e0e2; font-size:10px; font-weight:700; letter-spacing:.1em; padding:9px 0; }
.topbar .container { display:flex; justify-content:space-between; gap:20px; }
.topbar a { font-weight:400; letter-spacing:.025em; }
.topbar a:hover { color:#fff; }
.site-header { background:#fff; border-bottom:1px solid var(--line); position:sticky; top:0; z-index:50; }
.admin-bar .site-header { top:32px; }
.header-inner { min-height:92px; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.brand { display:flex; align-items:center; gap:12px; flex-shrink:0; }
.brand-mark { width:44px; height:44px; display:grid; place-items:center; color:#fff; background:var(--orange); font-size:32px; line-height:1; font-weight:900; border-radius:1px; transform:skew(-7deg); }
.brand-name { font-size:23px; letter-spacing:-.04em; font-weight:900; line-height:1; color:var(--navy); }
.brand-name small { display:block; font-size:9px; letter-spacing:.19em; font-weight:700; margin-top:7px; }
.nav { font-size:12px; font-weight:700; }
.nav ul { display:flex; align-items:center; list-style:none; padding:0; margin:0; gap:28px; }
.nav li { position:relative; }
.nav a { display:block; padding:24px 0; }
.nav a[aria-current="page"],.nav .current-menu-item>a { color:var(--orange); }
.nav a[aria-current="page"]:after,.nav .current-menu-item>a:after { content:""; position:absolute; bottom:13px; left:0; width:20px; height:2px; background:var(--orange); }
.nav .sub-menu { display:none; position:absolute; top:100%; left:-20px; width:240px; padding:10px 20px; background:#fff; border:1px solid var(--line); box-shadow:0 8px 24px #172a3514; }
.nav .sub-menu a { padding:10px 0; font-size:12px; }
.nav li:hover>.sub-menu,.nav li:focus-within>.sub-menu { display:block; }
.btn { display:inline-flex; align-items:center; justify-content:space-between; gap:24px; padding:17px 22px; background:var(--orange); border:1px solid var(--orange); border-radius:var(--radius); color:#fff; font-size:12px; font-weight:700; line-height:1.3; transition:background .18s,transform .18s; }
.btn:hover { background:var(--orange-dark); border-color:var(--orange-dark); color:#fff; }
.btn span { font-size:19px; line-height:1; }
.btn-dark { background:var(--navy); border-color:var(--navy); }
.btn-dark:hover { background:var(--navy-deep); border-color:var(--navy-deep); }
.btn-outline { color:var(--navy); background:transparent; border-color:var(--navy); }
.btn:disabled { opacity:.65; cursor:wait; }
.header-cta { padding:13px 17px; font-size:11px; gap:18px; }
.menu-toggle { display:none; border:1px solid var(--line); padding:10px 12px; color:var(--navy); background:#fff; font-size:11px; font-weight:700; align-items:center; gap:6px; }
.eyebrow { display:flex; align-items:center; gap:10px; color:var(--orange); font-size:10px; font-weight:800; letter-spacing:.13em; line-height:1.5; text-transform:uppercase; margin-bottom:18px; }
.eyebrow:before { content:""; height:6px; width:6px; background:currentColor; flex:0 0 auto; }
.hero { background:var(--paper); overflow:hidden; }
.hero-grid { display:grid; grid-template-columns:1fr 1fr; gap:54px; align-items:stretch; }
.hero-content { padding:72px 0 50px; align-self:center; }
.hero h1 { font-size:clamp(62px,6.5vw,94px); font-weight:800; line-height:1.01; letter-spacing:-.065em; margin:24px 0 28px; }
.hero h1 span { color:var(--orange); }
.hero p { max-width:455px; font-size:16px; line-height:1.8; color:var(--muted); margin-bottom:30px; }
.hero-actions { display:flex; align-items:center; gap:25px; flex-wrap:wrap; }
.hero-contact { font-weight:700; font-size:12px; }
.hero-contact span { margin-left:10px; }
.hero-origin { display:flex; align-items:center; gap:9px; margin-top:42px; font-size:10px; color:var(--muted); flex-wrap:wrap; }
.origin-dot { width:6px; height:6px; background:var(--orange); border-radius:50%; }
.origin-divider { color:#acb4b3; margin:0 3px; }
.hero-photo { position:relative; background:var(--navy); overflow:hidden; min-height:570px; margin-right:calc((min(var(--max),100vw - 80px) - 100vw) / 2); }
.hero-photo>img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; object-position:20% center; }
.hero-photo:after { content:""; position:absolute; inset:45% 0 0; background:linear-gradient(transparent,#101e26d9); pointer-events:none; }
.hero-index { position:absolute; top:26px; left:28px; color:#fff; font-size:9px; letter-spacing:.15em; background:#101e268a; padding:7px 10px; }
.hero-photo-caption { position:absolute; left:30px; right:30px; bottom:32px; z-index:1; color:#fff; padding-top:20px; border-top:1px solid #ffffff55; display:grid; grid-template-columns:1fr auto; gap:9px; }
.hero-photo-caption>span { font-size:9px; letter-spacing:.16em; color:#e4e9e8; }
.hero-photo-caption strong { font-size:23px; letter-spacing:-.025em; grid-row:2; }
.hero-photo-caption a { grid-column:2; grid-row:1/3; align-self:center; border:1px solid #ffffff70; width:46px; height:46px; display:grid; place-items:center; font-size:23px; }
.hero-photo-caption a:hover { background:#fff; color:var(--navy); }
.capability-strip { background:var(--navy); color:#fff; }
.capability-strip>.container { display:grid; grid-template-columns:repeat(3,1fr); }
.capability-strip .container>div { display:flex; gap:22px; align-items:center; padding:29px 25px; border-right:1px solid #ffffff26; }
.capability-strip .container>div:first-child { padding-left:0; }
.capability-strip .container>div:last-child { border:0; }
.capability-strip strong { color:#f5ae7e; font-size:41px; font-weight:500; letter-spacing:-.05em; line-height:1; }
.capability-strip span { font-size:11px; line-height:1.8; color:#d0dadd; }
.section { padding:88px 0; }
.section-soft { background:var(--paper); }
.section-head { display:flex; justify-content:space-between; align-items:flex-end; gap:50px; margin-bottom:38px; }
.section-head h2,.split h2,.contact-info h2 { font-size:clamp(34px,3.5vw,49px); line-height:1.1; font-weight:700; letter-spacing:-.045em; }
.section-head p,.section-intro { max-width:350px; color:var(--muted); font-size:14px; }
.section-head p { margin-bottom:0; }
.section-intro p { margin-bottom:16px; }
.text-link { font-size:11px; font-weight:800; color:var(--orange); line-height:1.5; }
.text-link span { margin-left:20px; font-size:16px; }
.product-filters { display:flex; align-items:center; gap:4px; padding:0 0 25px; flex-wrap:wrap; }
.product-filters button { background:transparent; color:var(--muted); border:1px solid transparent; padding:10px 19px; font-size:11px; font-weight:700; border-radius:2px; }
.product-filters button[aria-pressed="true"] { color:#fff; background:var(--navy); border-color:var(--navy); }
.product-filters button:hover { border-color:var(--navy); }
.product-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.product-card { min-width:0; display:flex; flex-direction:column; background:#fff; border:1px solid var(--line); transition:border-color .2s,box-shadow .2s; }
.product-card:hover { border-color:#aab5b4; box-shadow:0 8px 25px #172a350a; }
.product-card-link { color:inherit; flex:1; }
.product-card-link:hover { color:inherit; }
.product-image { position:relative; aspect-ratio:4/3; background:#f0f1ed; padding:12px; overflow:hidden; border-bottom:1px solid var(--line); }
.product-image img { width:100%; height:100%; object-fit:contain; transition:transform .3s; }
.product-card:hover .product-image img { transform:scale(1.025); }
.product-body { padding:24px 23px 20px; }
.product-meta { color:var(--orange); font-size:9px; font-weight:800; line-height:1.5; text-transform:uppercase; letter-spacing:.09em; }
.product-body h3 { font-size:22px; letter-spacing:-.035em; line-height:1.16; margin:11px 0 12px; }
.product-body p { font-size:12px; color:var(--muted); line-height:1.75; margin-bottom:16px; }
.product-application { font-size:10px; color:var(--muted); }
.product-actions { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px 23px; border-top:1px solid var(--line); }
.product-actions .text-link { color:var(--navy); font-size:10px; }
.quote-link { font-size:10px; font-weight:700; color:var(--orange); }
.image-unavailable { display:grid; place-items:center; background:repeating-linear-gradient(135deg,#f1f2ef,#f1f2ef 14px,#eceee9 14px,#eceee9 15px); }
.image-unavailable-label { max-width:220px; padding:25px; text-align:center; color:var(--muted); font-size:12px; line-height:1.8; }
.split { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; }
.split p { color:var(--muted); font-size:14px; line-height:1.85; margin-top:24px; }
.split-image { position:relative; background:#e6e9e4; }
.split-image img { width:100%; aspect-ratio:1.05; object-fit:cover; object-position:center; }
.image-tag { position:absolute; left:0; bottom:0; background:var(--navy); color:#fff; padding:15px 20px; font-size:9px; font-weight:700; letter-spacing:.07em; max-width:95%; }
.check-list { list-style:none; padding:0; margin:23px 0 30px; }
.check-list li { position:relative; font-size:12px; line-height:1.6; padding:11px 0 11px 24px; border-bottom:1px solid var(--line); }
.check-list li:before { content:"↗"; position:absolute; left:0; color:var(--orange); font-size:15px; font-weight:800; }
.process-grid { display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--line); }
.process-grid article { padding:35px 30px; border-right:1px solid var(--line); }
.process-grid article:last-child { border:0; }
.process-grid article>span { font-size:9px; letter-spacing:.08em; font-weight:800; color:var(--orange); }
.process-grid h3 { font-size:23px; letter-spacing:-.04em; margin:38px 0 16px; }
.process-grid p { font-size:13px; color:var(--muted); margin:0; }
.cta { padding:58px 0; background:var(--navy); color:#fff; border-bottom:1px solid #ffffff26; }
.cta .eyebrow { color:#f3ad7d; }
.cta-inner { display:flex; justify-content:space-between; align-items:center; gap:40px; }
.cta h2 { font-size:clamp(30px,3.2vw,43px); letter-spacing:-.04em; line-height:1.12; max-width:780px; }
.cta p { font-size:13px; color:#d1dcdf; max-width:660px; margin:18px 0 0; }
.cta .btn { flex-shrink:0; background:#f0a16d; border-color:#f0a16d; color:var(--navy-deep); }
.cta .btn:hover { background:#fff; border-color:#fff; }
.site-footer { background:var(--navy-deep); padding:60px 0 20px; color:#c2cdd1; }
.footer-grid { display:grid; grid-template-columns:1.3fr 1fr .85fr 1fr; gap:45px; }
.site-footer .brand-name { color:#fff; }
.site-footer .brand-name small { color:#c2cdd1; }
.site-footer .brand-mark { background:#fff; color:var(--navy-deep); }
.site-footer p { font-size:12px; line-height:1.8; margin:24px 0 18px; }
.site-footer h4 { font-size:11px; color:#fff; margin:3px 0 25px; }
.footer-links { display:grid; gap:11px; font-size:11px; line-height:1.7; }
.footer-email { font-size:11px; color:#fff; }
.footer-phone { font-size:14px; color:#fff; white-space:nowrap; }
.site-footer .small-note { font-size:10px; margin:4px 0 20px; }
.site-footer .text-link { color:#f3ad7d; font-size:10px; }
.site-footer a:hover { color:#f3ad7d; }
.copyright { display:flex; justify-content:space-between; gap:20px; margin-top:50px; padding-top:20px; border-top:1px solid #ffffff20; font-size:9px; line-height:1.7; color:#9dacb1; }
.mobile-contact { display:none; }
.page-hero { background:var(--paper); padding:26px 0 65px; }
.page-hero h1 { font-size:clamp(42px,5.5vw,72px); line-height:1.05; letter-spacing:-.055em; margin:20px 0 23px; max-width:920px; }
.page-hero h1 span { color:var(--orange); }
.page-hero p { color:var(--muted); max-width:600px; font-size:15px; margin:0; }
.breadcrumb { display:flex; gap:12px; flex-wrap:wrap; font-size:10px; color:var(--muted); margin:0 0 42px; }
.breadcrumb>span:not(:last-child) { color:#9ba7a8; }
.page-hero .eyebrow { margin-bottom:12px; }
.content-area { padding:60px 0 75px; }
.content-area>.container { max-width:920px; }
.content-area h2,.product-copy h2 { font-size:30px; letter-spacing:-.035em; line-height:1.2; margin:42px 0 20px; }
.content-area h3,.product-copy h3 { font-size:21px; line-height:1.3; margin:27px 0 14px; }
.content-area p,.content-area li,.product-copy p,.product-copy li { color:#515e63; font-size:14px; line-height:1.85; }
.content-area a,.product-copy p a { color:var(--orange); text-decoration:underline; text-underline-offset:3px; }
.content-area img,.product-copy img { height:auto; }
.content-area .container { width:100%; }
.content-area .section { padding:30px 0; }
.content-area .split { gap:35px; }
.content-area .cta .container { padding:30px; }
.content-area .cta p { color:#d1dcdf; }
.app-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.app-card { padding:25px; background:#fff; border:1px solid var(--line); }
.app-card h3 { margin:0 0 12px; font-size:19px; }
.app-card p { font-size:13px; margin:0; }
.notice-box { padding:22px 25px; border-left:3px solid var(--orange); background:var(--paper); color:var(--muted); font-size:13px; margin-top:32px; }
.small-note { font-size:11px; line-height:1.75; color:var(--muted); }
.small-note a { text-decoration:underline; text-underline-offset:3px; }
.product-hero { background:var(--paper); padding:26px 0 58px; }
.product-detail-grid { display:grid; grid-template-columns:1fr 1fr; gap:65px; align-items:center; }
.product-detail-grid h1 { font-size:clamp(40px,4.3vw,60px); line-height:1.06; letter-spacing:-.05em; margin:18px 0 22px; }
.product-lead { font-size:16px; color:var(--muted); max-width:490px; line-height:1.85; }
.product-use { color:var(--orange); font-size:11px; margin:25px 0; }
.product-detail-grid .small-note { max-width:370px; margin:20px 0 0; }
.detail-image { background:#fff; padding:20px; border:1px solid var(--line); aspect-ratio:4/3; display:grid; align-items:center; }
.detail-image img { width:100%; height:100%; min-height:0; object-fit:contain; }
.product-layout { display:grid; grid-template-columns:230px minmax(0,1fr); gap:65px; align-items:start; }
.product-sidebar { position:sticky; top:125px; }
.product-sidebar nav { display:grid; margin-top:20px; }
.product-sidebar nav a { padding:12px 0; border-bottom:1px solid var(--line); font-size:11px; line-height:1.6; }
.sidebar-enquiry { margin-top:30px; background:var(--paper); padding:23px; }
.sidebar-enquiry h3 { font-size:21px; letter-spacing:-.035em; }
.sidebar-enquiry p { font-size:12px; color:var(--muted); margin:15px 0; }
.product-copy { min-width:0; }
.product-copy>:first-child { margin-top:0; }
.product-copy .wp-block-table { margin:22px 0; overflow-x:auto; }
.product-copy table { width:100%; border-collapse:collapse; font-size:13px; }
.product-copy td,.product-copy th { padding:14px 17px; border:1px solid var(--line); text-align:left; }
.product-copy tr:nth-child(odd) { background:var(--paper); }
.product-copy .wp-block-gallery { display:grid; gap:16px; grid-template-columns:repeat(2,minmax(0,1fr)); margin:25px 0; }
.product-copy .wp-block-gallery .wp-block-image { width:auto!important; margin:0!important; }
.product-copy .wp-block-gallery img { width:100%; max-height:340px; object-fit:contain; }
.product-enquiry { padding:30px; margin-top:45px; background:var(--paper); border-top:3px solid var(--orange); }
.product-enquiry h2 { margin:0 0 18px; font-size:30px; }
.product-enquiry p { margin-bottom:24px; }
.product-enquiry .btn { color:#fff; text-decoration:none; }
.contact-layout { display:grid; grid-template-columns:.85fr 1.15fr; gap:90px; align-items:start; }
.contact-info>p { max-width:390px; font-size:14px; color:var(--muted); margin:24px 0 30px; }
.contact-method { border-top:1px solid var(--line); padding:22px 0; }
.contact-method>span { display:block; color:var(--orange); font-size:9px; letter-spacing:.1em; font-weight:700; margin-bottom:10px; }
.contact-method>a,.contact-method>strong { font-size:17px; font-weight:600; overflow-wrap:anywhere; }
.contact-method p { font-size:12px; color:var(--muted); margin:8px 0 0; }
.enquiry-checklist { background:var(--paper); padding:25px; margin-top:20px; }
.enquiry-checklist h3 { font-size:21px; letter-spacing:-.025em; }
.enquiry-checklist .check-list { margin:10px 0 18px; }
.enquiry-checklist p { margin:0; }
.product-detail-card { border:1px solid var(--line); padding:36px; background:#fff; }
.enquiry-card { background:var(--paper); }
.enquiry-card h2 { font-size:30px; letter-spacing:-.04em; margin-bottom:14px; }
.rfq-form { display:grid; grid-template-columns:1fr 1fr; gap:22px 18px; margin-top:28px; }
.rfq-form .full { grid-column:1/-1; }
.rfq-form label { display:block; font-size:11px; font-weight:700; margin-bottom:9px; }
.rfq-form input,.rfq-form select,.rfq-form textarea { width:100%; min-width:0; padding:13px 14px; border:1px solid #c7cfcc; color:var(--ink); background:#fff; font-size:13px; border-radius:1px; }
.rfq-form textarea { resize:vertical; min-height:160px; }
.rfq-form input:focus,.rfq-form select:focus,.rfq-form textarea:focus { border-color:var(--orange); }
.rfq-form [aria-invalid="true"] { border-color:#a02b25; }
.rfq-form .btn { width:100%; font-size:13px; padding:17px 22px; }
.rfq-form .small-note { margin:17px 0 0; font-size:10px; }
.rfq-status { padding:16px 18px; background:#e7efe5; border-left:3px solid #40683e; font-size:13px; margin-top:25px; }
.form-error { background:#fce9e4; border-color:#a02b25; }
.field-error { display:block; color:#982c24; font-size:11px; line-height:1.5; margin-top:5px; }
.rfq-trap,.screen-reader-text { position:absolute!important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.alignwide { max-width:var(--max); margin-inline:auto; }
.wp-block-image { margin:20px 0; }
@media(max-width:980px) { .menu-toggle { display:inline-flex; } }
@media(max-width:1150px) {
  .header-inner { gap:20px; } .nav ul { gap:19px; } .header-cta { padding:12px; font-size:10px; gap:12px; }
  .brand-name { font-size:21px; } .hero-grid { gap:35px; } .hero-actions { gap:18px; }
  .hero-origin { font-size:9px; } .split { gap:45px; } .footer-grid { gap:25px; }
  .contact-layout { gap:50px; } .product-layout { gap:40px; grid-template-columns:200px minmax(0,1fr); }
}
@media(max-width:980px) {
  .container { width:calc(100% - 48px); }
  .header-inner { min-height:78px; flex-wrap:wrap; gap:14px; }
  .header-cta { margin-left:auto; } .menu-toggle { order:2; } .nav { order:3; width:100%; }
  .nav-ready .nav { display:none; } .nav-ready .nav.is-open { display:block; max-height:75vh; overflow-y:auto; }
  .nav ul { display:flex; flex-wrap:wrap; gap:0 24px; padding-bottom:12px; }
  .nav a { padding:12px 0; } .nav a[aria-current="page"]:after { bottom:5px; }
  .nav .sub-menu { position:static; box-shadow:none; width:auto; border:0; padding:0 0 0 16px; display:block; }
  .hero-content { padding:55px 0 42px; } .hero h1 { font-size:66px; }
  .hero-grid { gap:30px; } .hero-photo { min-height:570px; margin-right:-24px; } .hero p { font-size:14px; }
  .hero-photo-caption { left:23px; right:23px; bottom:25px; } .hero-photo-caption strong { font-size:19px; }
  .hero-actions { align-items:flex-start; flex-direction:column; } .hero-origin { margin-top:30px; }
  .capability-strip .container>div { gap:14px; padding:24px 18px; } .capability-strip strong { font-size:34px; } .capability-strip span { font-size:9px; }
  .product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
  .section { padding:64px 0; } .section-head { gap:30px; } .section-head p,.section-intro { max-width:300px; }
  .section-head h2,.split h2,.contact-info h2 { font-size:36px; } .split { gap:32px; }
  .process-grid article { padding:27px 23px; } .process-grid h3 { font-size:21px; }
  .footer-grid { grid-template-columns:1fr 1fr; gap:40px; } .cta-inner { gap:30px; } .cta h2 { font-size:34px; } .cta .btn { max-width:200px; }
  .product-detail-grid { gap:35px; } .product-detail-grid h1 { font-size:40px; }
  .product-layout { grid-template-columns:180px minmax(0,1fr); gap:30px; } .product-sidebar { top:105px; }
  .contact-layout { gap:35px; grid-template-columns:.8fr 1.2fr; } .product-detail-card { padding:27px; } .contact-method>a { font-size:14px; }
}
@media(max-width:700px) {
  html { scroll-padding-top:90px; } .container { width:calc(100% - 36px); } body { font-size:15px; }
  .topbar { padding:8px 0; font-size:8px; } .topbar .container>span { letter-spacing:.05em; } .topbar a { display:none; }
  .header-inner { min-height:74px; } .brand-mark { width:37px; height:37px; font-size:28px; } .brand-name { font-size:21px; } .brand-name small { font-size:7px; }
  .header-cta { display:none; } .menu-toggle { margin-left:auto; } .nav ul { flex-direction:column; align-items:stretch; padding-bottom:18px; }
  .nav a { border-top:1px solid var(--line); padding:12px 0; } .nav a[aria-current="page"]:after { display:none; }
  .hero-grid { grid-template-columns:1fr; gap:0; } .hero-content { padding:44px 0 35px; } .eyebrow { font-size:9px; letter-spacing:.09em; margin-bottom:16px; }
  .hero h1 { font-size:clamp(34px,9vw,46px); margin:20px 0 24px; letter-spacing:-.04em; } .hero p { font-size:14px; max-width:480px; }
  .hero-actions { flex-direction:row; align-items:center; gap:22px; } .hero .btn { font-size:11px; padding:16px 18px; gap:17px; }
  .hero-contact { font-size:11px; } .hero-origin { margin-top:27px; font-size:9px; gap:7px; }
  .hero-photo { min-height:365px; margin:0 -18px; } .hero-photo>img { object-position:50% 56%; }
  .hero-index { top:20px; left:20px; } .hero-photo-caption { left:22px; right:22px; bottom:25px; } .hero-photo-caption strong { font-size:23px; }
  .capability-strip>.container { grid-template-columns:1fr; } .capability-strip .container>div { padding:19px 0; border-right:0; border-bottom:1px solid #ffffff26; gap:25px; }
  .capability-strip strong { width:58px; font-size:34px; } .capability-strip span { font-size:11px; }
  .section { padding:50px 0; } .section-head { display:block; margin-bottom:27px; } .section-head h2,.split h2,.contact-info h2 { font-size:36px; }
  .section-head p,.section-intro { margin:20px 0 0; max-width:100%; font-size:13px; } .section-intro p { margin:0 0 14px; }
  .product-filters { gap:4px; padding-bottom:21px; } .product-filters button { padding:9px 11px; font-size:10px; }
  .product-grid { grid-template-columns:1fr; gap:22px; } .product-image { aspect-ratio:1.4; padding:13px; }
  .product-body { padding:23px; } .product-body h3 { font-size:25px; } .product-body p { font-size:13px; } .product-actions { padding:17px 23px; }
  .product-actions .text-link,.quote-link { font-size:11px; } .product-meta { font-size:9px; }
  .split,.product-detail-grid { grid-template-columns:1fr; gap:32px; } .split-image img { aspect-ratio:1.15; } .factory-split>div:last-child { padding-top:0; }
  .process-grid { grid-template-columns:1fr; } .process-grid article { padding:28px; border-right:0; border-bottom:1px solid var(--line); } .process-grid h3 { margin-top:24px; font-size:25px; }
  .cta { padding:40px 0; } .cta-inner { flex-direction:column; align-items:flex-start; gap:26px; } .cta h2 { font-size:35px; } .cta p { font-size:13px; }
  .cta .btn { max-width:none; } .site-footer { padding:45px 0 90px; }
  .footer-grid { gap:35px 22px; } .footer-grid>div:first-child { grid-column:1/-1; } .footer-grid>div:last-child { grid-column:1/-1; border-top:1px solid #ffffff26; padding-top:25px; }
  .site-footer h4 { margin-bottom:18px; } .site-footer p { margin-top:18px; } .footer-email { font-size:12px; } .footer-phone { font-size:19px; }
  .copyright { flex-direction:column; gap:10px; margin-top:30px; }
  .mobile-contact { display:grid; position:fixed; bottom:0; left:0; right:0; z-index:60; grid-template-columns:.85fr 1.15fr; background:var(--navy); box-shadow:0 -2px 10px #172a351f; padding-bottom:env(safe-area-inset-bottom); }
  .mobile-contact a { padding:17px 18px; color:#fff; font-size:12px; font-weight:700; display:flex; justify-content:space-between; }
  .mobile-contact a:last-child { background:var(--orange); }
  .page-hero { padding:23px 0 44px; } .page-hero h1 { font-size:clamp(30px,8.5vw,42px); letter-spacing:-.04em; } .page-hero p { font-size:14px; } .breadcrumb { margin-bottom:30px; font-size:9px; gap:9px; }
  .content-area { padding:35px 0 50px; } .content-area h2,.product-copy h2 { font-size:28px; margin-top:32px; } .content-area h3,.product-copy h3 { font-size:21px; }
  .app-grid { grid-template-columns:1fr; } .content-area .split { grid-template-columns:1fr; } .content-area .cta .container { padding:22px; }
  .product-hero { padding-bottom:35px; } .product-detail-grid h1 { font-size:43px; } .product-lead { font-size:15px; } .detail-image { padding:18px; }
  .product-layout { display:flex; flex-direction:column; gap:30px; } .product-sidebar { position:static; width:100%; } .product-sidebar nav { display:flex; flex-wrap:wrap; gap:9px; margin-top:14px; }
  .product-sidebar nav a { padding:8px 11px; border:1px solid var(--line); font-size:10px; background:var(--paper); } .sidebar-enquiry { display:none; }
  .product-copy { width:100%; } .product-copy table { font-size:12px; } .product-copy td { padding:11px; } .product-copy .wp-block-gallery { gap:10px; }
  .product-enquiry { padding:24px; margin-top:32px; } .product-enquiry .btn { gap:13px; font-size:11px; }
  .contact-layout { grid-template-columns:1fr; gap:35px; } .contact-info>p { max-width:none; } .contact-method>a { font-size:17px; }
  .product-detail-card { padding:25px; } .enquiry-card h2 { font-size:28px; } .rfq-form { gap:19px; } .rfq-form input,.rfq-form select,.rfq-form textarea { font-size:16px; padding:12px; }
}
@media(max-width:400px) { .hero-actions { gap:17px; } .hero h1 { font-size:36px; } .hero-contact { font-size:10px; } .rfq-form { grid-template-columns:1fr; } .rfq-form .full { grid-column:auto; } .product-detail-card { padding:20px; } .hero-origin .origin-divider { display:none; } }
@media(max-width:782px) { .admin-bar .site-header { top:46px; } }
@media(max-width:600px) { .admin-bar .site-header { top:0; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*:before,*:after { transition:none!important; animation:none!important; } }
.magnet-gallery-title { font-size:23px; margin:34px 0 18px; letter-spacing:-.03em; }
.magnet-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.magnet-gallery figure { margin:0; background:#fff; border:1px solid var(--line); min-width:0; }
.magnet-photo { display:block; position:relative; aspect-ratio:16/9; background:#f5f5f5; }
.magnet-photo img { width:100%; height:100%; object-fit:contain; }
.magnet-photo>span { position:absolute; right:12px; bottom:10px; width:28px; height:28px; display:grid; place-items:center; color:#fff; background:#172a35c9; font-size:16px; }
.magnet-gallery figcaption { border-top:1px solid var(--line); font-size:11px; padding:15px 17px; font-weight:700; line-height:1.55; }
@media(max-width:980px) { .magnet-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:700px) { .magnet-gallery { grid-template-columns:1fr; } .magnet-gallery-title { font-size:21px; } }
.grab-gallery { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.grab-gallery figure { margin:0; background:#fff; border:1px solid var(--line); }
.grab-gallery img { width:100%; height:380px; padding:15px; object-fit:contain; }
.grab-gallery figcaption { border-top:1px solid var(--line); padding:18px 22px; font-size:13px; font-weight:700; }
@media(max-width:700px) { .grab-gallery { grid-template-columns:1fr; } .grab-gallery img { height:300px; } }

/* Customer-supplied machine photos: a 16:9 frame preserves the complete equipment. */
.product-image.wide-media,.detail-image.wide-media { aspect-ratio:16/9; padding:0; }
.wide-media img { display:block; width:100%; height:100%; min-height:0; object-fit:contain; background:#f5f5f5; }
.product-card:hover .product-image.wide-media img { transform:none; }
.split-image img.shenghao-baler-media,.shenghao-baler-media { width:100%; height:auto; aspect-ratio:16/9; object-fit:contain; background:#f5f5f5; }
.baler-highlights { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin:28px 0 40px; padding:26px; background:var(--paper); border-top:3px solid var(--orange); }
.baler-highlights strong { display:block; font-size:31px; letter-spacing:-.04em; line-height:1.2; }
.baler-highlights small { font-size:14px; letter-spacing:0; }
.baler-highlights span { display:block; margin-top:10px; font-size:11px; color:var(--muted); }
.product-copy .baler-scroll-hint { font-size:12px; margin-bottom:12px; }
.baler-spec-scroll { max-width:100%; overflow-x:auto; border:1px solid var(--line); }
.product-copy .baler-spec-table { min-width:820px; font-size:12px; }
.baler-spec-table caption { caption-side:top; padding:18px; text-align:left; background:var(--navy-deep); color:#fff; font-size:14px; font-weight:700; }
.product-copy .baler-spec-table thead th { background:var(--navy); color:#fff; padding:14px 12px; }
.baler-spec-table thead span { font-size:10px; font-weight:400; }
.product-copy .baler-spec-table tbody th,.product-copy .baler-spec-table td { padding:12px; white-space:nowrap; }
.product-copy .baler-spec-table td:nth-child(3) { white-space:normal; }
.baler-spec-scroll+.small-note { margin:18px 0; font-size:12px; }
.baler-downloads { display:flex; flex-wrap:wrap; gap:16px 26px; margin:22px 0 40px; }
.baler-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.baler-gallery figure { min-width:0; margin:0; border:1px solid var(--line); background:#fff; }
.baler-photo { display:block; aspect-ratio:16/9; background:#f5f5f5; }
.product-copy .baler-photo img { width:100%; height:100%; object-fit:contain; }
.baler-gallery figcaption { display:flex; justify-content:space-between; gap:12px; padding:16px; border-top:1px solid var(--line); font-size:11px; line-height:1.6; font-weight:700; }
.baler-gallery figcaption span { color:var(--orange); }
@media(max-width:700px) { .baler-gallery { grid-template-columns:1fr; } .baler-highlights { padding:20px; gap:14px; } .baler-highlights strong { font-size:24px; } }
@media(max-width:400px) { .baler-highlights { grid-template-columns:1fr; } .baler-highlights>div { display:flex; gap:15px; align-items:center; } .baler-highlights span { margin:0; } }

.shear-highlights { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin:28px 0 40px; padding:26px; background:var(--paper); border-top:3px solid var(--orange); }
.shear-highlights strong { display:block; font-size:30px; letter-spacing:-.04em; line-height:1.2; }
.shear-highlights small { font-size:14px; letter-spacing:0; }
.shear-highlights span { display:block; margin-top:10px; font-size:11px; color:var(--muted); }
.product-copy .shear-scroll-hint { font-size:12px; margin-bottom:12px; }
.shear-spec-scroll { max-width:100%; overflow-x:auto; border:1px solid var(--line); }
.product-copy .shear-spec-table { min-width:1050px; font-size:12px; }
.shear-spec-table caption { caption-side:top; padding:18px; text-align:left; background:var(--navy-deep); color:#fff; font-size:14px; font-weight:700; }
.product-copy .shear-spec-table thead th { background:var(--navy); color:#fff; padding:14px 12px; }
.shear-spec-table thead span { font-size:10px; font-weight:400; }
.product-copy .shear-spec-table tbody th,.product-copy .shear-spec-table td { padding:12px; white-space:nowrap; }
.shear-spec-scroll+.small-note { margin:18px 0; font-size:12px; }
.shear-downloads { display:flex; flex-wrap:wrap; gap:16px 26px; margin:22px 0 40px; }
.shear-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.shear-gallery figure { min-width:0; margin:0; border:1px solid var(--line); background:#fff; }
.shear-photo { display:block; aspect-ratio:16/9; background:#f5f5f5; }
.product-copy .shear-photo img { width:100%; height:100%; object-fit:contain; }
.shear-gallery figcaption { display:flex; justify-content:space-between; gap:12px; padding:16px; border-top:1px solid var(--line); font-size:11px; line-height:1.6; font-weight:700; }
.shear-gallery figcaption span { color:var(--orange); }
@media(max-width:700px) { .shear-gallery { grid-template-columns:1fr; } .shear-highlights { padding:20px; gap:14px; } .shear-highlights strong { font-size:23px; } }
@media(max-width:400px) { .shear-highlights { grid-template-columns:1fr; } .shear-highlights>div { display:flex; gap:15px; align-items:center; } .shear-highlights span { margin:0; } }

.magnet-spec-scroll { max-width:100%; overflow-x:auto; border:1px solid var(--line); margin:22px 0 36px; }
.product-copy .magnet-spec-table { min-width:920px; font-size:12px; }
.product-copy .magnet-stp-table { min-width:1120px; }
.magnet-spec-table caption { caption-side:top; padding:18px; text-align:left; background:var(--navy-deep); color:#fff; font-size:14px; font-weight:700; }
.product-copy .magnet-spec-table thead th { background:var(--navy); color:#fff; padding:14px 12px; }
.magnet-spec-table thead span { font-size:10px; font-weight:400; }
.product-copy .magnet-spec-table tbody th,.product-copy .magnet-spec-table td { padding:12px; white-space:nowrap; }
.product-copy .magnet-spec-table tr:nth-child(odd) { background:var(--paper); }
.product-copy .magnet-scroll-hint { font-size:12px; margin-bottom:12px; }

.grab-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.grab-gallery figure { margin:0; background:#fff; border:1px solid var(--line); min-width:0; }
.grab-photo { display:block; position:relative; aspect-ratio:16/9; background:#f5f5f5; }
.grab-photo img { width:100%; height:100%; object-fit:contain; }
.grab-photo>span { position:absolute; right:12px; bottom:10px; width:28px; height:28px; display:grid; place-items:center; color:#fff; background:#172a35c9; font-size:16px; }
.grab-gallery figcaption { border-top:1px solid var(--line); font-size:11px; padding:15px 17px; font-weight:700; line-height:1.55; }
.grab-highlights { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin:28px 0 40px; padding:26px; background:var(--paper); border-top:3px solid var(--orange); }
.grab-highlights strong { display:block; font-size:31px; letter-spacing:-.04em; line-height:1.2; }
.grab-highlights span { display:block; margin-top:10px; font-size:11px; color:var(--muted); }
@media(max-width:980px) { .grab-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:700px) { .grab-gallery { grid-template-columns:1fr; } .grab-highlights { grid-template-columns:1fr; } }
.grab-spec-scroll { max-width:100%; overflow-x:auto; border:1px solid var(--line); }
.product-copy .grab-spec-table { min-width:1320px; font-size:11px; }
.product-copy .grab-spec-table th,.product-copy .grab-spec-table td { padding:10px 11px; white-space:nowrap; }
.product-copy .grab-spec-table th[scope="row"] { white-space:normal; min-width:145px; }
.product-copy .grab-scroll-hint { font-size:12px; margin-bottom:12px; }
.product-copy .shear-spec-table { min-width:1500px; }
