:root{--ink:#0d0f11;--panel:#181b1f;--panel2:#22262a;--cream:#f5f0e7;--muted:#bbb9b3;--red:#cf282b;--red2:#8b1117;--gold:#d2a64b;--line:#393e44;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--cream);font:16px/1.6 Arial,Helvetica,sans-serif}a{color:inherit}img{max-width:100%;display:block}.wrap{width:min(var(--max),calc(100% - 36px));margin:auto}.topbar{background:#070809;color:#ddd;font-size:.82rem;border-bottom:1px solid #24272a}.topbar .wrap{display:flex;justify-content:space-between;gap:20px;padding:7px 0}.site-head{position:sticky;top:0;z-index:20;background:#101214ed;backdrop-filter:blur(12px);border-bottom:1px solid #30343a}.nav{display:flex;align-items:center;gap:26px;min-height:152px}.brand{display:flex;align-items:center;text-decoration:none;margin-right:auto}.brand img{width:427.5px;height:130.5px;object-fit:contain;background:#101214;border-radius:0;padding:6px}.navlinks{display:flex;align-items:center;gap:22px}.navlinks a{text-decoration:none;font-size:.92rem;font-weight:700;color:#dedbd3}.navlinks a:hover{color:#fff}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,var(--red),#a91419);border:1px solid #f25f61;color:#fff;text-decoration:none;font-weight:800;padding:13px 19px;border-radius:7px;box-shadow:0 9px 28px #0005}.btn:hover{background:#e33739}.btn.alt{background:transparent;border-color:#777;color:#fff;box-shadow:none}.menu{display:none;background:none;border:1px solid #555;border-radius:6px;color:#fff;padding:9px 12px}.hero{position:relative;min-height:690px;display:grid;align-items:end;overflow:hidden;background:#131619}.hero-media{position:absolute;inset:0}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#07090aec 0%,#090b0dd9 36%,#0b0d0f7d 62%,#0708093b 100%),linear-gradient(0deg,#0d0f11 0%,transparent 42%)}.hero-content{position:relative;z-index:2;padding:100px 0 75px;max-width:780px}.eyebrow{display:inline-flex;align-items:center;gap:10px;color:#f0c46a;font-size:.78rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.eyebrow:before{content:"★";font-size:1rem}.hero h1,.page-hero h1{font-size:clamp(3rem,7.5vw,6.7rem);line-height:.94;letter-spacing:-.065em;margin:20px 0 24px;text-transform:uppercase}.hero h1 span,.page-hero h1 span{color:#ec3b3e}.hero p{font-size:clamp(1.05rem,2vw,1.3rem);max-width:650px;color:#d1d0cc}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.proofstrip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#14171a}.proofgrid{display:grid;grid-template-columns:repeat(4,1fr)}.proof{padding:24px;border-right:1px solid var(--line)}.proof:last-child{border:0}.proof strong{display:block;color:#fff;font-size:1.05rem}.proof span{color:#aaa;font-size:.88rem}.section{padding:88px 0}.section.soft{background:#14171a}.section-head{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;margin-bottom:38px}.section h2{font-size:clamp(2.2rem,5vw,4.4rem);line-height:1;letter-spacing:-.045em;margin:10px 0}.section-head p{color:#b9b9b4;font-size:1.08rem;max-width:650px;margin:16px 0 0}.services{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.service{position:relative;overflow:hidden;background:linear-gradient(145deg,#24282d,#171a1d);border:1px solid var(--line);padding:30px;min-height:240px;border-radius:10px}.service:after{content:"★";position:absolute;right:-10px;bottom:-65px;font-size:180px;color:#ffffff05}.service .num{color:#ec5759;font-size:.78rem;font-weight:900;letter-spacing:.12em}.service h3{font-size:1.55rem;margin:28px 0 10px}.service p{margin:0;color:#b8b7b2;max-width:520px}.service a{display:inline-block;margin-top:20px;color:#f0c46a;font-weight:800;text-decoration:none}.feature{display:grid;grid-template-columns:1.3fr .7fr;gap:18px}.feature-image{min-height:520px;border-radius:12px;overflow:hidden;position:relative}.feature-image img{width:100%;height:100%;object-fit:cover}.feature-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#000b,transparent 45%)}.feature-copy{background:var(--cream);color:#141414;border-radius:12px;padding:42px}.feature-copy h2{margin-top:12px}.ticks{list-style:none;padding:0;margin:28px 0}.ticks li{padding:12px 0;border-bottom:1px solid #d1ccc2;font-weight:700}.ticks li:before{content:"★";color:var(--red);margin-right:10px}.work-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}.work-card{position:relative;overflow:hidden;border-radius:10px;min-height:360px;background:#222}.work-card:nth-child(1){grid-column:span 7}.work-card:nth-child(2){grid-column:span 5}.work-card:nth-child(3),.work-card:nth-child(4),.work-card:nth-child(5){grid-column:span 4}.work-card img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.work-card:hover img{transform:scale(1.03)}.work-card div{position:absolute;inset:auto 0 0;padding:22px;background:linear-gradient(0deg,#090a0bf2,transparent);font-weight:800}.band{background:linear-gradient(115deg,#7f0f14,#cd292c 55%,#891116);padding:50px 0}.band .wrap{display:flex;justify-content:space-between;align-items:center;gap:30px}.band h2{font-size:clamp(2rem,4vw,3.8rem);margin:0;line-height:1}.band .btn{background:#111;border-color:#111}.page-hero{padding:110px 0 70px;background:radial-gradient(circle at 80% 20%,#4b151755,transparent 40%),#111316;border-bottom:1px solid var(--line)}.page-hero p{color:#bbb;max-width:720px;font-size:1.16rem}.two{display:grid;grid-template-columns:1fr 1fr;gap:35px}.copy p{color:#c3c2bd}.contact-card{background:#f4efe5;color:#181818;border-radius:12px;padding:34px}.contact-card a{color:#9a151a;font-weight:800}.quote-shell{padding:65px 0}.footer{background:#08090a;border-top:1px solid #2b2f33;padding:55px 0 24px}.footer-grid{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:45px}.footer h3{margin-top:0}.footer p,.footer a{color:#aaa;text-decoration:none}.footer a:hover{color:#fff}.footer nav{display:grid;gap:8px}.legal{border-top:1px solid #292c30;margin-top:38px;padding-top:20px;color:#858585;font-size:.82rem;display:flex;justify-content:space-between;gap:20px}.privacy h2{margin-top:45px;font-size:1.5rem}.privacy p,.privacy li{color:#c0bfba}.mobile-cta{display:none}.hidden-label{position:absolute;clip:rect(1px,1px,1px,1px)}
@media(max-width:850px){.nav{min-height:130px}.brand img{width:min(326.25px,calc(100vw - 110px));height:108px}.menu{display:block}.navlinks{display:none;position:absolute;top:130px;left:0;right:0;background:#111417;border-bottom:1px solid #444;padding:20px;flex-direction:column;align-items:flex-start}.navlinks.open{display:flex}.nav>.btn{display:none}.hero{min-height:620px}.hero-content{padding:85px 0 55px}.proofgrid{grid-template-columns:1fr 1fr}.proof:nth-child(2){border-right:0}.section{padding:64px 0}.section-head,.feature,.two{grid-template-columns:1fr}.services{grid-template-columns:1fr}.feature-image{min-height:380px}.work-card,.work-card:nth-child(n){grid-column:span 12;min-height:340px}.band .wrap{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr}.mobile-cta{display:flex;position:fixed;z-index:30;bottom:12px;left:12px;right:12px}.mobile-cta .btn{width:100%;box-shadow:0 5px 24px #000}.legal{flex-direction:column;padding-bottom:72px}.topbar .wrap span:last-child{display:none}}
@media(max-width:520px){.wrap{width:min(var(--max),calc(100% - 24px))}.hero h1,.page-hero h1{font-size:3rem}.proofgrid{grid-template-columns:1fr}.proof{border-right:0;border-bottom:1px solid var(--line)}.service,.feature-copy{padding:24px}.hero-media img{object-position:58% center}}
@media(min-width:851px){.work-card:nth-child(n+3){grid-column:span 4}.work-card:nth-child(9),.work-card:nth-child(10){grid-column:span 6}}

.project-photo{width:100%;height:auto;border-radius:10px;margin-bottom:24px}.copy h2{font-size:clamp(1.65rem,3vw,2.4rem);line-height:1.2}.service-links{display:flex;flex-wrap:wrap;gap:14px 24px;margin-bottom:35px;font-size:1rem}.contact-card a,.footer a{overflow-wrap:anywhere}a:focus-visible,button:focus-visible{outline:3px solid #f0c46a;outline-offset:4px}.eyebrow,.service .num,.topbar{font-size:.875rem}.work-card{text-decoration:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.work-card img{transition:none}}

@media(min-width:851px) and (max-width:1100px){.nav{min-height:130px}.brand img{width:326.25px;height:108px}.menu{display:block}.nav>.btn{display:none}.navlinks{display:none;position:absolute;top:130px;left:0;right:0;background:#111417;border-bottom:1px solid #444;padding:20px;flex-direction:column;align-items:flex-start}.navlinks.open{display:flex}}

/* Large brand masthead, with navigation in its own compact row. */
.site-head{position:relative;top:auto;background:radial-gradient(ellipse at 50% 40%,#35171b55,transparent 62%),#101214;backdrop-filter:none}
.logo-masthead{padding:12px 0 30px}
.logo-masthead .brand{width:100%;margin:0;display:flex;justify-content:center}
.logo-masthead .brand img{width:75%;max-width:1000px;height:auto;aspect-ratio:1.6;object-fit:cover;object-position:center;background:transparent;padding:0;border-radius:0;filter:drop-shadow(0 4px 0 #392109) drop-shadow(0 20px 16px #000c) drop-shadow(0 0 14px #cf282b24);transform:translateY(6px)}
.site-head .nav{min-height:70px;gap:24px;padding:12px 0;border-top:1px solid #ffffff14;justify-content:center}
.site-head .navlinks{margin:0}
@media(max-width:1100px){.site-head .nav{min-height:66px;justify-content:space-between}.site-head .menu{display:block}.site-head .nav>.btn{display:inline-flex}.site-head .navlinks{display:none;position:absolute;top:100%;left:0;right:0;background:#111417;z-index:25;border-bottom:1px solid #444;padding:20px;flex-direction:column;align-items:flex-start}.site-head .navlinks.open{display:flex}}
@media(max-width:520px){.logo-masthead{padding:8px 0 22px}.logo-masthead .brand img{width:75%;filter:drop-shadow(0 3px 0 #392109) drop-shadow(0 12px 10px #000c)}.site-head .nav>.btn{padding:10px 16px}.site-head .nav{gap:12px}}

.breadcrumbs{font-size:.875rem;line-height:1.7;color:#c4c2bb;margin-bottom:24px;overflow-wrap:anywhere}.breadcrumbs a{color:#f0c46a;text-underline-offset:3px}

.section .service h2{font-size:1.55rem;line-height:1.6;letter-spacing:normal;margin:28px 0 10px}

/* Finished-work gallery */
.gallery-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}.gallery-filters button,.gallery-dialog button{font:inherit;font-weight:700;cursor:pointer;border:1px solid #555;background:#1b1d20;color:#f4efe5;border-radius:7px;padding:12px 18px}.gallery-filters button[aria-pressed=true]{background:var(--red);border-color:var(--red);color:#fff}.gallery-status{color:#c3c2bd;margin:0 0 26px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.gallery-card{margin:0;background:#181b1e;border:1px solid #33383d;border-radius:10px;overflow:hidden}.gallery-card[hidden]{display:none}.gallery-open{display:block;position:relative;aspect-ratio:4/5;background:#090a0b}.gallery-open img{width:100%;height:100%;object-fit:contain;display:block}.gallery-zoom{position:absolute;right:12px;bottom:12px;background:#08090ade;padding:8px 12px;border-radius:5px;color:#fff;font-size:.875rem}.gallery-card figcaption{padding:18px 18px 10px;font-weight:800;line-height:1.5}.gallery-project{display:inline-block;padding:0 18px 18px;color:#f0c46a;text-underline-offset:4px}.gallery-dialog{width:min(1100px,calc(100vw - 24px));max-height:94dvh;padding:0;background:#101214;color:#f4efe5;border:1px solid #555;border-radius:12px;box-shadow:0 20px 80px #000;overflow:auto}.gallery-dialog::backdrop{background:#000e}.gallery-dialog-head,.gallery-dialog-foot{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 18px}.gallery-dialog-head p{margin:0;font-weight:800}.gallery-full{display:block;width:100%;height:70dvh;object-fit:contain;background:#08090a}.gallery-viewing{overflow:hidden}.gallery-position{white-space:nowrap}.gallery-dialog button:hover,.gallery-filters button:hover{border-color:#f0c46a}@media(max-width:850px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-dialog-head{align-items:flex-start}.gallery-full{height:65dvh}}@media(max-width:520px){.gallery-grid{grid-template-columns:1fr}.gallery-filters button{padding:10px 13px;font-size:.9rem}.gallery-dialog-head,.gallery-dialog-foot{padding:12px}.gallery-dialog button{padding:10px;font-size:.875rem}.gallery-full{height:60dvh}}
/* Easy contact and clearer service choices */
.quick-contact{background:#090b0d;border-bottom:1px solid #373b40}.quick-contact .wrap{display:flex;justify-content:center;gap:14px 30px;flex-wrap:wrap;padding:12px 0}.quick-contact a{font-size:.95rem;font-weight:800;text-decoration:none;color:#f5f0e7}.quick-contact a:hover{color:#f0c46a}.next-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:28px 0}.next-steps>div{padding:24px;background:#181b1f;border:1px solid #373b40;border-radius:10px}.next-steps p{color:#c3c2bd}.next-steps h3{margin-top:0}.next-steps a,.enquiry-fallback a,#lsv-quote-builder a{color:#f0c46a}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.enquiry-fallback{margin-top:24px}.mobile-cta{gap:8px}button:disabled{opacity:.65;cursor:wait}.enquiry-intro h2{max-width:850px}.navlinks{gap:22px}
@media(max-width:850px){.next-steps{grid-template-columns:1fr}.mobile-cta .btn{width:auto;flex:1;padding:13px 10px}.quick-contact .wrap{gap:10px 20px}.quick-contact a{font-size:.875rem}}
/* Readable service answers and practical buying guidance. */
.faq-list{max-width:900px;margin:28px 0}.faq-list details{border:1px solid #41474d;border-radius:8px;margin:12px 0;background:#181b1f}.faq-list summary{padding:20px;font-weight:800;cursor:pointer}.faq-list details p{margin:0;padding:0 20px 20px;color:#c3c2bd}.guide-copy{max-width:860px}.guide-copy h2{font-size:clamp(1.5rem,3vw,2.1rem);line-height:1.2;margin-top:44px}.guide-copy p{font-size:1.05rem;color:#c3c2bd}.guide-copy a,.copy li a,.service-questions a{color:#f0c46a}.copy li{margin:14px 0}

/* Optional measurement consent */
.cookie-panel{position:fixed;bottom:20px;left:20px;right:20px;max-width:640px;margin:auto;z-index:10000;padding:22px;background:#181a1d;color:#fff;border:1px solid #c7a76a;border-radius:12px;box-shadow:0 8px 36px #0008;font-size:15px;line-height:1.5}.cookie-panel[hidden]{display:none}.cookie-panel p{margin:8px 0 16px}.cookie-panel a{color:#eed6a9;text-decoration:underline}.cookie-actions{display:flex;gap:10px;flex-wrap:wrap}.cookie-actions button{flex:1;padding:12px;background:#eee4cd;color:#161616;border:1px solid #eee4cd;border-radius:6px;font:inherit;cursor:pointer}.cookie-actions button[hidden]{display:none}.cookie-actions button:focus-visible,.cookie-preferences:focus-visible{outline:3px solid #e6ac4a;outline-offset:3px}.cookie-preferences{background:transparent;color:inherit;border:0;padding:8px;text-decoration:underline;font:inherit;cursor:pointer}@media(max-width:480px){.cookie-panel{left:10px;right:10px;bottom:10px;padding:16px}.cookie-actions{flex-direction:column}}
