.blog-factory-theme { overflow-x: clip; background: #eaf3f5; }
.factory-blog-hero { position: relative; min-height: clamp(610px, 58vw, 760px); overflow: hidden; color: #fff; background: #05243a; }
.factory-blog-hero__image { position: absolute; inset: 0 0 0 49%; background: url("/images/blog/how-oem-paddles-are-made/hero-components.webp") 51% center / cover no-repeat; }
.factory-blog-hero::after { position: absolute; inset: 0; background: linear-gradient(90deg, #05243a 0, #05243a 48%, rgba(5,36,58,.88) 57%, rgba(5,36,58,.12) 100%); content: ""; }
.factory-blog-hero__content { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 790px) 230px; gap: clamp(2rem, 6vw, 6rem); align-items: end; min-height: clamp(610px, 58vw, 760px); padding-top: clamp(5rem, 8vw, 8rem); padding-bottom: clamp(4rem, 7vw, 6.5rem); }
.factory-blog-hero .eyebrow { color: var(--color-cyan); }
.factory-blog-hero h1 { max-width: 830px; margin: 0; font-family: var(--font-display); font-size: clamp(3.15rem, 5.35vw, 5.5rem); line-height: .93; letter-spacing: -.025em; text-transform: uppercase; text-wrap: balance; }
.factory-blog-hero__route { margin: 0; padding: 0; border-top: 1px solid rgba(255,255,255,.5); list-style: none; background: rgba(5,36,58,.48); }
.factory-blog-hero__route li { display: grid; grid-template-columns: 38px 1fr; gap: .55rem; padding: .85rem 0; border-bottom: 1px solid rgba(255,255,255,.28); color: #e2eff4; font-size: .72rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.factory-blog-hero__route span { color: var(--color-cyan); font-family: var(--font-display); font-size: .92rem; }
.factory-article-body { border-top: 6px solid var(--color-ocean); }
.production-summary { border-left: 0; border-top: 4px solid var(--color-cyan); background: #dcedf2; }
.factory-toc { border-top-color: var(--color-ocean); background: linear-gradient(135deg, #f6fafb, #dfeff3); }
.factory-diagram { background: #eaf5f8; }
.walkthrough-rail { position: relative; margin: 2.5rem 0; padding-left: 74px; }
.walkthrough-rail::before { position: absolute; top: 14px; bottom: 14px; left: 25px; width: 2px; background: #9fcbdc; content: ""; }
.walkthrough-rail article { position: relative; display: grid; grid-template-columns: 180px 1fr; gap: 1.5rem; padding: 1.35rem 0; border-bottom: 1px solid var(--color-line); }
.walkthrough-rail article > span { position: absolute; top: 1.25rem; left: -74px; display: grid; width: 52px; height: 52px; place-items: center; border: 2px solid #9fcbdc; border-radius: 50%; color: #fff; background: var(--color-ocean); font-family: var(--font-display); font-size: 1.2rem; }
.walkthrough-rail h3 { margin: .15rem 0; }
.walkthrough-rail p { margin: 0; font-size: .92rem; line-height: 1.7; }
.process-caution { margin: 2rem 0; padding: 1.5rem; border: 1px solid #95c5d7; background: #f3fafb; }
.process-caution strong { color: var(--color-navy); font-family: var(--font-display); font-size: 1.25rem; text-transform: uppercase; }
.process-caution p { margin: .6rem 0 0; font-size: .92rem; line-height: 1.68; }
.shaft-control { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); margin: 2.25rem 0; border-top: 1px solid var(--color-line); border-left: 1px solid var(--color-line); }
.shaft-control > div { padding: 1.4rem 1.5rem; border-right: 1px solid var(--color-line); border-bottom: 1px solid var(--color-line); background: #f8fbfc; }
.shaft-control span { color: var(--color-ocean); font-size: .7rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.shaft-control p { margin: .45rem 0 0; font-size: .88rem; line-height: 1.62; }
.finish-ledger { margin: 2.4rem 0; border-top: 1px solid var(--color-line); }
.finish-ledger article { display: grid; grid-template-columns: 110px 205px 1fr; gap: 1.2rem; align-items: start; padding: 1.3rem 0; border-bottom: 1px solid var(--color-line); }
.finish-ledger span { color: var(--color-cyan); font-family: var(--font-display); font-size: 1.15rem; text-transform: uppercase; }
.finish-ledger h3 { margin: 0; font-size: 1.3rem; }
.finish-ledger p { margin: 0; font-size: .9rem; line-height: 1.68; }
.factory-photo { margin: 2.6rem 0; overflow: hidden; border: 1px solid var(--color-line); background: #e8f3f6; }
.factory-photo img { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.factory-photo figcaption { padding: .9rem 1.1rem; color: #587287; font-size: .76rem; line-height: 1.55; }
.quality-figure img { display: block; }
.qc-checks { margin: 2.4rem 0; border-top: 1px solid var(--color-line); }
.qc-checks article { display: grid; grid-template-columns: 175px 1fr; gap: 1.4rem; padding: 1.15rem 0; border-bottom: 1px solid var(--color-line); }
.qc-checks span { color: var(--color-navy); font-family: var(--font-display); font-size: 1.12rem; text-transform: uppercase; }
.qc-checks p { margin: 0; font-size: .9rem; line-height: 1.65; }
.factory-mid-cta { border-left: 8px solid var(--color-cyan); background: #0a3568; }
.packing-handoff { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); margin: 2.3rem 0; border: 1px solid #8ebfd1; }
.packing-handoff > div { min-height: 190px; padding: 1.35rem; border-right: 1px solid #8ebfd1; background: #e7f3f6; }
.packing-handoff > div:last-child { border-right: 0; }
.packing-handoff span { color: var(--color-ocean); font-family: var(--font-display); font-size: 1rem; text-transform: uppercase; }
.packing-handoff p { margin: 1rem 0 0; font-size: .83rem; line-height: 1.6; }
.factory-faq article:nth-of-type(even) { padding-left: 1.25rem; border-left: 3px solid #b5d7e2; }
.factory-conclusion { margin: 5.3rem calc(clamp(2rem,4vw,4rem) * -1) calc(clamp(2rem,4vw,4rem) * -1); padding: clamp(2rem,4vw,4rem); border-top: 7px solid var(--color-cyan); color: #fff; background: #0a3568; }
.factory-conclusion h2 { color: #fff; }
.factory-conclusion p { color: #d2e4eb; }
.factory-conclusion .conclusion-lead strong { color: #fff; }
@media (max-width: 1000px) {
  .factory-blog-hero__content { grid-template-columns: minmax(0,680px) 210px; }
  .factory-blog-hero h1 { font-size: clamp(3rem,6vw,4.8rem); }
  .packing-handoff { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .packing-handoff > div:nth-child(2) { border-right: 0; }
  .packing-handoff > div:nth-child(-n+2) { border-bottom: 1px solid #8ebfd1; }
}
@media (max-width: 720px) {
  .factory-blog-hero { min-height: 720px; }
  .factory-blog-hero__image { inset: 48% 0 0; background-position: 48% center; }
  .factory-blog-hero::after { background: linear-gradient(180deg,#05243a 0,#05243a 49%,rgba(5,36,58,.68) 73%,rgba(5,36,58,.18) 100%); }
  .factory-blog-hero__content { display: flex; min-height: 720px; flex-direction: column; justify-content: space-between; padding-top: 4.5rem; padding-bottom: 1.25rem; }
  .factory-blog-hero h1 { font-size: clamp(2.7rem,12.2vw,3.7rem); }
  .factory-blog-hero__route { grid-template-columns: repeat(2,minmax(0,1fr)); width: 100%; display: grid; }
  .factory-blog-hero__route li:nth-child(odd) { border-right: 1px solid rgba(255,255,255,.28); }
  .factory-blog-hero__route li { padding-left: .8rem; }
  .walkthrough-rail { padding-left: 58px; }
  .walkthrough-rail::before { left: 20px; }
  .walkthrough-rail article { grid-template-columns: 1fr; gap: .5rem; }
  .walkthrough-rail article > span { left: -58px; width: 42px; height: 42px; }
  .shaft-control,.packing-handoff { grid-template-columns: 1fr; }
  .finish-ledger article { grid-template-columns: 1fr; gap: .45rem; }
  .qc-checks article { grid-template-columns: 1fr; gap: .4rem; }
  .packing-handoff > div { min-height: 0; border-right: 0; border-bottom: 1px solid #8ebfd1; }
  .packing-handoff > div:last-child { border-bottom: 0; }
  .factory-conclusion { margin-right: -1.35rem; margin-bottom: -1.35rem; margin-left: -1.35rem; padding: 1.35rem; }
}
