/* ============================================================
   UPCs.com design system (2026-09-30). One stylesheet for every page.
   Tokens come from the Printed Labels / ISBN / homepage style.
   Namespace: .uds (page wrapper) + .uds-* components. Header/footer at the end.
   ============================================================ */
:root{
  --uds-blue:#0f7cc0;--uds-blue-dark:#0b62a0;--uds-blue-soft:#e8f3fb;--uds-blue-ink:#0b3f66;
  --uds-orange:#ff8500;--uds-orange-2:#f90;--uds-green:#28a745;
  --uds-ink:#1a1a1a;--uds-text:#333;--uds-muted:#4a5560;--uds-faint:#6b7680;
  --uds-line:#e6ebf0;--uds-soft:#f8fafc;--uds-navy:#0f2a44;
  --uds-radius:12px;--uds-radius-lg:14px;--uds-radius-btn:9px;
  --uds-shadow:0 3px 14px rgba(15,124,192,.07);--uds-shadow-hover:0 10px 26px rgba(15,124,192,.15);
  --uds-font:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
}
/* ---------- page wrapper ---------- */
.uds{font-family:var(--uds-font);color:var(--uds-text);line-height:1.6;font-size:16px;max-width:1140px;margin:0 auto;box-sizing:border-box}
.uds *,.uds *:before,.uds *:after{box-sizing:inherit}
.uds h1,.uds h2,.uds h3,.uds h4{font-family:inherit;color:var(--uds-ink);margin:0;line-height:1.25}
.uds h1{font-size:40px;line-height:1.15;font-weight:800;letter-spacing:-.01em;margin:0 0 14px}
.uds h1 span{color:var(--uds-blue)}
.uds h2{font-size:30px;font-weight:700;margin:0 0 10px}
.uds h3{font-size:19px;font-weight:700;margin:0 0 8px}
.uds h4{font-size:16px;font-weight:700;margin:0 0 6px}
.uds p{margin:0 0 14px}
.uds a{color:var(--uds-blue)}
.uds ul,.uds ol{margin:0 0 14px 22px;padding:0}
.uds li{margin:0 0 6px}
.uds img{max-width:100%;height:auto}
.uds-lead{font-size:18px;color:var(--uds-muted);margin:0 0 22px}
.uds-sub{font-size:17px;color:var(--uds-muted);max-width:760px;margin:0 0 22px}
.uds-eyebrow{display:inline-block;background:var(--uds-blue-soft);color:var(--uds-blue);font-weight:700;font-size:13px;letter-spacing:.04em;text-transform:uppercase;padding:6px 12px;border-radius:999px;margin-bottom:14px}
.uds-eyebrow--orange{background:#fff3e6;color:#d96f00}
.uds-eyebrow--green{background:#e9f7ee;color:#1d7a35}
.uds-center{text-align:center}
.uds-center .uds-sub,.uds-center .uds-lead{margin-left:auto;margin-right:auto}
.uds-muted{color:var(--uds-muted)}
.uds-small{font-size:14px;color:var(--uds-faint)}
.uds-narrow{max-width:800px}
.uds-narrow--c{max-width:800px;margin-left:auto;margin-right:auto}
/* ---------- hero ---------- */
.uds-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;padding:10px 0 34px}
.uds-hero--center{grid-template-columns:1fr;text-align:center;padding:16px 0 30px}
.uds-hero--center .uds-lead,.uds-hero--center .uds-cta-row,.uds-hero--center .uds-chips{justify-content:center;margin-left:auto;margin-right:auto}
.uds-hero--center .uds-lead{max-width:760px}
.uds-hero--plain{grid-template-columns:1fr;padding:6px 0 22px}
.uds-hero__img img{display:block;width:100%;height:auto;border-radius:var(--uds-radius-lg);box-shadow:0 10px 30px rgba(0,0,0,.12)}
.uds-hero__img--flat img{box-shadow:none}
.uds-cta-row{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 20px}
/* ---------- buttons ---------- */
.uds .uds-btn,.uds-btn{display:inline-block;padding:15px 26px;border-radius:var(--uds-radius-btn);font-weight:700;font-size:17px;line-height:1.25;text-decoration:none!important;text-align:center;border:2px solid transparent;cursor:pointer;font-family:var(--uds-font);transition:filter .2s ease,transform .1s ease,background .2s ease,box-shadow .2s ease}
.uds-btn--orange{background:linear-gradient(135deg,var(--uds-orange-2) 0%,var(--uds-orange) 100%);color:#fff!important;box-shadow:0 4px 15px rgba(255,153,0,.3)}
.uds-btn--orange:hover{filter:brightness(1.06);transform:translateY(-1px)}
.uds-btn--blue{background:var(--uds-blue);color:#fff!important}
.uds-btn--blue:hover{background:var(--uds-blue-dark)}
.uds-btn--outline{border-color:var(--uds-blue);color:var(--uds-blue)!important;background:#fff}
.uds-btn--outline:hover{background:var(--uds-blue-soft)}
.uds-btn--white{background:#fff;color:var(--uds-blue)!important}
.uds-btn--white:hover{background:var(--uds-blue-soft)}
.uds-btn--sm{padding:11px 18px;font-size:15px}
.uds-btn--block{display:block;width:100%}
.uds-btn:focus-visible{outline:3px solid var(--uds-blue);outline-offset:2px}
.uds-btn-note{display:block;font-size:14px;color:var(--uds-faint);margin-top:8px}
/* ---------- tick lists ---------- */
.uds-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 18px;font-size:15px;color:var(--uds-text)}
.uds-chips li,.uds-ticks li{position:relative;padding-left:22px;margin:0}
.uds-chips li:before,.uds-ticks li:before{content:"";position:absolute;left:1px;top:8px;width:11px;height:6px;border-left:2.5px solid var(--uds-green);border-bottom:2.5px solid var(--uds-green);transform:rotate(-45deg)}
.uds-ticks{list-style:none;margin:0 0 16px;padding:0}
.uds-ticks li{margin:0 0 8px;font-size:15.5px}
.uds-ticks li:before{top:9px}
.uds-ticks--x li:before{border:0;width:auto;height:auto;transform:none;content:"\2715";color:#c0392b;font-size:12px;font-weight:700;top:3px;left:2px}
/* ---------- sections ---------- */
.uds-section{padding:34px 0 10px}
.uds-section--tight{padding-top:12px}
.uds-section--soft{background:var(--uds-soft);border-radius:var(--uds-radius-lg);padding:30px 28px 22px;margin:20px 0}
.uds-section__head{max-width:760px;margin:0 0 18px}
.uds-section__head--c{margin-left:auto;margin-right:auto;text-align:center}
.uds-section__head p{color:var(--uds-muted);font-size:16.5px;margin:0}
.uds-divider{height:1px;background:var(--uds-line);margin:26px 0}
/* ---------- tiles (feature cards) ---------- */
.uds-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:18px 0 6px}
.uds-tiles--3{grid-template-columns:repeat(3,1fr)}
.uds-tiles--2{grid-template-columns:repeat(2,1fr)}
.uds-tile{display:block;background:#fff;border:1px solid var(--uds-line);border-radius:var(--uds-radius);padding:20px 18px;text-decoration:none!important;color:var(--uds-text)!important;box-shadow:var(--uds-shadow);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
a.uds-tile:hover{transform:translateY(-3px);box-shadow:var(--uds-shadow-hover);border-color:var(--uds-blue)}
.uds-tile svg{width:38px;height:38px;display:block;margin-bottom:12px;color:var(--uds-blue)}
.uds-tile strong{display:block;font-size:17px;color:var(--uds-ink);margin-bottom:6px}
.uds-tile span{display:block;font-size:14.5px;line-height:1.5;color:var(--uds-muted)}
.uds-tile em{display:inline-block;font-style:normal;font-size:12px;font-weight:700;color:var(--uds-orange);text-transform:uppercase;letter-spacing:.03em;margin-bottom:8px}
.uds-tile--c{text-align:center}
.uds-tile--c svg{margin-left:auto;margin-right:auto}
/* ---------- product cards ---------- */
.uds-products{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:18px 0 10px}
.uds-product{background:#fff;border:1px solid var(--uds-line);border-radius:var(--uds-radius-lg);padding:18px;box-shadow:var(--uds-shadow);display:flex;flex-direction:column;position:relative}
.uds-product--hot{border-color:var(--uds-orange);box-shadow:0 6px 22px rgba(255,133,0,.14)}
.uds-product img{width:100%;height:auto;border-radius:10px;margin-bottom:14px;background:var(--uds-soft)}
.uds-product h3{font-size:18px;margin:0 0 6px}
.uds-product p{font-size:14.5px;color:var(--uds-muted);margin:0 0 10px}
.uds-product .uds-ticks{margin-bottom:10px}
.uds-product .uds-ticks li{font-size:14px}
.uds-price{margin:auto 0 12px;font-size:15px;color:var(--uds-muted)}
.uds-price strong{font-size:26px;color:var(--uds-ink);font-weight:800;margin-right:4px}
.uds-badge{position:absolute;top:-12px;left:16px;background:var(--uds-orange);color:#fff;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;padding:5px 11px;border-radius:999px}
.uds-badge--blue{background:var(--uds-blue)}
/* ---------- steps ---------- */
.uds-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:18px 0 22px;counter-reset:step;list-style:none;padding:0}
.uds-steps--4{grid-template-columns:repeat(4,1fr)}
.uds-step{background:var(--uds-soft);border-radius:var(--uds-radius);padding:22px 20px 20px;position:relative;margin:0}
.uds-step:before{counter-increment:step;content:counter(step);display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--uds-orange);color:#fff;font-weight:800;font-size:16px;margin-bottom:12px}
.uds-step strong{display:block;font-size:17px;color:var(--uds-ink);margin-bottom:6px}
.uds-step p{font-size:15px;color:var(--uds-muted);margin:0}
/* ---------- callout / notice ---------- */
.uds-callout{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 24px;background:var(--uds-blue-soft);border-left:5px solid var(--uds-blue);border-radius:0 var(--uds-radius) var(--uds-radius) 0;padding:18px 22px;margin:14px 0 16px}
.uds-callout p{margin:0;font-size:16px;color:var(--uds-ink)}
.uds-callout .uds-btn{padding:12px 20px;font-size:15px}
.uds-notice{background:var(--uds-soft);border:1px solid var(--uds-line);border-radius:var(--uds-radius);padding:16px 20px;margin:14px 0;font-size:15.5px}
.uds-notice--blue{background:var(--uds-blue-soft);border-color:#cfe3f3}
.uds-notice--green{background:#e9f7ee;border-color:#cdebd6}
.uds-notice p:last-child{margin:0}
/* ---------- stats / trust ---------- */
.uds-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:14px 0 10px}
.uds-stats div{text-align:center;background:#fff;border:1px solid var(--uds-line);border-radius:var(--uds-radius);padding:18px 14px}
.uds-stats strong{display:block;font-size:26px;line-height:1.1;color:var(--uds-blue);font-weight:800;margin-bottom:4px}
.uds-stats span{font-size:14px;color:var(--uds-muted)}
.uds-trustline{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 26px;padding:14px 18px;background:var(--uds-soft);border:1px solid var(--uds-line);border-radius:var(--uds-radius);margin:6px 0 18px;font-size:14.5px;color:var(--uds-muted)}
.uds-trustline span{position:relative;padding-left:20px}
.uds-trustline span:before{content:"";position:absolute;left:0;top:8px;width:10px;height:5px;border-left:2.5px solid var(--uds-green);border-bottom:2.5px solid var(--uds-green);transform:rotate(-45deg)}
.uds-logos{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px 34px;margin:16px 0 4px}
.uds-logos img{height:32px;width:auto;max-width:130px;filter:grayscale(1);opacity:.7}
.uds-logos-label{text-align:center;font-size:14px;color:var(--uds-faint);margin:8px 0 0}
.uds-rating{display:inline-flex;align-items:center;gap:8px;font-size:14.5px;color:var(--uds-muted)}
.uds-rating b{color:#f5a623;letter-spacing:1px;font-size:16px}
/* ---------- tables ---------- */
.uds-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:14px 0 10px;border:1px solid var(--uds-line);border-radius:var(--uds-radius);background:#fff}
.uds-table{width:100%;border-collapse:collapse;font-size:15.5px;margin:0}
.uds-table th,.uds-table td{padding:13px 16px;text-align:left;border-bottom:1px solid var(--uds-line);vertical-align:middle}
.uds-table th{background:var(--uds-soft);color:var(--uds-faint);font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--uds-line)}
.uds-table tr:last-child td{border-bottom:0}
.uds-table td strong{color:var(--uds-ink)}
.uds-table .uds-td-price{font-weight:800;color:var(--uds-ink);font-size:17px;white-space:nowrap}
.uds-table .uds-td-each{color:var(--uds-muted);white-space:nowrap}
.uds-table .uds-td-act{text-align:right;white-space:nowrap}
.uds-table tr.uds-row--hot td{background:#fff8ef}
.uds-table .uds-btn--sm{padding:9px 16px;font-size:14px}
.uds-tag{display:inline-block;background:var(--uds-orange);color:#fff;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;padding:3px 8px;border-radius:999px;margin-left:8px;vertical-align:middle}
.uds-tag--blue{background:var(--uds-blue)}
.uds-tag--green{background:var(--uds-green)}
.uds-compare th:first-child,.uds-compare td:first-child{color:var(--uds-ink);font-weight:600}
.uds-compare td.uds-yes{color:#1d7a35;font-weight:700}
.uds-compare td.uds-no{color:#c0392b}
.uds-compare th.uds-us,.uds-compare td.uds-us{background:var(--uds-blue-soft)}
/* ---------- FAQ ---------- */
.uds-faq{max-width:860px;border:1px solid var(--uds-line);border-radius:var(--uds-radius-lg);background:#fff;overflow:hidden;margin:16px 0 8px}
.uds-faq details{border-top:1px solid var(--uds-line)}
.uds-faq details:first-child{border-top:0}
.uds-faq summary{cursor:pointer;list-style:none;font-size:16.5px;font-weight:700;color:var(--uds-ink);padding:16px 48px 16px 20px;position:relative}
.uds-faq summary::-webkit-details-marker{display:none}
.uds-faq summary:hover{background:var(--uds-soft)}
.uds-faq summary:after{content:"+";position:absolute;right:18px;top:11px;font-size:26px;font-weight:400;color:var(--uds-blue);transition:transform .2s ease}
.uds-faq details[open] summary:after{transform:rotate(45deg)}
.uds-faq details>div,.uds-faq details>p{padding:0 20px 16px;font-size:15.5px;color:var(--uds-muted)}
.uds-faq details>div p{margin:0 0 10px}
.uds-faq details>div p:last-child{margin:0}
/* ---------- final CTA card ---------- */
.uds-cta{background:linear-gradient(135deg,var(--uds-blue) 0%,#0a5c92 100%);color:#fff;border-radius:var(--uds-radius-lg);padding:38px 32px;text-align:center;margin:26px 0 18px}
.uds-cta h2{color:#fff;margin-bottom:8px}
.uds-cta p{color:rgba(255,255,255,.9);font-size:17px;max-width:640px;margin:0 auto 20px}
.uds-cta .uds-cta-row{justify-content:center;margin-bottom:0}
.uds-cta .uds-small{color:rgba(255,255,255,.8);margin-top:12px}
.uds-cta--light{background:var(--uds-blue-soft);color:var(--uds-ink);border:1px solid #cfe3f3}
.uds-cta--light h2{color:var(--uds-ink)}
.uds-cta--light p,.uds-cta--light .uds-small{color:var(--uds-muted)}
/* ---------- cards / generic ---------- */
.uds-card{background:#fff;border:1px solid var(--uds-line);border-radius:var(--uds-radius-lg);padding:24px;box-shadow:0 2px 8px rgba(15,40,70,.04)}
.uds-card--soft{background:var(--uds-soft);box-shadow:none}
.uds-card--c{text-align:center}
.uds-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:16px 0}
.uds-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:16px 0}
.uds-split{display:grid;grid-template-columns:1.2fr .8fr;gap:32px;align-items:start}
/* ---------- long-form prose (guides, policies) ---------- */
.uds-prose{max-width:800px;font-size:16.5px}
.uds-prose h2{font-size:26px;margin:34px 0 10px}
.uds-prose h3{font-size:19px;margin:26px 0 8px}
.uds-prose p,.uds-prose ul,.uds-prose ol{margin-bottom:16px}
.uds-prose blockquote{margin:16px 0;padding:14px 20px;border-left:4px solid var(--uds-blue);background:var(--uds-soft);border-radius:0 10px 10px 0;color:var(--uds-muted);font-style:normal}
.uds-prose img{border-radius:10px}
.uds-prose figure{margin:18px 0}
.uds-prose figcaption{font-size:14px;color:var(--uds-faint);text-align:center;margin-top:6px}
.uds-toc{background:var(--uds-soft);border:1px solid var(--uds-line);border-radius:var(--uds-radius);padding:16px 20px;margin:0 0 24px;font-size:15px}
.uds-toc strong{display:block;margin-bottom:6px;color:var(--uds-ink)}
.uds-toc ol{margin:0 0 0 20px}
.uds-toc li{margin:0 0 4px}
.uds-legal{max-width:800px;font-size:15.5px;color:var(--uds-muted)}
.uds-legal h2{font-size:22px;margin:30px 0 8px;color:var(--uds-ink)}
.uds-legal h3{font-size:17px;margin:20px 0 6px;color:var(--uds-ink)}
.uds-legal p{margin-bottom:12px}
/* ---------- tool cards (calculators) ---------- */
.uds-tool{background:#fff;border:1px solid var(--uds-line);border-radius:var(--uds-radius-lg);padding:26px;box-shadow:var(--uds-shadow);max-width:720px}
.uds-tool label{display:block;font-weight:700;color:var(--uds-ink);margin-bottom:8px;font-size:15px}
.uds-tool input[type=text],.uds-tool input[type=number],.uds-tool input[type=search],.uds-tool select{width:100%;height:52px;padding:0 16px;font:inherit;font-size:17px;color:var(--uds-ink);border:1.5px solid #cfd8e1;border-radius:10px;background:#fff;outline:none;margin:0;box-shadow:none}
.uds-tool input:focus{border-color:var(--uds-blue);box-shadow:0 0 0 4px rgba(15,124,192,.15)}
.uds-tool-row{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}
.uds-tool-row>div{flex:1 1 220px}
.uds-tool .uds-btn{height:52px;padding:0 24px;line-height:48px}
.uds-tool-result{margin-top:16px;padding:16px 18px;border-radius:10px;background:var(--uds-blue-soft);font-size:16px;color:var(--uds-ink);display:none}
.uds-tool-result.is-on{display:block}
.uds-tool-result strong{font-size:22px;color:var(--uds-blue)}
.uds-tool-result.is-bad{background:#fdecea;color:#8a2a22}
/* ---------- forms (WPForms + Woo + tool forms on DS pages) ---------- */
.uds-form,.upcs-ds .wpforms-container{max-width:720px;margin:0 auto}
.upcs-ds .wpforms-container .wpforms-field{padding:8px 0}
.upcs-ds .wpforms-container .wpforms-field-label{font-size:14.5px!important;font-weight:600!important;color:var(--uds-ink)!important;margin-bottom:6px}
.upcs-ds .wpforms-container input[type=text],.upcs-ds .wpforms-container input[type=email],.upcs-ds .wpforms-container input[type=tel],.upcs-ds .wpforms-container input[type=number],.upcs-ds .wpforms-container select,.upcs-ds .wpforms-container textarea{width:100%!important;max-width:100%!important;font:inherit!important;font-size:16px!important;padding:12px 14px!important;border:1.5px solid #cfd8e1!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important;color:var(--uds-ink)!important;height:auto!important}
.upcs-ds .wpforms-container textarea{min-height:130px!important}
.upcs-ds .wpforms-container input:focus,.upcs-ds .wpforms-container textarea:focus{border-color:var(--uds-blue)!important;box-shadow:0 0 0 3px rgba(15,124,192,.15)!important;outline:none!important}
.upcs-ds .wpforms-container .wpforms-submit,.upcs-ds .wpforms-container button[type=submit]{background:var(--uds-blue)!important;color:#fff!important;border:0!important;border-radius:var(--uds-radius-btn)!important;font:inherit!important;font-weight:700!important;font-size:16px!important;padding:14px 26px!important;cursor:pointer;box-shadow:none!important}
.upcs-ds .wpforms-container .wpforms-submit:hover{background:var(--uds-blue-dark)!important}
.upcs-ds .wpforms-container .wpforms-field-sublabel,.upcs-ds .wpforms-container .wpforms-field-description{font-size:13px;color:var(--uds-faint)}
.uds-form-card{background:var(--uds-soft);border:1px solid var(--uds-line);border-radius:var(--uds-radius-lg);padding:26px 28px 18px;max-width:760px;margin:0 auto}
/* ---------- mobile sticky CTA ---------- */
.uds-sticky{display:none}
/* ---------- responsive ---------- */
@media (max-width:1023px){
  .uds-hero{gap:28px}.uds h1{font-size:34px}
  .uds-tiles,.uds-stats{grid-template-columns:repeat(2,1fr)}
  .uds-tiles--3{grid-template-columns:repeat(2,1fr)}
  .uds-products{grid-template-columns:repeat(2,1fr)}
  .uds-steps,.uds-steps--4{grid-template-columns:1fr 1fr;gap:14px}
  .uds-grid-3{grid-template-columns:1fr 1fr}
  .uds-split{grid-template-columns:1fr}
}
@media (max-width:767px){
  .uds{font-size:15.5px}
  .uds-hero{grid-template-columns:1fr;gap:20px;padding:4px 0 22px}
  .uds-hero__img{order:-1}
  .uds h1{font-size:29px}.uds h2{font-size:25px}.uds-lead{font-size:16.5px}
  .uds-cta-row{flex-direction:column}
  .uds .uds-btn,.uds-btn{width:100%;padding:15px 18px}
  .uds-callout .uds-btn,.uds-table .uds-btn--sm,.uds-tool .uds-btn{width:auto}
  .uds-tiles,.uds-tiles--3,.uds-tiles--2,.uds-products,.uds-stats,.uds-steps,.uds-steps--4,.uds-grid-2,.uds-grid-3{grid-template-columns:1fr;gap:12px}
  .uds-tile{padding:16px}.uds-tile svg{width:30px;height:30px;margin-bottom:8px}
  .uds-stats strong{font-size:22px}
  .uds-section{padding:24px 0 8px}.uds-section--soft{padding:22px 16px 14px}
  .uds-cta{padding:28px 18px}
  .uds-table th,.uds-table td{padding:11px 12px;font-size:14.5px}
  .uds-table .uds-td-price{font-size:16px}
  .uds-compare{min-width:560px}
  .uds-table .uds-td-each,.uds-table:has(.uds-td-each) thead th:nth-child(3){display:none}
  .uds-faq summary{font-size:15.5px;padding:14px 42px 14px 16px}
  .uds-faq details>div,.uds-faq details>p{padding:0 16px 14px}
  .uds-form-card{padding:20px 16px 12px}
  .uds-tool{padding:18px}
  .uds-sticky{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:9990;background:#fff;border-top:1px solid var(--uds-line);box-shadow:0 -6px 20px rgba(0,0,0,.08);padding:10px 14px;gap:12px;align-items:center;justify-content:space-between;font-family:var(--uds-font)}
  .uds-sticky span{font-size:14px;color:var(--uds-muted);line-height:1.3}
  .uds-sticky span b{display:block;color:var(--uds-ink);font-size:15px}
  .uds-sticky a.uds-btn{width:auto;padding:12px 18px;font-size:15px;white-space:nowrap}
  body.upcs-ds-sticky{padding-bottom:70px}
}
/* ---------- theme integration on DS pages ---------- */
body.upcs-ds h1.entry-title{display:none}
body.upcs-ds #wrapper .elementor-element-populated{padding-left:0;padding-right:0}
body.upcs-ds .elementor-section.elementor-section-boxed>.elementor-container{max-width:1140px}
body.upcs-ds .post-entry,body.upcs-ds .entry-content{padding-top:0}
body.upcs-ds .upcs-calc{border-radius:var(--uds-radius-lg);border-color:var(--uds-line);box-shadow:var(--uds-shadow)}
/* rate-my-post widget: quieter */
body.upcs-ds .rmp-widgets-container{margin-top:26px;padding-top:12px;border-top:1px solid var(--uds-line)}
body.upcs-ds .rmp-widgets-container .rmp-heading--title{font-size:15px;font-weight:600;color:var(--uds-muted)}

/* ============================================================
   HEADER (all pages). The theme's JS switches the menu at 768px (responsives.break_point):
   above it the <ul> gets an inline display:flex, at or below it display:none + a #responsive_menu_button toggle.
   ============================================================ */
#header_section{position:sticky;top:0;z-index:9000;background:#fff;border-bottom:1px solid var(--uds-line);box-shadow:0 2px 10px rgba(15,40,70,.05)}
body.admin-bar #header_section{top:32px}
#header_section #header{background:#fff!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0!important;min-height:0!important}
#header_section .content-outer:before,#header_section .content-outer:after{display:none!important}
#header_section .responsive-header{position:relative;display:flex!important;align-items:center;justify-content:space-between;gap:16px;max-width:1140px!important;min-height:66px;margin:0 auto!important;padding:8px 20px!important;float:none!important;width:auto!important;text-align:left!important;box-sizing:border-box}
#header_section #site-branding{margin:0!important;padding:0!important;float:none!important;width:auto!important;text-align:left!important;display:flex;align-items:center;flex:0 0 auto;position:relative;z-index:2}
#header_section .site-description{display:none!important}
#header_section img.custom-logo{max-height:50px!important;width:auto!important;height:auto!important;display:block;margin:0!important;padding:0!important}
#header_section #main-nav{float:none!important;width:auto!important;margin:0!important;padding:0!important;background:none!important;border:0!important;text-align:left!important;display:flex;align-items:center;flex:1 1 auto;position:static}
#header_section #main-nav ul.menu,#header_section #main-nav ul.menu[style]{margin:0!important;padding:0!important;list-style:none;background:none!important;float:none!important;width:auto!important;font-family:var(--uds-font)}
#header_section #main-nav ul.menu>li{margin:0!important;padding:0!important;float:none!important;background:none!important;border:0!important;list-style:none}
#header_section #main-nav ul.menu>li>a{display:block;padding:9px 12px!important;white-space:nowrap;font-family:var(--uds-font);font-size:15px!important;font-weight:600!important;color:#334155!important;text-decoration:none!important;background:none!important;border:0!important;border-radius:8px;line-height:1.3!important;text-transform:none!important;letter-spacing:0!important;transition:background .15s,color .15s}
#header_section #main-nav ul.menu>li>a:hover,#header_section #main-nav ul.menu>li.current-menu-item>a,#header_section #main-nav ul.menu>li.current_page_item>a{color:var(--uds-blue)!important;background:var(--uds-blue-soft)!important}
#header_section #main-nav ul.menu>li.upcs-nav-cta>a{background:linear-gradient(135deg,var(--uds-orange-2) 0%,var(--uds-orange) 100%)!important;color:#fff!important;font-weight:700!important;padding:11px 18px!important;border-radius:9px;box-shadow:0 3px 12px rgba(255,133,0,.28)}
#header_section #main-nav ul.menu>li.upcs-nav-cta>a:hover{filter:brightness(1.06)}
#header_section #main-nav ul.menu>li.upcs-nav-cart>a{padding:8px 10px!important;display:flex;align-items:center;gap:6px}
#header_section #main-nav ul.menu>li.upcs-nav-cart svg{width:22px;height:22px;display:block}
#header_section #main-nav ul.menu>li.upcs-nav-cart .upcs-cart-count{min-width:18px;height:18px;border-radius:999px;background:var(--uds-blue);color:#fff;font-size:11px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;padding:0 5px}
#header_section #main-nav ul.menu>li.upcs-nav-cart .upcs-cart-count:empty{display:none}
#header_section #responsive_menu_button,#header_section .js .main-nav a#responsive_menu_button{display:none;font-size:26px;line-height:1;color:var(--uds-ink)!important;background:#fff;border:1px solid var(--uds-line);border-radius:8px;padding:5px 11px;cursor:pointer;text-decoration:none;margin:0;position:relative;z-index:2}
/* desktop and tablet (769px+): links centred in the bar, cart + CTA pinned right */
@media (min-width:769px){
  #header_section #main-nav ul.menu,#header_section #main-nav ul.menu[style*="flex"]{display:flex!important;flex-wrap:nowrap;align-items:center;justify-content:center;gap:2px;flex:1 1 auto;padding:0 230px 0 150px!important}
  #header_section #main-nav ul.menu>li.menu-item-home{display:none}
  #header_section #main-nav ul.menu>li.upcs-nav-cart{position:absolute;right:178px;top:50%;transform:translateY(-50%)}
  #header_section #main-nav ul.menu>li.upcs-nav-cta{position:absolute;right:20px;top:50%;transform:translateY(-50%)}
  #header_section #site-branding{position:absolute;left:20px;top:50%;transform:translateY(-50%)}
  #header_section #main-nav{width:100%!important}
}
@media (min-width:769px) and (max-width:1023px){
  #header_section img.custom-logo{max-height:42px!important}
  #header_section #main-nav ul.menu,#header_section #main-nav ul.menu[style*="flex"]{padding:0 215px 0 135px!important}
  #header_section #main-nav ul.menu>li>a{padding:8px 8px!important;font-size:14px!important}
  #header_section #main-nav ul.menu>li.upcs-nav-cta>a{padding:10px 14px!important;font-size:14px!important}
  #header_section #main-nav ul.menu>li.upcs-nav-cart{right:160px}
}
/* phone (768px and below): logo left, hamburger right, white dropdown panel */
@media (max-width:768px){
  #header_section .responsive-header{padding:8px 14px!important;min-height:58px}
  #header_section img.custom-logo{max-height:42px!important}
  #header_section #main-nav{flex:0 0 auto;justify-content:flex-end}
  #header_section #responsive_menu_button,#header_section .js .main-nav a#responsive_menu_button{display:inline-block}
  #header_section #main-nav ul.menu,#header_section #main-nav ul.menu[style]{display:none;position:absolute;left:0;right:0;top:100%;z-index:9100;background:#fff!important;border-top:1px solid var(--uds-line);border-bottom:1px solid var(--uds-line);box-shadow:0 12px 24px rgba(0,0,0,.12);flex-direction:column;align-items:stretch;padding:8px 10px 12px!important;gap:0;width:auto!important;margin:0!important;opacity:1!important;visibility:visible!important}
  #header_section #main-nav ul.menu[style*="flex"]{display:flex!important}
  #header_section #main-nav ul.menu>li{width:100%;opacity:1!important}
  #header_section #main-nav ul.menu>li>a{padding:13px 14px!important;font-size:16px!important;border-radius:8px;background:#fff!important;color:#1a1a1a!important;opacity:1!important;white-space:normal;text-align:left!important}
  #header_section #main-nav ul.menu>li.upcs-nav-cart>a:after{content:"Cart";font-weight:600}
  #header_section #main-nav ul.menu>li.upcs-nav-cart>a{gap:10px}
  #header_section #main-nav ul.menu>li>a:hover,#header_section #main-nav ul.menu>li.current-menu-item>a{background:var(--uds-blue-soft)!important;color:var(--uds-blue)!important}
  #header_section #main-nav ul.menu>li.upcs-nav-cta{margin:10px 0 2px!important;padding:0 4px!important}
  #header_section #main-nav ul.menu>li.upcs-nav-cta>a{text-align:center!important;padding:14px 18px!important;background:linear-gradient(135deg,var(--uds-orange-2) 0%,var(--uds-orange) 100%)!important;color:#fff!important}
  #header_section #main-nav ul.menu>li.upcs-nav-cart>a{justify-content:flex-start}
  #header_section{max-height:none!important}
}
/* the old trust bar (removed 2026-09-30) */
.upcs-trustbar{display:none}

/* ============================================================
   FOOTER (all pages)
   ============================================================ */
body #footer{background:var(--uds-navy)!important;background-image:none!important;color:#c9d6e2;font-family:var(--uds-font);border:0!important;margin-top:40px;padding:0!important;text-shadow:none!important}
#footer .upcs-footer{max-width:1140px;margin:0 auto;padding:48px 20px 30px;display:grid;grid-template-columns:1fr 1fr 1fr 1.1fr 1.7fr;gap:32px 36px}
#footer .upcs-footer h4{color:#fff;font-size:14px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;margin:0 0 16px}
#footer .upcs-footer ul{list-style:none;margin:0;padding:0}
#footer .upcs-footer li{margin:0 0 11px;padding:0;font-size:15px;line-height:1.45}
#footer .upcs-footer a{color:#c9d6e2!important;text-decoration:none!important}
#footer .upcs-footer a:hover{color:#fff!important;text-decoration:underline!important}
#footer .upcs-footer__brand img{max-height:44px;width:auto;background:#fff;padding:6px 10px;border-radius:8px;margin-bottom:12px}
#footer .upcs-footer__brand p{font-size:14px;line-height:1.55;margin:0 0 12px;color:#a9bacb}
#footer .upcs-footer__brand .uds-rating{color:#c9d6e2}
#footer .upcs-footer__brief .home_center_2{display:block;text-align:left}
#footer .upcs-footer__brief h2{color:#fff}
#footer .upcs-footer__bottom{border-top:1px solid rgba(255,255,255,.12)}
#footer .upcs-footer__bottom>div{max-width:1140px;margin:0 auto;padding:16px 20px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 20px;font-size:13.5px;color:#8fa3b7}
#footer .upcs-footer__bottom img{height:30px;width:auto;opacity:.9}
#footer .upcs-footer__bottom a{color:#c9d6e2!important;text-decoration:none!important}
#footer .footer-bar,#footer .footer-menu-container,#footer .social-icon,#footer .copyright{display:none!important}
@media (max-width:1100px){#footer .upcs-footer{grid-template-columns:1fr 1fr 1fr 1fr;gap:28px 24px}#footer .upcs-footer__brief{grid-column:1/-1;max-width:520px}}
@media (max-width:860px){#footer .upcs-footer{grid-template-columns:1fr 1fr 1fr 1fr;gap:26px 18px}#footer .upcs-footer__brand{grid-column:1/-1}#footer .upcs-footer__brief{grid-column:1/-1}}
@media (max-width:640px){#footer .upcs-footer{grid-template-columns:1fr 1fr;padding:30px 16px 16px;gap:22px 16px}#footer .upcs-footer__bottom>div{flex-direction:column;align-items:flex-start;padding:14px 16px}}

/* ============================================================
   WooCommerce + theme utility pages (cart, my-account, shop, affiliate area): match the design system
   ============================================================ */
body.page-template-full-width-page #content-full .post-entry h1.entry-title,body.woocommerce-cart h1.entry-title,body.woocommerce-account h1.entry-title{font-family:var(--uds-font);font-size:32px;font-weight:800;color:var(--uds-ink);letter-spacing:-.01em;border:0;padding:0;margin:6px 0 18px}
.woocommerce-cart .woocommerce,.woocommerce-account .woocommerce{font-family:var(--uds-font)}
.woocommerce .button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce-account .woocommerce-form-login .button,.woocommerce-account .woocommerce-form-register .button,.woocommerce .wc-block-components-button{font-family:var(--uds-font)!important;font-weight:700!important;border-radius:var(--uds-radius-btn)!important;background:var(--uds-blue)!important;color:#fff!important;border:0!important;text-shadow:none!important;box-shadow:none!important}
.woocommerce .button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{background:var(--uds-blue-dark)!important}
.woocommerce a.button.checkout-button,.woocommerce .wc-proceed-to-checkout a.checkout-button{background:linear-gradient(135deg,var(--uds-orange-2) 0%,var(--uds-orange) 100%)!important;font-size:17px!important}
.woocommerce-account .woocommerce-form-login,.woocommerce-account .woocommerce-form-register,.woocommerce-account .u-columns>div>h2{border:0}
.woocommerce-account .u-columns .col-1,.woocommerce-account .u-columns .col-2{background:#fff;border:1px solid var(--uds-line);border-radius:var(--uds-radius-lg);padding:26px 26px 18px;box-shadow:var(--uds-shadow)}
.woocommerce-account .u-columns h2{font-family:var(--uds-font);font-size:22px;font-weight:800;color:var(--uds-ink);border:0;text-align:left;margin:0 0 12px}
.woocommerce-account form.login,.woocommerce-account form.register{border:0!important;padding:0!important;margin:0!important;box-shadow:none!important}
.woocommerce form .form-row label{font-family:var(--uds-font);font-weight:600;color:var(--uds-ink);font-size:14.5px}
.woocommerce form .form-row .input-text,.woocommerce form .form-row input.input-text,.woocommerce-account .input-text{border:1.5px solid #cfd8e1;border-radius:10px;padding:11px 14px;font-size:16px;font-family:var(--uds-font);box-shadow:none}
.woocommerce form .form-row .input-text:focus{border-color:var(--uds-blue);box-shadow:0 0 0 3px rgba(15,124,192,.15);outline:none}
.woocommerce .cart-empty,.woocommerce-info,.woocommerce-message{font-family:var(--uds-font);border-top-color:var(--uds-blue);background:var(--uds-blue-soft);border-radius:10px;color:var(--uds-ink)}
.woocommerce-info::before,.woocommerce-message::before{color:var(--uds-blue)}
.woocommerce ul.products li.product{background:#fff;border:1px solid var(--uds-line);border-radius:var(--uds-radius-lg);padding:16px!important;box-shadow:var(--uds-shadow);text-align:center}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--uds-font);font-size:16px;font-weight:700;color:var(--uds-ink)}
.woocommerce ul.products li.product .price{font-family:var(--uds-font);color:var(--uds-ink);font-weight:800}
.woocommerce ul.products li.product .onsale{display:none}
.woocommerce ul.products li.product .button{margin-top:10px}
.woocommerce ul.products li.product .posted_in,.woocommerce ul.products li.product .product-category{display:none}
/* homepage retailer strip caption (featured-area.php) */
.banner-1-more{text-align:center;font-family:var(--uds-font);font-size:15px;color:var(--uds-faint);margin:10px 0 0}
/* checkout: distraction-free (no link columns, no sticky header) */
body.woocommerce-checkout #footer .upcs-footer{display:none}
body.woocommerce-checkout #header_section{position:static}
/* tool buttons + card icons (theme <button> !important overrides) */
.uds-tool button.uds-btn,.uds button.uds-btn{height:52px!important;padding:0 24px!important;line-height:48px!important;width:auto!important;text-transform:none!important;letter-spacing:0!important;text-shadow:none!important}
.uds-card>svg,.uds-notice>svg{width:38px;height:38px;color:var(--uds-blue);display:block;margin-bottom:10px}
/* theme scroll-to-top arrow: off on phones (it sat over the sticky Buy bar), moved up on tablets */
@media (max-width:768px){#scroll{display:none!important}}
@media (min-width:769px){body.upcs-ds-sticky #scroll{bottom:90px}}
/* shop grid on phones: 2 columns, no category label, full-width button */
@media (max-width:768px){
  .woocommerce ul.products[class*=columns-] li.product,.woocommerce-page ul.products[class*=columns-] li.product{width:48%!important;margin:0 4% 14px 0!important;padding:12px!important}
  .woocommerce ul.products[class*=columns-] li.product:nth-child(2n),.woocommerce-page ul.products[class*=columns-] li.product:nth-child(2n){margin-right:0!important}
  .woocommerce ul.products li.product .button{width:100%;padding:10px 6px!important;font-size:13px!important;white-space:normal}
  .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:14px}
}
