/* Shared static stylesheet. No external fonts, imports or JavaScript. */
:root{color-scheme:light;--ink:#183547;--muted:#526b78;--brand:#007995;--deep:#123d51;--line:#d8e4e9;--pale:#f1f8fa;--white:#fff;--radius:12px}
*{box-sizing:border-box}
html{scroll-padding-top:1.5rem}
body{margin:0;color:var(--ink);background:#fff;font-family:"Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN",Meiryo,system-ui,sans-serif;font-size:1rem;line-height:1.85;overflow-wrap:anywhere}
a{color:var(--brand);text-underline-offset:.22em}
a:hover{text-decoration-thickness:2px}
a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #ba6200;outline-offset:4px}
img{display:block;max-width:100%;height:auto}
h1,h2,h3,p,figure,dl,dd{margin:0}
h1,h2,h3{line-height:1.5;letter-spacing:.015em}
h1{font-size:clamp(1.75rem,3.8vw,2.8rem);font-weight:700}
h2{font-size:clamp(1.3rem,2.4vw,1.8rem)}
h3{font-size:1.125rem}
.container{width:min(1160px,calc(100% - 64px));margin-inline:auto}
.skip-link{position:absolute;left:16px;top:-100px;padding:.75rem 1rem;background:#fff;z-index:10}
.skip-link:focus{top:10px}
.site-header{background:#fff;border-top:4px solid var(--brand)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:18px}
.brand{display:block;width:340px;flex-shrink:1}
.brand img{width:100%}
.header-contact{display:flex;align-items:center;gap:24px}
.telephone{text-decoration:none;color:var(--ink);font-size:1.35rem;font-weight:700;white-space:nowrap;letter-spacing:.04em}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.65rem 1.35rem;background:var(--brand);border:1px solid var(--brand);border-radius:5px;color:#fff;text-decoration:none;font-weight:700;line-height:1.6;gap:8px}
.button:hover{background:#005e75;color:#fff;text-decoration:none}
.button-outline{color:var(--brand);background:#fff}
.button-light{color:var(--deep);background:#fff;border-color:#fff}
.main-nav{border-block:1px solid var(--line)}
.main-nav ul{display:flex;list-style:none;padding:0}
.main-nav li{flex:1;text-align:center}
.main-nav a{display:flex;align-items:center;justify-content:center;min-height:58px;padding:10px 8px;color:var(--ink);font-size:.875rem;text-decoration:none;font-weight:700;border-bottom:3px solid transparent}
.main-nav a:hover,.main-nav a[aria-current]{background:var(--pale);border-bottom-color:var(--brand);color:var(--brand)}
.hero{display:grid;grid-template-columns:1.55fr 1fr;gap:30px;align-items:center;margin-top:36px;padding:52px;background:linear-gradient(120deg,#eaf7fa,#f7fafb);border-radius:var(--radius);border-top:1px solid #d9edf1}
.eyebrow{color:var(--brand);font-family:Arial,sans-serif;font-weight:700;font-size:.75rem;letter-spacing:.15em;margin-bottom:12px}
.hero h1{font-size:clamp(1.7rem,3.3vw,2.7rem);line-height:1.65;letter-spacing:.01em}
.hero-lead{margin-top:22px;max-width:39em;color:var(--muted)}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.hero-product{background:#fff;align-self:stretch;border-radius:8px;padding:22px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px}
.hero-product img{width:260px;max-height:310px;object-fit:contain}
.hero-product figcaption{font-size:.75rem;color:var(--muted)}
.section{margin-block:64px}
.section>h2{margin-bottom:28px}
.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.category-card{display:block;border:1px solid var(--line);border-radius:8px;padding:24px;color:var(--ink);text-decoration:none;background:#fff;transition:border-color .15s}
.category-card:hover{border-color:var(--brand);text-decoration:none}
.category-card img{width:100%;height:174px;object-fit:contain;margin-bottom:22px}
.category-card h3{font-size:1.1rem}
.category-card p{font-size:.875rem;color:var(--muted);margin-top:8px}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.service-card{padding:26px;background:var(--pale);border-radius:8px;text-decoration:none;color:var(--ink);border:1px solid transparent}
.service-card:hover{border-color:var(--brand);text-decoration:none}
.service-number{color:var(--brand);font-size:.875rem;font-weight:700;letter-spacing:.1em;display:block;margin-bottom:14px}
.service-card p{margin-top:10px;font-size:.875rem;color:var(--muted)}
.news ul{list-style:none;padding:0;border-top:1px solid var(--line)}
.news li{display:grid;grid-template-columns:120px 1fr;gap:22px;padding:20px 0;border-bottom:1px solid var(--line)}
.news time{font-variant-numeric:tabular-nums;color:var(--muted);font-size:.875rem}
.breadcrumb{display:flex;flex-wrap:wrap;gap:8px;font-size:.8rem;color:var(--muted);padding-block:24px 16px}
.breadcrumb>*+*::before{content:"/";padding-right:8px;color:#81929b}
.breadcrumb a{text-decoration:none}
.page-heading{padding-block:22px 34px;border-bottom:2px solid var(--brand);margin-bottom:28px}
.page-heading h1{max-width:36em}
.category-nav ul{display:flex;flex-wrap:wrap;list-style:none;padding:0;gap:10px;margin:0 0 30px}
.category-nav a{display:block;padding:9px 16px;background:var(--pale);border:1px solid var(--line);border-radius:4px;font-size:.875rem;text-decoration:none}
.category-nav a[aria-current]{background:var(--brand);border-color:var(--brand);color:#fff}
.prose{margin-block:26px 64px;max-width:100%;min-width:0}
.prose>h2,.prose>section>h2{margin:36px 0 20px;padding-left:14px;border-left:4px solid var(--brand)}
.prose>h3{margin:28px 0 10px}
.prose p{margin-block:14px}
.prose ul,.prose ol{padding-left:1.5em}
.comment{margin-block:20px 30px}
.download-note{padding:18px 22px;background:var(--pale);border-left:3px solid var(--brand);color:var(--muted);font-size:.9375rem;margin-block:18px 28px}
.table-help{font-size:.8125rem;color:var(--muted)}
.product{margin-top:40px;padding-top:30px;border-top:1px solid var(--line)}
.product>h2{font-size:clamp(1.125rem,2.1vw,1.5rem);margin-bottom:26px}
.product-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:36px;align-items:start}
.product-photos{display:grid;gap:18px;justify-items:center;padding:20px;border:1px solid var(--line);border-radius:8px;background:#fff}
.product-photos img{max-height:340px;width:auto;object-fit:contain}
.product-layout:has(>.product-photos:only-child){grid-template-columns:1fr}
.product-photos:only-child{display:flex;flex-wrap:wrap;justify-content:center;gap:24px}
.product-photos:only-child img{width:auto;max-width:100%;max-height:380px}
.product-details>div{margin-bottom:22px}
.product-details dt{font-weight:700;color:var(--brand);margin-bottom:8px}
.product-details dd{font-size:.9375rem;line-height:1.95}
.product-details .catalog_dl,.product-details .plan_dl{display:inline-block;margin:0 12px 10px 0}
.catalog_dl a,.plan_dl a{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border:1px solid var(--line);border-radius:4px;text-decoration:none;font-size:.875rem;font-weight:700;background:var(--pale)}
.facts{margin:20px 0 36px;border-top:1px solid var(--line)}
.facts>div{display:grid;grid-template-columns:210px minmax(0,1fr);gap:26px;padding:22px 10px;border-bottom:1px solid var(--line)}
.facts dt{font-weight:700}
.facts dd{min-width:0}
.year,.year_txt{font-weight:400;color:var(--muted);font-size:.875rem}
.access-map{display:block;width:100%;height:400px;border:0;margin-top:24px;border-radius:8px}
.maker-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 24px;list-style:none;padding:0!important;margin:10px 0 26px}
.maker-grid li{padding:11px 0;border-bottom:1px solid var(--line);font-size:.9375rem}
.maker-group h3{font-size:.9rem;color:var(--brand);margin-top:18px}
.aiueo_link{padding:16px 20px;border:1px solid var(--line);background:var(--pale);line-height:2.3}
.drawing_list{list-style:none;padding:0!important;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 38px}
.drawing_list a{display:block;min-height:64px;padding:15px 20px;border:1px solid var(--line);border-radius:5px;text-decoration:none;background:#fff}
.drawing_list a:hover{border-color:var(--brand);background:var(--pale)}
.table-scroll{max-width:100%;overflow-x:auto;margin:24px 0 40px;border:1px solid var(--line);border-radius:6px;overscroll-behavior-inline:contain}
.spec-table{border-collapse:collapse;width:100%;min-width:760px;font-size:.875rem;line-height:1.6}
.spec-table caption{padding:16px;text-align:left;font-weight:700;background:var(--pale);color:var(--ink)}
.spec-table th,.spec-table td{padding:12px 10px;text-align:center;border:1px solid var(--line)}
.spec-table thead th{background:#eaf2f5;color:var(--ink);white-space:nowrap}
.spec-table tbody th{text-align:left;font-weight:700;white-space:nowrap;background:#f8fbfc}
.spec-table tbody tr:nth-child(even) td{background:#fbfdfe}
.file-link{display:inline-flex;min-height:40px;min-width:44px;align-items:center;justify-content:center;padding:4px 9px;border:1px solid #9cbfc9;background:#fff;border-radius:4px;font-size:.75rem;font-weight:700;text-decoration:none}
.file-link:hover{background:var(--brand);color:#fff}
.txt_s,.txt_s2{display:block;color:var(--muted);font-size:.8125rem;margin-block:10px}
.txt_b_red{color:#a5322c;font-weight:700}
.txt_b_blue,.txt_b_blue_l{color:var(--brand);font-weight:700}
.privacy-policy{max-width:850px;margin-inline:auto}
.privacy-policy h2{font-size:1.25rem;margin-top:34px}
.privacy-policy br+br{display:none}
.site-footer{background:var(--deep);color:#fff;margin-top:50px;padding:44px 0 24px}
.site-footer a{color:#fff}
.footer-contact{display:flex;align-items:center;justify-content:space-between;gap:34px;padding-bottom:36px;border-bottom:1px solid #507383}
.footer-contact h2{font-size:1.4rem}
.footer-contact p{font-size:.875rem;color:#d9e9ef;margin-top:10px}
.footer-contact .button{flex-shrink:0;color:var(--deep)}
.footer-contact .button:hover{color:#fff;border-color:#fff}
.footer-bottom{display:flex;justify-content:space-between;gap:36px;margin:32px 0}
.footer-bottom address{font-style:normal;font-size:.875rem}
.footer-bottom strong{font-size:1.2rem}
.footer-bottom address p{margin-top:10px;color:#d9e9ef}
.footer-bottom nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 26px;font-size:.8125rem}
.footer-bottom nav a{padding:5px 0}
.site-footer small{font-size:.75rem;color:#d9e9ef}
@media(max-width:900px){.header-contact{gap:14px}.telephone{font-size:1.1rem}.brand{width:300px}.hero{padding:34px;grid-template-columns:1.4fr 1fr;gap:22px}.hero h1{font-size:1.9rem}.category-grid{gap:16px}.category-card{padding:20px}.category-card img{height:150px}.product-layout{grid-template-columns:200px minmax(0,1fr);gap:24px}.footer-bottom{flex-direction:column}.footer-bottom nav{display:flex;flex-wrap:wrap}}
@media(max-width:640px){.container{width:calc(100% - 32px)}.header-inner{flex-direction:column;gap:10px;padding-block:12px}.brand{width:min(320px,100%)}.header-contact{width:100%;justify-content:space-between;gap:12px}.header-contact .button{min-height:42px;font-size:.8125rem;padding:7px 16px}.telephone{font-size:1.1rem}.main-nav ul{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.main-nav li:last-child{grid-column:span 3}.main-nav a{min-height:42px;padding:8px 3px;font-size:.75rem;border-bottom-width:2px}.hero{margin-top:20px;padding:26px 20px;grid-template-columns:1fr;gap:24px}.hero h1{font-size:clamp(1.35rem,5.1vw,1.85rem);line-height:1.75}.hero-lead{font-size:.9375rem;margin-top:16px}.hero-product{padding:20px}.hero-product img{width:190px;max-height:210px}.actions{gap:8px;margin-top:20px}.actions .button{padding:10px 14px;font-size:.8125rem}.section{margin-block:42px}.section>h2{margin-bottom:20px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.category-card{padding:16px 12px}.category-card img{height:116px;margin-bottom:14px}.category-card h3{font-size:.9375rem}.category-card p{font-size:.75rem}.service-grid{grid-template-columns:1fr;gap:12px}.service-card{padding:22px}.service-number{margin-bottom:6px}.news li{grid-template-columns:1fr;gap:5px;padding:16px 0;font-size:.9375rem}.breadcrumb{padding-block:18px 8px;font-size:.75rem}.page-heading{padding-block:20px 24px;margin-bottom:22px}.page-heading h1{font-size:1.6rem}.category-nav ul{gap:8px}.category-nav a{padding:8px 12px;font-size:.8125rem}.product{padding-top:24px;margin-top:30px}.product-layout{grid-template-columns:1fr;gap:22px}.product-photos{padding:22px}.product-photos img{max-height:250px;max-width:100%}.product-details dd{font-size:.9375rem}.facts>div{grid-template-columns:1fr;gap:8px;padding:18px 0}.facts dt{color:var(--brand)}.maker-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.drawing_list{grid-template-columns:1fr;gap:10px}.drawing_list a{padding:14px 16px;font-size:.9375rem}.download-note{padding:16px;font-size:.875rem}.prose{margin-bottom:42px}.access-map{height:320px}.footer-contact{flex-direction:column;align-items:flex-start;gap:20px}.footer-contact h2{font-size:1.2rem}.footer-bottom{gap:24px}.footer-bottom nav{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px}.site-footer{padding-top:32px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media print{.site-header,.site-footer,.skip-link,.breadcrumb,.category-nav,.actions{display:none}body{color:#000;font-size:10pt}.container{width:100%}.hero{padding:20px;background:none}.table-scroll{overflow:visible;border:0}.spec-table{min-width:0;font-size:8pt}.product{break-inside:avoid}.product-layout{grid-template-columns:180px 1fr}.access-map{display:none}}

/* BEGIN INTEGRATED BREWING */
/* Brewing product presentation. Shared main-site header and footer. */
.jozo-hero { display: grid; grid-template-columns: 1.2fr 1fr; align-items: center; gap: 50px; padding: 48px 48px 36px; margin-top: 32px; background: linear-gradient(125deg, #edf7f9, #f7fafb); border: 1px solid #e1eef1; border-radius: var(--radius); }
.jozo-hero h2 { font-size: clamp(2rem, 3.4vw, 3rem); line-height: 1.6; letter-spacing: .025em; }
.jozo-hero .hero-lead { font-size: .9375rem; line-height: 2.1; max-width: 35em; }
.hero-machine { padding: 20px 24px 16px; background: #fff; border-radius: 8px; text-align: center; }
.hero-machine img { height: 300px; width: 100%; object-fit: contain; }
.hero-machine figcaption { display: grid; gap: 3px; margin-top: 12px; }
.hero-machine figcaption > span { font-size: .75rem; color: var(--muted); }
.hero-machine strong { font-family: Arial, sans-serif; font-size: 1.1rem; letter-spacing: .045em; }
.hero-machine small { font-size: .75rem; color: var(--muted); margin-top: 5px; }
.process-nav { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-bottom: 1px solid var(--line); margin: 22px 0 64px; }
.process-nav a { display: flex; align-items: center; gap: 15px; padding: 20px 15px; text-decoration: none; color: var(--ink); font-size: .875rem; }
.process-nav a:hover { background: var(--pale); }
.process-nav a > span:first-child { color: var(--brand); font-size: .75rem; font-family: Arial, sans-serif; }
.process-nav a > span:last-child { margin-left: auto; color: var(--brand); }
.section-heading { margin-bottom: 32px; }
.section-heading h2 { margin-bottom: 12px; }
.section-heading > p:last-child:not(.eyebrow) { color: var(--muted); font-size: .9375rem; }
.lineup-section { margin-bottom: 50px; scroll-margin-top: 24px; }
.lineup-heading { display: flex; align-items: center; gap: 18px; padding-top: 26px; border-top: 1px solid var(--line); margin-bottom: 25px; }
.section-number { color: var(--brand); font-family: Arial, sans-serif; font-size: 1.65rem; font-weight: 700; letter-spacing: -.04em; }
.lineup-heading h2 { font-size: 1.25rem; }
.lineup-heading p { color: var(--muted); font-size: .8rem; margin-top: 4px; }
.pump-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.pump-card { display: flex; flex-direction: column; overflow: hidden; color: var(--ink); text-decoration: none; border: 1px solid var(--line); border-radius: 8px; background: #fff; transition: border-color .15s, box-shadow .15s; }
.pump-card:hover { border-color: var(--brand); box-shadow: 0 5px 18px #123d510a; }
.pump-card-image { padding: 22px 26px 12px; }
.pump-card-image img { width: 100%; height: 235px; object-fit: contain; }
.pump-card-body { padding: 14px 24px 24px; flex: 1; display: flex; flex-direction: column; }
.pump-model { color: var(--brand); font-family: Arial, sans-serif; font-size: 1.25rem; font-weight: 700; line-height: 1.5; }
.pump-card h3 { font-size: .875rem; line-height: 1.65; margin-top: 7px; }
.pump-description { font-size: .8125rem; line-height: 1.85; color: var(--muted); margin: 12px 0 20px; }
.card-link { display: flex; justify-content: space-between; gap: 12px; margin-top: auto; padding-top: 13px; border-top: 1px solid var(--line); color: var(--brand); font-size: .8125rem; font-weight: 700; }
.pump-grid-single { grid-template-columns: 1fr; }
.pump-card-wide { display: grid; grid-template-columns: 260px 1fr; align-items: center; }
.pump-card-wide .pump-card-image { padding: 22px 40px; }
.pump-card-wide .pump-card-image img { height: 205px; }
.pump-card-wide .pump-card-body { padding: 26px 36px 26px 12px; }
.pump-card-wide h3 { font-size: 1rem; }
.pump-card-wide .pump-description { font-size: .875rem; }
.catalog-section { padding: 35px 0 15px; margin: 30px 0 54px; }
.catalog-list { border-top: 2px solid var(--brand); }
.catalog-row { display: flex; align-items: center; gap: 22px; padding: 24px 14px; border-bottom: 1px solid var(--line); color: var(--ink); text-decoration: none; }
.catalog-row:hover { background: var(--pale); }
.pdf-icon { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 52px; border: 1px solid #8baab5; color: var(--brand); font: 700 .75rem Arial, sans-serif; border-radius: 3px; flex-shrink: 0; }
.catalog-copy { display: grid; gap: 5px; }
.catalog-copy strong { font-size: 1rem; }
.catalog-copy > span { color: var(--muted); font-size: .8125rem; }
.catalog-size { margin-left: auto; white-space: nowrap; font-size: .75rem; color: var(--muted); }
.catalog-size span { margin-left: 14px; color: var(--brand); font-size: 1.1rem; }
.product-heading { padding: 20px 0 30px; border-bottom: 2px solid var(--brand); margin-bottom: 36px; }
.product-heading h1 { font-size: clamp(1.15rem, 2vw, 1.65rem); line-height: 1.6; }
.model-heading { display: block; font-family: Arial, sans-serif; font-size: clamp(2rem, 3.9vw, 3rem); letter-spacing: .025em; margin-top: 6px; }
.product-lead { margin-top: 15px; font-size: .9375rem; color: var(--muted); }
.product-intro { display: grid; grid-template-columns: 1fr 1.2fr; gap: 46px; align-items: start; }
.detail-photo { padding: 28px; border: 1px solid var(--line); border-radius: 8px; }
.detail-photo img { width: 100%; height: 400px; object-fit: contain; }
.detail-photo figcaption { text-align: center; font: 700 .875rem Arial, sans-serif; color: var(--muted); margin-top: 20px; }
.feature-panel { padding-top: 16px; }
.feature-panel h2 { font-size: 1.4rem; }
.feature-list { padding-left: 1.2em; margin: 20px 0 26px; font-size: .9375rem; line-height: 2; }
.feature-list li { padding-left: 3px; margin-bottom: 10px; }
.feature-list .product-note { color: #975331; font-size: .8125rem; list-style: none; margin-left: -1.4em; line-height: 1.9; }
.feature-panel .actions { gap: 10px; }
.feature-panel .button { font-size: .875rem; padding-inline: 18px; }
.file-kind { font: 700 .65rem Arial, sans-serif; border: 1px solid currentColor; border-radius: 2px; padding: 3px 4px; margin-left: 4px; }
.contact-hint { font-size: .8rem; color: var(--muted); margin-top: 14px; }
.detail-section { margin: 58px 0; }
.detail-section-heading { margin-bottom: 22px; }
.detail-section-heading h2 { font-size: 1.5rem; }
.detail-section-heading > p:last-child:not(.eyebrow) { font-size: .8125rem; color: var(--muted); margin-top: 8px; }
.product-specs { width: 100%; max-width: 900px; border-collapse: collapse; font-size: .9375rem; text-align: left; }
.product-specs caption { text-align: left; color: var(--muted); font-size: .8rem; padding-bottom: 12px; }
.product-specs th, .product-specs td { padding: 15px 22px; border: 1px solid var(--line); vertical-align: top; }
.product-specs th { width: 30%; background: var(--pale); font-weight: 700; }
.product-specs td { background: #fff; }
.drawing-image { display: block; border: 1px solid var(--line); padding: 24px; border-radius: 8px; }
.drawing-image img { width: 100%; max-width: 1200px; margin-inline: auto; }
.catalog-previews { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.catalog-previews > a { display: block; padding: 16px; border: 1px solid var(--line); border-radius: 8px; }
.catalog-previews > a:only-child { grid-column: 1 / -1; max-width: 900px; }
.catalog-previews img { width: 100%; height: auto; }
.consultation { display: grid; grid-template-columns: 1fr auto; gap: 32px; align-items: center; padding: 30px 34px; margin: 54px 0; background: var(--pale); border-left: 3px solid var(--brand); }
.consultation h2 { font-size: 1.3rem; margin-bottom: 12px; }
.consultation p:last-child { font-size: .875rem; color: var(--muted); max-width: 48em; }
.consultation .button { font-size: .875rem; }
.related-products { margin: 45px 0; }
.related-products h2 { font-size: 1.2rem; margin-bottom: 18px; }
.related-products ul { list-style: none; padding: 0; border-top: 1px solid var(--line); }
.related-products a { display: flex; align-items: center; gap: 25px; text-decoration: none; padding: 18px 10px; border-bottom: 1px solid var(--line); font-size: .875rem; }
.related-products strong { min-width: 160px; font-family: Arial, sans-serif; }
.related-products a > span:first-of-type { color: var(--muted); }
.related-products a > span:last-child { margin-left: auto; }
.back-link { margin: 38px 0 60px; font-size: .875rem; }
.back-link a { padding-block: 12px; }
.company-intro { max-width: 760px; margin-bottom: 32px; }
.business-list { padding-left: 1.2em; margin: 0; }
.company-actions { margin-bottom: 65px; }
.contact-main { display: grid; grid-template-columns: 1.2fr 1fr; gap: 48px; padding-block: 15px 35px; }
.contact-main h2 { font-size: 1.4rem; margin-bottom: 18px; }
.contact-main p { font-size: .9375rem; line-height: 2; }
.contact-main .contact-hint { font-size: .875rem; }
.contact-checklist { background: var(--pale); padding: 28px; border-radius: 8px; }
.contact-checklist h2 { font-size: 1.1rem; }
.contact-checklist ul { padding-left: 1.2em; margin: 0; font-size: .875rem; }
.contact-checklist li + li { margin-top: 6px; }
.contact-agency { padding: 30px 0; border-top: 1px solid var(--line); }
.contact-agency h2 { font-size: 1.2rem; margin-bottom: 15px; }
.contact-agency p { font-size: .9375rem; margin-top: 10px; }

@media (max-width: 1050px) {
  .jozo-hero { gap: 26px; padding: 32px; }
  .hero-machine img { height: 260px; }
  .pump-card-image img { height: 190px; }
  .pump-card-body { padding: 14px 18px 22px; }
  .product-intro { gap: 30px; }
  .detail-photo img { height: 340px; }
  .consultation { grid-template-columns: 1fr; gap: 22px; justify-items: start; }
}
@media (max-width: 800px) {
  .jozo-hero { grid-template-columns: 1fr 1fr; gap: 20px; padding: 28px; }
  .jozo-hero h2 { font-size: 1.9rem; }
  .jozo-hero .actions { flex-direction: column; align-items: flex-start; }
  .hero-machine { padding-inline: 12px; }
  .hero-machine img { height: 245px; }
  .pump-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
  .pump-grid-single { grid-template-columns: 1fr; }
  .process-nav a { gap: 8px; padding-inline: 8px; font-size: .8125rem; }
  .product-intro { grid-template-columns: 1fr 1fr; gap: 24px; }
  .detail-photo { padding: 20px; }
  .detail-photo img { height: 280px; }
  .contact-main { grid-template-columns: 1fr; gap: 26px; }
}
@media (max-width: 640px) {
  .jozo-hero { grid-template-columns: 1fr; padding: 26px 22px 22px; margin-top: 20px; gap: 28px; }
  .jozo-hero h2 { font-size: clamp(1.9rem, 8vw, 2.5rem); }
  .jozo-hero .hero-lead { font-size: .875rem; line-height: 2; }
  .jozo-hero .actions { flex-direction: row; align-items: stretch; gap: 8px; }
  .jozo-hero .actions .button { font-size: .75rem; padding-inline: 12px; }
  .hero-machine { padding: 16px; }
  .hero-machine img { height: 265px; }
  .process-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 14px 0 44px; }
  .process-nav a { padding: 14px 8px; }
  .section-heading { margin-bottom: 26px; }
  .section-heading h2 { font-size: 1.25rem; }
  .section-heading > p:last-child:not(.eyebrow) { font-size: .8125rem; }
  .lineup-section { margin-bottom: 36px; }
  .lineup-heading { gap: 13px; padding-top: 20px; margin-bottom: 20px; }
  .lineup-heading h2 { font-size: 1.1rem; }
  .lineup-heading p { font-size: .6875rem; }
  .section-number { font-size: 1.4rem; }
  .pump-grid { gap: 12px; }
  .pump-card-image { padding: 16px 12px 8px; }
  .pump-card-image img { height: 155px; }
  .pump-card-body { padding: 10px 13px 16px; }
  .pump-model { font-size: 1rem; }
  .pump-card h3 { font-size: .75rem; }
  .pump-description { font-size: .75rem; margin-bottom: 16px; }
  .card-link { font-size: .6875rem; gap: 5px; }
  .pump-card-wide { grid-template-columns: 125px 1fr; }
  .pump-card-wide .pump-card-image { padding: 14px; }
  .pump-card-wide .pump-card-image img { height: 165px; }
  .pump-card-wide .pump-card-body { padding: 18px 16px 18px 0; }
  .pump-card-wide h3 { font-size: .8125rem; }
  .pump-card-wide .pump-description { font-size: .75rem; }
  .catalog-section { padding-top: 15px; margin-bottom: 35px; }
  .catalog-row { display: grid; grid-template-columns: 36px 1fr; gap: 12px; padding: 20px 4px; }
  .pdf-icon { width: 34px; height: 44px; grid-row: span 2; }
  .catalog-copy strong { font-size: .875rem; }
  .catalog-copy > span { font-size: .75rem; }
  .catalog-size { grid-column: 2; margin-left: 0; }
  .catalog-size span { margin-left: 8px; }
  .product-heading { padding-top: 18px; margin-bottom: 24px; }
  .product-heading h1 { font-size: 1.1rem; }
  .model-heading { font-size: clamp(1.65rem, 7vw, 2.4rem); margin-top: 10px; }
  .product-lead { font-size: .875rem; }
  .product-intro { grid-template-columns: 1fr; gap: 24px; }
  .detail-photo img { height: 310px; }
  .feature-panel { padding-top: 5px; }
  .feature-panel h2 { font-size: 1.25rem; }
  .feature-list { font-size: .875rem; margin-top: 16px; }
  .feature-panel .button { font-size: .8125rem; }
  .detail-section { margin-block: 40px; }
  .detail-section-heading h2 { font-size: 1.25rem; }
  .product-specs { font-size: .8125rem; }
  .product-specs th, .product-specs td { padding: 13px 12px; }
  .product-specs th { width: 37%; }
  .drawing-image { padding: 10px; }
  .catalog-previews { grid-template-columns: 1fr; gap: 16px; }
  .catalog-previews > a { padding: 10px; }
  .consultation { padding: 24px 22px; margin-block: 40px; }
  .consultation h2 { font-size: 1.125rem; }
  .consultation .button { font-size: .8125rem; }
  .related-products a { display: grid; grid-template-columns: 1fr auto; gap: 5px 12px; }
  .related-products strong { min-width: 0; }
  .related-products a > span:first-of-type { grid-column: 1; font-size: .75rem; }
  .related-products a > span:last-child { grid-column: 2; grid-row: 1 / span 2; }
  .contact-main h2 { font-size: 1.25rem; }
  .contact-checklist { padding: 24px; }
  .contact-checklist h2 { font-size: 1.1rem; }
}
@media (max-width: 360px) {
  .pump-grid:not(.pump-grid-single) { grid-template-columns: 1fr; }
  .pump-card-image img { height: 205px; }
  .pump-card h3 { font-size: .875rem; }
  .pump-model { font-size: 1.1rem; }
}
@media print {
  .process-nav, .consultation, .related-products, .back-link { display: none; }
  .jozo-hero { background: none; padding: 20px; }
  .pump-card, .product-specs tr, .detail-photo { break-inside: avoid; }
}

.category-grid-primary{grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.category-grid-primary .category-card{padding:22px 16px}
.category-grid-primary .category-card img{height:170px}
.category-grid-primary .category-card h3{font-size:1rem}
.category-grid-secondary{grid-template-columns:repeat(2,minmax(0,1fr))}
.secondary-products>h2{font-size:1.4rem}
.prose #brewing-downloads{padding-bottom:32px;margin-bottom:32px;border-bottom:1px solid var(--line)}
.redirect-notice{padding-block:60px}
.redirect-notice p{margin-block:20px}
@media(max-width:1050px){.category-grid-primary{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.category-grid-primary{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.category-grid-primary .category-card{padding:16px 12px}.category-grid-primary .category-card img{height:130px}.category-grid-primary .category-card h3{font-size:.9375rem}.secondary-products>h2{font-size:1.2rem}}
/* END INTEGRATED BREWING */
