*{box-sizing:border-box}body{margin:0;font:17px/1.6 Arial,sans-serif;color:#111}a{text-decoration:none;color:inherit}.wrap{max-width:1450px;margin:auto;padding:0 42px}.nav,footer,.hero,.cta{background:#0f1729;color:white}.nav{position:sticky;top:0;z-index:5}.nav .wrap{display:flex;align-items:center;gap:23px;min-height:88px}.brand{font-size:26px;white-space:nowrap}.brand b{font-weight:900}.links{display:flex;align-items:center;gap:20px;margin-left:auto}.links a{font-size:16px;font-weight:700;color:#bec5d1;line-height:1.2}.links a.active,.links a:hover{color:white;border-bottom:2px solid #2862eb}.btn{display:inline-block;padding:14px 25px;border-radius:8px;background:#2862eb;color:white;font-weight:bold;border:1px solid #2862eb}.btn.alt{background:transparent;border-color:#5c687a}.phone{white-space:nowrap}.menu{display:none}.hero{padding:105px 0;background-image:linear-gradient(#24417c17 1px,transparent 1px),linear-gradient(90deg,#24417c17 1px,transparent 1px);background-size:70px 70px}.hero-grid,.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.hero h1{font-size:clamp(42px,4.7vw,74px);line-height:1.07;letter-spacing:-2px;margin:25px 0}.hero p,.cta p{font-size:23px;color:#aeb8c9}.hero img{width:100%;height:480px;object-fit:cover;border-radius:20px}.eyebrow{color:#3578ff;border:1px solid #2654ac;padding:8px 16px;border-radius:25px;font-weight:bold;letter-spacing:1px}.actions{display:flex;gap:15px;flex-wrap:wrap;margin-top:30px}.section{padding:90px 0}.soft{background:#eef4f8}.center{text-align:center}.section h2{font-size:clamp(35px,3.5vw,52px);line-height:1.2;margin:0 0 18px}.sub{color:#667792;font-size:23px;max-width:900px;margin:0 auto 55px}.cards{display:grid;gap:26px}.cards.four{grid-template-columns:repeat(4,1fr)}.cards.three{grid-template-columns:repeat(3,1fr)}.cards.two{grid-template-columns:repeat(2,1fr)}.card{background:white;border:1px solid #dce5f2;border-radius:17px;padding:32px;box-shadow:0 2px 4px #13294b10}.ico{font-size:29px;color:#2862eb}.card h3{font-size:20px;line-height:1.3;margin:20px 0 10px}.card p,.copy p{color:#667792}.card p{margin:0}.copy p{font-size:21px}.cta{padding:80px 0}.cta h2{font-size:46px;line-height:1.2;margin:0}footer{padding:65px 0 25px;color:#aab3c3}.footgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}footer h3{color:white}footer a{display:block;margin:10px 0}.copyright{border-top:1px solid #334055;margin-top:50px;padding-top:25px}.founder{display:grid;grid-template-columns:350px 1fr;gap:60px}.portrait{width:310px;height:310px;object-fit:cover;border:6px solid #dbe5ff;border-radius:50%}.blue{color:#2862eb}.cities{display:flex;justify-content:center;flex-wrap:wrap;gap:14px}.cities span{padding:9px 22px;border:1px solid #dce5f2;border-radius:30px}.cities span:before{content:'✓ ';color:#2862eb}.form{max-width:800px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:20px}.form label{font-weight:bold}.form input,.form select,.form textarea{width:100%;padding:14px;border:1px solid #dce5f2;border-radius:8px;margin-top:6px}.full{grid-column:1/-1}@media(max-width:1100px){.nav .wrap{flex-wrap:wrap}.menu{display:block;margin-left:auto;background:none;color:white;border:0;font-size:26px}.links{display:none;width:100%;flex-direction:column;align-items:start;padding-bottom:20px}.links.open{display:flex}.nav .phone,.nav .quote{display:none}.cards.four{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.wrap{padding:0 22px}.hero-grid,.split,.founder,.footgrid{grid-template-columns:1fr}.hero{padding:65px 0}.hero img{height:260px}.cards.four,.cards.three,.cards.two,.form{grid-template-columns:1fr}.section{padding:60px 0}.hero h1{letter-spacing:-1px}.cta h2{font-size:34px}.copy p{font-size:18px}.portrait{width:260px;height:260px}}
/* Updated shield-and-circuit brand logo */
.brand{display:inline-flex;align-items:center;gap:11px;line-height:1.1}.brand-logo{display:block;width:46px;height:52px;object-fit:contain;flex-shrink:0}.brand span{display:inline-block}
@media(max-width:720px){.brand{font-size:22px}.brand-logo{width:38px;height:44px}}

/* Header refinement: prevent awkward wrapping and use the available width. */
.nav .wrap{max-width:1920px;padding-left:32px;padding-right:32px;gap:clamp(14px,1.35vw,26px)}
.nav .brand{flex-shrink:0;font-size:clamp(22px,1.6vw,28px)}
.nav .links{gap:clamp(13px,1.25vw,24px);flex-shrink:0}
.nav .links a{white-space:nowrap;font-size:clamp(13px,.86vw,16px);line-height:1.4}
.nav .phone{font-size:clamp(13px,.9vw,17px);flex-shrink:0}
.nav .quote{white-space:nowrap;flex-shrink:0;padding:13px 18px;font-size:15px;text-align:center}
@media(max-width:1600px){
 .nav .wrap{flex-wrap:wrap;min-height:82px}
 .nav .menu{display:block;margin-left:auto;background:none;color:white;border:0;font-size:28px;cursor:pointer}
 .nav .links{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;padding:0 0 18px;margin-left:0}
 .nav .links.open{display:flex}
 .nav .links a{font-size:16px;padding:11px 4px;border-bottom:1px solid #2b364c}
 .nav .phone,.nav .quote{display:none}
}
@media(min-width:1601px){.nav .menu{display:none}}
@media(max-width:720px){.nav .wrap{padding-left:22px;padding-right:22px}}

/* Branded homepage hero */
.home-branded-hero{background:#0f1729;color:white;padding:0 0 22px}
.home-branded-hero>img{display:block;width:100%;height:auto;max-height:900px;object-fit:contain}
.home-hero-actions{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;padding-top:15px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:720px){.home-branded-hero>img{width:100%;height:auto}.home-hero-actions{padding-top:14px}.home-hero-actions .btn{font-size:14px;padding:11px 16px}}

/* Branded repair hero uses the same responsive layout as the home banner. */
#repair-services{scroll-margin-top:90px}

/* Balanced desktop header: centered navigation with equal gaps and balanced side gutters */
@media (min-width:1651px){
 .nav .wrap{display:grid;grid-template-columns: minmax(275px, 1fr) minmax(0, 2.6fr) minmax(345px, 1fr);column-gap:24px;max-width:2048px;padding-inline:clamp(34px,3vw,72px);min-height:110px}
 .nav .brand{justify-self:start;font-size:clamp(22px,1.5vw,30px)}
 .nav .links{width:100%;margin:0;display:flex;justify-content:space-evenly;align-items:center;gap:clamp(8px,.9vw,22px);min-width:0}
 .nav .links a{font-size:clamp(13px,.83vw,17px);text-align:center;white-space:nowrap}
 .nav .nav-actions{display:flex;justify-content:flex-end;align-items:center;gap:clamp(12px,1.25vw,26px);white-space:nowrap}
 .nav .phone{font-size:clamp(13px,.83vw,17px)}
 .nav .quote{font-size:clamp(13px,.85vw,16px);padding:13px 18px}
}
@media (max-width:1650px){
 .nav .wrap{display:flex;justify-content:space-between}
 .nav .nav-actions{display:none}
 .nav .menu{display:block;margin-left:auto}
 .nav .links{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;margin-left:0}
 .nav .links.open{display:flex}
 .nav .links a{font-size:16px;padding:12px 4px;border-bottom:1px solid #2b364c}
}

/* FIX: keep full navigation visible on laptop and desktop widths. */
@media (min-width:1150px){
 .nav .wrap{display:grid;grid-template-columns:minmax(185px,225px) minmax(0,1fr);gap:14px;align-items:center;max-width:1920px;padding-inline:clamp(16px,2vw,38px);min-height:88px;flex-wrap:nowrap}
 .nav .brand{font-size:clamp(20px,1.65vw,26px);justify-self:start;white-space:nowrap}
 .nav .menu{display:none !important}
 .nav .links,.nav .links.open{display:flex !important;flex-direction:row;align-items:center;justify-content:space-evenly;width:100%;min-width:0;margin:0;padding:0;gap:clamp(7px,.75vw,18px)}
 .nav .links a{display:block;flex:0 0 auto;padding:7px 0;border-bottom:2px solid transparent;white-space:nowrap;text-align:center;font-size:clamp(12px,.88vw,15px);line-height:1.3}
 .nav .links a.active,.nav .links a:hover{border-bottom-color:#2862eb}
 .nav .nav-actions,.nav .phone,.nav .quote{display:none !important}
}
@media (min-width:1540px){
 .nav .wrap{grid-template-columns:minmax(205px,245px) minmax(0,1fr) minmax(150px,195px);gap:12px}
 .nav .links a{font-size:clamp(13px,.88vw,16px)}
 .nav .nav-actions{display:flex !important;justify-content:flex-end;align-items:center}
 .nav .quote{display:inline-block !important;white-space:nowrap;font-size:13px;padding:12px 13px}
}
@media (min-width:1820px){
 .nav .wrap{grid-template-columns:245px minmax(0,1fr) 320px;gap:18px}
 .nav .nav-actions{gap:12px}
 .nav .phone{display:inline-block !important;font-size:14px;white-space:nowrap}
}
@media (max-width:1149px){
 .nav .wrap{display:flex;flex-wrap:wrap;justify-content:space-between}
 .nav .menu{display:block !important;margin-left:auto}
 .nav .links{display:none !important;width:100%;flex-direction:column;align-items:stretch;gap:0;margin-left:0;padding-bottom:15px}
 .nav .links.open{display:flex !important}
 .nav .links a{font-size:16px;padding:10px 4px;white-space:normal;border-bottom:1px solid #2b364c}
 .nav .nav-actions{display:none !important}
}

/* Clickable hit areas aligned with buttons baked into the homepage hero image. */
.home-hero-image{position:relative;width:100%;max-width:1800px;margin:0 auto;line-height:0}
.home-hero-image>img{display:block;width:100%;height:auto}
.hero-hotspot{position:absolute;display:block;z-index:2;border-radius:6px;cursor:pointer}
.hero-hotspot:focus-visible{outline:3px solid #fff;outline-offset:3px;background:#ffffff22}
.hero-quote-hotspot{left:4.0%;top:69.6%;width:13.7%;height:8.2%}
.hero-services-hotspot{left:18.6%;top:69.6%;width:10.7%;height:8.2%}

/* Searchable DFW TechCare knowledge base */
.kb-hero{background:linear-gradient(120deg,#0d1830,#19345f);color:white;padding:82px 0 72px}.kb-hero .wrap{max-width:1100px}.kb-eyebrow{letter-spacing:.18em;font-size:12px;font-weight:800;color:#87b8ff;margin:0 0 18px}.kb-hero h1{font-size:clamp(36px,5vw,64px);line-height:1.1;margin:0 0 18px;color:#fff}.kb-hero p:not(.kb-eyebrow){color:#d5e0f5;font-size:18px;max-width:720px;line-height:1.65}.kb-search-wrap{position:relative;max-width:850px;margin-top:28px}.kb-search-wrap input{width:100%;border:1px solid #b9c9e5;border-radius:13px;background:white;color:#12213b;padding:21px 56px 21px 22px;font-size:17px;box-shadow:0 12px 30px #0002}.kb-search-wrap input:focus{outline:3px solid #7daeff}.kb-search-wrap span{position:absolute;right:20px;top:15px;color:#3868a9;font-size:30px}.kb-section{background:#f5f8fc}.kb-controls{display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;align-items:center;margin-bottom:24px}.kb-filters{display:flex;flex-wrap:wrap;gap:9px}.kb-filter{border:1px solid #cdd8e9;border-radius:999px;background:white;padding:11px 15px;font-size:14px;font-weight:700;color:#263953;cursor:pointer}.kb-filter.selected,.kb-filter:hover{background:#2862eb;border-color:#2862eb;color:white}.kb-count{color:#53637a;font-size:14px}.kb-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.kb-card{display:flex;flex-direction:column;gap:13px;background:white;border:1px solid #e0e7f1;border-radius:16px;padding:25px;box-shadow:0 4px 16px #152b4b09}.kb-card h3{font-size:20px;line-height:1.35;margin:0}.kb-card h3 a{color:#142640;text-decoration:none}.kb-card h3 a:hover{color:#2862eb}.kb-card p{font-size:15px;color:#56657a;line-height:1.65;margin:0 0 8px;flex:1}.kb-tag{display:inline-block;align-self:flex-start;font-size:11px;letter-spacing:.03em;font-weight:800;color:#1f5fc6;background:#e9f1ff;border-radius:6px;padding:7px 10px}.kb-read{color:#235bcb;font-weight:800;font-size:14px;text-decoration:none}.kb-read:hover{text-decoration:underline}.kb-pager{display:flex;justify-content:center;align-items:center;gap:15px;margin-top:34px;color:#52627c}.kb-pager button{padding:11px 17px;background:white;border:1px solid #cad6e7;border-radius:9px;color:#164ca7;cursor:pointer;font-weight:700}.kb-pager button:disabled{opacity:.4;cursor:not-allowed}.kb-feature{max-width:920px;margin:auto;background:white;border:1px solid #e0e7f1;border-radius:17px;padding:clamp(24px,4vw,56px)}.kb-feature .kb-tag{margin:20px 0 12px}.kb-feature h2{font-size:clamp(28px,3.5vw,42px);color:#13243c;line-height:1.2}.kb-feature h3{font-size:23px;margin-top:35px}.kb-feature ol{padding-left:24px}.kb-feature li{padding:9px 0;line-height:1.7;color:#35445d}.kb-summary{font-size:18px;line-height:1.7;color:#4e5d73}.kb-back{color:#245cca;text-decoration:none;font-weight:750}.kb-note{padding:20px;background:#edf4ff;border-left:4px solid #2862eb;border-radius:8px;line-height:1.65;color:#273c58;margin:28px 0}.kb-article-cta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;padding-top:18px;border-top:1px solid #dbe3ef}.kb-empty{text-align:center;padding:45px}.kb-empty p{margin-bottom:25px}.kb-hero [hidden],.kb-section [hidden]{display:none!important}@media(max-width:1050px){.kb-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.kb-grid{grid-template-columns:1fr}.kb-hero{padding:58px 0}.kb-hero p:not(.kb-eyebrow){font-size:16px}.kb-search-wrap input{font-size:15px;padding:17px 45px 17px 16px}.kb-controls{display:block}.kb-count{margin-top:14px}.kb-filter{font-size:12px;padding:9px 12px}.kb-feature{padding:22px}}

/* Static article pages */
.help-layout{max-width:920px;margin:0 auto;padding:50px 22px 90px}.help-crumbs{font-size:.88rem;color:#526781;margin-bottom:28px}.help-crumbs a{color:#1267aa}.help-article{background:#fff;border:1px solid #dce6f0;border-radius:18px;padding:clamp(22px,4vw,48px);box-shadow:0 10px 28px rgba(8,36,68,.06)}.help-article h1{font-size:clamp(1.9rem,4vw,2.8rem);line-height:1.18;margin:14px 0 18px;color:#102f53}.help-article h2{margin-top:30px;color:#102f53}.help-article li{padding:6px 0;line-height:1.7}.help-article p{line-height:1.75}.help-tag{display:inline-block;padding:7px 13px;border-radius:999px;background:#eaf4ff;color:#125c9b;font-size:.85rem;font-weight:700}.help-cta{margin-top:35px;padding:24px;border-radius:14px;background:#eef6ff}.help-cta a{font-weight:700}.help-related{margin-top:38px}.help-related ul{padding-left:24px}.help-directory{max-width:1100px;margin:35px auto 70px;padding:0 24px}.help-directory section{margin:36px 0}.help-directory li{padding:5px 0}.help-directory a{color:#1267aa}
