
:root{--ink:#0a0c0d;--dark:#101315;--panel:#181b1c;--gold:#d8ad43;--cream:#eae6dc;--muted:#a4a7a5;--line:#3b3c38}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--cream);font-family:"DM Sans",Arial,sans-serif}a{color:inherit;text-decoration:none}
.container{width:min(1320px,calc(100% - 88px));margin:auto}
.notice{background:#d8ad43;color:#121313;text-align:center;padding:9px 18px;font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:800}
header{position:absolute;z-index:5;top:35px;width:100%;border-bottom:1px solid #ffffff32;background:linear-gradient(#0a0c0dbb,#0a0c0d30)}
.nav{display:flex;align-items:center;justify-content:space-between;min-height:86px;gap:30px}
.wordmark{font-family:"Barlow Condensed",sans-serif;font-size:25px;font-weight:800;letter-spacing:1px;line-height:.83}.wordmark b{color:var(--gold)}.wordmark small{font:600 9px "DM Sans",sans-serif;letter-spacing:3.8px}
nav{display:flex;gap:33px}nav a{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#eee}nav a:hover{color:var(--gold)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:20px;background:var(--gold);color:#101213;padding:19px 26px;text-transform:uppercase;font-size:11px;letter-spacing:1.6px;font-weight:800;transition:transform .2s}.btn:hover{transform:translateY(-2px)}.btn.outline{border:1px solid #b4a174;background:transparent;color:var(--cream)}
.hero{position:relative;min-height:820px;display:flex;align-items:center;overflow:hidden;background:linear-gradient(90deg,#090c0ef5 0%,#090c0edb 35%,#090c0e50 80%),linear-gradient(0deg,#090c0e 0%,transparent 35%),url('https://images.unsplash.com/photo-1600607687920-4e2a09cf159d?auto=format&fit=crop&w=2200&q=85') center/cover}
.hero:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0,transparent 3px,#00000010 4px);pointer-events:none}
.hero-inner{position:relative;z-index:1;padding-top:130px;padding-bottom:110px}
.eyebrow{display:flex;align-items:center;gap:15px;color:var(--gold);font-size:11px;font-weight:800;letter-spacing:3px;text-transform:uppercase}.eyebrow:before{content:"";width:43px;height:2px;background:var(--gold)}
h1,h2,h3,.big{font-family:"Barlow Condensed",Impact,sans-serif;text-transform:uppercase}h1{font-size:clamp(72px,9vw,145px);line-height:.85;letter-spacing:-1.5px;margin:30px 0 25px;font-weight:800;max-width:1000px}h1 em{font-style:normal;color:var(--gold)}
.hero-desc{color:#d4d6d5;font-size:16px;line-height:1.85;max-width:560px;margin-bottom:35px}.actions{display:flex;gap:14px;flex-wrap:wrap}
.hero-bottom{position:absolute;bottom:0;left:0;right:0;z-index:2;border-top:1px solid #ffffff33;background:#0a0d0dd9}.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.stat{padding:22px 28px;border-right:1px solid #ffffff26}.stat:first-child{padding-left:0}.stat:last-child{border:0}.stat strong{display:block;color:var(--gold);font:700 25px "Barlow Condensed",sans-serif;letter-spacing:1px}.stat span{font-size:10px;text-transform:uppercase;letter-spacing:1.7px;color:#d5d4d0}
.section{padding:105px 0}.sectionhead{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}.sectionhead h2{font-size:clamp(48px,6vw,86px);line-height:.94;margin:20px 0 0;letter-spacing:-.5px}.sectionhead p{max-width:400px;color:var(--muted);line-height:1.8;font-size:14px}
.services{background:#111415}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#383c3b;border:1px solid #383c3b}
.service{background:#171a1b;padding:35px 27px;min-height:245px;position:relative;transition:background .2s}.service:hover{background:#222625}.service .num{color:var(--gold);font-size:11px;font-weight:800;letter-spacing:2px}.service .symbol{font:700 45px "Barlow Condensed";color:#d8ad4366;position:absolute;right:23px;top:24px}.service h3{font-size:30px;line-height:1;margin:45px 0 12px}.service p{color:#b1b6b3;font-size:12px;line-height:1.8;margin:0}.service:last-child{background:#26231b}
.band{background:var(--gold);color:#121414;padding:22px 0;overflow:hidden}.band .container{display:flex;justify-content:space-between;gap:15px;align-items:center;font:700 23px "Barlow Condensed";letter-spacing:1px;text-transform:uppercase}.band span{white-space:nowrap}
.projects{background:#0c0e0f}.projects-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:18px}.project{position:relative;min-height:360px;overflow:hidden;background:#1e2223}.project:first-child{grid-row:span 2;min-height:740px}.project img{height:100%;width:100%;object-fit:cover;position:absolute;inset:0;filter:saturate(.72);transition:transform .4s}.project:hover img{transform:scale(1.04)}.project:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#080a0bec,transparent 65%)}.project .meta{position:absolute;bottom:30px;left:30px;z-index:1}.project .meta small{color:var(--gold);text-transform:uppercase;letter-spacing:2px;font-weight:800;font-size:10px}.project h3{font-size:37px;line-height:1;margin:9px 0}
.caption{color:#b4b7b4;font-size:12px;line-height:1.8;margin-top:17px}
.about{background:#181b1b}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.about-image{height:580px;background:linear-gradient(0deg,#080a0e60,#080a0e22),url('https://images.unsplash.com/photo-1600607687939-ce8a6c25118c?auto=format&fit=crop&w=1200&q=85') center/cover;border:1px solid #333}.about h2{font-size:clamp(55px,6vw,90px);line-height:.94;margin:20px 0}.about p{color:#b6bab7;font-size:14px;line-height:1.95}.about .divider{height:1px;background:#3b3d3b;margin:32px 0}.about-list{display:grid;grid-template-columns:1fr 1fr;gap:15px;font-size:12px;text-transform:uppercase;letter-spacing:1px;font-weight:700}.about-list span:before{content:"+";color:var(--gold);padding-right:10px}
.contact{padding:100px 0;background:radial-gradient(circle at 85% 0%,#3c321e 0%,transparent 36%),#0b0d0e}.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:80px}.contact h2{font-size:clamp(55px,7vw,105px);line-height:.91;margin:20px 0 28px}.contact p{color:#adb1af;line-height:1.9;max-width:520px}.phones{border-left:1px solid #4c493d;padding-left:40px;align-self:center}.phones .label{color:var(--gold);letter-spacing:2px;text-transform:uppercase;font-size:11px;font-weight:800}.phones a{display:block;font:700 clamp(31px,4vw,55px) "Barlow Condensed";margin:10px 0 30px}.phones a:hover{color:var(--gold)}
footer{background:#080a0a;border-top:1px solid #353735;padding:34px 0;color:#858a87;font-size:11px}.foot{display:flex;justify-content:space-between;gap:25px;align-items:center}.foot strong{color:#eee}
@media(max-width:950px){nav{display:none}.services-grid{grid-template-columns:repeat(2,1fr)}.about-grid{gap:35px}.container{width:min(100% - 42px,1320px)}.hero{min-height:760px}.contact-grid{gap:35px}}
@media(max-width:650px){.notice{font-size:9px}.nav{min-height:74px}.nav .btn{padding:13px;font-size:9px}.wordmark{font-size:20px}.hero{min-height:780px}.hero-inner{padding-top:140px;padding-bottom:175px}h1{font-size:clamp(62px,15vw,90px)}.hero-desc{font-size:14px}.hero-stats{grid-template-columns:1fr 1fr 1fr}.stat{padding:14px 8px}.stat strong{font-size:18px}.stat span{font-size:8px;letter-spacing:.4px}.section{padding:70px 0}.sectionhead{display:block}.services-grid{grid-template-columns:1fr 1fr}.service{padding:24px 17px;min-height:220px}.service h3{font-size:25px}.service p{font-size:11px}.band .container{flex-wrap:wrap;font-size:17px}.projects-grid,.about-grid,.contact-grid{grid-template-columns:1fr}.project,.project:first-child{min-height:340px;grid-row:auto}.about-image{height:330px}.phones{border-left:0;border-top:1px solid #4c493d;padding:30px 0 0}.foot{flex-direction:column;align-items:start}}

nav a.active{color:var(--gold)}.review-section{background:#151818;padding:90px 0;border-top:1px solid #343837}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:35px}.review-card{border:1px solid #4b4536;background:#1b1e1e;padding:35px}.review-card h3{font-size:34px;margin:10px 0}.review-card p{color:#b7bab7;line-height:1.75;font-size:14px}.coming{display:inline-block;border:1px solid #8c7642;color:var(--gold);font-size:10px;font-weight:800;letter-spacing:2px;text-transform:uppercase;padding:11px 15px;margin-top:10px}.inner-hero{padding:190px 0 80px;background:radial-gradient(circle at 80% 25%,#3b301b 0,transparent 35%),#0d1011;border-bottom:1px solid #55472b}.inner-hero h1{font-size:clamp(64px,9vw,120px);margin:20px 0 25px}.inner-hero p{max-width:700px;color:#c4c7c3;line-height:1.8}.placeholder-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:35px 0}.placeholder-tile{border:1px solid #524731;background:#171a1b;min-height:240px;padding:30px;display:flex;flex-direction:column;justify-content:end}.placeholder-tile b{color:var(--gold);font:700 29px 'Barlow Condensed',sans-serif;text-transform:uppercase}.placeholder-tile p{font-size:13px;color:#b5b9b7;line-height:1.7}.subnav{display:flex;gap:20px;flex-wrap:wrap;margin-top:25px}.subnav a{font-size:12px;text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:6px}.project-preview-note{font-size:13px;color:#c4c7c3;margin-top:20px;line-height:1.7}@media(max-width:650px){.review-grid,.placeholder-grid{grid-template-columns:1fr}.inner-hero{padding:150px 0 65px}.review-section{padding:70px 0}}

.official-logo{display:block;max-width:280px;width:100%;margin-top:20px;border:1px solid #ffffff18}

/* Premium integrated header logo */
header{background:linear-gradient(180deg,rgba(8,10,11,.97),rgba(8,10,11,.88));border-bottom:1px solid #d8ad432b;top:35px}
.nav{min-height:108px}
.nav-brand{display:flex;align-items:center;flex:0 0 auto}
.nav-logo-crop{display:block;width:235px;height:94px;overflow:hidden;position:relative}
.nav-logo-crop img{display:block;width:235px;height:auto;max-width:none;mix-blend-mode:screen;opacity:.95;transform:translateY(-3px);filter:contrast(1.08)}
.nav-phone{display:flex;flex-direction:column;align-items:flex-end;gap:7px;border-left:1px solid #d8ad4350;padding-left:22px;white-space:nowrap}
.nav-phone small{font-size:9px;color:#bcb7a7;letter-spacing:2px;font-weight:700}
.nav-phone strong{font-family:'Barlow Condensed',Arial,sans-serif;font-size:25px;color:var(--gold);letter-spacing:.6px}
.nav-phone:hover strong{color:#f3d486}
.footer-secondary{font-size:10px;color:#666c69}.footer-secondary a{color:#777e7a}.footer-secondary a:hover{color:var(--gold)}
.hero-inner{padding-top:170px}
.foot{flex-wrap:wrap}
@media(max-width:950px){.nav-logo-crop{width:190px;height:76px}.nav-logo-crop img{width:190px}.nav{min-height:90px}}
@media(max-width:650px){.nav-logo-crop{width:148px;height:60px}.nav-logo-crop img{width:148px}.nav{min-height:75px;gap:10px}.nav-phone{padding-left:10px}.nav-phone small{font-size:7px;letter-spacing:.6px}.nav-phone strong{font-size:18px}.hero-inner{padding-top:165px}.footer-secondary{width:100%;text-align:left}}

.hero-stats .stat:first-child strong{font-size:clamp(25px,2.7vw,40px);color:#e5b747}
.hero-stats .stat:nth-child(2) span{color:#e6d3a4}
@media(max-width:650px){.hero-stats .stat:first-child strong{font-size:18px}}


/* Great Britton premium responsive refresh */
.nav-brand{display:flex!important;align-items:center!important;flex:0 0 auto!important;max-width:none!important;overflow:visible!important;height:auto!important}
.header-logo{display:block!important;width:clamp(185px,23vw,315px)!important;max-width:100%!important;height:auto!important;object-fit:contain!important;object-position:center!important;filter:drop-shadow(0 1px 3px #0008)!important}
.nav-logo-crop{display:none!important}
header{background:linear-gradient(180deg,#080a0af5,#080a0aee)!important;border-bottom:1px solid #c59b3860!important}
.nav{min-height:100px!important;gap:20px!important}
.hero{background:linear-gradient(90deg,#07090af0 0%,#07090ad0 35%,#07090a35 80%),linear-gradient(0deg,#07090a 0%,transparent 40%),url('https://images.unsplash.com/photo-1600607687920-4e2a09cf159d?auto=format&fit=crop&w=2200&q=85') center/cover!important}
.mobile-toggle{display:none;background:transparent;border:1px solid #b79550;color:#d8ad43;font-size:23px;width:44px;height:44px;cursor:pointer}
@media(max-width:950px){.nav{min-height:86px!important}.header-logo{width:220px!important}.mobile-toggle{display:flex;align-items:center;justify-content:center;order:3}.nav nav{display:none!important;position:absolute;top:100%;left:0;right:0;background:#0d1010;padding:25px;flex-direction:column;gap:22px;border-bottom:1px solid #b79550}.nav nav.is-open{display:flex!important}.nav nav a{padding:8px 0!important}.nav .btn{margin-left:auto!important}}
@media(max-width:650px){header{top:35px!important}.container{width:calc(100% - 34px)!important}.nav{min-height:74px!important;gap:9px!important}.header-logo{width:clamp(140px,40vw,185px)!important}.nav .btn{padding:12px 9px!important;font-size:9px!important;letter-spacing:.3px!important}.mobile-toggle{width:37px;height:37px;font-size:20px}.hero{min-height:800px!important}.hero-inner{padding-top:150px!important}.hero h1{font-size:clamp(52px,13vw,86px)!important;overflow-wrap:normal}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.service{min-width:0!important}.sectionhead h2{font-size:clamp(46px,11vw,70px)!important}.hero-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important}.stat strong{font-size:clamp(13px,4vw,20px)!important}.stat span{font-size:8px!important}.projects-grid,.about-grid,.contact-grid{grid-template-columns:1fr!important}.project:first-child{grid-row:auto!important;min-height:360px!important}}
@media(max-width:370px){.header-logo{width:125px!important}.nav .btn{font-size:8px!important}.services-grid{grid-template-columns:1fr!important}}

/* Production adaptation of supplied reference */
header{top:0!important;position:absolute;z-index:30;background:linear-gradient(180deg,#080a0af5,#080a0aee)!important}
.nav{min-height:96px!important;display:flex;align-items:center;justify-content:space-between;gap:26px!important}
.nav-brand{width:285px;max-width:28%;flex:0 1 285px!important}
.header-logo{width:100%!important;max-width:285px!important;height:auto!important;display:block;object-fit:contain}
.nav nav{display:flex;justify-content:center;align-items:center;gap:clamp(15px,2vw,33px);flex:1}
.nav nav a{white-space:nowrap;font-size:10px}
.nav-phone{margin-left:auto;flex:0 0 auto}
.hero-inner{padding-top:155px!important}
.mobile-toggle{display:none}
.notice{display:none!important}
.inner-hero{padding-top:190px}
@media(max-width:1100px){.nav-brand{max-width:220px}.nav nav{gap:14px}.nav nav a{font-size:9px;letter-spacing:1px}.nav-phone strong{font-size:21px}}
@media(max-width:950px){.nav{min-height:82px!important}.nav-brand{max-width:220px}.nav nav{display:none!important;position:absolute;top:100%;left:0;right:0;background:#0b0d0e;padding:24px;flex-direction:column;align-items:stretch;gap:12px;border-bottom:1px solid #b79550}.nav nav.is-open{display:flex!important}.mobile-toggle{display:flex;align-items:center;justify-content:center;order:3;flex:0 0 44px}.nav-phone{margin-left:auto}.nav-phone strong{font-size:20px}.hero-inner{padding-top:140px!important}}
@media(max-width:650px){.nav{gap:10px!important;min-height:74px!important}.nav-brand{max-width:42%;flex:0 1 42%!important}.header-logo{width:100%!important}.nav-phone{padding-left:8px}.nav-phone small{display:none}.nav-phone strong{font-size:clamp(14px,4vw,18px)}.mobile-toggle{flex-basis:37px}.hero-inner{padding-top:130px!important}.hero{min-height:790px!important}.hero h1{font-size:clamp(56px,12.5vw,84px)!important}.inner-hero{padding-top:145px}.hero-stats .stat strong{font-size:clamp(14px,4vw,21px)!important}}
@media(max-width:390px){.nav-phone strong{font-size:13px}.nav-brand{max-width:39%}}

/* Great Britton: refined premium navigation and mobile polish */
html{scroll-padding-top:110px}
header{position:relative!important;top:auto!important;z-index:50!important;background:linear-gradient(120deg,#090b0c 0%,#131719 65%,#090b0c 100%)!important;border-bottom:1px solid rgba(216,173,67,.42)!important;box-shadow:0 14px 45px rgba(0,0,0,.32)}
header:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,#a98435 35%,#e5bc5b 60%,transparent);opacity:.8;pointer-events:none}
.nav{min-height:106px!important;gap:clamp(12px,2vw,34px)!important}
.nav-brand{max-width:260px!important;width:260px!important;flex:0 1 260px!important;transition:opacity .2s}
.nav-brand:hover{opacity:.86}
.header-logo{max-width:260px!important;filter:drop-shadow(0 3px 8px #0009)!important}
.nav nav{gap:clamp(12px,1.7vw,30px)!important}
.nav nav a{font-size:10px!important;letter-spacing:1.5px!important;font-weight:700;position:relative;padding:14px 0;transition:color .2s}
.nav nav a:after{content:"";position:absolute;bottom:7px;left:0;right:100%;height:1px;background:var(--gold);transition:right .25s}
.nav nav a:hover:after,.nav nav a[aria-current="page"]:after{right:0}
.nav-phone{border:1px solid rgba(216,173,67,.55)!important;padding:12px 18px!important;background:linear-gradient(125deg,rgba(216,173,67,.09),rgba(216,173,67,.025));align-items:center!important;gap:4px!important;transition:background .2s,border-color .2s}
.nav-phone:hover{background:rgba(216,173,67,.16);border-color:#d8ad43}
.nav-phone small{letter-spacing:1.6px!important;font-size:8px!important}
.nav-phone strong{font-size:clamp(19px,1.75vw,25px)!important;line-height:1.1}
.mobile-toggle{display:none!important;position:relative;border:1px solid rgba(216,173,67,.55)!important;border-radius:2px;background:#15191a!important;cursor:pointer;min-width:44px;min-height:44px;padding:0;align-items:center;justify-content:center}
.hamburger-lines{display:flex;flex-direction:column;gap:5px}.hamburger-lines i{display:block;width:20px;height:2px;background:#e6bc57;transition:transform .2s,opacity .2s}
.mobile-toggle[aria-expanded="true"] .hamburger-lines i:first-child{transform:translateY(7px) rotate(45deg)}
.mobile-toggle[aria-expanded="true"] .hamburger-lines i:nth-child(2){opacity:0}
.mobile-toggle[aria-expanded="true"] .hamburger-lines i:last-child{transform:translateY(-7px) rotate(-45deg)}
.hero-inner{padding-top:100px!important}
.inner-hero{padding-top:100px!important}
:focus-visible{outline:2px solid #e8bd58;outline-offset:4px}
@media(max-width:1120px){.nav-brand{max-width:205px!important;width:205px!important;flex-basis:205px!important}.nav-phone{padding:10px 12px!important}.nav nav a{font-size:9px!important;letter-spacing:.8px!important}}
@media(max-width:950px){
 .nav{min-height:82px!important;display:flex!important;flex-wrap:nowrap}
 .nav-brand{max-width:200px!important;width:200px!important;flex:0 1 200px!important}
 .nav-phone{margin-left:auto!important}
 .nav-phone small{display:none!important}
 .nav-phone strong{font-size:19px!important}
 .mobile-toggle{display:flex!important;order:3;flex:0 0 44px!important}
 .nav nav{display:none!important;position:absolute!important;top:100%;left:0;right:0;flex-direction:column!important;align-items:stretch!important;gap:0!important;padding:12px max(20px,calc((100vw - 1320px)/2)) 20px!important;background:#0c1011!important;border-bottom:1px solid #b79550;box-shadow:0 22px 30px #0008}
 .nav nav.is-open{display:flex!important}
 .nav nav a{display:block;padding:16px 10px!important;border-bottom:1px solid #ffffff14;font-size:12px!important;letter-spacing:1.5px!important}
 .nav nav a:after{display:none}
 .hero-inner{padding-top:100px!important}
}
@media(max-width:650px){
 .container{width:calc(100% - 36px)!important}
 .nav{min-height:74px!important;gap:8px!important}
 .nav-brand{max-width:45%!important;width:45%!important;flex:0 1 45%!important}
 .header-logo{max-width:100%!important}
 .nav-phone{padding:8px 9px!important;border-radius:2px}
 .nav-phone strong{font-size:clamp(12px,3.45vw,17px)!important;white-space:nowrap}
 .mobile-toggle{min-width:40px;min-height:40px;flex:0 0 40px!important}
 .hero{min-height:0!important;display:block!important;padding-bottom:0!important}
 .hero-inner{padding-top:76px!important;padding-bottom:58px!important}
 .hero h1{font-size:clamp(49px,12.3vw,79px)!important;line-height:.9!important;letter-spacing:-.4px!important}
 .hero-desc{max-width:100%;font-size:14px!important}
 .hero-bottom{position:relative!important}
 .hero-stats{grid-template-columns:1fr!important}
 .stat,.stat:first-child{padding:13px 2px!important;border-right:0!important;border-bottom:1px solid #ffffff22!important}
 .stat:last-child{border-bottom:0!important}
 .stat strong,.hero-stats .stat:first-child strong{font-size:23px!important}
 .stat span{font-size:9px!important;letter-spacing:1px!important}
 .actions{gap:10px}.actions .btn{padding:15px 17px;font-size:10px}
 .inner-hero{padding-top:75px!important}
 .section{padding:68px 0}
 .service h3{overflow-wrap:anywhere}
 .contact-grid{gap:30px}
 .phones a{font-size:clamp(29px,8vw,43px)}
}
@media(max-width:390px){.nav-brand{max-width:39%!important;width:39%!important;flex-basis:39%!important}.nav-phone strong{font-size:12px!important}.nav-phone{padding:7px!important}.hero h1{font-size:clamp(45px,12vw,55px)!important}.services-grid{grid-template-columns:1fr!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* Uploaded construction portfolio — responsive, no fabricated project associations */
.gb-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:35px 0 28px}
.gb-photo-item{position:relative;display:block;overflow:hidden;background:#1b1e1e;border:1px solid #3e3b32;aspect-ratio:4/3}
.gb-photo-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease;filter:saturate(.92)}
.gb-photo-item:hover img{transform:scale(1.04)}
.gb-photo-label{position:absolute;left:0;right:0;bottom:0;padding:35px 15px 14px;background:linear-gradient(transparent,rgba(0,0,0,.83));color:#e5c16d;font:700 12px 'DM Sans',sans-serif;letter-spacing:1.5px}
.gb-photo-item:focus-visible{outline:3px solid #d8ad43;outline-offset:3px}
@media(max-width:900px){.gb-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}
@media(max-width:540px){.gb-photo-grid{grid-template-columns:1fr;gap:14px}.gb-photo-item{aspect-ratio:4/3}}

/* Premium project gallery */
.portfolio-toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 26px}.filter-btn{border:1px solid #5c5035;background:#171a1b;color:#ddd8cb;padding:13px 19px;cursor:pointer;font:700 11px "DM Sans",sans-serif;letter-spacing:1.1px;text-transform:uppercase}.filter-btn.active,.filter-btn:hover{background:#d8ad43;color:#0a0c0d}.portfolio-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.portfolio-tile{display:block;position:relative;overflow:hidden;border:1px solid #3a372e;padding:0;aspect-ratio:4/3;background:#1a1d1c;cursor:pointer;text-align:left}.portfolio-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s}.portfolio-tile:hover img{transform:scale(1.045)}.tile-caption{position:absolute;bottom:0;left:0;right:0;padding:36px 14px 12px;background:linear-gradient(transparent,#080909dd);display:flex;flex-direction:column;gap:5px;color:#fff}.tile-caption b{font-size:11px;letter-spacing:.5px}.tile-caption small{font-size:10px;color:#d8ad43;letter-spacing:1px;text-transform:uppercase}.portfolio-disclaimer{margin:26px 0 0;color:#9ea29f;font-size:12px;line-height:1.8}.portfolio-tile[hidden]{display:none}.lightbox[hidden]{display:none}.lightbox{position:fixed;inset:0;z-index:1000;background:#050606f5;display:flex;align-items:center;justify-content:center;padding:65px 65px}.lightbox img{max-width:100%;max-height:100%;object-fit:contain}.lightbox button{position:absolute;border:1px solid #8c7642;background:#101313;color:#d8ad43;font-size:32px;width:48px;height:48px;cursor:pointer}.lightbox-close{right:20px;top:20px}.lightbox-prev{left:10px;top:50%}.lightbox-next{right:10px;top:50%}@media(max-width:1000px){.portfolio-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.portfolio-toolbar{gap:7px}.filter-btn{padding:11px 12px;font-size:10px}.tile-caption{padding:28px 9px 9px}.tile-caption b{font-size:10px}.tile-caption small{font-size:9px}.lightbox{padding:60px 12px}.lightbox-prev{left:5px}.lightbox-next{right:5px}.lightbox button{width:37px;height:40px;font-size:24px}}

/* Linked service cards */
a.service-link{display:block;color:inherit;text-decoration:none;position:relative;min-width:0}a.service-link:focus-visible{outline:3px solid var(--gold);outline-offset:-3px}.service-cta{display:block;margin-top:17px;color:var(--gold);font-size:10px;font-weight:800;letter-spacing:1.4px}.service-link:hover{background:#242727}
.gallery-jump{display:flex;flex-wrap:wrap;gap:9px;margin-top:32px}.gallery-jump a{border:1px solid #7a693e;color:#e9e1cd;padding:11px 15px;font-size:11px;font-weight:700;letter-spacing:.4px}.gallery-jump a:hover,.gallery-jump a:focus-visible{background:var(--gold);color:#111}
.gallery-section{padding:75px 0 85px;border-bottom:1px solid #363a36;scroll-margin-top:25px;background:#0d1010}.gallery-section:nth-child(even){background:#151818}.gallery-section h2{font:800 clamp(45px,6vw,78px)/.96 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:20px 0 14px}.gallery-description{max-width:730px;color:#b7bcb9;line-height:1.8;font-size:14px;margin-bottom:27px}
.category-slider{position:relative;max-width:1150px}.slide-stage{position:relative;background:#080a0a;height:min(65vw,630px);min-height:280px;border:1px solid #454034}.slide{position:absolute;inset:0;margin:0;display:none}.slide.active{display:block}.slide img{width:100%;height:100%;object-fit:contain}.slide figcaption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#080a0ad9);padding:45px 18px 13px;font-size:12px;color:#e7e4dd}.slide-arrow{position:absolute;top:42%;z-index:2;width:49px;height:62px;background:#090b0bca;color:#f4d083;border:1px solid #94783f;font-size:40px;cursor:pointer}.slide-arrow.prev{left:10px}.slide-arrow.next{right:10px}.slide-arrow:hover{background:#4a3a1b}.slide-controls{display:flex;align-items:center;justify-content:space-between;margin:14px 0;color:var(--gold);font-size:12px;letter-spacing:2px}.open-fullscreen{background:transparent;color:var(--gold);border:0;cursor:pointer;font-weight:800;letter-spacing:1px}.slide-thumbs{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 14px;scrollbar-color:#b28c42 #171919}.thumb{width:100px;height:75px;flex:none;border:2px solid transparent;background:#181a1b;padding:0;cursor:pointer}.thumb.active,.thumb:focus-visible{border-color:var(--gold)}.thumb img{width:100%;height:100%;object-fit:cover}.photo-dialog{padding:42px 15px 16px;background:#080a0a;border:1px solid var(--gold);color:#eee;max-width:min(95vw,1250px);max-height:94vh}.photo-dialog::backdrop{background:#000e}.photo-dialog img{display:block;max-width:100%;max-height:75vh;object-fit:contain;margin:auto}.dialog-close{position:absolute;right:8px;top:3px;background:transparent;border:0;color:var(--gold);font-size:33px;cursor:pointer}.dialog-caption{text-align:center;font-size:12px;color:#ddd}
@media(max-width:650px){.gallery-section{padding:55px 0}.slide-stage{height:380px;min-height:0}.slide-arrow{width:39px;height:48px;font-size:32px}.thumb{width:77px;height:60px}.gallery-jump a{font-size:10px;padding:9px}.slide figcaption{font-size:10px}}


/* Great Britton mobile service refinements — preserves desktop design */
.service-cta .service-arrow {
  display: inline-block;
  margin-left: 6px;
  color: var(--gold);
  font-family: "DM Sans", Arial, sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  vertical-align: -1px;
}
@media (max-width: 650px) {
  .services-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .services-grid > .service,
  .services-grid > .service-link {
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 30px 26px !important;
  }
  .services-grid > .service-link > .service {
    padding: 0 !important;
    min-height: 0 !important;
    background: transparent !important;
  }
  .services-grid .service h3 {
    font-size: clamp(32px, 9vw, 42px) !important;
    line-height: 1.05 !important;
    margin: 34px 0 15px !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }
  .services-grid .service p {
    font-size: 14px !important;
    line-height: 1.75 !important;
  }
  .services-grid .service .symbol {
    top: 25px !important;
    right: 25px !important;
    font-size: 30px !important;
    line-height: 1 !important;
    opacity: .75;
  }
  .services-grid .service-cta {
    margin-top: 24px !important;
    font-size: 11px !important;
    line-height: 1.5;
  }
}

/* Vector arrows: no emoji fallback on iOS or Android */
.gb-arrow{display:inline-block;width:16px;height:16px;flex:none;vertical-align:-2px;color:inherit;stroke:currentColor}
.service-cta .gb-arrow{width:16px;height:16px;margin-left:7px;color:var(--gold);vertical-align:-3px}
.service-next-icon .gb-arrow{width:31px;height:31px;color:var(--gold);opacity:.8}
.nav-phone .gb-arrow{width:17px;height:17px;color:var(--gold)}
@media(max-width:650px){.service-cta .gb-arrow{width:17px;height:17px}}
