/* ==========================================================================
   RR Design System 2026 - sitewide presentation layer
   www.reed-relay.com | Applied to every non-homepage template.
   Content is never removed: the_content() / woocommerce_content() output is
   wrapped, not replaced. All new selectors are namespaced rrds- or scoped
   under body.rrds so the 2026 homepage (.rr2026) stays untouched.
   ========================================================================== */

:root{
  --rrds-navy:#0a1628;
  --rrds-navy-2:#0f2240;
  --rrds-navy-3:#152c50;
  --rrds-blue:#2580d4;
  --rrds-blue-lt:#3b82f6;
  --rrds-gold:#d4a853;
  --rrds-gold-lt:#e6c37c;
  --rrds-ink:#0d1b2e;
  --rrds-body:#42536a;
  --rrds-slate:#6b7c91;
  --rrds-line:#e2e9f1;
  --rrds-line-2:#eef3f8;
  --rrds-bg:#f6f9fc;
  --rrds-white:#ffffff;
  --rrds-radius:10px;
  --rrds-radius-lg:16px;
  --rrds-shadow:0 2px 8px rgba(10,22,40,.05), 0 14px 36px rgba(10,22,40,.06);
  --rrds-shadow-lg:0 18px 50px rgba(10,22,40,.13);
  --rrds-wrap:1200px;
  --rrds-font:-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
}

/* --------------------------------------------------------------------------
   1. Global chrome - shared by homepage and inner pages (header / footer)
   -------------------------------------------------------------------------- */
