:root{ –bit-header-h: 0px; }
/* =========================
WORDPRESS WIDTH FIXES
========================= */
.wp-site-blocks,
.wp-block-post-content,
.entry-content,
.is-layout-constrained,
.wp-container-core-group-is-layout-constrained,
.wp-block-group.is-layout-constrained{
max-width: none !important;
width: 100% !important;
}
.wp-site-blocks{ padding: 0 !important; }
main, .wp-block-post-content{ margin-top: 0 !important; }
/* =========================
GLOBAL SITE BACKGROUND
========================= */
html, body{ min-height: 100%; }
body{
margin: 0;
font-family: ‘Inter’, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif !important;
background:
radial-gradient(1200px 800px at 20% 10%, rgba(255,255,255,.04), rgba(0,0,0,0) 60%),
linear-gradient(180deg, #0b0f14, #06080b),
url(“https://brownersitservices.co.uk/wp-content/uploads/2026/08/a422b-background.png”);
background-repeat: no-repeat;
background-size: cover;
background-position: center top;
background-attachment: fixed;
color: rgba(255,255,255,.88);
}
@media (hover: none) and (pointer: coarse){
body{ background-attachment: scroll; background-position: center top; }
}
/* =========================
PAGE SHELL
========================= */
.bit-page{
min-height: 100vh;
display: flex;
flex-direction: column;
}
.bit-content{
flex: 1 0 auto;
width: min(100% – 32px, 1120px);
margin: 0 auto;
padding: 26px 0 34px;
padding-top: calc(var(–bit-header-h) + 18px);
}
.bit-content h1, .bit-content h2, .bit-content h3{ color: rgba(255,255,255,.92); }
.bit-content p{ color: rgba(255,255,255,.78); line-height: 1.6; }
/* =========================
HEADER (floating overlay)
========================= */
.bit-header-wrap{
position: fixed;
top: 0; left: 0; right: 0;
z-index: 99999;
transform: translateY(-110%);
opacity: 0;
pointer-events: none;
transition:
transform 0.55s cubic-bezier(.22,.61,.36,1),
opacity 0.55s cubic-bezier(.22,.61,.36,1);
will-change: transform, opacity;
}
.bit-header-wrap.is-visible{
transform: translateY(0);
opacity: 1;
pointer-events: auto;
}
.bit-header{
position: relative !important;
border-radius: 0 0 22px 22px !important;
overflow: hidden !important;
box-shadow: 0 18px 45px rgba(0,0,0,.45) !important;
margin: 0 !important;
}
.bit-header::before{
content:”” !important;
position:absolute !important;
inset:0 !important;
z-index:0 !important;
background: url(“https://brownersitservices.co.uk/wp-content/uploads/2026/08/a422b-background.png”) center/cover no-repeat !important;
filter: contrast(1.7) brightness(1.15) saturate(1.15) !important;
}
.bit-header::after{
content:”” !important;
position:absolute !important;
inset:0 !important;
z-index:1 !important;
background:
radial-gradient(1100px 700px at 20% 15%, rgba(255,255,255,.06), rgba(255,255,255,0) 60%),
linear-gradient(180deg, rgba(0,0,0,.22), rgba(0,0,0,.55)) !important;
}
.bit-header-inner{
position: relative !important;
z-index: 2 !important;
max-width: 1120px;
margin: 0 auto;
padding: 18px 22px;
display: flex;
align-items: center;
gap: 16px;
}
.bit-header-logo{
height: 70px;
width: auto;
flex-shrink: 0;
display:block;
}
/* Desktop pill nav */
.bit-header-nav{
margin-left: auto;
display: flex;
flex-wrap: wrap;
gap: 12px;
}
.bit-header-nav a{
color: rgba(255,255,255,.94) !important;
padding: 10px 14px;
border-radius: 999px;
font-size: 13px;
font-weight: 600;
background: rgba(0,0,0,.30);
border: 1px solid rgba(255,255,255,.18);
text-decoration: none !important;
transition: all .15s ease;
display:inline-block;
white-space: nowrap;
}
.bit-header-nav a:hover{
background: linear-gradient(135deg, #19f3d1, #1cc8ff) !important;
color: #0b1220 !important;
border-color: rgba(25,243,209,.95) !important;
box-shadow:
0 0 0 1px rgba(25,243,209,.6),
0 8px 20px rgba(25,243,209,.35);
transform: translateY(-1px);
}
/* Mobile hamburger */
.bit-burger{
margin-left: auto;
display: none;
align-items: center;
justify-content: center;
width: 44px;
height: 44px;
border-radius: 999px;
background: rgba(0,0,0,.30);
border: 1px solid rgba(255,255,255,.18);
cursor: pointer;
transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
color: rgba(255,255,255,.94);
}
.bit-burger:hover{ box-shadow: 0 8px 20px rgba(25,243,209,.20); transform: translateY(-1px); }
.bit-burger:focus-visible{ outline: 3px solid rgba(25,243,209,.55); outline-offset: 2px; }
.bit-burger svg{ width: 20px; height: 20px; display:block; }
/* Mobile dropdown panel */
.bit-mobile-menu{
display: none;
position: relative;
z-index: 2;
padding: 0 22px 18px;
}
.bit-mobile-panel{
background: rgba(0,0,0,.34);
border: 1px solid rgba(255,255,255,.14);
border-radius: 18px;
overflow: hidden;
transform: translateY(-8px);
opacity: 0;
max-height: 0;
transition: max-height .35s cubic-bezier(.22,.61,.36,1), opacity .22s ease, transform .22s ease;
}
.bit-header-wrap.menu-open .bit-mobile-panel{
transform: translateY(0);
opacity: 1;
max-height: 520px;
}
.bit-mobile-panel a{
display: block;
padding: 14px 14px;
color: rgba(255,255,255,.94) !important;
text-decoration: none !important;
border-top: 1px solid rgba(255,255,255,.10);
font-weight: 650;
font-size: 14px;
}
.bit-mobile-panel a:first-child{ border-top: none; }
.bit-mobile-panel a:hover{
background: linear-gradient(135deg, rgba(25,243,209,.22), rgba(28,200,255,.18)) !important;
}
@media (max-width: 900px){
.bit-header-inner{ padding: 14px 16px; }
.bit-header-logo{ height: 56px; }
.bit-header-nav{ display: none; }
.bit-burger{ display: inline-flex; }
.bit-mobile-menu{ display: block; padding: 0 16px 16px; }
}
/* Invisible top hover trigger */
.bit-top-reveal{
position: fixed;
top: 0; left: 0; right: 0;
height: 14px;
z-index: 100000;
background: transparent;
}
/* =========================
CONTENT STYLES
========================= */
.bit-subpage{ display: grid; gap: 14px; }
.bit-panel{
background: rgba(0,0,0,.22);
border: 1px solid rgba(255,255,255,.14);
border-radius: 20px;
padding: 18px;
box-shadow: 0 22px 55px rgba(0,0,0,.22);
backdrop-filter: blur(6px);
}
.bit-hero{
position: relative;
overflow: hidden;
border: 1px solid rgba(255,255,255,.18);
}
.bit-hero::before{
content:””;
position:absolute;
inset:0;
background:
radial-gradient(900px 520px at 15% 10%, rgba(25,243,209,.18), rgba(0,0,0,0) 60%),
radial-gradient(700px 420px at 85% 0%, rgba(28,200,255,.12), rgba(0,0,0,0) 55%);
pointer-events:none;
}
.bit-hero > *{ position: relative; }
.bit-kicker{
display:inline-flex;
align-items:center;
gap: 10px;
padding: 7px 11px;
border-radius: 999px;
border: 1px solid rgba(255,255,255,.18);
background: rgba(0,0,0,.18);
color: rgba(255,255,255,.90);
font-weight: 650;
font-size: 12.5px;
width: fit-content;
}
.bit-dot{
width: 8px; height: 8px;
border-radius: 999px;
background: linear-gradient(135deg, #19f3d1, #1cc8ff);
box-shadow: 0 0 0 3px rgba(25,243,209,.16);
}
.bit-hero h1{
margin: 12px 0 8px;
font-size: clamp(26px, 3.2vw, 40px);
line-height: 1.08;
letter-spacing: -0.02em;
color: rgba(255,255,255,.96);
}
.bit-cta-row{
display:flex;
gap: 10px;
flex-wrap: wrap;
margin-top: 12px;
}
.bit-btn{
display:inline-flex;
align-items:center;
justify-content:center;
padding: 12px 14px;
border-radius: 999px;
font-weight: 800;
font-size: 13.5px;
text-decoration: none !important;
border: 1px solid rgba(255,255,255,.20);
background: rgba(255,255,255,.06);
color: rgba(255,255,255,.96) !important;
transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
white-space: nowrap;
}
.bit-btn:hover{
background: linear-gradient(135deg, #19f3d1, #1cc8ff) !important;
color: #071018 !important;
border-color: rgba(25,243,209,.95) !important;
box-shadow: 0 0 0 1px rgba(25,243,209,.55), 0 14px 30px rgba(25,243,209,.18);
transform: translateY(-1px);
}
/* Sales layout */
.sales-grid{
display:grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 14px;
align-items: stretch;
}
@media (max-width: 980px){
.sales-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px){
.sales-grid{ grid-template-columns: 1fr; }
}
.sales-card{
border-radius: 18px;
padding: 16px;
border: 1px solid rgba(255,255,255,.14);
background: rgba(0,0,0,.18);
box-shadow: 0 18px 45px rgba(0,0,0,.18);
}
.sales-card h3{
margin: 0 0 8px;
font-size: 15px;
font-weight: 900;
color: rgba(255,255,255,.94);
}
.sales-card p{
margin: 0 0 10px;
color: rgba(255,255,255,.76);
}
.sales-card ul{
margin: 0;
padding-left: 18px;
color: rgba(255,255,255,.78);
line-height: 1.65;
}
.sales-steps{
margin: 0;
padding-left: 18px;
color: rgba(255,255,255,.78);
line-height: 1.7;
}
.sales-note{
margin: 10px 0 0;
color: rgba(255,255,255,.72);
font-size: 13.5px;
line-height: 1.6;
}
/* =========================
FULL-WIDTH CUSTOM PC BUILDER TILE
========================= */
.sales-wide{ grid-column: 1 / -1; }
.pc-builder-tile{
position: relative;
overflow: hidden;
border: 1px solid rgba(255,255,255,.18);
}
.pc-builder-tile::before{
content:””;
position:absolute;
inset:0;
background:
radial-gradient(1100px 650px at 15% 15%, rgba(25,243,209,.22), rgba(0,0,0,0) 60%),
radial-gradient(900px 520px at 85% 10%, rgba(28,200,255,.16), rgba(0,0,0,0) 55%);
pointer-events:none;
}
.pc-builder-inner{
position: relative;
display: grid;
grid-template-columns: 1.2fr .8fr;
gap: 16px;
align-items: start;
}
@media (max-width: 980px){
.pc-builder-inner{ grid-template-columns: 1fr; }
}
.pc-builder-title{
margin: 10px 0 8px;
font-size: clamp(20px, 2.2vw, 28px);
font-weight: 900;
letter-spacing: -0.02em;
color: rgba(255,255,255,.96);
}
.pc-builder-steps{
margin: 0;
padding-left: 18px;
color: rgba(255,255,255,.80);
line-height: 1.7;
}
.pc-builder-steps li{ margin: 6px 0; }
.pc-builder-badge{
display:inline-flex;
align-items:center;
gap: 10px;
padding: 8px 12px;
border-radius: 999px;
border: 1px solid rgba(255,255,255,.16);
background: rgba(0,0,0,.18);
color: rgba(255,255,255,.90);
font-weight: 750;
font-size: 12.5px;
width: fit-content;
}
.pc-builder-note{
margin: 10px 0 0;
color: rgba(255,255,255,.72);
font-size: 13.5px;
line-height: 1.6;
}
/* =========================
FOOTER
========================= */
.bit-footer{
–muted: rgba(255,255,255,.70);
position: relative !important;
border-radius: 22px 22px 0 0 !important;
overflow: hidden !important;
box-shadow: 0 18px 45px rgba(0,0,0,.35) !important;
flex-shrink: 0;
}
.bit-footer::before{
content:”” !important;
position:absolute !important;
inset:0 !important;
z-index:0 !important;
background: url(“https://brownersitservices.co.uk/wp-content/uploads/2026/08/a422b-background.png”) center/cover no-repeat !important;
filter: contrast(1.55) brightness(1.05) saturate(1.1) !important;
}
.bit-footer::after{
content:”” !important;
position:absolute !important;
inset:0 !important;
z-index:1 !important;
background:
radial-gradient(1200px 700px at 15% 10%, rgba(255,255,255,.06), rgba(255,255,255,0) 60%),
linear-gradient(180deg, rgba(0,0,0,.55), rgba(0,0,0,.78)) !important;
}
.bit-footer-inner{
position: relative !important;
z-index: 2 !important;
max-width: 1120px;
margin: 0 auto;
padding: 34px 22px 18px;
display: grid;
grid-template-columns: 1.2fr .9fr .9fr;
gap: 18px;
}
.bit-footer h3{
margin: 0 0 10px;
font-size: 13px;
letter-spacing: .08em;
text-transform: uppercase;
color: rgba(255,255,255,.82);
}
.bit-footer p, .bit-footer li{
margin: 0;
color: rgba(255,255,255,.70);
font-size: 13.5px;
line-height: 1.55;
}
.bit-footer .panel{
background: rgba(0,0,0,.28);
border: 1px solid rgba(255,255,255,.14);
border-radius: 18px;
padding: 16px 16px 14px;
}
.bit-footer .brand-row{
display:flex;
align-items:center;
gap: 12px;
margin-bottom: 6px;
}
.bit-footer .brand-logo{ height: 44px; width: auto; display:block; }
.bit-footer a{ color: rgba(255,255,255,.90); text-decoration: none !important; }
.bit-footer ul{
list-style: none;
padding: 0;
margin: 0;
display:grid;
gap: 8px;
}
.bit-footer .link{
display:inline-flex;
align-items:center;
gap: 10px;
padding: 10px 12px;
border-radius: 999px;
border: 1px solid rgba(255,255,255,.14);
background: rgba(0,0,0,.22);
transition: all .15s ease;
}
.bit-footer .link:hover{
background: linear-gradient(135deg, #19f3d1, #1cc8ff) !important;
color: #0b1220 !important;
border-color: rgba(25,243,209,.95) !important;
box-shadow:
0 0 0 1px rgba(25,243,209,.55),
0 8px 20px rgba(25,243,209,.30);
transform: translateY(-1px);
}
.bit-footer .small{ color: rgba(255,255,255,.62); font-size: 12.5px; }
.bit-footer-bottom{
position: relative;
z-index: 2;
max-width: 1120px;
margin: 0 auto;
padding: 0 22px 18px;
display:flex;
justify-content: space-between;
gap: 12px;
flex-wrap: wrap;
border-top: 1px solid rgba(255,255,255,.10);
}
.bit-footer-bottom .small{ padding-top: 12px; }
@media (max-width: 980px){
.bit-footer-inner{ grid-template-columns: 1fr; padding: 26px 16px 12px; }
.bit-footer-bottom{ padding: 0 16px 16px; }
}
Sales
IT hardware & software, supplied properly
We supply reliable IT equipment for home users and small businesses – from a single laptop to a full set-up. We quote based on what you actually need, so everything is compatible, correctly specified and good value.
What we can supply
New, Used or Refurbished options available. If you’re unsure, just tell us what you want to do with it and your rough budget – we’ll recommend the best-fit options.
PCs & Laptops
Everyday, business or performance-focused builds.
- Business-grade laptops & desktops
- Custom PCs (office / creative / gaming)
- New & refurbished options
- Setup & optimisation available
Tablets & Mobile Devices
Supply and set-up, including transfers where needed.
- iPads & Android tablets
- New, Used & Refurbished phones
- Accessories
- Data transfer available
Networking & Home Office
Better Wi-Fi, tidy desks, and reliable working.
- Routers / mesh Wi-Fi
- Switches & cabling
- Docks, monitors & peripherals
- Printers
Custom PC Builder
Build your own custom PC & get a quote
Want to spec your own PC exactly how you like it? Use our builder to choose parts, see pricing,
and generate a quote for us to review.
How to create your quote
- Spec out your build in the builder (CPU, RAM, storage, graphics, etc.).
- Click Create Quote.
- Enter your full name as the Quote Ref, then phone number and email as the Contact Details.
- It will then create your quote, save it as a PDF or Screenshot.
- Please then email it to us for review.
Once reviewed, we’ll reply with any recommendations and confirm final pricing and next steps.
Upgrades & Components
Cost-effective performance and storage improvements.
- SSDs, RAM & upgrades
- Replacement chargers & batteries
- Keyboards, mice, webcams
- External storage
Software & Licensing
Legit licences, installed and configured correctly.
- Microsoft 365
- Windows licences
- Antivirus & security
- Backup / cloud tools
Business Supply
Quoting for teams, not just single devices.
- Office refreshes
- Standardised device options
- Deployment & Onboarding
- Ongoing support options
How ordering works
We don’t run a generic online shop. We quote based on your needs, confirm compatibility, then order and prepare everything properly.
- Message us what you need (or what you’re trying to achieve) + your budget.
- We recommend a few options with pricing & availability.
- Once approved, we order and can configure/setup before collection or delivery.
Want us to set everything up? Tell us when you enquire – we can include setup, transfers, software and security.
(function () {
// Footer year
var yearEl = document.getElementById(‘bitFooterYear’);
if (yearEl) yearEl.textContent = new Date().getFullYear();
const wrap = document.getElementById(‘bitHeaderWrap’);
const header = document.getElementById(‘bitHeader’);
const revealZone = document.querySelector(‘.bit-top-reveal’);
if (!wrap || !header) return;
const showHeader = () => wrap.classList.add(‘is-visible’);
const hideHeader = () => {
if (wrap.classList.contains(‘menu-open’)) return;
wrap.classList.remove(‘is-visible’);
};
const setHeaderHeight = () => {
const h = header.getBoundingClientRect().height || 0;
document.documentElement.style.setProperty(‘–bit-header-h’, h + ‘px’);
};
const settleMeasure = () => {
setHeaderHeight();
requestAnimationFrame(setHeaderHeight);
setTimeout(setHeaderHeight, 120);
setTimeout(setHeaderHeight, 600);
};
settleMeasure();
window.addEventListener(‘load’, settleMeasure);
window.addEventListener(‘resize’, settleMeasure);
const SHOW_AT_TOP_Y = 10;
const START_RULES_Y = 80;
if ((window.scrollY || 0) {
const y = window.scrollY || 0;
if (y <= SHOW_AT_TOP_Y) { showHeader(); lastY = y; return; }
if (y < START_RULES_Y) { showHeader(); lastY = y; return; }
const goingUp = y lastY;
if (goingDown) hideHeader();
if (goingUp) showHeader();
lastY = y;
};
window.addEventListener(‘scroll’, () => {
if (!ticking) {
requestAnimationFrame(() => {
onScroll();
ticking = false;
});
ticking = true;
}
}, { passive: true });
if (revealZone) revealZone.addEventListener(‘mouseenter’, showHeader);
header.addEventListener(‘mouseenter’, showHeader);
const burger = document.getElementById(‘bitBurger’);
const mobilePanel = document.getElementById(‘bitMobilePanel’);
const closeMenu = () => {
wrap.classList.remove(‘menu-open’);
if (burger) {
burger.setAttribute(‘aria-expanded’, ‘false’);
burger.setAttribute(‘aria-label’, ‘Open menu’);
}
setTimeout(setHeaderHeight, 50);
setTimeout(setHeaderHeight, 250);
};
const openMenu = () => {
wrap.classList.add(‘menu-open’);
showHeader();
if (burger) {
burger.setAttribute(‘aria-expanded’, ‘true’);
burger.setAttribute(‘aria-label’, ‘Close menu’);
}
setTimeout(setHeaderHeight, 50);
setTimeout(setHeaderHeight, 250);
};
const toggleMenu = () => {
const isOpen = wrap.classList.contains(‘menu-open’);
if (isOpen) closeMenu(); else openMenu();
};
if (burger) {
burger.addEventListener(‘click’, (e) => {
e.stopPropagation();
showHeader();
toggleMenu();
});
}
document.addEventListener(‘click’, (e) => {
if (!wrap.classList.contains(‘menu-open’)) return;
if (wrap.contains(e.target)) return;
closeMenu();
});
if (mobilePanel) {
mobilePanel.addEventListener(‘click’, (e) => {
const a = e.target.closest(‘a’);
if (a) closeMenu();
});
}
document.addEventListener(‘keydown’, (e) => {
if (e.key === ‘Escape’) closeMenu();
});
window.addEventListener(‘resize’, () => {
if (window.innerWidth > 900) closeMenu();
});
})();