:root{--navy:#0b2e59;--deep:#061c37;--gold:#c79a2b;--pale:#f5f7fa;--ink:#1a2b3c;--mute:#637182;--line:#dce3eb;--sans:Manrope,Arial,sans-serif;--serif:'Playfair Display',Georgia,serif}*{box-sizing:border-box}body{font-family:var(--sans);color:var(--ink);line-height:1.7}.skip-link{position:absolute;top:-99px;left:1rem;background:white;color:var(--navy);z-index:99;padding:.6rem 1rem}.skip-link:focus{top:1rem}.topbar{background:var(--deep);color:#d7e0eb;font-size:.72rem;padding:.55rem 0}.topbar a{color:#d7e0eb;text-decoration:none;margin-left:1.2rem}.topbar i{color:var(--gold);margin-right:.3rem}.site-header{background:#fff;border-bottom:1px solid #e7ebef;position:sticky;top:0;z-index:20}.navbar{padding:.75rem 0}.brand{display:flex;align-items:center;gap:.65rem;text-decoration:none;color:var(--navy);line-height:1}.brand-mark{display:grid;place-items:center;width:42px;height:42px;background:var(--navy);color:var(--gold);font-size:.8rem;font-weight:800;border:3px solid var(--gold);border-radius:50%}.brand strong{font-weight:800;font-size:1rem;letter-spacing:.08em;display:block}.brand small{display:block;font-size:.56rem;letter-spacing:.25em;margin-top:.25rem}.brand em{display:block;font-style:normal;font-size:.47rem;font-weight:800;color:var(--gold);letter-spacing:.18em;margin-top:.25rem}.nav-link{color:var(--navy)!important;font-size:.72rem;font-weight:800;padding:.6rem .55rem!important}.nav-link:hover,.nav-link.active{color:var(--gold)!important}.navbar-toggler{color:var(--navy);border:0}.btn{border-radius:0;font-size:.76rem;font-weight:800;padding:.75rem 1.05rem}.btn-gold{background:var(--gold);border:1px solid var(--gold);color:var(--deep)}.btn-gold:hover{background:#dfae34}.btn-navy{background:var(--navy);color:#fff;border:1px solid var(--navy)}.btn-navy:hover{background:var(--deep);color:#fff}.btn-outline-navy{border:1px solid var(--navy);color:var(--navy)}.btn-outline-navy:hover{background:var(--navy);color:#fff}.btn-whatsapp{background:#25d366;color:#fff;border:1px solid #25d366}.btn-whatsapp:hover{background:#18af51;color:#fff}.hero{position:relative;color:#fff;background:linear-gradient(110deg,rgba(6,28,55,.98),rgba(11,46,89,.91)),url('https://images.unsplash.com/photo-1516937941344-00b4e0337589?auto=format&fit=crop&w=1800&q=85') center/cover;overflow:hidden}.hero-pattern{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:48px 48px}.min-vh-hero{min-height:620px}.kicker{display:flex;align-items:center;gap:.7rem;font-size:.67rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--navy);margin-bottom:1rem}.kicker span{display:block;width:30px;height:2px;background:currentColor}.text-gold{color:var(--gold)!important}.hero h1{font-family:var(--serif);font-size:clamp(3rem,5.5vw,5.4rem);line-height:1.06;letter-spacing:-.05em}.hero h1 em,h2 em{font-style:normal;color:var(--gold)}.hero-lead{font-size:1.03rem;color:#d4dfeb;max-width:760px;margin:1.6rem 0 2rem}.trustbar{background:var(--gold);color:var(--deep);padding:1.2rem 0}.trustbar .col-6{border-right:1px solid rgba(6,28,55,.2)}.trustbar .col-6:nth-child(even){border:0}.trustbar strong{display:block;font-family:var(--serif);font-size:2.2rem;line-height:1}.trustbar strong span{font-family:var(--sans)}.trustbar small{font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.section{padding:6rem 0}h2{font-family:var(--serif);font-size:clamp(2.2rem,3.7vw,3.6rem);line-height:1.15;letter-spacing:-.04em;color:var(--navy)}.lead-text{font-size:1.1rem;color:#3e5162}.industry-graphic{height:370px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1rem;background:linear-gradient(135deg,var(--navy),#176baa);color:#fff;position:relative;overflow:hidden}.industry-graphic:before{content:'';position:absolute;width:330px;height:330px;border:1px solid rgba(255,255,255,.25);border-radius:50%}.industry-graphic i{font-size:6rem;color:var(--gold);z-index:1}.industry-graphic span{font-size:.72rem;text-transform:uppercase;font-weight:800;letter-spacing:.1em;z-index:1}.link-arrow{display:inline-flex;align-items:center;gap:.55rem;text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;font-weight:800;color:var(--navy);text-decoration:none;margin-top:1rem}.link-arrow:hover{color:var(--gold)}.section-surface{background:var(--pale)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:2.5rem}.section-heading p:not(.kicker){color:var(--mute)}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid var(--line);border-top:1px solid var(--line)}.category-grid a{background:#fff;min-height:150px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:1.35rem;color:var(--navy);text-decoration:none;display:flex;flex-direction:column;gap:1rem;font-size:.75rem;font-weight:800;transition:.2s}.category-grid a:hover{background:var(--navy);color:#fff;transform:translateY(-3px);box-shadow:0 12px 26px rgba(11,46,89,.15)}.category-grid i{color:var(--gold);font-size:1.5rem}.solutions{background:linear-gradient(120deg,var(--deep),var(--navy));color:#cbd9e7}.solutions h2{color:#fff}.solutions .text-center>p:last-child{max-width:580px;margin:0 auto}.solution-card{height:100%;background:#fff;color:var(--ink);padding:2.2rem;border-top:3px solid var(--gold)}.solution-card>i{color:var(--gold);font-size:2rem}.solution-card h3{font-family:var(--serif);color:var(--navy);font-size:1.9rem;margin:1.2rem 0 .7rem}.solution-card p,.solution-card li{font-size:.84rem;color:var(--mute)}.solution-card ul{padding-left:1.1rem}.solution-card a{color:var(--navy);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em;text-decoration:none}.brand-wall{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.brand-wall span{min-height:85px;display:grid;place-items:center;padding:.8rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:.9rem;font-weight:800;letter-spacing:.08em;color:var(--navy);text-align:center}.brand-note{font-size:.67rem;color:var(--mute);margin-top:1rem}.industry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.industry-grid span{background:#fff;padding:1.25rem;display:flex;align-items:center;gap:.75rem;color:var(--navy);font-size:.74rem;font-weight:800}.industry-grid i{color:var(--gold);font-size:1.2rem}.why-section{background:var(--deep);padding:5.5rem 0;color:#fff}.why-section .row>div>div{height:100%;padding:1.1rem;background:rgba(255,255,255,.06);text-align:center}.why-section i{color:var(--gold);font-size:1.5rem;display:block;margin-bottom:.6rem}.why-section span{font-size:.68rem;font-weight:800;text-transform:uppercase;line-height:1.5}.enquiry{background:linear-gradient(90deg,#fff 55%,#eef4f8 55%)}.contact-options a{display:flex;align-items:center;gap:.8rem;color:var(--navy);text-decoration:none;margin:1.2rem 0;font-size:.78rem}.contact-options i{width:42px;height:42px;display:grid;place-items:center;background:var(--navy);color:var(--gold);font-size:1.3rem}.contact-options a:nth-child(2) i{background:#25d366;color:#fff}.quote-form{background:#fff;padding:2rem;box-shadow:0 12px 34px rgba(15,45,74,.1)}.quote-form label{font-size:.68rem;text-transform:uppercase;font-weight:800;letter-spacing:.07em;margin-bottom:.35rem}.form-control{border-radius:0;border:1px solid #d7e0e8;padding:.72rem;font-size:.86rem}.form-control:focus{border-color:var(--navy);box-shadow:0 0 0 .2rem rgba(11,46,89,.1)}.form-status{font-size:.75rem;font-weight:700;margin:.8rem 0 0}footer{background:var(--deep);color:#b7c5d4;padding:4rem 0 1.3rem;font-size:.78rem}footer h3{color:#fff;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:1rem}footer a{color:#d6e0ea;text-decoration:none;display:block;margin:.45rem 0}footer a:hover{color:var(--gold)}.footer-bottom{border-top:1px solid #2a4765;margin-top:2rem;padding-top:1rem;display:flex;justify-content:space-between;gap:1rem;font-size:.62rem}.whatsapp-float,.back-top{position:fixed;right:1.2rem;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;z-index:12;color:#fff}.whatsapp-float{bottom:1.2rem;background:#25d366;font-size:1.7rem;box-shadow:0 6px 18px rgba(0,0,0,.2)}.back-top{bottom:4.9rem;background:var(--navy);border:0;opacity:0;visibility:hidden;transform:translateY(10px);transition:.2s}.back-top.show{opacity:1;visibility:visible;transform:none}@media(max-width:991px){.navbar-collapse{background:#fff;padding:1rem}.category-grid{grid-template-columns:repeat(3,1fr)}.enquiry{background:var(--pale)}}@media(max-width:767px){.topbar .container>div{display:flex;gap:1rem}.topbar a{margin:0}.min-vh-hero{min-height:560px}.section{padding:4.5rem 0}.section-heading{align-items:flex-start;flex-direction:column}.category-grid{grid-template-columns:repeat(2,1fr)}.brand-wall{grid-template-columns:repeat(2,1fr)}.industry-grid{grid-template-columns:repeat(2,1fr)}.footer-bottom{flex-direction:column}.hero-lead{font-size:.93rem}.trustbar .col-6:nth-child(2){border:0}.trustbar .col-6:nth-child(-n+2){margin-bottom:1rem}}@media(max-width:420px){.category-grid a{padding:1rem;min-height:135px;font-size:.66rem}.brand strong{font-size:.85rem}.brand-mark{width:37px;height:37px}.btn-lg{font-size:.7rem}}
.page-banner{background:linear-gradient(120deg,rgba(6,28,55,.96),rgba(11,46,89,.9)),url('https://images.unsplash.com/photo-1509391366360-2e959784a276?auto=format&fit=crop&w=1600&q=80') center/cover;color:#fff;padding:6rem 0}.page-banner h1{font-family:var(--serif);font-size:clamp(2.8rem,5vw,4.8rem);line-height:1.1}.page-banner h1 em{font-style:normal;color:var(--gold)}.page-banner p:not(.kicker){max-width:600px;color:#d5e0ea}.product-list{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line)}.product-list article{background:#fff;padding:1.5rem 1.75rem}.product-list b{font-size:.75rem;color:var(--gold)}.product-list h2{font-size:1.55rem;margin:.35rem 0}.product-list p{font-size:.82rem;color:var(--mute);margin:0}.product-cta{margin-top:3rem;background:var(--navy);padding:1.5rem 2rem;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:1rem}.product-cta strong,.product-cta span{display:block}.product-cta span{font-size:.76rem;color:#c9d8e5}@media(max-width:767px){.product-list{grid-template-columns:1fr}.product-cta{align-items:flex-start;flex-direction:column}}
.narrow-content{max-width:880px}.narrow-content h2{font-size:2rem;margin-top:3rem}.check-list{padding-left:0;list-style:none}.check-list li{margin:.75rem 0}.check-list li:before{content:'✓';font-weight:800;color:var(--gold);margin-right:.7rem}.promise{font-weight:800;color:var(--navy);letter-spacing:.04em}.solution-detail{height:100%;padding:2.2rem;background:var(--pale);border-top:3px solid var(--gold)}.solution-detail>i{color:var(--gold);font-size:2rem}.solution-detail h2{font-size:2.1rem;margin:1rem 0}.solution-detail h3{font-size:1rem;color:var(--navy);margin-top:1.5rem}.solution-detail p,.solution-detail li{font-size:.85rem;color:var(--mute)}.quote-band{background:var(--navy);color:#fff;margin-top:3rem;padding:2.5rem;text-align:center}.quote-band h2{color:#fff;font-size:2.2rem}.quote-band p{color:#d5e0ea}
.brand-logo{display:block;width:auto;height:62px;max-width:min(430px,65vw);object-fit:contain}.brand{min-width:0}@media(max-width:575px){.brand-logo{height:46px;max-width:72vw}}
.product-list .featured-category{grid-column:1/-1;display:grid;grid-template-columns:42% 1fr;padding:0}.category-image{min-height:360px;background:linear-gradient(145deg,#e5edf4,#cad9e7);display:grid;place-items:center;position:relative;overflow:hidden;text-align:center;color:var(--navy);font-size:.8rem;font-weight:800}.category-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.category-image span{display:none}.category-image.image-pending span{display:block;border:2px dashed #8ba2b7;padding:3rem 1.5rem;background:rgba(255,255,255,.55)}.category-image small{font-weight:600;color:var(--mute)}.category-content{padding:2.4rem}.category-products{line-height:1.9!important;color:var(--ink)!important;font-weight:600}.category-content h3{font-size:.67rem;text-transform:uppercase;letter-spacing:.12em;color:var(--mute);margin:1.6rem 0 .75rem}.category-brands{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.7rem}.category-brands span{padding:.35rem .5rem;background:var(--pale);font-size:.66rem;font-weight:800;color:var(--navy)}@media(max-width:767px){.product-list .featured-category{grid-template-columns:1fr}.category-image{min-height:250px}.category-content{padding:1.5rem}}
.detailed-category{display:grid!important;grid-template-columns:34% 1fr;padding:0!important;min-height:280px}.detailed-category .category-image{min-height:100%;background:linear-gradient(145deg,#dfe9f0,#c3d3e0)}.detailed-category .category-image span{display:block;border:2px dashed #8ba2b7;padding:1.3rem;background:rgba(255,255,255,.6);line-height:1.6}.detailed-category .category-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.detailed-category .category-image:has(img){background:var(--pale)}.detailed-category .category-content{padding:1.75rem}.detailed-category .category-content h2{font-size:1.75rem}.detailed-category .category-content h3{font-size:.67rem;text-transform:uppercase;letter-spacing:.12em;color:var(--mute);margin:1.1rem 0 .55rem}.product-pills{display:flex;flex-wrap:wrap;gap:.38rem}.product-pills span{background:var(--pale);font-size:.68rem;line-height:1.3;padding:.4rem .55rem;color:var(--ink)}@media(max-width:767px){.detailed-category{grid-template-columns:1fr}.detailed-category .category-image{min-height:205px}}
.topbar-separator{margin:0 .45rem;color:rgba(255,255,255,.4)}.topbar .container>span:last-child{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end}@media(max-width:767px){.topbar .container>span:last-child{justify-content:flex-start}.topbar-separator{margin:0 .3rem}}

/* Keep every product-category label centred in cards, lists and detail views. */
.category-grid a,.front-category-grid a{align-items:center;text-align:center}.product-list .category-content h2,.detailed-category .category-content h2,.category-detail-hero h1{text-align:center}

/* Give the Telephone & Spare Products visual the same framed presentation as category images elsewhere. */
.category-display-card[href*="telephone-spares"] .category-card-image,.category-selector-card[href*="telephone-spares"] .category-selector-image,.detailed-category#telephone-spares .category-image,.category-detail-image:has(img[src$="27-telephone-spares.png"]){padding:10px;border:1px solid #dce3ec;border-radius:8px;background:#fff;box-shadow:0 4px 12px rgba(11,46,89,.08)}
.category-display-card[href*="telephone-spares"] .category-card-image img,.category-selector-card[href*="telephone-spares"] .category-selector-image img,.detailed-category#telephone-spares .category-image img{border-radius:5px;object-fit:contain}

/* Keep the company mark anchored to the left edge of every header. */
.site-header .navbar>.container{max-width:100%!important;padding-left:24px!important;padding-right:24px!important;justify-content:flex-start!important}
.site-header .navbar .brand{flex:0 0 auto!important;justify-self:start!important;align-self:flex-start!important;margin-left:0!important;margin-right:0!important}
.site-header .navbar .brand-logo{object-position:left center!important}
@media(max-width:767px){.site-header .navbar>.container{padding-left:16px!important;padding-right:16px!important}}

/* The supplied logo has a white margin above its visible lettering.  Offset the
   desktop contact block by the same amount so both areas begin on one visual line. */
@media(min-width:768px){.site-header .nav-under-logo .brand-contact-details{align-self:flex-start!important;margin-top:43px!important}}

/* Gentle page entrance for smoother navigation between website pages. */
@keyframes sitePageEnter{from{opacity:0}to{opacity:1}}
body{animation:sitePageEnter .26s ease-out both}
@media(prefers-reduced-motion:reduce){body{animation:none}}

/* Keep the quick-contact controls attached to the visitor's screen on every page. */
body .contact-rail.floating-contact-buttons{position:fixed!important;right:1rem!important;top:50%!important;bottom:auto!important;z-index:2000!important;transform:translateY(-50%)!important}
@media(max-width:575px){body .contact-rail.floating-contact-buttons{right:.7rem!important;top:auto!important;bottom:.7rem!important;transform:none!important}}