.topbar{
  background:#07111f !important;
  border-bottom:1px solid rgba(255,255,255,.07);
  font-size:12px;
  letter-spacing:.02em;
}
.topbar a{color:#a8bdd4 !important;text-decoration:none;transition:color .18s ease}
.topbar a:hover{color:var(--rrds-gold-lt) !important}
.site-header{
  background:rgba(8,18,33,.97) !important;
  border-bottom:1px solid rgba(255,255,255,.08);
  backdrop-filter:blur(12px);
  box-shadow:0 4px 24px rgba(4,12,24,.18);
}
.site-header .header-main{min-height:76px}
.site-header .nav a,
.site-header nav a{
  color:#d5e2f0 !important;
  font-size:13.5px;
  font-weight:500;
  letter-spacing:.015em;
  transition:color .18s ease;
}
.site-header .nav a:hover,
.site-header nav a:hover{color:var(--rrds-gold-lt) !important}
.site-footer{
  background:#07111f !important;
  color:#9fb1c6 !important;
  border-top:1px solid rgba(255,255,255,.07);
  padding-top:64px !important;
  font-size:14px;
  line-height:1.75;
}
.site-footer h3,
.site-footer h4{color:#fff !important;letter-spacing:.01em}
.site-footer a{color:#a8bdd4 !important;transition:color .18s ease}
.site-footer a:hover{color:var(--rrds-gold-lt) !important}
.site-footer .footer-grid{gap:44px !important}

/* --------------------------------------------------------------------------
   2. Base typography for inner pages
   -------------------------------------------------------------------------- */
body.rrds{
  font-family:var(--rrds-font);
  color:var(--rrds-body);
  background:var(--rrds-white);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body.rrds main{display:block;background:var(--rrds-white)}
/* No global heading colour: legacy pages contain dark sections that rely on
   light headings. Forcing ink here would destroy their contrast. */
body.rrds h1,body.rrds h2,body.rrds h3,body.rrds h4,body.rrds h5{
  font-weight:700;
  letter-spacing:-.018em;
  line-height:1.22;
}
body.rrds p{line-height:1.78}
body.rrds a{transition:color .18s ease, background-color .18s ease, border-color .18s ease}
body.rrds img{max-width:100%;height:auto}

/* --------------------------------------------------------------------------
   3. Hero band - the signature element on every inner page
   -------------------------------------------------------------------------- */
.rrds-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:
    radial-gradient(900px 420px at 82% 18%, rgba(37,128,212,.28), transparent 62%),
    radial-gradient(640px 340px at 12% 92%, rgba(21,44,80,.75), transparent 70%),
    linear-gradient(118deg,#07111f 0%,#0a1628 46%,#102a4c 100%);
  color:#fff;
  padding:0 0 62px;
  border-bottom:1px solid rgba(212,168,83,.22);
}
.rrds-hero::before{
  content:"";position:absolute;inset:0;z-index:-1;opacity:.4;
  background-image:
    linear-gradient(rgba(120,170,225,.07) 1px,transparent 1px),
    linear-gradient(90deg,rgba(120,170,225,.07) 1px,transparent 1px);
  background-size:52px 52px;
  mask-image:linear-gradient(90deg,transparent,#000 55%,#000 100%);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 55%,#000 100%);
}
.rrds-hero::after{
  content:"";position:absolute;right:-90px;top:-140px;width:520px;height:520px;z-index:-1;
  border:1px solid rgba(120,180,240,.13);border-radius:50%;
  box-shadow:0 0 0 70px rgba(120,180,240,.035),0 0 0 150px rgba(120,180,240,.025);
}
.rrds-wrap{max-width:var(--rrds-wrap);margin:0 auto;padding:0 32px}
.rrds-hero .rrds-wrap{position:relative;z-index:2}

.rrds-crumb{
  display:flex;flex-wrap:wrap;align-items:center;gap:9px;
  padding:26px 0 30px;
  font-size:12.5px;color:#8fa8c4;
}
.rrds-crumb a{color:#a9c1db;text-decoration:none}
.rrds-crumb a:hover{color:var(--rrds-gold-lt)}
.rrds-crumb .rrds-sep{color:#4d6787;font-size:11px}
.rrds-crumb .rrds-current{color:#e5eef8;font-weight:500}

.rrds-eyebrow{
  display:inline-flex;align-items:center;gap:9px;
  font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--rrds-gold-lt);
  margin-bottom:18px;
}
.rrds-eyebrow::before{
  content:"";width:26px;height:1px;background:var(--rrds-gold);display:inline-block;
}
.rrds-eyebrow.rrds-eyebrow-light{color:#7f9bbd}
.rrds-eyebrow.rrds-eyebrow-light::before{background:#4d6787}

.rrds-h1{
  color:#fff !important;
  font-size:clamp(32px,4.1vw,52px) !important;
  line-height:1.12 !important;
  letter-spacing:-.028em !important;
  max-width:920px;
  margin:0 0 18px !important;
  font-weight:750 !important;
  text-wrap:balance;
}
.rrds-h1 .rrds-accent{color:var(--rrds-gold-lt)}
.rrds-lede{
  color:#b9cce1 !important;
  font-size:clamp(15px,1.35vw,17.5px);
  line-height:1.72;
  max-width:760px;
  margin:0 0 28px !important;
}
.rrds-hero-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.rrds-meta{
  display:flex;flex-wrap:wrap;gap:22px;margin-top:30px;
  padding-top:22px;border-top:1px solid rgba(255,255,255,.11);
  font-size:12.5px;color:#8fa8c4;
}
.rrds-meta span{display:inline-flex;align-items:center;gap:7px}
.rrds-meta b{color:#dce8f5;font-weight:600}

/* Button system */
.rrds-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  min-height:46px;padding:0 22px;
  border-radius:6px;border:1px solid transparent;
  font-size:13.5px;font-weight:650;letter-spacing:.01em;
  text-decoration:none !important;white-space:nowrap;
  cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease,color .18s ease;
}
.rrds-btn:hover{transform:translateY(-2px)}
.rrds-btn-primary{
  background:linear-gradient(135deg,#e0b969,#c8963f) !important;
  color:#101d30 !important;
  box-shadow:0 8px 22px rgba(212,168,83,.22);
}
.rrds-btn-primary:hover{box-shadow:0 12px 28px rgba(212,168,83,.34);color:#101d30 !important}
.rrds-btn-ghost{
  background:rgba(255,255,255,.045) !important;
  color:#e3edf8 !important;
  border-color:rgba(190,215,240,.32) !important;
}
.rrds-btn-ghost:hover{background:rgba(255,255,255,.1) !important;border-color:rgba(212,168,83,.65) !important}
.rrds-btn-outline{
  background:transparent !important;color:var(--rrds-blue) !important;
  border-color:#bcd4ec !important;
}
.rrds-btn-outline:hover{background:#f0f6fd !important;border-color:var(--rrds-blue) !important}

/* Legacy .btn inside hero inherits the new look */
.rrds-hero .btn{
  min-height:44px;padding:11px 20px;border-radius:6px;
  font-size:13.5px;font-weight:650;text-decoration:none;
  display:inline-flex;align-items:center;margin:0 8px 8px 0;
}
.rrds-hero .btn-primary{
  background:linear-gradient(135deg,#e0b969,#c8963f) !important;color:#101d30 !important;border:0 !important;
}
.rrds-hero .btn-secondary,.rrds-hero .btn-ghost{
  background:rgba(255,255,255,.05) !important;color:#e3edf8 !important;
  border:1px solid rgba(190,215,240,.32) !important;
}

/* Decorative hero data rail */
.rrds-hero-rail{
  position:absolute;right:32px;bottom:62px;z-index:1;
  display:flex;gap:34px;opacity:.85;pointer-events:none;
}
.rrds-hero-rail div{text-align:right;border-right:1px solid rgba(255,255,255,.14);padding-right:22px}
.rrds-hero-rail div:last-child{border-right:0;padding-right:0}
.rrds-hero-rail strong{display:block;color:#fff;font-size:23px;font-weight:700;letter-spacing:-.02em;line-height:1.2}
.rrds-hero-rail span{display:block;color:#8fa8c4;font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;margin-top:5px}

/* --------------------------------------------------------------------------
   4. Content shell
   -------------------------------------------------------------------------- */
.rrds-main{position:relative;background:var(--rrds-white)}
.rrds-section{padding:64px 0;border-bottom:1px solid var(--rrds-line-2)}
.rrds-section:last-of-type{border-bottom:0}
.rrds-section-tinted{background:var(--rrds-bg)}
.rrds-content{max-width:860px;margin:0 auto}
.rrds-content-wide{max-width:var(--rrds-wrap);margin:0 auto}
.rrds-section-head{margin-bottom:34px;max-width:760px}
.rrds-section-head h2{
  font-size:clamp(25px,2.5vw,33px) !important;margin:0 0 12px !important;
}
.rrds-section-head p{color:var(--rrds-slate);font-size:15.5px;margin:0}
.rrds-kicker{
  display:block;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--rrds-blue);margin-bottom:12px;
}

/* Rich-text enhancements - only inside our content wrapper */
.rrds-content h2,.rrds-content-wide h2{
  font-size:clamp(23px,2.2vw,29px) !important;
  margin:44px 0 16px !important;
  padding-bottom:12px;
  border-bottom:1px solid var(--rrds-line);
}
.rrds-content h2:first-child,.rrds-content-wide h2:first-child{margin-top:0 !important}
.rrds-content h3,.rrds-content-wide h3{
  font-size:20px !important;margin:30px 0 12px !important;
}
.rrds-content h4,.rrds-content-wide h4{font-size:16.5px !important;margin:24px 0 10px !important}
.rrds-content p,.rrds-content-wide p{margin:0 0 18px;font-size:15.5px;line-height:1.82}
.rrds-content ul,.rrds-content ol,.rrds-content-wide ul,.rrds-content-wide ol{
  margin:0 0 22px;padding-left:22px;
}
.rrds-content li,.rrds-content-wide li{margin-bottom:9px;line-height:1.75;font-size:15.5px}
.rrds-content li::marker,.rrds-content-wide li::marker{color:var(--rrds-blue)}
.rrds-content a:not(.rrds-btn):not(.btn),.rrds-content-wide a:not(.rrds-btn):not(.btn){
  color:var(--rrds-blue);text-decoration:none;border-bottom:1px solid rgba(37,128,212,.3);
}
.rrds-content a:not(.rrds-btn):not(.btn):hover,.rrds-content-wide a:not(.rrds-btn):not(.btn):hover{
  color:#125fa8;border-color:#125fa8;
}
.rrds-content img,.rrds-content-wide img{
  border-radius:var(--rrds-radius);box-shadow:var(--rrds-shadow);
}
.rrds-content blockquote,.rrds-content-wide blockquote{
  margin:28px 0;padding:20px 26px;
  background:#f2f7fd;border-left:3px solid var(--rrds-blue);border-radius:0 8px 8px 0;
  color:var(--rrds-ink);font-size:16px;
}
.rrds-content hr,.rrds-content-wide hr{border:0;border-top:1px solid var(--rrds-line);margin:38px 0}
.rrds-content code,.rrds-content-wide code{
  background:#eef3f9;padding:2px 6px;border-radius:4px;font-size:13.5px;color:#1a4b7c;
}
.rrds-content pre,.rrds-content-wide pre{
  background:var(--rrds-navy);color:#d8e6f5;padding:20px;border-radius:8px;overflow:auto;
}

/* --------------------------------------------------------------------------
   5. Cards & grids
   -------------------------------------------------------------------------- */
.rrds-grid{display:grid;gap:22px;grid-template-columns:repeat(3,minmax(0,1fr))}
.rrds-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.rrds-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.rrds-card{
  position:relative;display:flex;flex-direction:column;
  background:#fff;border:1px solid var(--rrds-line);border-radius:var(--rrds-radius);
  padding:26px 24px;
  box-shadow:0 1px 2px rgba(10,22,40,.03);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
  overflow:hidden;
}
.rrds-card::before{
  content:"";position:absolute;left:0;top:0;height:3px;width:100%;
  background:linear-gradient(90deg,var(--rrds-blue),transparent);
  opacity:0;transition:opacity .2s ease;
}
.rrds-card:hover{transform:translateY(-4px);border-color:#c4daf0;box-shadow:var(--rrds-shadow)}
.rrds-card:hover::before{opacity:1}
.rrds-card h3{font-size:18px !important;margin:0 0 10px !important}
.rrds-card h3 a{color:var(--rrds-ink) !important;text-decoration:none;border:0 !important}
.rrds-card h3 a:hover{color:var(--rrds-blue) !important}
.rrds-card p{font-size:14px;color:var(--rrds-body);margin:0 0 16px;line-height:1.7}
.rrds-card .rrds-card-link{
  margin-top:auto;font-size:13px;font-weight:650;color:var(--rrds-blue);
  text-decoration:none;border:0 !important;
}
.rrds-card .rrds-card-link:hover{color:#125fa8}
.rrds-card-tag{
  display:inline-block;font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:var(--rrds-blue);background:#eaf3fc;border-radius:4px;padding:5px 9px;margin-bottom:14px;
}

/* Legacy card classes get the same finish without changing markup */
body.rrds main .card,
body.rrds main .rr-card,
body.rrds main .rr-model-card{
  background:#fff !important;
  border:1px solid var(--rrds-line) !important;
  border-radius:var(--rrds-radius) !important;
  box-shadow:0 1px 2px rgba(10,22,40,.03) !important;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
body.rrds main .card:hover,
body.rrds main .rr-card:hover,
body.rrds main .rr-model-card:hover{
  transform:translateY(-3px);border-color:#c4daf0 !important;box-shadow:var(--rrds-shadow) !important;
}
body.rrds main .card h3,body.rrds main .rr-card h3,body.rrds main .rr-model-card h3{
  color:var(--rrds-ink) !important;font-size:18px !important;
}
body.rrds main .grid{display:grid;gap:22px}
body.rrds main .grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
body.rrds main .grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}

/* --------------------------------------------------------------------------
   6. Tables - datasheets, model lists, specifications
   -------------------------------------------------------------------------- */
.rrds-content table,.rrds-content-wide table,
body.rrds main table{
  width:100%;border-collapse:separate;border-spacing:0;
  margin:24px 0 30px;
  background:#fff;border:1px solid var(--rrds-line);border-radius:var(--rrds-radius);
  overflow:hidden;font-size:14px;
  display:table;
}
body.rrds main thead th{
  background:linear-gradient(180deg,#0f2240,#0a1628) !important;
  color:#fff !important;font-size:12px;font-weight:650;
  letter-spacing:.05em;text-transform:uppercase;
  padding:14px 16px;text-align:left;border:0 !important;
}
body.rrds main tbody td{
  padding:13px 16px;border:0 !important;border-top:1px solid var(--rrds-line-2) !important;
  color:var(--rrds-body);vertical-align:top;
}
body.rrds main tbody tr:nth-child(even){background:#f8fbfe}
body.rrds main tbody tr:hover{background:#eef6ff}
body.rrds main tbody td:first-child{font-weight:600;color:var(--rrds-ink)}

/* --------------------------------------------------------------------------
   7. Forms - RFQ, cross reference, contact
   -------------------------------------------------------------------------- */
body.rrds main input[type="text"],
body.rrds main input[type="email"],
body.rrds main input[type="tel"],
body.rrds main input[type="number"],
body.rrds main input[type="search"],
body.rrds main input[type="url"],
body.rrds main select,
body.rrds main textarea{
  width:100%;max-width:100%;
  background:#fff !important;
  border:1px solid #cfdce9 !important;
  border-radius:6px !important;
  padding:12px 14px !important;
  font-size:14.5px !important;
  font-family:inherit;
  color:var(--rrds-ink) !important;
  transition:border-color .18s ease,box-shadow .18s ease;
}
body.rrds main input:focus,body.rrds main select:focus,body.rrds main textarea:focus{
  outline:none;border-color:var(--rrds-blue) !important;
  box-shadow:0 0 0 3px rgba(37,128,212,.13) !important;
}
body.rrds main label{font-size:13.5px;font-weight:600;color:var(--rrds-ink);display:block;margin-bottom:7px}
body.rrds main button[type="submit"],
body.rrds main input[type="submit"],
body.rrds main .button,
body.rrds main .btn-primary{
  background:linear-gradient(135deg,#e0b969,#c8963f) !important;
  color:#101d30 !important;border:0 !important;
  border-radius:6px !important;padding:12px 24px !important;
  font-size:14px !important;font-weight:650 !important;
  cursor:pointer;transition:transform .18s ease,box-shadow .18s ease;
}
body.rrds main button[type="submit"]:hover,
body.rrds main input[type="submit"]:hover,
body.rrds main .button:hover,
body.rrds main .btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(212,168,83,.3)}

/* --------------------------------------------------------------------------
   8. WooCommerce - shop, category archive, single product
   -------------------------------------------------------------------------- */
body.rrds main ul.products{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px !important;list-style:none;margin:0 0 32px;padding:0}
body.rrds main ul.products::before,body.rrds main ul.products::after{display:none !important}
body.rrds main ul.products li.product{
  width:auto !important;margin:0 !important;float:none !important;
  background:#fff;border:1px solid var(--rrds-line);border-radius:var(--rrds-radius);
  padding:0 0 20px;overflow:hidden;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
body.rrds main ul.products li.product:hover{transform:translateY(-4px);border-color:#c4daf0;box-shadow:var(--rrds-shadow)}
body.rrds main ul.products li.product a img,
body.rrds main ul.products li.product img{
  width:100%;aspect-ratio:4/3;object-fit:contain;background:#f7f9fc;
  padding:18px;margin:0 !important;border-radius:0;
}
body.rrds main ul.products li.product h2,
body.rrds main ul.products li.product .woocommerce-loop-product__title{
  font-size:15px !important;font-weight:650 !important;color:var(--rrds-ink) !important;
  padding:16px 18px 6px !important;margin:0 !important;line-height:1.4;
}
body.rrds main ul.products li.product .price{
  padding:0 18px !important;color:var(--rrds-ink) !important;font-size:14px !important;font-weight:600;
}
body.rrds main ul.products li.product .button{padding:0 18px !important;margin:12px 18px 0 !important}
body.rrds main .woocommerce-pagination,
body.rrds main nav.woocommerce-pagination{text-align:center;margin:34px 0}
body.rrds main .page-numbers{
  display:inline-flex;gap:6px;list-style:none;padding:0;margin:0;
}
body.rrds main .page-numbers li a,
body.rrds main .page-numbers li span{
  min-width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--rrds-line);border-radius:6px;
  color:var(--rrds-body);font-size:13.5px;text-decoration:none;background:#fff;
}
body.rrds main .page-numbers li span.current{
  background:var(--rrds-navy-2);color:#fff;border-color:var(--rrds-navy-2);
}
body.rrds main .page-numbers li a:hover{border-color:var(--rrds-blue);color:var(--rrds-blue)}

/* --------------------------------------------------------------------------
   9. Blog / archive
   -------------------------------------------------------------------------- */
.rrds-article{margin:0 auto}
.rrds-article .article-featured-img,
.rrds-article picture img{
  width:100%;max-height:460px;object-fit:cover;border-radius:var(--rrds-radius-lg);
  box-shadow:var(--rrds-shadow);margin:0 0 34px;
}
.rrds-post-meta{
  display:flex;flex-wrap:wrap;gap:18px;align-items:center;
  font-size:13px;color:var(--rrds-slate);
  padding-bottom:22px;margin-bottom:28px;border-bottom:1px solid var(--rrds-line);
}
.rrds-post-meta b{color:var(--rrds-ink);font-weight:600}
.rrds-related{
  margin-top:56px;padding:30px;border-radius:var(--rrds-radius-lg);
  background:var(--rrds-bg);border:1px solid var(--rrds-line);
}
.rrds-related h3{font-size:19px !important;margin:0 0 16px !important}
.rrds-related ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.rrds-related li a{
  color:var(--rrds-blue);text-decoration:none;font-size:14.5px;font-weight:550;
  display:flex;gap:10px;align-items:baseline;
}
.rrds-related li a::before{content:"→";color:var(--rrds-gold);font-weight:700}
.rrds-related li a:hover{color:#125fa8}

/* --------------------------------------------------------------------------
   10. Bottom CTA band
   -------------------------------------------------------------------------- */
.rrds-cta{
  position:relative;overflow:hidden;
  background:
    radial-gradient(700px 300px at 88% 30%,rgba(37,128,212,.24),transparent 65%),
    linear-gradient(115deg,#08131f,#0f2240 60%,#142f56);
  color:#fff;padding:58px 0;
  border-top:3px solid var(--rrds-gold);
}
.rrds-cta::after{
  content:"";position:absolute;right:-60px;bottom:-140px;width:380px;height:380px;
  border:1px solid rgba(150,195,240,.12);border-radius:50%;pointer-events:none;
}
.rrds-cta-inner{
  position:relative;z-index:2;
  display:flex;align-items:center;justify-content:space-between;gap:40px;flex-wrap:wrap;
}
.rrds-cta h2{color:#fff !important;font-size:clamp(23px,2.4vw,31px) !important;margin:0 0 10px !important}
.rrds-cta p{color:#b3c8de !important;margin:0 !important;font-size:15px;max-width:620px}
.rrds-cta-actions{display:flex;gap:12px;flex-wrap:wrap}

/* --------------------------------------------------------------------------
   11. Misc / utilities
   -------------------------------------------------------------------------- */
.rrds-note{
  background:#f0f6fd;border:1px solid #d3e4f6;border-left:3px solid var(--rrds-blue);
  border-radius:0 8px 8px 0;padding:18px 22px;margin:24px 0;font-size:14.5px;color:#254a73;
}
.rrds-badge{
  display:inline-block;padding:5px 10px;border-radius:4px;
  background:#eaf3fc;color:var(--rrds-blue);
  font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
}
body.rrds main .tag{
  background:#eaf3fc !important;color:var(--rrds-blue) !important;
  border-radius:4px !important;padding:4px 9px !important;font-size:11px !important;
  font-weight:700 !important;letter-spacing:.05em;
}
/* Legacy .page-hero is still emitted by the two custom datasheet templates.
   Restyle it instead of hiding it so those pages join the same visual system. */
body.rrds main .page-hero{
  position:relative;isolation:isolate;overflow:hidden;
  background:
    radial-gradient(760px 340px at 84% 20%,rgba(37,128,212,.26),transparent 62%),
    linear-gradient(118deg,#07111f 0%,#0a1628 48%,#102a4c 100%) !important;
  border-bottom:1px solid rgba(212,168,83,.22);
  padding:52px 0 56px !important;
}
body.rrds main .page-hero::before{
  content:"";position:absolute;inset:0;z-index:-1;opacity:.4;
  background-image:
    linear-gradient(rgba(120,170,225,.07) 1px,transparent 1px),
    linear-gradient(90deg,rgba(120,170,225,.07) 1px,transparent 1px);
  background-size:52px 52px;
}
body.rrds main .page-hero .wrap{max-width:var(--rrds-wrap);margin:0 auto;padding:0 32px}
body.rrds main .page-hero h1{
  color:#fff !important;
  font-size:clamp(31px,4vw,50px) !important;
  line-height:1.14 !important;letter-spacing:-.028em !important;
  font-weight:750 !important;margin:0 0 14px !important;
  border-bottom:0 !important;padding-bottom:0 !important;
}
body.rrds main .page-hero p{color:#b9cce1 !important;font-size:16px !important;line-height:1.7}
body.rrds main .page-hero a{color:var(--rrds-gold-lt) !important}
/* Legacy reveal class is kept as a no-op: content is never hidden by JS. */
body.rrds .rrds-fade,
body.rrds .rrds-fade.is-visible{opacity:1;transform:none}

/* --------------------------------------------------------------------------
   11b. Generic polish for pages that keep their own <section> markup
        (page.php echoes such content verbatim, so the styling must be global
         within <main> rather than tied to a wrapper class)
   -------------------------------------------------------------------------- */
/* Colour is deliberately NOT forced here. Several legacy pages render their
   own dark-blue sections with light headings; overriding colour would make
   those headings unreadable. Colour polish is scoped to .rrds-content above. */
body.rrds main h2:not(.rrds-h1):not(.woocommerce-loop-product__title){
  font-size:clamp(23px,2.2vw,29px) !important;
  line-height:1.28;letter-spacing:-.018em;font-weight:700;
  margin:40px 0 16px !important;
}
body.rrds main h3:not(.rrds-card h3){
  font-size:19.5px !important;
  line-height:1.35;letter-spacing:-.012em;font-weight:700;margin:28px 0 12px !important;
}
body.rrds main h4{font-size:16.5px !important;font-weight:650}
body.rrds main p{line-height:1.8;font-size:15.5px}
body.rrds main ul,body.rrds main ol{padding-left:22px}
body.rrds main li{line-height:1.75;font-size:15.5px;margin-bottom:8px}
body.rrds main li::marker{color:var(--rrds-blue)}
body.rrds main blockquote{
  background:#f2f7fd;border-left:3px solid var(--rrds-blue);border-radius:0 8px 8px 0;
  padding:18px 24px;margin:26px 0;color:var(--rrds-ink);
}
body.rrds main hr{border:0;border-top:1px solid var(--rrds-line);margin:36px 0}
body.rrds main code{background:#eef3f9;color:#1a4b7c;padding:2px 6px;border-radius:4px;font-size:13.5px}
body.rrds main pre{background:var(--rrds-navy);color:#d8e6f5;padding:20px;border-radius:8px;overflow:auto}
body.rrds main img.article-featured-img,
body.rrds main picture > img{border-radius:var(--rrds-radius-lg);box-shadow:var(--rrds-shadow)}

/* Protect the hero / CTA / cards from the generic rules above */
.rrds-hero h1,.rrds-cta h2{color:#fff !important;border-bottom:0 !important;padding-bottom:0 !important}
.rrds-cta p{color:#b3c8de !important}
.rrds-card h3,body.rrds main .card h3,body.rrds main .rr-card h3,
body.rrds main .rr-model-card h3{font-size:18px !important;margin:0 0 10px !important;border-bottom:0 !important;padding-bottom:0 !important}
.rrds-related h3{font-size:19px !important;margin:0 0 16px !important;border-bottom:0 !important;padding-bottom:0 !important}
body.rrds main ul.products li.product h2{
  font-size:15px !important;margin:0 !important;padding:16px 18px 6px !important;border-bottom:0 !important;
}
.rrds-crumb a,.rrds-crumb .rrds-current,.rrds-meta,.rrds-eyebrow{font-size:inherit}

/* --------------------------------------------------------------------------
   12. Responsive
   -------------------------------------------------------------------------- */
@media (max-width:1100px){
  .rrds-grid,.rrds-grid-4,body.rrds main .grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.rrds main ul.products{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .rrds-hero-rail{display:none}
}
@media (max-width:820px){
  .rrds-wrap,body.rrds main .wrap{padding-left:22px;padding-right:22px}
  .rrds-hero{padding-bottom:46px}
  .rrds-crumb{padding:20px 0 24px}
  .rrds-section{padding:46px 0}
  .rrds-cta{padding:44px 0}
  .rrds-cta-inner{flex-direction:column;align-items:flex-start;gap:26px}
  .site-footer .footer-grid{gap:28px !important}
}
@media (max-width:600px){
  .rrds-grid,.rrds-grid-2,.rrds-grid-4,
  body.rrds main .grid,body.rrds main .grid-3,body.rrds main .grid-2,
  body.rrds main ul.products{grid-template-columns:1fr !important}
  .rrds-h1{font-size:30px !important}
  .rrds-lede{font-size:15px !important}
  .rrds-hero-actions .rrds-btn{width:100%}
  .rrds-card{padding:22px 20px}
  .rrds-section-head h2{font-size:23px !important}
  body.rrds main table{display:block;overflow-x:auto;white-space:nowrap}
  .rrds-meta{gap:12px}
}
@media (prefers-reduced-motion:reduce){
  .rrds-fade,.rrds-card,body.rrds main .card,body.rrds main .rr-card,
  .rrds-btn,body.rrds main ul.products li.product{transition:none !important}
  .rrds-fade{opacity:1;transform:none}
}
