@font-face{font-family:StatSignText;src:url('/interface-fonts/source-sans-regular.woff') format('woff');font-weight:400;font-display:swap}@font-face{font-family:StatSignText;src:url('/interface-fonts/source-sans-semibold.woff') format('woff');font-weight:600;font-display:swap}@font-face{font-family:StatSignText;src:url('/interface-fonts/source-sans-bold.woff') format('woff');font-weight:700 900;font-display:swap}@font-face{font-family:StatSignDisplay;src:url('/interface-fonts/barlow-heading.woff') format('woff');font-weight:600 900;font-display:swap}
:root{--site-body:StatSignText,Arial,sans-serif;--site-heading:StatSignDisplay,Arial,sans-serif;--site-button-height:48px}body,button,input,textarea,select{font-family:var(--site-body)}body :is(h1,h2,h3,h4){font-family:var(--site-heading)!important;letter-spacing:-.025em!important}body :is(.signs-site,.fit-guide,.hazard-guide,.guide-site,.portal-shell){font-family:var(--site-body)}

body :is(.header,.site-header){position:sticky!important;top:0;z-index:45;background:var(--admin-background,#10212c)}
html{scroll-padding-top:150px}#productGrid,#catalogue{scroll-margin-top:150px}
body :is(button,.button,.admin-button,.studio-button){transition:filter .16s,transform .12s,box-shadow .16s}
body :is(button,.button,.admin-button,.studio-button,.cart-button,.resource-primary,.portal-action,.portal-upload,.signs-primary,.sg-button,.enquiry-submit):not(.font-option):not(.symbol-option):not(.text-row button):not(.product-body h3 button):not(.design-preset-grid button):not(.admin-list button):not(.owner-presets button){min-height:var(--site-button-height);box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;line-height:1.2;text-box:trim-both cap alphabetic}
@media(hover:hover){body :is(button,.button,.admin-button,.studio-button):not(:disabled):hover{filter:brightness(1.17);box-shadow:0 3px 9px #0003;transform:translateY(-1px)}}
body :is(button,.button,.admin-button,.studio-button):not(:disabled):active{transform:translateY(1px) scale(.98);box-shadow:inset 0 2px 5px #0003}
@media(prefers-reduced-motion:reduce){body :is(button,.button,.admin-button,.studio-button){transition:none;transform:none!important}}
.guide-hero-cover{display:grid;place-items:center}.guide-hero-cover img{width:min(100%,420px);max-height:450px;object-fit:contain}
.basket-opt-in{display:flex!important;align-items:center;gap:10px}.basket-opt-in input{width:auto!important;min-height:0!important}
#quote-basket-summary{border:1px solid #87a8bb;padding:12px}.admin-product-card{padding:20px;border:2px dashed #80caff;background:#183d50;color:#fff}
.admin-product-card a{display:block;margin-top:12px}.empty-results{grid-column:1/-1;padding:24px}

html[data-theme=dark] body{background:var(--admin-background,#10212c);color:var(--admin-text,#edf6fa)}body :is(.button.primary,.admin-button,.studio-button,#add-design,.enquiry-submit){background:var(--admin-accent,#0072ce)!important;color:#fff!important}

body :is(.portal-header,.guide-header,.fit-header,.hazard-header,.resource-header){position:sticky;top:0;z-index:45;background:var(--admin-background,#10212c);color:var(--admin-text,#edf6fa)}body :is(.portal-header,.guide-header,.fit-header,.hazard-header,.resource-header) a{color:var(--admin-text,#edf6fa)}

/* Let navigation determine header height, including owner-configured button sizes. */
body #top.header{height:auto;min-height:84px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;padding-top:16px;padding-bottom:16px}
body #top.header nav{min-width:0;width:auto;display:flex;flex-wrap:wrap;justify-content:flex-end;white-space:normal;overflow:visible;margin:0;padding:0;order:initial}
body #top.header .header-brands{min-width:0;max-width:100%}
body #top.header .cart-button{justify-self:end;order:initial}
@media(max-width:1100px){body #top.header{grid-template-columns:minmax(0,1fr) auto}body #top.header nav{grid-column:1/-1;grid-row:2;justify-content:flex-start}}
@media(max-width:480px){body #top.header{gap:12px}body #top.header .header-brands .logo img{width:140px;max-width:100%}body #top.header .header-brands .xyz-header-logo{width:65px}body #top.header .cart-button{padding:8px}}
@media(max-width:360px){body #top.header .header-brands .logo img{width:115px}body #top.header .header-brands .xyz-header-logo{width:48px}}
