: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);
}
/* Repairs layout */
.rep-grid{
display:grid;
grid-template-columns: repeat(12, minmax(0, 1fr));
gap: 14px;
align-items: stretch;
}
@media (max-width: 980px){
.rep-grid{ grid-template-columns: 1fr; }
}
.rep-card{
grid-column: span 4;
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);
backdrop-filter: blur(7px);
}
@media (max-width: 980px){
.rep-card{ grid-column: auto; }
}
.rep-card h3{
margin: 0 0 8px;
font-size: 15px;
font-weight: 900;
color: rgba(255,255,255,.94);
}
.rep-card p{
margin: 0;
color: rgba(255,255,255,.78);
line-height: 1.6;
}
.rep-card ul{
margin: 10px 0 0;
padding-left: 18px;
color: rgba(255,255,255,.78);
line-height: 1.65;
}
.pill-grid{
display:grid;
grid-template-columns: repeat(12, minmax(0, 1fr));
gap: 12px;
margin-top: 12px;
}
@media (max-width: 980px){
.pill-grid{ grid-template-columns: 1fr; }
}
.pill{
grid-column: span 3;
border-radius: 16px;
padding: 12px;
border: 1px solid rgba(255,255,255,.12);
background: rgba(255,255,255,.04);
color: rgba(255,255,255,.80);
line-height: 1.55;
}
@media (max-width: 980px){
.pill{ grid-column: auto; }
}
.pill b{ color: rgba(255,255,255,.94); }
/* =========================
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; }
}
Repairs
Fast, professional repairs – Phones, Tablets, Computers & Consoles
We’ll confirm the fault, explain your options, and only start once you’ve approved the work.
Turnaround depends on the device and parts availability.
Clear quotes
We confirm what’s included before we start.
Quality parts
We’ll recommend the best option for your device & budget.
Local service
Drop-off and collection available in the RH area.
What we repair
Phones
- Screen replacements
- Batteries & charging ports
- Speakers, microphones & cameras
- Buttons & housing
- Rear Glass Replacement
Tablets
- Screen / touch issues
- Battery replacements
- Charging faults
- General performance issues
Laptops & PCs
- Slow running / clean-ups
- Hardware faults & upgrades
- Boot & power issues
- SSD / RAM upgrades
Common repairs we handle
Screen repairs
Cracks, dead touch, lines, black screen, or display damage.
Battery issues
Fast drain, random shutdowns, swollen batteries, or poor health.
Charging faults
Loose ports, no charge, intermittent charging, or cable detection issues.
Performance problems
Slow PCs/laptops, startup issues, errors, or general instability.
Console faults
HDMI issues, overheating, noisy fans, storage upgrades, and general faults.
Liquid exposure
We can inspect and advise on the best route forward depending on the damage.
How it works
1) Tell us the issue
Message us with the device model and fault. Photos help.
2) We confirm your options
We’ll explain repair routes, parts options and expected turnaround.
3) Approve before we start
No surprises – we only proceed once you’re happy.
(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();
});
})();