:root{--navy:#071c35;--navy2:#0b294b;--gold:#b99052;--ink:#1d2835;--muted:#65707c;--line:#e5e7ea;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;background:#fff}button,input,select,textarea{font:inherit}a{text-decoration:none;color:inherit}img{display:block;width:100%}
.site-header{height:74px;display:flex;align-items:center;justify-content:space-between;padding:0 9vw;background:#fff;position:sticky;top:0;z-index:50;border-bottom:1px solid #f0f1f2}.brand{display:flex;flex-direction:column;line-height:1}.brand-mark{font-family:Georgia,'Times New Roman',serif;font-size:34px;letter-spacing:1px;color:var(--navy)}.brand-mark span{color:var(--gold)}.brand-name{font-size:9px;letter-spacing:3px;color:#6d7279;margin-top:4px}
.nav{display:flex;align-items:center;justify-content:flex-end;gap:18px;margin-left:auto;flex:0 0 auto;font-size:11px;font-weight:700;letter-spacing:1.3px;color:var(--navy)}.nav a,.nav-link-btn{position:relative;display:inline-flex;flex:0 0 auto;margin:0;border:0;background:transparent;color:inherit;padding:27px 0 23px;font:inherit;letter-spacing:inherit;cursor:pointer}.nav a::after,.nav-link-btn::after{content:"";position:absolute;left:0;right:0;bottom:16px;height:2px;background:transparent}.nav a:hover::after,.nav-link-btn:hover::after,.nav a.active::after{background:var(--gold)}.nav-link-btn:focus-visible,.nav a:focus-visible{outline:2px solid var(--gold);outline-offset:5px}.menu-toggle{display:none;border:0;background:none;padding:5px}.menu-toggle span{display:block;width:24px;height:2px;background:var(--navy);margin:5px 0}
.hero{height:430px;position:relative;background-color:var(--navy);background-image:url('assets-final/hero.jpg');background-size:auto 100%;background-repeat:no-repeat;background-position:right center;overflow:hidden}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,28,53,1) 0%,rgba(7,28,53,.96) 26%,rgba(7,28,53,.70) 43%,rgba(7,28,53,.08) 66%,rgba(7,28,53,0) 100%)}.hero-inner{position:relative;z-index:1;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:0 9vw}.hero h1{font-family:Georgia,'Times New Roman',serif;color:#fff;font-size:52px;font-weight:400;line-height:1.05;margin:0 0 24px;text-shadow:0 1px 10px rgba(0,0,0,.24)}
.primary-btn,.outline-btn{border:1px solid transparent;min-height:48px;padding:0 25px;font-size:11px;font-weight:700;letter-spacing:1.2px;cursor:pointer}.primary-btn{background:var(--navy);color:#fff;border-color:rgba(255,255,255,.22)}.primary-btn:hover{background:var(--navy2)}
.services{padding:24px 8vw 30px;background:#fff}.section-label{text-align:center;font-size:10px;font-weight:700;letter-spacing:1.8px;color:#444d56;margin:0 0 17px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);max-width:1120px;margin:0 auto}.service-card{text-align:center;padding:10px 34px;border-right:1px solid var(--line)}.service-card:last-child{border-right:0}.service-card svg{width:38px;height:38px;fill:none;stroke:#202d3d;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;margin:0 auto 14px}.service-card h2{font-size:11px;letter-spacing:1.05px;color:#273344;margin:0 0 9px}.service-card p{font-size:11px;color:#606a76;margin:0}

.cta{background:linear-gradient(90deg,var(--navy),#0c3157);color:#fff;text-align:center;padding:22px 20px 24px}.cta h2{font-family:Georgia,'Times New Roman',serif;font-size:27px;font-weight:400;margin:0 0 13px}.outline-btn{background:transparent;border-color:rgba(255,255,255,.75);color:#fff}.outline-btn:hover{background:#fff;color:var(--navy)}

.company-network{padding:22px 8vw 30px;background:#fff;border-top:1px solid #eef0f2}.company-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:980px;margin:0 auto}.company-card{display:block;border:1px solid #e2e5e9;padding:18px 22px 20px;background:#fff;transition:border-color .2s ease,transform .2s ease}.company-card:hover{border-color:#b99052;transform:translateY(-1px)}.company-logo-wrap{height:92px;display:flex;align-items:center;justify-content:flex-start;margin-bottom:12px;overflow:hidden}.company-logo{width:auto;max-width:100%;max-height:86px;object-fit:contain;object-position:left center}.esco-logo{max-height:90px}.gotstucco-logo{max-height:78px}.company-copy{min-width:0}.company-subtitle{font-size:12px;font-weight:700;letter-spacing:1.1px;color:#c87908;margin:0 0 8px}.company-desc{font-size:12px;line-height:1.55;color:#606a76;margin-bottom:10px;max-width:430px}.company-site{font-size:11px;font-weight:700;letter-spacing:1px;color:#c87908}
.modal[hidden]{display:none}.modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px}.modal-backdrop{position:absolute;inset:0;background:rgba(4,16,31,.72);backdrop-filter:blur(2px)}.modal-card{position:relative;z-index:1;width:min(760px,100%);max-height:92vh;overflow:auto;background:#fff;padding:38px 42px 34px;box-shadow:0 24px 80px rgba(0,0,0,.35)}.about-card{width:min(650px,100%)}.modal-label{text-align:left;color:var(--gold);margin-bottom:8px}.modal-card h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:34px;color:var(--navy);margin:0 0 8px}.modal-intro,.about-copy{font-size:13px;line-height:1.65;color:var(--muted);margin:0 0 24px}.about-copy{margin-bottom:0}.modal-close{position:absolute;right:18px;top:14px;border:0;background:none;color:var(--navy);font-size:31px;line-height:1;cursor:pointer}.project-form{position:relative}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px 18px;margin-bottom:15px}.project-form label{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:700;color:#293545}.project-form label span{color:#a86c32}.project-form input,.project-form select,.project-form textarea{width:100%;border:1px solid #d9dde1;background:#fff;padding:12px 13px;font-size:13px;color:#222;outline:none}.project-form input:focus,.project-form select:focus,.project-form textarea:focus{border-color:#8d9aaa;box-shadow:0 0 0 2px rgba(7,28,53,.06)}.project-form textarea{resize:vertical;margin-bottom:16px}.form-submit{width:100%}.privacy-note{text-align:center;font-size:10px;color:#7b848d;margin:12px 0 0}.form-status{padding:12px 14px;margin:0 0 18px;font-size:12px;border:1px solid}.form-status.success{background:#f1f8f4;border-color:#99b9a6;color:#315f43}.form-status.error{background:#fff4f3;border-color:#d8aaa5;color:#7b3530}.honeypot{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}body.modal-open{overflow:hidden}
@media(max-width:850px){.site-header{height:68px;padding:0 6vw}.brand-mark{font-size:29px}.nav{display:none;position:absolute;top:68px;left:0;right:0;background:#fff;flex-direction:column;align-items:stretch;gap:0;padding:10px 6vw 18px;border-top:1px solid #eee;box-shadow:0 12px 25px rgba(0,0,0,.08)}.nav.open{display:flex}.nav a,.nav-link-btn{width:100%;text-align:left;padding:13px 0}.nav a::after,.nav-link-btn::after{bottom:4px;right:auto;width:26px}.menu-toggle{display:block}.hero{height:470px;background-size:100% auto;background-position:center bottom}.hero-overlay{background:linear-gradient(180deg,rgba(7,28,53,1) 0%,rgba(7,28,53,.96) 38%,rgba(7,28,53,.62) 55%,rgba(7,28,53,0) 78%)}.hero-inner{padding:0 7vw;justify-content:flex-start;padding-top:58px}.hero h1{font-size:42px}.service-grid{grid-template-columns:1fr}.service-card{border-right:0;border-bottom:1px solid var(--line);padding:20px}.service-card:last-child{border-bottom:0}.company-grid{grid-template-columns:1fr;max-width:620px}.company-logo-wrap{height:84px}.company-logo{max-height:78px}.gotstucco-logo{max-height:70px}.cta h2{font-size:25px}.modal-card{padding:34px 22px 26px}.field-grid{grid-template-columns:1fr}}
@media(max-width:500px){.hero{height:430px;background-size:100% auto;background-position:center bottom}.hero h1{font-size:36px}.primary-btn,.outline-btn{min-height:46px;padding:0 17px}.company-network{padding-left:18px;padding-right:18px}.cta h2{font-size:23px}}

/* Visible contact details added to the approved final layout */
.contact-strip{padding:22px 8vw 24px;background:#fff;border-top:1px solid #eef0f2;border-bottom:1px solid #eef0f2}
.contact-strip .section-label{margin-bottom:15px}
.contact-details{max-width:780px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:34px}
.contact-item{display:flex;align-items:baseline;gap:12px;min-width:0}
.contact-kicker{font-size:9px;font-weight:700;letter-spacing:1.5px;color:var(--gold)}
.contact-value{font-family:Georgia,'Times New Roman',serif;font-size:19px;color:var(--navy);white-space:nowrap}
.contact-item:hover .contact-value{color:var(--gold)}
.contact-divider{width:1px;height:28px;background:#dfe3e7;flex:0 0 1px}
@media(max-width:700px){.contact-details{flex-direction:column;gap:12px}.contact-divider{width:55px;height:1px}.contact-item{justify-content:center;flex-wrap:wrap}.contact-value{font-size:17px;white-space:normal;text-align:center}}
