@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Montserrat:wght@600;700;800;900&display=swap');:root{--navy:#09274b;--navy2:#061c36;--red:#e3192b;--paper:#fff;--ink:#172a40;--muted:#607084;--border:#e5eaf0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:white}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}.skip{position:absolute;left:-999px;top:5px;background:white;z-index:30}.skip:focus{left:10px}.topline{background:var(--navy2);color:#dce8f6;font-size:12px}.topline-inner{min-height:35px;display:flex;align-items:center;justify-content:space-between;gap:12px}.topline strong{color:white}.header{background:white;position:sticky;top:0;z-index:20;box-shadow:0 2px 12px #001a3514}.navrow{display:flex;align-items:center;justify-content:space-between;min-height:99px;gap:22px}.brand{display:flex;align-items:center;gap:11px;flex-shrink:0}.brand img{width:78px;height:78px}.brand span{display:flex;flex-direction:column;line-height:1}.brand strong,.brand b{font:900 28px/1 'Montserrat',sans-serif;letter-spacing:-1px;color:var(--navy)}.brand b{font-size:21px;color:var(--red);margin-top:4px}.brand small{font-size:8px;font-weight:800;letter-spacing:1px;margin-top:7px}.nav{display:flex;align-items:center;gap:23px;font-weight:800;font-size:13px}.nav a:hover{color:var(--red)}.nav .nav-cta{padding:14px 18px;background:var(--red);color:white;border-radius:5px}.nav .nav-cta:hover{color:white;background:#bd1020}.menu-toggle{display:none;border:0;background:var(--navy);color:white;border-radius:6px;padding:8px 12px;font-size:23px}.hero{background:radial-gradient(circle at 80% 15%,#315c83 0,transparent 43%),linear-gradient(115deg,#061c36,#092b51 62%,#153b64);color:white;position:relative;overflow:hidden}.hero:before{content:'★';position:absolute;font-size:330px;line-height:1;color:#ffffff0b;left:-120px;top:-85px}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:26px;min-height:470px;padding:55px 0}.hero-copy{position:relative;z-index:1}.eyebrow{color:#f1a4ad;font-size:12px;font-weight:900;letter-spacing:2.5px;margin:0 0 15px}.eyebrow.dark{color:var(--red)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:'Montserrat',Arial,sans-serif;letter-spacing:-1.5px}h1{font-size:clamp(37px,4.4vw,60px);line-height:1.12;margin-bottom:18px}h1 em{font-style:normal;color:#fff}.lead{font-size:17px;line-height:1.7;color:#e3ebf5;max-width:560px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;border-radius:6px;padding:15px 22px;font-weight:800;font-size:14px;border:2px solid transparent;text-align:center;transition:transform .15s,background .15s}.btn:hover{transform:translateY(-2px)}.btn.red{background:var(--red);color:white}.btn.red:hover{background:#b80f20}.btn.outline{border-color:#c5d4e5;color:white}.btn.navy{background:var(--navy);color:white}.hero-tags{display:flex;gap:17px;flex-wrap:wrap;color:#dce7f4;font-size:12px;font-weight:700;margin-top:32px}.hero-visual{position:relative;align-self:center}.hero-visual img{width:100%;height:330px;object-fit:cover;object-position:center;border-radius:14px;box-shadow:0 25px 65px #0005;border:5px solid #ffffff22}.visual-label{position:absolute;bottom:-15px;left:20px;background:white;color:var(--navy);font-size:12px;font-weight:900;letter-spacing:1.1px;border-radius:6px;padding:15px 18px;box-shadow:0 12px 30px #0002}.visual-label span{color:var(--red)}.quick-strip{background:#f4f7fb;border-bottom:1px solid var(--border)}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;padding:22px 0}.quick-grid>div{display:flex;align-items:center;gap:13px;border-right:1px solid #d6e0eb}.quick-grid>div:last-child{border:0}.quick-grid strong{font:900 28px 'Montserrat',sans-serif;color:var(--red)}.quick-grid span{font-size:12px;font-weight:700;color:#4e6074;max-width:150px}.section{padding:84px 0}.section-heading{text-align:center;max-width:750px;margin:0 auto 38px}.section-heading.left{text-align:left;margin:0 0 36px}.section-heading h2,.split h2,.gov-grid h2,.areas h2,.quote h2{font-size:clamp(28px,3.4vw,42px);line-height:1.2;margin-bottom:15px}.section-heading p,.split p,.gov-grid p,.areas p,.quote p{line-height:1.7;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.industry{border:1px solid var(--border);border-radius:12px;overflow:hidden;box-shadow:0 10px 25px #102c4a0a;background:white}.industry-art{height:155px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.industry-art:before{content:'';position:absolute;inset:0;background:linear-gradient(145deg,#0c335f90,#0c335f10)}.industry-art span{font-size:90px;color:#fff;position:relative;text-shadow:0 5px 20px #0005}.govt{background:linear-gradient(130deg,#7e98b1,#203f5f)}.multi{background:linear-gradient(130deg,#9ab5c5,#34657c)}.office{background:linear-gradient(130deg,#7699c5,#153456)}.home{background:linear-gradient(130deg,#c6ad9a,#725a4b)}.card-body{padding:21px}.card-body h3{font-size:17px;margin-bottom:10px;color:var(--navy)}.card-body p{color:var(--muted);font-size:13px;line-height:1.6;min-height:84px}.card-body a{font-weight:800;color:var(--red);font-size:13px}.services{background:var(--navy2);color:white}.services .section-heading p{color:#cfdae8}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-grid>div{background:#ffffff0a;border:1px solid #ffffff24;border-radius:10px;padding:25px}.service-grid span{font-size:36px;color:#f3a4ac}.service-grid h3{margin:12px 0 8px}.service-grid p{color:#c5d4e4;font-size:14px;line-height:1.6;margin:0}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.split p{max-width:520px}.redtext{color:var(--red)}.about-panel{min-height:350px;border-radius:16px;background:linear-gradient(140deg,#09274b,#164a78);color:white;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:40px;position:relative;overflow:hidden}.about-panel:before{content:'★';position:absolute;font-size:340px;color:#ffffff0a;right:-80px;top:-85px}.about-panel h3{font:900 31px/1.25 'Montserrat',sans-serif;position:relative}.about-panel p{color:#dce8f5;position:relative}.about-panel>span:last-child{font-size:11px;letter-spacing:2px;font-weight:800}.panel-star{font-size:48px;color:#e92c3d}.texas-rule{width:110px;height:5px;background:var(--red);margin:15px auto 25px}.government{background:#f2f6fa}.gov-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:65px;align-items:center}.gov-box{background:white;border-radius:14px;padding:32px;border-left:5px solid var(--red);box-shadow:0 15px 45px #0a27450c}.gov-box h3{color:var(--navy)}.gov-box ul{padding-left:20px;line-height:2;color:#4c5d70}.small-note{font-size:12px!important;color:#6b7c8c!important}.areas{text-align:center}.areas>div>p{max-width:650px;margin:0 auto 25px}.area-chips{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.area-chips span{background:#f0f4f8;border:1px solid #dce4ed;border-radius:50px;padding:11px 18px;font-weight:700;font-size:13px;color:var(--navy)}.quote{background:var(--navy);color:white}.quote-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:65px;align-items:start}.quote p{color:#d0ddec}.phone-large{font:900 clamp(24px,3vw,36px) 'Montserrat',sans-serif;color:white;display:block;margin:25px 0}.quote-form{background:white;color:var(--ink);border-radius:14px;padding:28px;box-shadow:0 20px 50px #0002}.quote-form h3{color:var(--navy);font-size:22px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.quote-form label{display:block;font-size:12px;font-weight:800;margin:0 0 15px}.quote-form input,.quote-form select,.quote-form textarea{width:100%;margin-top:7px;border:1px solid #ccd6e2;border-radius:6px;padding:12px;background:white;color:#172a40;outline-offset:2px}.quote-form .full{width:100%}.form-note{font-size:11px!important;color:#657789!important;margin:12px 0 0!important}.prepared{margin-top:18px;border:1px solid #dce4ec;border-radius:9px;padding:15px;background:#f6f8fb}.prepared p{color:var(--navy);font-size:13px}.prepared textarea{font-size:12px}.footer{background:#06182c;color:#d3e1ef;padding:50px 0 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:35px}.footer-name{font:900 24px 'Montserrat',sans-serif;color:white}.footer-name span{color:#ff4656}.footer p{line-height:1.7;font-size:13px;color:#a9bdd0}.footer h3{color:white;font-size:14px}.footer a,.footer-grid>div:last-child span{display:block;font-size:13px;margin:0 0 11px}.footer a:hover{color:#ff5362}.copyright{border-top:1px solid #ffffff21;padding-top:22px;margin-top:35px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:11px;color:#9bb0c6}.mobile-call{display:none}@media(max-width:1000px){.nav{gap:12px;font-size:12px}.brand strong{font-size:23px}.brand b{font-size:18px}.brand img{width:65px;height:65px}.cards{grid-template-columns:repeat(2,1fr)}.card-body p{min-height:0}.hero-grid{gap:20px}}@media(max-width:760px){.wrap{width:min(100% - 30px,1160px)}.topline-inner{font-size:10px}.navrow{min-height:80px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;box-shadow:0 12px 20px #0002;padding:18px 22px;flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.nav a{padding:13px 8px}.nav .nav-cta{text-align:center;margin-top:8px}.hero-grid,.split,.gov-grid,.quote-grid{grid-template-columns:1fr}.hero-grid{padding:48px 0 58px}.hero-visual img{height:260px}.hero-tags{margin-top:22px}.quick-grid{grid-template-columns:repeat(2,1fr)}.quick-grid>div:nth-child(2){border:0}.section{padding:60px 0}.service-grid{grid-template-columns:repeat(2,1fr)}.split,.gov-grid,.quote-grid{gap:30px}.mobile-call{display:block;position:fixed;bottom:0;left:0;right:0;z-index:25;text-align:center;background:var(--red);color:white;padding:15px;font-weight:900;box-shadow:0 -4px 20px #0003}.footer{padding-bottom:75px}}@media(max-width:490px){.topline-inner span{display:none}.topline-inner{justify-content:center}.brand img{width:60px;height:60px}.brand strong{font-size:21px}.brand b{font-size:16px}.brand small{font-size:7px;letter-spacing:.4px}.hero-actions{flex-direction:column;align-items:stretch}.hero-visual img{height:210px}.quick-grid{gap:12px}.quick-grid strong{font-size:23px}.quick-grid span{font-size:10px}.cards,.service-grid,.field-row,.footer-grid{grid-template-columns:1fr}.service-grid>div{padding:20px}.footer-grid{gap:22px}.quote-form{padding:19px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}
/* Approved feminine mascot from concept design */
.brand img{width:112px;height:82px;object-fit:contain;object-position:center}
@media(max-width:1000px){.brand img{width:95px;height:75px}}
@media(max-width:490px){.brand img{width:77px;height:65px}}

/* Photo cards: original service-specific artwork */
.industry-art{height:170px;background:#dce5ee;}
.industry-art::before{display:none;}
.industry-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .25s ease;}
.industry:hover .industry-art img{transform:scale(1.035);}
@media(prefers-reduced-motion:reduce){.industry-art img{transition:none;}.industry:hover .industry-art img{transform:none;}}
