/* JSTP DESIGN SYSTEM — Consolidated CSS */

:root {
  --jstp-navy: #0D1B2A;
  --jstp-steel: #1B3A4B;
  --jstp-slate: #415A77;
  --jstp-muted: #778DA9;
  --jstp-copper: #C17817;
  --jstp-copper-dark: #A66614;
  --jstp-success: #2D6A4F;
  --jstp-warm-white: #F7F5F2;
  --jstp-cloud: #E8E6E1;
  --jstp-paper: #FAFAF8;
  --jstp-white: #FFFFFF;
  --jstp-text: #1A1A2E;
  --jstp-text-light: #555566;
  --font-display: 'DM Serif Display', Georgia, serif;
  --font-body: 'Outfit', -apple-system, sans-serif;
  --section-pad: 80px;
  --section-pad-mobile: 48px;
  --content-max: 1140px;
  --prose-max: 680px;
}

@import url('https://fonts.googleapis.com/css2?family=DM+Serif+Display&family=Outfit:wght@300;400;500;600;700&display=swap');

*, *::before, *::after { box-sizing: border-box; }
body { font-family: var(--font-body); font-size: 17px; line-height: 1.75; color: var(--jstp-text); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
html, body { overflow-x: hidden !important; max-width: 100vw !important; }

/* H1 */
h1, .entry-content h1, .entry-content h1[style] { font-family: var(--font-display) !important; font-size: 48px !important; font-weight: 400 !important; line-height: 1.15 !important; letter-spacing: -0.01em !important; color: var(--jstp-navy); margin-bottom: 24px !important; margin-top: 0 !important; }
/* H2 */
h2, .entry-content h2, .entry-content h2[style] { font-family: var(--font-display) !important; font-size: 36px !important; font-weight: 400 !important; line-height: 1.2 !important; letter-spacing: -0.01em !important; color: var(--jstp-navy); margin-bottom: 20px !important; margin-top: 56px !important; }
.entry-content > div > h2:first-child, .entry-content > div > div > h2:first-child, .entry-content h2:first-child, .jstp-hero-dark h2:first-child, [style*="background-color:#0D1B2A"] > div > h2:first-child, [style*="background-color: rgb(13, 27, 42)"] > div > h2:first-child { margin-top: 0 !important; }
[style*="background-color:#C17817"] h2, [style*="background-color: rgb(193, 120, 23)"] h2 { margin-top: 0 !important; padding-top: 0 !important; padding-bottom: 0 !important; }
/* H3 */
h3, .entry-content h3, .entry-content h3[style] { font-family: var(--font-body) !important; font-size: 24px !important; font-weight: 600 !important; line-height: 1.3 !important; color: var(--jstp-steel) !important; margin-bottom: 16px !important; margin-top: 40px !important; }
.entry-content h2 + h3, .entry-content h2[style] + h3 { margin-top: 16px !important; }
/* H4 */
h4, .entry-content h4, .entry-content h4[style] { font-family: var(--font-body) !important; font-size: 20px !important; font-weight: 600 !important; line-height: 1.35 !important; color: var(--jstp-slate) !important; margin-bottom: 12px !important; }

/* Body text */
p, .entry-content p, .entry-content p[style] { font-family: var(--font-body) !important; font-size: 17px !important; line-height: 1.75 !important; color: var(--jstp-text) !important; max-width: var(--prose-max); margin-bottom: 20px; }
.entry-content div[style*="0D1B2A"] p, .entry-content div[style*="0d1b2a"] p, .entry-content div[style*="C17817"] p, .entry-content div[style*="c17817"] p { max-width: none; color: rgba(255,255,255,0.85) !important; }
.entry-content [style*="text-align:center"] p, .entry-content [style*="text-align: center"] p { max-width: none; }
.entry-content [style*="display:grid"] p, .entry-content [style*="display: grid"] p, .entry-content [style*="display:flex"] p, .entry-content div[style*="flex:1"] p { max-width: none; }
.entry-content table td p, .entry-content table th p { max-width: none; margin-bottom: 0; }

/* Overlines */
.entry-content p[style*="letter-spacing:3px"], .entry-content p[style*="letter-spacing: 3px"], .entry-content p[style*="letter-spacing:2px"], .entry-content p[style*="letter-spacing: 2px"], .entry-content p[style*="letter-spacing:4px"], .entry-content p[style*="letter-spacing: 4px"], .entry-content p[style*="letter-spacing:5px"], .entry-content p[style*="letter-spacing: 5px"], .entry-content p[style*="text-transform:uppercase"][style*="font-size:13px"] { font-size: 13px !important; font-weight: 600 !important; letter-spacing: 3px !important; text-transform: uppercase !important; font-family: var(--font-body) !important; max-width: none !important; margin-bottom: 8px !important; color: var(--jstp-copper-dark) !important; }
.entry-content div[style*="0D1B2A"] p[style*="letter-spacing"], .entry-content div[style*="0d1b2a"] p[style*="letter-spacing"] { color: var(--jstp-copper) !important; }

/* Links */
.entry-content a:not([style*="background"]) { color: var(--jstp-copper); text-decoration: underline; text-underline-offset: 3px; transition: color 0.3s ease; }
.entry-content a:not([style*="background"]):hover { color: var(--jstp-copper-dark); }
/* Blockquotes */
blockquote, .entry-content blockquote, .wp-block-quote { border-left: 4px solid var(--jstp-copper); padding: 20px 24px; margin: 32px 0; background: var(--jstp-paper); font-style: italic; font-size: 19px; line-height: 1.6; color: var(--jstp-navy); }
blockquote p:last-child { margin-bottom: 0; }
/* Lists */
ul, ol, .entry-content ul, .entry-content ol { font-family: var(--font-body); font-size: 17px; line-height: 1.7; color: var(--jstp-text); padding-left: 24px; margin-bottom: 20px; }
li { margin-bottom: 8px; }
/* CTA Buttons */
.entry-content a[style*="background"][style*="padding"], .entry-content a[style*="background-color:#C17817"] { font-family: var(--font-body) !important; font-size: 14px !important; font-weight: 600 !important; letter-spacing: 1.5px !important; text-transform: uppercase !important; border-radius: 4px !important; text-decoration: none !important; transition: all 0.3s ease !important; display: inline-block; }
.entry-content a[style*="background"][style*="padding"]:hover, .entry-content a[style*="background-color:#C17817"]:hover { opacity: 0.9; transform: translateY(-1px); }

/* Tables */
.entry-content table { width: 100% !important; border-collapse: collapse !important; margin: 32px 0 !important; font-family: var(--font-body) !important; font-size: 15px !important; max-width: 100% !important; }
.entry-content table th { background-color: var(--jstp-navy) !important; color: #fff !important; font-weight: 600 !important; font-size: 14px !important; letter-spacing: 0.04em !important; text-transform: uppercase !important; padding: 14px 20px !important; text-align: left !important; border: none !important; }
.entry-content table td { padding: 14px 20px !important; border-bottom: 1px solid var(--jstp-cloud) !important; vertical-align: top !important; }
.entry-content table tr:nth-child(even) td { background-color: var(--jstp-paper) !important; }
/* Section Spacing */
.entry-content > div[style*="padding"] { padding-top: var(--section-pad) !important; padding-bottom: var(--section-pad) !important; }
.entry-content > div[style*="0D1B2A"]:first-child, .entry-content > div[style*="0d1b2a"]:first-child { padding-top: 100px !important; padding-bottom: 80px !important; }
/* Separator */
.entry-content hr, .wp-block-separator { border: none; border-top: 1px solid var(--jstp-cloud); margin: 40px auto; max-width: 200px; }

/* HEADER */
.main-header-bar, .ast-primary-header { position: fixed !important; top: 0; left: 0; right: 0; z-index: 999; background-color: var(--jstp-navy) !important; border-bottom: 3px solid var(--jstp-copper); transition: box-shadow 0.3s ease; }
body.admin-bar .main-header-bar, body.admin-bar .ast-primary-header { top: 32px; }
.ast-above-header-bar + .site-content, #page > .site-content, .ast-separate-container .site-content { padding-top: 80px !important; }
body.admin-bar .ast-separate-container .site-content, body.admin-bar #page > .site-content { padding-top: 112px !important; }
.main-header-bar.ast-header-sticked, .ast-primary-header.ast-header-sticked { box-shadow: 0 2px 20px rgba(0,0,0,0.15); }
/* Logo */
.site-title a, .ast-site-identity a { font-family: var(--font-body) !important; font-weight: 700 !important; font-size: 22px !important; letter-spacing: 3px !important; color: var(--jstp-white) !important; text-transform: uppercase; text-decoration: none !important; position: relative; }
.site-title a::after, .ast-site-identity a::after { content: ''; position: absolute; bottom: -4px; left: 0; width: 40%; height: 2px; background: var(--jstp-copper); }

/* Nav Links */
.main-header-menu a, .ast-header-sections-navigation a, .main-navigation a { font-family: var(--font-body) !important; font-size: 13px !important; font-weight: 500 !important; letter-spacing: 1.5px !important; color: var(--jstp-muted) !important; text-transform: uppercase; text-decoration: none !important; transition: color 0.3s ease; position: relative; }
.main-header-menu a:hover, .main-navigation a:hover { color: var(--jstp-white) !important; }
.main-header-menu .current-menu-item > a, .main-navigation .current-menu-item > a { color: var(--jstp-white) !important; font-weight: 600 !important; }
.main-header-menu a::after { content: ''; position: absolute; bottom: -2px; left: 50%; width: 0; height: 2px; background: var(--jstp-copper); transition: width 0.3s ease, left 0.3s ease; }
.main-header-menu a:hover::after, .main-header-menu .current-menu-item > a::after { width: 100%; left: 0; }
.main-header-menu > .menu-item:last-child > a { background: var(--jstp-copper) !important; color: var(--jstp-white) !important; padding: 8px 20px !important; border-radius: 4px !important; font-weight: 600 !important; }
.main-header-menu > .menu-item:last-child > a::after { display: none; }
.main-header-menu > .menu-item:last-child > a:hover { background: var(--jstp-copper-dark) !important; }
/* Dropdowns */
.main-header-menu .sub-menu { background: var(--jstp-navy) !important; border: 1px solid rgba(255,255,255,0.1) !important; border-radius: 4px !important; box-shadow: 0 8px 24px rgba(0,0,0,0.3) !important; padding: 8px 0 !important; }
.main-header-menu .sub-menu a { padding: 10px 24px !important; font-size: 12px !important; }
.main-header-menu .sub-menu a:hover { background: rgba(255,255,255,0.05) !important; }
.main-header-menu .sub-menu a::after { display: none !important; }
.main-header-bar .ast-container { max-width: var(--content-max) !important; padding: 0 40px !important; }
.main-header-bar-wrap, .ast-primary-header-bar { min-height: auto !important; padding: 16px 0 !important; }

/* FOOTER */
.site-footer, .ast-footer-overlay { background-color: var(--jstp-navy) !important; color: rgba(255,255,255,0.6) !important; padding: 20px 0 !important; }
.site-footer a { color: rgba(255,255,255,0.6) !important; text-decoration: none; transition: color 0.3s ease; }
.site-footer a:hover { color: var(--jstp-copper) !important; }
.site-footer .ast-container { font-family: var(--font-body); font-size: 14px; text-align: center; }
.ast-footer-copyright a[href*="wpastra"], .site-footer a[href*="wpastra"], a[href*="flavor=flavor_flavor"] { display: none !important; }
.ast-small-footer .ast-container { background-color: var(--jstp-navy) !important; color: rgba(255,255,255,0.5) !important; }
.site-footer, .ast-footer-overlay, .ast-small-footer { border-top: none !important; }
.ast-footer-overlay .ast-container:empty, .footer-widget-area:empty { display: none !important; }

/* PAGE LAYOUT */
.page .entry-title, .page .page-header, .page .ast-archive-description, .page .entry-header.ast-no-thumbnail { display: none !important; }
.single-post .entry-title, .blog .entry-title, .archive .entry-title { display: block !important; }
.ast-separate-container .ast-article-single:first-child { margin-top: 0 !important; padding-top: 0 !important; }
.ast-separate-container #primary { padding-top: 0 !important; margin-top: 0 !important; }
.ast-separate-container .ast-article-single { padding: 0 !important; }
.ast-separate-container .site-content > .ast-container { background: transparent !important; padding: 0 !important; }
.ast-container, .site-content .ast-container { max-width: var(--content-max); margin-left: auto; margin-right: auto; }
.entry-content { margin-bottom: 0 !important; padding-bottom: 0 !important; }
.ast-article-single { margin-bottom: 0 !important; }
#primary { padding-bottom: 0 !important; }
.entry-content.clear::after { display: none !important; }
.page-id-799 .entry-content.clear::after { display: none !important; }

/* STAT BLOCKS */
.entry-content div[style*="flex:1"][style*="text-align:center"] > p:first-child, .entry-content div[style*="flex: 1"][style*="text-align:center"] > p:first-child, .entry-content div[style*="flex:1"][style*="text-align: center"] > p:first-child { font-size: 40px !important; font-family: var(--font-display) !important; font-weight: 400 !important; line-height: 1.1 !important; color: var(--jstp-copper) !important; max-width: none !important; margin-bottom: 4px !important; }
.entry-content div[style*="flex:1"][style*="text-align:center"] > p:not(:first-child):last-child, .entry-content div[style*="flex: 1"][style*="text-align:center"] > p:not(:first-child):last-child, .entry-content div[style*="flex:1"][style*="text-align: center"] > p:not(:first-child):last-child { font-size: 13px !important; font-family: var(--font-body) !important; font-weight: 400 !important; line-height: 1.4 !important; color: var(--jstp-muted, #778DA9) !important; max-width: none !important; margin-bottom: 0 !important; text-transform: uppercase !important; letter-spacing: 1px !important; }

/* CARD/GRID COMPONENTS */
.entry-content div[style*="display:grid"] > div > p[style*="letter-spacing"], .entry-content div[style*="display:grid"] > div[style*="background"] > p[style*="letter-spacing"], .entry-content div[style*="display: grid"] > div > p[style*="letter-spacing"] { font-size: 13px !important; font-family: var(--font-body) !important; font-weight: 600 !important; letter-spacing: 2px !important; text-transform: uppercase !important; color: var(--jstp-copper) !important; line-height: 1.4 !important; margin-bottom: 12px !important; max-width: none !important; }
.entry-content div[style*="display:grid"] > div[style*="background:#fff"] > p:last-child, .entry-content div[style*="display: grid"] > div[style*="background:#fff"] > p:last-child { font-size: 15px !important; font-family: var(--font-body) !important; font-weight: 400 !important; line-height: 1.65 !important; color: var(--jstp-text-light) !important; letter-spacing: normal !important; text-transform: none !important; max-width: none !important; }
.entry-content div[style*="display:grid"] > div[style*="background:#fff"] h3, .entry-content div[style*="display:grid"] > div[style*="box-shadow"] h3 { font-family: var(--font-display) !important; font-size: 24px !important; font-weight: 400 !important; color: var(--jstp-navy) !important; margin-bottom: 12px !important; }

/* MANUFACTURING PAGE (page-id-64) */
.page-id-64 .entry-content div[style*="border-left"] > p:first-child { font-family: var(--font-display) !important; color: var(--jstp-copper) !important; max-width: none !important; }
.page-id-64 .entry-content div[style*="display:grid"] > div[style*="border-left"] > h3, .page-id-64 .entry-content div[style*="border-left:3px"] > h3 { font-family: var(--font-body) !important; font-size: 18px !important; font-weight: 600 !important; color: var(--jstp-navy) !important; margin: 0 0 8px !important; }
.page-id-64 .entry-content div[style*="border-left"] > p:last-child { font-size: 14px !important; line-height: 1.6 !important; color: var(--jstp-text-light) !important; max-width: none !important; }

/* HOMEPAGE */
.page-id-62 .entry-title, .page-id-62 .page-header, .page-id-62 .ast-archive-description, body.page-id-62 .entry-header { display: none !important; }
.entry-content > div:has(div[style*="animation"]) { overflow: hidden !important; max-width: 100vw !important; }
.entry-content div[style*="overflow:hidden"], .entry-content div[style*="overflow: hidden"] { overflow: hidden !important; }
div[style*="background-color:#F5F2EC"] > p:first-child { margin-top: 0; }

/* DOMAIN NAV */
.jstp-domain-nav { position: sticky; top: 73px; z-index: 998; background: var(--jstp-navy); border-bottom: 1px solid rgba(255,255,255,0.08); padding: 0 40px; display: none; }
body.admin-bar .jstp-domain-nav { top: 105px; }
.jstp-domain-nav.visible { display: block; }
.jstp-domain-nav-inner { max-width: var(--content-max); margin: 0 auto; display: flex; gap: 0; overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
.jstp-domain-nav-inner::-webkit-scrollbar { display: none; }
.jstp-domain-nav a { font-family: var(--font-body); font-size: 12px; font-weight: 500; letter-spacing: 1px; text-transform: uppercase; color: var(--jstp-muted); text-decoration: none; padding: 14px 20px; white-space: nowrap; border-bottom: 2px solid transparent; transition: color 0.25s ease, border-color 0.25s ease; }
.jstp-domain-nav a:hover { color: var(--jstp-white); }
.jstp-domain-nav a.active { color: var(--jstp-white); border-bottom-color: var(--jstp-copper); }
.entry-content h2[id], .entry-content [id] { scroll-margin-top: 140px; }
body.admin-bar .entry-content h2[id], body.admin-bar .entry-content [id] { scroll-margin-top: 172px; }

/* Domain Badges */
.jstp-domain-badge { display: inline-flex; align-items: center; gap: 8px; background: rgba(193,120,23,0.1); border: 1px solid rgba(193,120,23,0.2); border-radius: 20px; padding: 6px 16px; font-family: var(--font-body); font-size: 12px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--jstp-copper); margin-bottom: 16px; }
.jstp-domain-badge .badge-number { background: var(--jstp-copper); color: white; width: 22px; height: 22px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 11px; font-weight: 700; }
/* Client Logo Grid */
.jstp-client-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 16px; margin: 32px 0; }
.jstp-client-card { background: var(--jstp-white); border-radius: 10px; padding: 20px; display: flex; align-items: center; justify-content: center; min-height: 90px; box-shadow: 0 1px 4px rgba(13,27,42,0.06); }
.jstp-client-card img { max-width: 120px; max-height: 50px; width: auto; height: auto; object-fit: contain; }
.jstp-client-card img[src*="gm-logo"], .jstp-client-card img[alt*="General Mills"] { mix-blend-mode: multiply; }
/* Brand Cards */
.jstp-brand-card { display: block; background: var(--jstp-white); border-radius: 12px; padding: 28px 24px; text-align: center; text-decoration: none !important; box-shadow: 0 2px 8px rgba(13,27,42,0.06); border: 1px solid rgba(13,27,42,0.04); transition: transform 0.3s ease, box-shadow 0.3s ease; }
.jstp-brand-card:hover { transform: translateY(-4px); box-shadow: 0 8px 24px rgba(13,27,42,0.1); }
.jstp-brand-card img { max-height: 60px; max-width: 160px; width: auto; height: auto; object-fit: contain; margin: 0 auto 16px; display: block; }
.jstp-brand-card .brand-name { font-family: var(--font-body); font-size: 16px; font-weight: 600; color: var(--jstp-navy); margin-bottom: 4px; }
.jstp-brand-card .brand-categories { font-family: var(--font-body); font-size: 13px; color: var(--jstp-muted); }

/* Product Grid */
.jstp-product-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 20px; margin: 24px 0; }
.jstp-product-card { background: var(--jstp-white); border-radius: 8px; overflow: hidden; display: flex; flex-direction: column; box-shadow: 0 1px 4px rgba(13,27,42,0.06); border: 1px solid rgba(13,27,42,0.04); transition: transform 0.2s ease, box-shadow 0.2s ease; }
.jstp-product-card:hover { transform: translateY(-2px); box-shadow: 0 4px 16px rgba(13,27,42,0.08); }
.jstp-product-card .product-image { height: 180px; display: flex; align-items: center; justify-content: center; padding: 16px; background: var(--jstp-paper); }
.jstp-product-card .product-image img { max-width: 100%; max-height: 100%; object-fit: contain; }
.jstp-product-card .product-info { padding: 16px; flex-grow: 1; display: flex; flex-direction: column; }
.jstp-product-card .product-name { font-family: var(--font-body); font-size: 14px; font-weight: 600; color: var(--jstp-navy); line-height: 1.3; margin-bottom: 4px; min-height: 36px; }
.jstp-product-card .product-details { font-size: 12px; color: var(--jstp-muted); margin-top: auto; }
.jstp-product-card .product-details span { display: block; margin-bottom: 2px; }
.jstp-product-card .product-cta { display: block; margin-top: 12px; padding: 8px 16px; background: transparent; border: 1px solid var(--jstp-copper); border-radius: 4px; color: var(--jstp-copper); font-family: var(--font-body); font-size: 12px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; text-align: center; text-decoration: none; transition: all 0.2s ease; cursor: pointer; }
.jstp-product-card .product-cta:hover { background: var(--jstp-copper); color: var(--jstp-white); }
.jstp-product-card .product-image img[alt]:not([src]) { display: none; }
.jstp-product-grid > p:empty, .jstp-brand-grid > p:empty, .jstp-client-grid > p:empty { display: none !important; }
/* Scroll Top */
#ast-scroll-top, .ast-scroll-top-icon { background-color: var(--jstp-copper) !important; color: var(--jstp-white) !important; border-radius: 4px; }
#ast-scroll-top:hover { background-color: var(--jstp-navy) !important; }

/* RESPONSIVE 768px */
@media (max-width: 768px) {
  .entry-content h1, .entry-content h1[style] { font-size: 32px !important; margin-bottom: 20px !important; }
  .entry-content h2, .entry-content h2[style] { font-size: 26px !important; margin-top: 40px !important; margin-bottom: 16px !important; }
  .entry-content h3, .entry-content h3[style] { font-size: 20px !important; margin-top: 32px !important; }
  .entry-content h4, .entry-content h4[style] { font-size: 18px !important; }
  .entry-content p, .entry-content p[style] { font-size: 16px !important; max-width: 100% !important; }
  .entry-content > div[style*="padding"] { padding-top: 60px !important; padding-bottom: 60px !important; padding-left: 24px !important; padding-right: 24px !important; }
  .entry-content > div[style*="0D1B2A"]:first-child, .entry-content > div[style*="0d1b2a"]:first-child { padding-top: 60px !important; padding-bottom: 60px !important; }
  .entry-content div[style*="display:grid"], .entry-content div[style*="display: grid"] { display: grid !important; grid-template-columns: 1fr !important; gap: 24px !important; }
  .entry-content div[style*="display:flex"]:not([style*="animation"]), .entry-content div[style*="display: flex"]:not([style*="animation"]) { flex-wrap: wrap !important; }
  .entry-content div[style*="display:flex"]:not([style*="animation"]) > div[style*="flex:1"], .entry-content div[style*="display:flex"]:not([style*="animation"]) > div[style*="flex: 1"], .entry-content div[style*="display:flex"]:not([style*="animation"]) > div[style*="min-width"] { flex: 1 1 100% !important; min-width: 100% !important; max-width: 100% !important; }
  .entry-content div[style*="justify-content:space-between"], .entry-content div[style*="justify-content: space-between"] { flex-direction: column !important; align-items: center !important; gap: 24px !important; }
  .entry-content div[style*="flex:1"][style*="text-align:center"] > p:first-child, .entry-content div[style*="flex: 1"][style*="text-align:center"] > p:first-child { font-size: 32px !important; }
  .entry-content a[style*="background"][style*="padding"] { display: block !important; text-align: center !important; width: 100% !important; max-width: 100% !important; box-sizing: border-box !important; padding-left: 20px !important; padding-right: 20px !important; min-height: 44px !important; }
  .entry-content img { max-width: 100% !important; height: auto !important; }
  .entry-content table { display: block !important; overflow-x: auto !important; -webkit-overflow-scrolling: touch !important; }
  .entry-content table th, .entry-content table td { padding: 10px 14px !important; font-size: 14px !important; white-space: nowrap !important; }
  .site-footer .ast-container { padding-left: 16px !important; padding-right: 16px !important; font-size: 12px !important; }
  .jstp-domain-nav { padding: 0 16px; }
  .jstp-domain-nav a { padding: 12px 14px; font-size: 11px; }
  .jstp-product-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }
  .jstp-product-card .product-image { height: 140px; }
}

/* RESPONSIVE 480px */
@media (max-width: 480px) {
  .entry-content h1, .entry-content h1[style] { font-size: 26px !important; line-height: 1.2 !important; }
  .entry-content h2, .entry-content h2[style] { font-size: 24px !important; }
  .entry-content > div[style*="padding"] { padding-top: var(--section-pad-mobile) !important; padding-bottom: var(--section-pad-mobile) !important; padding-left: 16px !important; padding-right: 16px !important; }
  .entry-content > div[style*="0D1B2A"]:first-child, .entry-content > div[style*="0d1b2a"]:first-child { padding-top: var(--section-pad-mobile) !important; padding-bottom: var(--section-pad-mobile) !important; }
  .entry-content div[style*="flex:1"][style*="text-align:center"] > p:first-child, .entry-content div[style*="flex: 1"][style*="text-align:center"] > p:first-child { font-size: 28px !important; }
  .jstp-product-grid { grid-template-columns: 1fr; }
}

/* PRINT */
@media print {
  .main-header-bar, .ast-primary-header, .site-footer, #ast-scroll-top, .jstp-domain-nav { display: none !important; }
  body { font-size: 12pt; color: #000; }
  h1 { font-size: 24pt; } h2 { font-size: 18pt; } h3 { font-size: 14pt; }
}

/* Homepage hero — tighter bottom */
.page-id-62 .entry-content > div[style*="0D1B2A"]:first-child,
.page-id-62 .entry-content > div[style*="0d1b2a"]:first-child {
  padding-bottom: 60px !important;
  margin-bottom: -60px !important;
}

/* Homepage: tighter gap below hero */
.page-id-62 .entry-content > div:nth-child(2) {
  padding-top: 40px !important;
  padding-bottom: 10px !important;
}

/* Homepage: tighter overline-to-H2 gap */
.page-id-62 .entry-content p[style*="letter-spacing"] + h2,
.page-id-62 .entry-content p[style*="letter-spacing"] + h2[style] {
  margin-top: 4px !important;
  padding-top: 0 !important;
}
.page-id-62 .entry-content p[style*="letter-spacing"] {
  margin-bottom: 2px !important;
}

/* Homepage: H2 to cards tighter */
.page-id-62 .entry-content h2[style] {
  margin-bottom: 8px !important;
}

/* Homepage: align card links to bottom */
.page-id-62 .entry-content div[style*="border-radius"][style*="border:"] {
  display: flex !important;
  flex-direction: column !important;
}
.page-id-62 .entry-content div[style*="border-radius"][style*="border:"] > p:has(a) {
  margin-top: auto !important;
  margin-bottom: 0 !important;
}
.page-id-62 .entry-content div[style*="border-radius"][style*="border:"] > p:last-child:empty {
  display: none !important;
}

/* Homepage: cards to brands gap */
.page-id-62 .entry-content > div:nth-child(3) {
  padding-bottom: 10px !important;
}
.page-id-62 .entry-content > div:nth-child(4) {
  padding-top: 10px !important;
}

/* Homepage: tighter trust badge section */
.page-id-62 .entry-content > div:nth-child(5) {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

/* Homepage: compact CTA section */
.page-id-62 .entry-content > div:nth-child(6) {
  padding-top: 32px !important;
  padding-bottom: 32px !important;
}

/* All pages: compact CTA button */
.entry-content a[style*="background"][style*="padding"][style*="inline-block"] {
  padding: 12px 32px !important;
}

/* Hide stray navy div after entry-content */
article > div:last-of-type:not(.entry-content) {
  display: none !important;
  height: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  font-size: 0 !important;
  line-height: 0 !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

/* Kill blue line above footer */
.page-id-62 .ast-separate-container .ast-article-single,
.page-id-62 .ast-separate-container .site-content > .ast-container {
  box-shadow: none !important;
  border: none !important;
  outline: none !important;
}
.page-id-62 .site-content > .ast-container::after,
.page-id-62 .site-content > .ast-container::before,
.page-id-62 #primary::after,
.page-id-62 #primary::before,
.page-id-62 article::after,
.page-id-62 article::before {
  display: none !important;
  content: none !important;
}
.page-id-62 .ast-separate-container .site-main > article {
  box-shadow: none !important;
  border: none !important;
}

/* Kill line above footer - targeted */

/* Hide footer on all pages */
.site-footer {
  display: none !important;
}

/* Portfolio: compact cards, equal height */
.page-id-67 .entry-content > div:nth-child(2) > div:nth-child(2) {
  grid-auto-rows: 1fr !important;
  gap: 14px !important;
}
.page-id-67 .entry-content > div:nth-child(2) > div:nth-child(2) > a {
  padding: 6px 10px 6px !important;
  gap: 0 !important;
  display: flex !important;
  flex-direction: column !important;
}
/* Portfolio: logo container — flex to center logo vertically */
.page-id-67 .entry-content > div:nth-child(2) > div:nth-child(2) > a > div {
  height: 160px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 0 !important;
  margin-bottom: 2px !important;
  overflow: hidden !important;
}
/* Portfolio: description text pinned to bottom */
.page-id-67 .entry-content > div:nth-child(2) > div:nth-child(2) > a > p {
  font-size: 12px !important;
  line-height: 1.3 !important;
  margin: 0 !important;
  flex-shrink: 0 !important;
}

/* Portfolio: hide brand name text */
.page-id-67 .entry-content > div:nth-child(2) > div:nth-child(2) > a > p[style*="DM Serif"] {
  display: none !important;
}

/* Manufacturing: match homepage card style */

/* Manufacturing: compact product lines headings */

/* Portfolio: bigger logos for square brand logos */
.page-id-67 .entry-content > div:nth-child(2) > div:nth-child(2) > a:nth-child(8) img,
.page-id-67 .entry-content > div:nth-child(2) > div:nth-child(2) > a:nth-child(13) img,
.page-id-67 .entry-content > div:nth-child(2) > div:nth-child(2) > a:nth-child(15) img {
  max-height: 150px !important;
  max-width: 150px !important;
}

/* Products: push Add to Quote button to bottom of card */
.jstp-product-card .jstp-quote-btn {
  margin-top: auto !important;
}

/* Products: white background on product images */
.jstp-product-card .jstp-product-img {
  background-color: #ffffff !important;
}

/* Products: hide category labels on all cards */
.jstp-product-card .jstp-product-category {
  display: none !important;
}

/* Products: symmetrical card info */
.jstp-product-card .jstp-product-info {
    display: flex !important;
  flex-direction: column !important;
}
.jstp-product-card .jstp-product-name {
  }
.jstp-product-card .jstp-product-detail {
  font-size: 12px !important;
  line-height: 18px !important;
  min-height: 18px !important;
  padding: 2px 0 !important;
  margin: 0 !important;
  }

/* Products: all cards same height across all rows */
#jstp-grid {
  grid-auto-rows: 1fr !important;
}

/* Manufacturing: Private Label section — compact, no CTA */

/* ============================================
   MANUFACTURING PAGE — Consolidated Rules
   1=Hero, 2=ProductLines, 3=Certs, 
   4=PrivateLabel, 5=WhyHonduras, 6=Engagement, 7=CTA
   ============================================ */

/* All manufacturing H2s: kill WP default padding */
.page-id-64 .entry-content > div h2 {
  padding: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 12px !important;
}

/* All manufacturing P inside sections: kill padding */
.page-id-64 .entry-content > div > div > p {
  padding: 0 !important;
}

/* Section 2: Product Lines */
.page-id-64 .entry-content > div:nth-child(2) h3,
.page-id-64 .entry-content > div:nth-child(2) h3[style],
.page-id-64 .entry-content > div:nth-child(5) h3,
.page-id-64 .entry-content > div:nth-child(5) h3[style] {
  padding: 0 !important;
  margin-top: 4px !important;
  margin-bottom: 8px !important;
  font-size: 22px !important;
  border-left: none !important;
}
.page-id-64 .entry-content > div:nth-child(2) > div > p:last-of-type {
  margin-bottom: 24px !important;
}

/* Section 3: Certifications */
.page-id-64 .entry-content > div:nth-child(3) p {
  padding: 0 !important;
  margin: 0 !important;
}
.page-id-64 .entry-content > div:nth-child(3) > div > p:nth-child(3) {
  margin-bottom: 28px !important;
}

/* Section 4: Private Label Manufacturing — compact */
.page-id-64 .entry-content > div:nth-child(4) {
  padding-top: 48px !important;
  padding-bottom: 48px !important;
}

/* Section 5: Why Honduras — compact cards */

/* Section 6: Engagement Process */
.page-id-64 .entry-content > div:nth-child(6) h3,
.page-id-64 .entry-content > div:nth-child(6) h3[style] {
  padding: 0 !important;
  border-left: none !important;
  margin-top: 4px !important;
  margin-bottom: 6px !important;
  font-size: 18px !important;
}
.page-id-64 .entry-content > div:nth-child(6) > div > div[style*="grid"] > div p {
  padding: 0 !important;
  margin: 0 !important;
}
.page-id-64 .entry-content > div:nth-child(6) > div > div[style*="grid"] > div p:first-child {
  font-size: 13px !important;
  line-height: 1.2 !important;
  color: #C17817 !important;
}
.page-id-64 .entry-content > div:nth-child(6) > div > div[style*="grid"] > div p:last-child {
  margin-top: 4px !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
}
.page-id-64 .entry-content > div:nth-child(6) > div > div[style*="grid"] > div {
  padding: 12px 0 12px 16px !important;
}
.page-id-64 .entry-content > div:nth-child(6) > div > p {
  margin-bottom: 24px !important;
}

/* Manufacturing: tighter gap between Product Lines and Certifications */
.page-id-64 .entry-content > div:nth-child(2) {
  padding-bottom: 60px !important;
}
.page-id-64 .entry-content > div:nth-child(3) {
  padding-top: 60px !important;
}

/* Manufacturing: tighter gap between Why Honduras and Engagement */
.page-id-64 .entry-content > div:nth-child(5) {
  padding-bottom: 40px !important;
}
.page-id-64 .entry-content > div:nth-child(6) {
  padding-top: 40px !important;
}

/* Execution: JSTP handles paragraph — full width */
.page-id-799 .entry-content > div:nth-child(3) > div > p {
  max-width: 100% !important;
}

/* ============================================
   MODEL PAGE (page-id-55) — Clean Rules
   ============================================ */

/* Kill ghost padding on all headings */
.page-id-55 .entry-content h2,
.page-id-55 .entry-content h2[style],
.page-id-55 .entry-content h3,
.page-id-55 .entry-content h3[style] {
  padding: 0 !important;
  border-left: none !important;
}

/* Kill ghost padding on all P inside sections */
.page-id-55 .entry-content > div > div > p {
  padding: 0 !important;
}

/* Six Functions cards — compact */
.page-id-55 .entry-content > div:nth-child(2) > div > div[style*="grid"] {
  gap: 14px !important;
}
.page-id-55 .entry-content > div:nth-child(2) > div > div[style*="grid"] > div {
  padding: 14px 18px !important;
}
.page-id-55 .entry-content > div:nth-child(2) > div > div[style*="grid"] > div > p:first-child {
  font-size: 28px !important;
  line-height: 1 !important;
  margin-bottom: 2px !important;
}
.page-id-55 .entry-content > div:nth-child(2) > div > div[style*="grid"] > div > h3 {
  font-size: 18px !important;
  margin-bottom: 4px !important;
  margin-top: 0 !important;
}
.page-id-55 .entry-content > div:nth-child(2) > div > div[style*="grid"] > div > p:last-child {
  font-size: 13px !important;
  line-height: 1.4 !important;
}

/* Platform Economics H2/P padding fix */
.page-id-55 .entry-content > div:nth-child(4) h2 {
  margin-bottom: 12px !important;
}
.page-id-55 .entry-content > div:nth-child(4) p {
  padding: 0 !important;
}

/* Model: Comparison cards — force aligned padding and H3 */
.page-id-55 .entry-content > div:nth-child(4) div[style*="display:flex;gap:20px"] > div {
  padding: 28px 24px !important;
}
.page-id-55 .entry-content > div:nth-child(4) div[style*="display:flex;gap:20px"] > div h3 {
  margin-top: 0 !important;
  margin-bottom: 16px !important;
  font-size: 22px !important;
}
.page-id-55 .entry-content > div:nth-child(4) div[style*="display:flex;gap:20px"] > div p {
  padding: 0 !important;
  margin: 0 !important;
}

/* ============================================
   FIRM PAGE (page-id-63) — Clean Rules
   ============================================ */
.page-id-63 .entry-content h2,
.page-id-63 .entry-content h2[style],
.page-id-63 .entry-content h3,
.page-id-63 .entry-content h3[style] {
  padding: 0 !important;
  border-left: none !important;
}
.page-id-63 .entry-content > div > div > p {
  padding: 0 !important;
}
.page-id-63 .entry-content > div:nth-child(3) > div > div[style*="grid"] > div h3 {
  margin-top: 0 !important;
}