:root{color-scheme:dark;--bg:#07131e;--panel:#102332;--stroke:#274255;--mid:#97aebf;--blue:#0072bc;--bright:#34abef;--white:#f5faff;--green:#71dfb2;--red:#ff9b92}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#07131e;color:var(--white);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Arial,sans-serif;font-size:15px}button,input,select,textarea{font:inherit}button{cursor:pointer}a{text-decoration:none;color:inherit}button:disabled{opacity:.5;cursor:not-allowed}.wrap{width:min(1170px,calc(100% - 40px));margin:auto}.nav{position:sticky;top:0;z-index:9;background:#07131ef0;backdrop-filter:blur(16px);border-bottom:1px solid #24394a}.nav-inner{height:78px;display:flex;align-items:center;gap:30px}.brand{font-size:16px;letter-spacing:.07em;font-weight:900;display:flex;align-items:center;gap:12px;white-space:nowrap}.brand b{color:var(--bright)}.mark{width:39px;height:39px;border:2px solid #45b2ec;border-radius:10px;display:grid;place-items:center;background:#0c4160;color:white;font-size:24px}.links{display:flex;gap:24px;color:#c0d1de;font-size:13px;margin-right:auto}.links a:hover{color:white}.nav-actions{display:flex;gap:10px;align-items:center}.btn{border:1px solid transparent;border-radius:11px;background:var(--blue);color:#fff;padding:12px 17px;font-weight:750;display:inline-flex;justify-content:center;align-items:center;gap:8px}.btn:hover{filter:brightness(1.16)}.btn.line{background:transparent;border-color:#476579}.btn.subtle{background:#153149;border-color:#25455f}.btn.sm{padding:9px 13px;font-size:13px}.btn.danger{background:#632e38}.mobile-menu{display:none}.hero{overflow:hidden;position:relative;background:radial-gradient(ellipse 50% 75% at 85% 30%,#087bc247,transparent),linear-gradient(145deg,#07131e 25%,#0c2637 100%);padding:92px 0 99px;border-bottom:1px solid #233c4f}.hero:after{content:'';position:absolute;pointer-events:none;inset:0;opacity:.3;background-image:linear-gradient(#4ea9e51c 1px,transparent 1px),linear-gradient(90deg,#4ea9e51c 1px,transparent 1px);background-size:55px 55px;mask-image:linear-gradient(to left,#000,transparent 80%)}.hero-grid{display:grid;grid-template-columns:1.3fr .7fr;align-items:center;gap:40px;position:relative;z-index:1}.eyebrow{font-weight:850;text-transform:uppercase;letter-spacing:.18em;font-size:11px;color:#65c7fd}.hero h1{font-size:clamp(45px,5.9vw,78px);max-width:800px;line-height:1.045;letter-spacing:-.066em;margin:22px 0}.hero h1 em{font-style:normal;color:#4ab9f6}.hero p{color:#bed1e0;font-size:18px;max-width:650px;line-height:1.72}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.notice{display:inline-flex;margin-top:30px;background:#12415b7a;border:1px solid #376581;padding:9px 14px;border-radius:99px;color:#bbdfef;font-size:12px}.visual{border-radius:23px;border:1px solid #446578;background:linear-gradient(150deg,#2147609e,#0d2437d9);padding:24px;box-shadow:0 28px 100px #0008;transform:rotate(2deg)}.visual-top{font-size:12px;color:#9cc9dd;display:flex;justify-content:space-between}.visual-big{font-weight:850;line-height:1.2;font-size:28px;margin:28px 0 18px;letter-spacing:-.04em}.visual .band{display:flex;gap:7px;align-items:center;background:#092231;border-radius:10px;padding:13px;margin:9px 0;border:1px solid #24465c;color:#d3e3ef}.band b{color:#6bc5f7}.pulse{width:8px;height:8px;border-radius:100%;background:#70e2bc}.section{padding:72px 0}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:30px}.section h2{font-size:clamp(27px,3.5vw,42px);letter-spacing:-.047em;margin:8px 0}.muted{color:var(--mid);line-height:1.6}.searchbar{display:grid;grid-template-columns:1.25fr 1fr 1fr auto;gap:10px;padding:13px;border:1px solid #2b5067;background:#112839;border-radius:17px}.input{min-width:0;border:1px solid #37576b;background:#091d2b;color:#f4fbff;border-radius:10px;padding:12px 13px;outline:none;width:100%}.input:focus{border-color:#54b9f1;box-shadow:0 0 0 3px #0072bc36}.input::placeholder{color:#8da6b8}select.input{appearance:auto}.pilltabs{display:inline-flex;background:#102b3d;border:1px solid #29485a;border-radius:11px;padding:4px;gap:4px;margin-bottom:18px}.pilltabs button{border:0;background:transparent;color:#a4bbca;padding:11px 16px;border-radius:8px;font-weight:700}.pilltabs .active{background:#0072bc;color:#fff}.results-head{display:flex;justify-content:space-between;align-items:center;margin:20px 0;color:#9eb5c5;font-size:13px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.card{background:linear-gradient(140deg,#112a3b,#0d202d);border:1px solid #305064;padding:24px;border-radius:18px;min-height:265px;display:flex;flex-direction:column;gap:12px}.card:hover{border-color:#3989b8}.card-row{display:flex;justify-content:space-between;align-items:center;gap:10px}.chip{display:inline-block;background:#18435f;color:#8fdbff;border:1px solid #316380;padding:6px 9px;border-radius:7px;font-size:11px;font-weight:750}.chip.pending{background:#473b1f;color:#ffdea1;border-color:#716036}.chip.approved{background:#154a3d;color:#82ead0;border-color:#33745f}.card h3{font-size:21px;line-height:1.3;margin:6px 0 0;letter-spacing:-.028em}.card p{color:#a7bdcd;line-height:1.55;font-size:13px;flex:1;margin:0}.card .location{color:#d0dfeb;font-size:12px}.card-foot{border-top:1px solid #294455;padding-top:14px;display:flex;justify-content:space-between;align-items:center}.empty{background:#0e2636;border:1px dashed #355970;border-radius:16px;text-align:center;padding:50px 24px;color:#b4c8d5}.empty b{color:white;display:block;font-size:20px;margin-bottom:10px}.how{background:#0a1d2a;border-top:1px solid #243b4e;border-bottom:1px solid #243b4e}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}.step{padding:24px;border:1px solid #2b485b;border-radius:16px;background:#112536}.step-num{color:#59bcf1;font-weight:850;font-size:13px}.step h3{margin:20px 0 9px}.step p{color:#a2b9c9;font-size:14px;line-height:1.6}.cta{padding:38px;background:linear-gradient(100deg,#075287,#0f2e44);border-radius:22px;border:1px solid #347fa9;display:flex;gap:24px;justify-content:space-between;align-items:center}.cta h2{margin:0 0 6px;font-size:29px;letter-spacing:-.04em}.cta p{color:#c5dbe9;margin:0}.footer{padding:31px 0 45px;border-top:1px solid #263d4f;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#8ba5b7}.footer a:hover{color:#fff}.dashboard{display:none;padding:65px 0}.dashboard.active{display:block}.dash-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.pane{background:#102737;border:1px solid #2c4c60;padding:22px;border-radius:16px}.pane h3{margin:0 0 14px}.item-row{display:flex;justify-content:space-between;align-items:center;padding:13px 0;gap:12px;border-top:1px solid #294356}.item-row small{display:block;color:#91aaba;margin-top:4px}.thread{padding:13px;background:#0b202e;border:1px solid #2a475b;border-radius:11px;margin:10px 0}.bubble{background:#17415e;padding:10px 12px;border-radius:10px;margin-top:10px;font-size:13px;line-height:1.5}.bubble.other{background:#143343}.thread-form{display:flex;gap:8px;margin-top:10px}.thread-form input{flex:1}.state-list{display:flex;gap:8px;flex-wrap:wrap}.state-list span{border:1px solid #34546a;padding:8px 11px;border-radius:99px;color:#b4cfdf;font-size:12px}.dialog{border:1px solid #3a6179;border-radius:20px;background:#102637;color:#f6fbff;padding:0;width:min(540px,calc(100% - 25px));max-height:88vh;box-shadow:0 28px 100px #000c}.dialog::backdrop{background:#000a;backdrop-filter:blur(5px)}.modal-head{padding:24px 26px 0;display:flex;justify-content:space-between;gap:20px}.modal-head h2{font-size:24px;letter-spacing:-.04em;margin:0}.close{background:none;border:0;font-size:25px;color:#b4cad9}.modal-body{padding:22px 26px 27px;overflow-y:auto;max-height:72vh}.field{display:block;font-size:12px;color:#c2d7e4;font-weight:700;margin-bottom:13px}.field .input{display:block;margin-top:7px}.field textarea{min-height:110px;resize:vertical}.hint{font-size:12px;color:#9eb7c9;line-height:1.5}.error{background:#4a2228;color:#ffc2ba;border:1px solid #7b4245;padding:11px;border-radius:10px;font-size:13px;margin-bottom:14px}.success{background:#12483b;color:#acf0d7;border:1px solid #297c60;padding:11px;border-radius:10px;margin-bottom:14px}.alt-link{color:#73cbf7;border:0;background:transparent;padding:3px;text-decoration:underline}.form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:16px}.narrow{max-width:700px}.hidden{display:none!important}.pill{background:#16415b;border:1px solid #2c698f;border-radius:99px;color:#8cd5fb;padding:6px 12px;font-size:12px}.legal{padding:65px 0;max-width:850px}.legal p{line-height:1.7;color:#b3c8d5}.legal h2{margin-top:28px}.toast{position:fixed;bottom:24px;right:24px;background:#0e4b3d;color:#effff9;padding:14px 18px;border:1px solid #388975;border-radius:12px;box-shadow:0 15px 35px #0008;z-index:99;max-width:360px}.toast.bad{background:#4a252e;border-color:#824254}@media(max-width:950px){.links{display:none}.visual{display:none}.hero-grid{grid-template-columns:1fr}.cards{grid-template-columns:repeat(2,1fr)}.searchbar{grid-template-columns:1fr 1fr}.searchbar button{grid-column:span 2}.nav-inner{gap:14px}}@media(max-width:650px){.wrap{width:min(100% - 30px,1170px)}.nav-inner{height:68px}.brand{font-size:12px;gap:7px}.mark{width:31px;height:31px;font-size:19px}.nav-actions{margin-left:auto}.nav-actions .line{display:none}.hero{padding:65px 0 65px}.hero h1{font-size:45px}.hero p{font-size:16px}.section{padding:45px 0}.searchbar{grid-template-columns:1fr}.searchbar button{grid-column:auto}.cards,.steps,.dash-grid{grid-template-columns:1fr}.card{min-height:220px}.section-head{align-items:flex-start;flex-direction:column}.cta{padding:27px;align-items:flex-start;flex-direction:column}.footer{flex-direction:column}.modal-head{padding:20px 18px 0}.modal-body{padding:18px}.nav-actions .btn{padding:9px 11px;font-size:12px}}
.trust-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0}.trust-chip{border:1px solid #388b73;border-radius:99px;background:#174738;color:#a7f8d2;font-size:11px;font-weight:750;padding:5px 9px}.muted-chip{background:#2d3b46;border-color:#73808a;color:#cbd7df}

/* Contractor Connect proposals & availability */
.cc-filters{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:16px 0}.cc-filters .input{width:125px}.cc-filters label{font-size:13px;color:var(--muted,#a8b8c8)}.cc-check{display:flex;align-items:center;gap:8px;cursor:pointer}.cc-status{font-size:12px;color:#69d5bc;margin-top:10px}.cc-proposal{padding:15px 0;border-bottom:1px solid rgba(125,150,175,.2)}.cc-proposal p{overflow-wrap:anywhere}.cc-proposal-actions{display:flex;gap:8px;flex-wrap:wrap}.cc-proposal .card-row{align-items:flex-start}.cc-proposal-actions button{margin:3px 0}#cc-availability-form{display:grid;gap:10px}#cc-availability-form .input{width:100%}@media(max-width:620px){.cc-filters{align-items:flex-start;flex-direction:column}.cc-filters .input{width:100%}}

/* Contractor Connect videos: reusable no-autoplay promotional gallery */
.cc-video-showcase{scroll-margin-top:90px}.cc-video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.cc-video-card{min-width:0;display:flex;flex-direction:column;background:linear-gradient(160deg,#122e42,#0a1b27);border:1px solid #33576b;border-radius:20px;padding:20px;box-shadow:0 16px 40px #0002}.cc-video-label{font-size:11px;font-weight:850;letter-spacing:.14em;color:#70c9fa;text-transform:uppercase}.cc-video-player{display:block;width:min(100%,245px);aspect-ratio:9/16;height:auto;margin:15px auto 20px;object-fit:contain;background:linear-gradient(150deg,#031017,#17344d);border:1px solid #2f5266;border-radius:13px}.cc-video-card h3{font-size:21px;letter-spacing:-.035em;margin:0 0 8px}.cc-video-card p{font-size:13px;color:#b2c9d7;line-height:1.6;margin:0 0 17px;flex:1}.cc-video-direct{color:#7fd0ff;font-weight:800;font-size:13px;align-self:flex-start}.cc-video-direct:hover{text-decoration:underline}.cc-video-footnote{font-size:12px;color:#86a5b8;line-height:1.5;margin-top:20px}@media(max-width:800px){.cc-video-grid{grid-template-columns:1fr;max-width:420px;margin:0 auto}.cc-video-showcase .section-head{margin-bottom:25px}}

/* Contractor Connect growth dashboard */.cc-roles{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:22px}.cc-roles article{display:flex;flex-direction:column;align-items:flex-start;padding:19px;border:1px solid #30526a;border-radius:15px;background:#102b3f}.cc-roles h3{margin:0}.cc-roles p{font-size:13px;color:#acc8dd;line-height:1.5;flex:1}.cc-roles .btn{margin-top:10px}.cc-port-preview{display:grid;grid-template-columns:1fr 1fr;gap:6px}.cc-port-preview img{width:100%;height:95px;object-fit:cover;border-radius:8px}.cc-port-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:9px}.cc-port-gallery img{width:100%;height:145px;object-fit:cover;border-radius:8px}.cc-grow-item{padding:13px 0;border-top:1px solid #36556a}.cc-grow-item small{display:block;margin:4px 0 9px;color:#a9c5d6}.cc-grow-alert-list{padding-left:18px;line-height:1.9;color:#cae5f8}.cc-grow-actions{display:flex;gap:7px;flex-wrap:wrap}.cc-green{color:#71dfb2;font-weight:750}@media(max-width:950px){.cc-roles{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.cc-roles{grid-template-columns:1fr}}

/* Crawlable geographic discovery pages */.cc-state-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:22px 0}.cc-state-links a{background:#102b40;border:1px solid #315570;border-radius:11px;padding:12px 14px;color:#b8e0f9}.cc-state-links a:hover{background:#164561}.cc-seo-actions,.cc-seo-trades{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.cc-seo-trades a{padding:10px 12px}

/* Contractor Connect media-led homepage */
.cc-hero-media{position:relative;overflow:hidden;display:flex;flex-direction:column;align-self:stretch;background:#0c2739;border:1px solid #3b6a89;border-radius:23px;padding:13px;box-shadow:0 24px 72px #0009;min-width:0}
.cc-hero-label{font-weight:800;letter-spacing:.14em;font-size:10px;color:#c9e7fb;display:flex;align-items:center;gap:8px;padding:6px 8px 13px}
.cc-live-pulse{width:8px;height:8px;background:#52dda9;box-shadow:0 0 16px #38dcad90;border-radius:99px}
.cc-hero-player{display:block;width:100%;height:390px;object-fit:contain;background:#07151f;border-radius:12px;border:1px solid #31536c}
.cc-hero-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 7px 5px}
.cc-hero-foot strong{font-size:14px;letter-spacing:-.015em;display:block;line-height:1.4}
.cc-hero-foot span{display:block;font-size:11px;color:#a9c7d9;margin-top:4px}
.cc-hero-foot a{color:#80cfff;font-weight:800;white-space:nowrap;font-size:12px}
.cc-imagery{scroll-margin-top:70px}.cc-imagery .section-head .muted{margin-top:8px;max-width:730px}
.cc-imagery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.cc-imagery-card{display:block;border-radius:20px;overflow:hidden;background:linear-gradient(145deg,#142f41,#0b1b28);border:1px solid #2e536c;box-shadow:0 13px 40px #0002;transition:transform .18s,border-color .18s}
.cc-imagery-card:hover{transform:translateY(-3px);border-color:#4db8f2}
.cc-imagery-photo{position:relative;height:205px;overflow:hidden;background:#17364a}
.cc-imagery-photo:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#08192745);pointer-events:none}
.cc-imagery-photo img{width:100%;height:100%;object-fit:cover;display:block}
.cc-imagery-icon{position:absolute;left:14px;top:14px;z-index:1;background:#061d2de8;color:#8ed6ff;border:1px solid #5fa9cb7a;backdrop-filter:blur(6px);font-size:11px;letter-spacing:.12em;font-weight:850;padding:7px 10px;border-radius:8px}
.cc-imagery-content{padding:22px}
.cc-imagery-content>span:first-child{color:#67c9ff;font-size:10px;font-weight:850;letter-spacing:.12em}
.cc-imagery-content h3{font-size:21px;line-height:1.16;letter-spacing:-.025em;margin:12px 0 10px}
.cc-imagery-content p{font-size:13px;color:#b0c9d9;line-height:1.6;min-height:42px}
.cc-imagery-link{display:inline-block;margin-top:15px;color:#85d6ff;font-weight:800;font-size:13px}
.cc-imagery-note{color:#8aafc5;font-size:11px;margin-top:14px}
@media(min-width:951px){.hero-grid{grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr)}}
@media(max-width:950px){.cc-hero-media{max-width:510px;margin:auto;width:100%}.cc-hero-player{height:350px}.hero-grid{grid-template-columns:1fr}.cc-imagery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.cc-hero-media{max-width:100%;padding:10px}.cc-hero-player{height:315px}.cc-hero-foot{padding:13px 6px 6px}.cc-imagery-grid{grid-template-columns:1fr}.cc-imagery-photo{height:200px}}
@media(prefers-reduced-motion:reduce){.cc-imagery-card{transition:none}}
