:root {
  --ink: #232725;
  --lime: var(--accent);
}
:root,
:root[data-colour="lime"] {
  --accent: #bdd900;
  --accent-surface: #bdd900;
  --accent-hover: #adc800;
  --on-accent: #232725;
  --accent-on-dark: #c7e332;
  --accent-ink: #536500;
  --accent-soft: #f7fbe6;
  --accent-border: #d3e38c;
  --logo-aspect: 644 / 110;
  --logo-width: 238.509317%;
  --logo-left: -128.881988%;
  --logo-top: -105.454545%;
}
html { scroll-padding-top: 24px; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible {
  outline-color: var(--accent-ink);
}
.sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
.brand { width:236px;flex-shrink:0;display:flex;flex-direction:column;align-items:flex-start;gap:0;letter-spacing:0;line-height:1; }
.logo-frame { position:relative;display:block;width:100%;aspect-ratio:var(--logo-aspect);overflow:hidden; }
.logo-frame img { display:block;position:absolute;max-width:none;width:var(--logo-width);height:auto;left:var(--logo-left);top:var(--logo-top); }
.brand-small { display:block;margin-top:8px;margin-left:0;font-size:.75rem!important;letter-spacing:2.4px!important;font-weight:550;line-height:1.2;color:#68706d; }
.header-inner { min-height:110px; }
.header-inner nav { margin-right:30px; }
.footer-brand { width:190px; }
.footer-brand .brand-small { margin-top:8px;letter-spacing:1.3px!important; }
.accent, .header-actions .button.dark, .newsletter .button.dark, .dialog .form-actions .button.dark {
  background:var(--accent-surface);color:var(--on-accent);
}
.accent:hover, .header-actions .button.dark:hover, .newsletter .button.dark:hover, .dialog .form-actions .button.dark:hover {
  background:var(--accent-hover);
}
.hero-main .button:focus-visible, .trade-section .button:focus-visible { outline-color:var(--accent-on-dark); }
.skip-link { background:var(--accent-surface);color:var(--on-accent); }
.line { background:var(--accent-on-dark); }
.hero h1 span, .trade-intro .eyebrow, .step-number { color:var(--accent-on-dark); }
.hero-trade { background:var(--accent-surface);color:var(--on-accent); }
.hero-trade p, .hero-trade .trade-footnote { color:inherit;opacity:.9; }
.hero-trade .button.dark { background:var(--ink);color:#fff; }
.hero-trade .button.dark:hover { background:#39423d; }
.service-strip svg { color:var(--accent-ink); }
.category.active:after { background:var(--accent); }
.product-tag { color:var(--accent-ink);background:var(--accent-soft);border-color:var(--accent-border); }
.product-image:hover .product-open { background:var(--accent-surface);color:var(--on-accent); }
.product-bottom .unlock-link { color:var(--accent-ink); }
.trade-price { color:var(--accent-ink); }
.dialog .eyebrow { color:var(--accent-ink); }
.dialog-tab-list button[aria-selected="true"] { border-bottom-color:var(--accent); }
.price-table .selected-row { background:var(--accent-soft); }
.check-label input { accent-color:var(--accent-ink); }
@media (max-width:1100px) {
  .brand { width:210px; }
  .header-inner nav { margin-right:0; }
}
@media (max-width:780px) {
  .brand { width:205px; }
  .header-inner { min-height:95px; }
  .footer-brand { width:180px; }
}
@media (max-width:560px) {
  .brand { width:min(205px,60vw); }
  .brand-small { font-size:.75rem!important;letter-spacing:1.5px!important; }
  .header-inner { min-height:92px; }
  .footer-brand { width:175px; }
}
