:root{--navy:#061b30;--navy2:#0a2947;--gold:#e2b43b;--gold2:#bd870d;--cream:#f7f5ef;--ink:#0b2340}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{text-decoration:none;color:inherit}.site-header{height:120px;background:var(--navy);color:#fff;border-bottom:1px solid #9b7718;position:relative;z-index:5}.header-inner{height:100%;max-width:1540px;margin:auto;display:flex;align-items:center;padding:0 40px}.logo{width:300px;height:110px;display:flex;align-items:center;overflow:hidden}.logo img{width:270px;height:auto;display:block;filter:drop-shadow(0 4px 5px rgba(0,0,0,.25))}.header-right{margin-left:auto;align-self:stretch;display:flex;flex-direction:column;justify-content:center;gap:18px}.contact-strip{display:flex;justify-content:flex-end;gap:32px;font-size:12px;color:#eef2f6}.contact-strip a:first-child,.contact-strip a:nth-child(2),.contact-strip span{white-space:nowrap}.contact-strip a::first-letter,.contact-strip span::first-letter{color:var(--gold)}nav{display:flex;align-items:center;gap:35px}nav a{font-size:12px;letter-spacing:2px;font-weight:800}nav a.active{color:var(--gold);padding-bottom:10px;border-bottom:2px solid var(--gold)}.nav-cta{border:1px solid var(--gold);padding:15px 23px!important;color:#fff!important}.hero{height:600px;background:linear-gradient(90deg,rgba(3,24,42,.96) 0%,rgba(3,24,42,.78) 38%,rgba(3,24,42,.2) 69%,rgba(3,24,42,.06)),url('hero-outdoor.jpg') center 53%/cover no-repeat;color:#fff;position:relative;display:flex;align-items:center}.hero-copy{width:1450px;max-width:100%;margin:auto;padding:45px 50px}.kicker{font-size:13px;font-weight:800;letter-spacing:5px;color:var(--gold);margin-bottom:13px}.hero h1,.section-head h2,.contact-band h2{font-family:Georgia,'Times New Roman',serif}.hero h1{font-size:58px;line-height:.95;margin:0 0 22px;max-width:720px;letter-spacing:-1px}.hero h1 em{font-style:normal;color:var(--gold)}.hero p{font-size:17px;line-height:1.55;max-width:540px;color:#f1f4f7}.hero-buttons{display:flex;gap:18px;margin-top:26px}.button{display:inline-block;padding:16px 22px;font-size:12px;font-weight:900;letter-spacing:1.4px}.button.gold{background:linear-gradient(135deg,#f0c64f,#c79516);color:#071a2d;box-shadow:0 7px 20px rgba(0,0,0,.18)}.button.outline{border:1px solid var(--gold);color:#fff}.values{display:flex;gap:48px;margin-top:38px}.values div{display:flex;align-items:center;gap:12px;font-size:10px;letter-spacing:1.5px;line-height:1.5}.values span{font-size:31px;color:var(--gold)}.services-home{padding:40px 22px 28px;background:#fbfaf7}.section-head{text-align:center}.section-head h2{font-size:34px;line-height:1.05;margin:5px 0 10px}.section-head p{margin:0 0 30px;line-height:1.5;color:#3d526a;font-size:15px}.service-cards{max-width:1480px;margin:auto;display:grid;grid-template-columns:repeat(5,1fr);gap:15px}.service-cards article{background:#fff;border:1px solid #e1ded5;min-width:0}.service-cards img,.service-cards .photo{width:100%;height:190px;object-fit:cover;display:block}.photo.commercial{background:linear-gradient(rgba(7,28,49,.08),rgba(7,28,49,.08)),url('jbe-brand.png') 9% 31%/220% auto no-repeat}.photo.residential{background:url('jbe-brand.png') 94% 48%/230% auto no-repeat}.card-copy{padding:16px 18px 20px}.card-copy h3{font:700 17px Georgia,serif;margin:0;color:#122945}.card-copy i,.project i{display:block;width:27px;height:2px;background:var(--gold);margin:10px 0 12px}.card-copy p{font-size:13px;line-height:1.35;color:#43556b;min-height:70px}.card-copy a{font-size:10px;letter-spacing:1.4px;font-weight:800;color:#a87705}.featured{background:linear-gradient(rgba(5,27,47,.97),rgba(5,27,47,.97)),url('jbe-brand.png') center/cover;color:#fff;padding:34px 38px 42px}.section-head.light h2{font-size:32px;margin-bottom:25px}.project-row{max-width:1450px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr) 180px;gap:18px;align-items:center}.project img{width:100%;height:205px;object-fit:cover;border:1px solid var(--gold)}.project h3{font:700 14px Georgia,serif;letter-spacing:.7px;margin:9px 0 0}.project i{margin-top:8px}.view-projects{border:1px solid var(--gold);padding:16px 15px;font-size:10px;font-weight:800;letter-spacing:1px;text-align:center}.contact-band{min-height:150px;background:linear-gradient(110deg,#5a4318 0%,#0a2947 36%,#061b30 100%);color:#fff;display:grid;grid-template-columns:1.25fr 1fr 1fr 1.15fr;align-items:center;padding:25px 48px;gap:25px;border-top:1px solid var(--gold);border-bottom:1px solid var(--gold)}.contact-band>div:not(:first-child){border-left:1px solid rgba(226,180,59,.65);padding-left:35px}.contact-band h2{font-size:27px;margin:0 0 8px}.contact-band p{font-size:10px;letter-spacing:1.5px}.person h3{font:700 16px Georgia,serif;margin:0 0 9px}.person a{display:block;font-size:12px;line-height:1.9}.consult p{margin:12px 0 0;text-align:center;line-height:1.35}footer{background:#06192c;color:#fff;min-height:100px;padding:20px 45px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #856711}.footer-logo{font:700 22px Georgia,serif;letter-spacing:4px}.footer-logo span{color:var(--gold)}.footer-logo small{display:block;font:700 8px Arial,sans-serif;letter-spacing:3px;margin-top:12px;color:#cfd7e0}footer nav a{font-size:9px}.pagehero{background:linear-gradient(rgba(5,27,47,.92),rgba(5,27,47,.92)),url('hero-outdoor.jpg') center/cover;color:#fff;padding:90px 30px;text-align:center}.pagehero h1{font:700 48px Georgia,serif;margin:10px}.section{padding:65px 30px}.wrap{max-width:1250px;margin:auto}.service-list,.contactgrid,.projectpage{display:grid;grid-template-columns:repeat(2,1fr);gap:25px}.servicebox,.person-card{background:#fff;padding:32px;border-top:3px solid var(--gold);box-shadow:0 8px 25px rgba(0,0,0,.05)}.projectpage{grid-template-columns:repeat(3,1fr)}.projectpage .project{background:#fff;padding-bottom:15px;color:var(--ink)}.projectpage .project img{border:0}.projectpage .project h3,.projectpage .project p{margin-left:15px;margin-right:15px}@media(max-width:1050px){.site-header{height:auto}.header-inner{flex-wrap:wrap;padding:10px 25px}.logo{width:220px;height:80px}.logo img{width:210px}.contact-strip{display:none}.header-right{margin-left:auto}.header-right nav{gap:17px}.nav-cta{display:none}.service-cards{grid-template-columns:repeat(3,1fr)}.project-row{grid-template-columns:repeat(3,1fr)}.view-projects{grid-column:1/-1;width:220px;justify-self:center}.contact-band{grid-template-columns:1fr 1fr}.contact-band>div:nth-child(3){border-left:0}}@media(max-width:720px){.header-inner{display:block}.logo{margin:auto}.header-right nav{justify-content:center;gap:13px;flex-wrap:wrap;padding-bottom:12px}.header-right nav a{font-size:9px}.hero{height:650px;background-position:62% center}.hero-copy{padding:50px 24px;background:linear-gradient(90deg,rgba(3,24,42,.78),rgba(3,24,42,.25))}.hero h1{font-size:43px}.hero p{font-size:15px;max-width:90%}.hero-buttons,.values{flex-direction:column;align-items:flex-start}.values{gap:12px}.service-cards,.project-row,.contact-band,.service-list,.contactgrid,.projectpage{grid-template-columns:1fr}.service-cards{max-width:430px}.service-cards img,.service-cards .photo{height:240px}.contact-band>div:not(:first-child){border-left:0;border-top:1px solid rgba(226,180,59,.45);padding:18px 0 0}.featured{padding-left:20px;padding-right:20px}footer{flex-direction:column;gap:20px;text-align:center}footer nav{flex-wrap:wrap;justify-content:center}}

/* Digital business card */
.digital-card{background:linear-gradient(145deg,#071d31,#0c304c);color:#fff;padding:70px 0;border-top:1px solid #c99a32;border-bottom:1px solid #c99a32}
.digital-card .card-shell{max-width:1080px;margin:auto;padding:0 24px;display:grid;grid-template-columns:1.25fr .75fr;gap:48px;align-items:center}
.digital-card h2{font-family:Georgia,'Times New Roman',serif;font-size:42px;line-height:1.05;margin:8px 0 15px;color:#fff}
.digital-card .goldtext{color:#e3ad35}.digital-card p{color:#d7e0e8;line-height:1.7;max-width:650px}
.card-actions{display:flex;flex-wrap:wrap;gap:12px;margin:25px 0}.card-actions a{display:inline-block;padding:13px 18px;border:1px solid #d5a431;color:#fff;text-decoration:none;font-size:12px;letter-spacing:1.2px;font-weight:700}.card-actions a.primary{background:#d9aa3c;color:#071d31}
.contact-people{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:24px}.mini-person{border-left:2px solid #d5a431;padding-left:16px}.mini-person strong{display:block;font-family:Georgia,serif;font-size:21px;margin-bottom:8px}.mini-person a{display:block;color:#fff;text-decoration:none;margin:6px 0}
.qr-panel{background:#fff;padding:22px;text-align:center;box-shadow:0 16px 35px rgba(0,0,0,.28)}.qr-panel img{width:100%;max-width:280px;height:auto}.qr-panel strong{display:block;color:#071d31;font-size:15px;letter-spacing:1.3px;margin-top:10px}.qr-panel span{display:block;color:#56616b;font-size:12px;margin-top:6px}
@media(max-width:760px){.digital-card .card-shell{grid-template-columns:1fr}.contact-people{grid-template-columns:1fr}.digital-card h2{font-size:34px}.qr-panel{max-width:330px;margin:auto}}

/* Contact page primary phone focal point */
.main-contact{background:#fbfaf7;padding:58px 24px 10px;text-align:center}.main-contact-inner{max-width:900px;margin:auto;background:linear-gradient(135deg,#071d31,#0c304c);color:#fff;padding:46px 30px 50px;border:1px solid #b98b24;box-shadow:0 18px 42px rgba(5,27,47,.16)}.main-contact h2{font:700 35px Georgia,'Times New Roman',serif;margin:8px 0 10px}.main-contact p{margin:0 0 20px;color:#d8e0e8;font-size:15px}.main-phone{display:block;font:700 56px Georgia,'Times New Roman',serif;color:#e2b43b;letter-spacing:1px;margin:10px 0 24px}.main-call-btn{display:inline-block}.section .section-head{margin-bottom:30px}.contactgrid .person{background:#fff;padding:34px;border-top:3px solid var(--gold);box-shadow:0 8px 25px rgba(0,0,0,.05)}.contactgrid .person h2{font:700 30px Georgia,serif;margin:7px 0 15px}.contactgrid .person>a:not(.btn){display:block;margin:8px 0;color:#17324f}.contactgrid .person .btn{display:inline-block;margin-top:16px}@media(max-width:720px){.main-contact{padding-top:35px}.main-contact-inner{padding:36px 18px}.main-contact h2{font-size:29px}.main-phone{font-size:39px;letter-spacing:0}}
