/* DCCC Professional Design, Structural Engineering & Estimation Services — marketplace v2 */
:root{--dpro-red:#e30613;--dpro-yellow:#ffd400;--dpro-ink:#11151a;--dpro-muted:#69717a;--dpro-line:#e1e5e8;--dpro-soft:#f4f6f7;--dpro-max:1540px}
body.dccc-professional-marketplace{overflow-x:hidden;background:#f3f5f6}body.dccc-professional-marketplace #app{max-width:none!important;padding:0!important;overflow:clip;background:#f3f5f6}.desktop-nav a.dpro-current-nav,.mobile-menu a.dpro-current-nav{color:var(--dpro-red)!important;font-weight:850;position:relative}.desktop-nav a.dpro-current-nav:after{content:"";position:absolute;left:12%;right:12%;bottom:-10px;height:3px;border-radius:5px;background:var(--dpro-red)}
.dpro-page{color:var(--dpro-ink);background:#f3f5f6}.dpro-carousel{position:relative;overflow:hidden;isolation:isolate;touch-action:pan-y;background:#dce0e3}.dpro-slide{position:absolute;inset:0;opacity:0;transition:opacity .72s ease}.dpro-slide.is-active{opacity:1;z-index:1}.dpro-slide img{display:block;width:100%;height:100%;object-fit:cover}.dpro-image-fallback{height:100%;display:grid;place-items:center;font-weight:900;font-size:34px}.dpro-arrow{position:absolute;z-index:5;top:50%;width:40px;height:44px;transform:translateY(-50%);display:grid;place-items:center;padding:0;border:1px solid rgba(255,255,255,.58);border-radius:4px;background:rgba(6,10,14,.42);color:#fff;font-size:26px;cursor:pointer}.dpro-arrow.prev{left:15px}.dpro-arrow.next{right:15px}.dpro-dots{position:absolute;z-index:6;left:50%;bottom:15px;transform:translateX(-50%);display:flex;gap:7px}.dpro-dots button{width:8px;height:8px;padding:0;border:1px solid #fff;border-radius:50%;background:rgba(255,255,255,.25)}.dpro-dots button.is-active{width:24px;border-radius:10px;background:#fff}
.dpro-hero{position:relative;height:455px;overflow:hidden;color:#fff;background:#0d1115}.dpro-hero-carousel{position:absolute;inset:0;height:100%}.dpro-hero-shade{position:absolute;z-index:2;inset:0;background:linear-gradient(90deg,rgba(4,7,10,.94) 0%,rgba(4,7,10,.79) 37%,rgba(4,7,10,.28) 70%,rgba(4,7,10,.09)),linear-gradient(0deg,rgba(0,0,0,.5),transparent 45%)}.dpro-hero-copy{position:relative;z-index:3;width:min(var(--dpro-max),calc(100% - 80px));height:100%;margin:auto;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:0 0 54px}.dpro-eyebrow{margin:0 0 10px;font-size:12px;font-weight:900;letter-spacing:.24em}.dpro-hero h1{max-width:900px;margin:0;font-size:clamp(46px,4.8vw,75px);line-height:.93;letter-spacing:-.045em}.dpro-hero h1 em{font-style:normal;color:var(--dpro-red)}.dpro-hero-desc{max-width:760px;margin:15px 0 19px;font-size:14px;line-height:1.45;color:rgba(255,255,255,.92)}.dpro-hero-actions{display:flex;gap:11px}.dpro-hero-actions button{min-width:190px;min-height:48px;padding:0 18px;border:1px solid rgba(255,255,255,.78);border-radius:4px;background:rgba(10,13,16,.62);color:#fff;font-size:12px;font-weight:900;cursor:pointer}.dpro-hero-actions button.primary{border-color:var(--dpro-red);background:var(--dpro-red)}.dpro-hero-actions span{margin-left:18px;font-size:19px}.dpro-hero-message{position:absolute;z-index:4;right:max(30px,calc((100% - var(--dpro-max))/2 + 10px));top:78px;padding:12px 14px;border-left:4px solid var(--dpro-red);background:rgba(0,0,0,.24);backdrop-filter:blur(4px)}.dpro-hero-message b{display:block;font-size:16px;line-height:1.08;letter-spacing:.03em}.dpro-hero-message small{display:block;margin-top:8px;font-size:9px;letter-spacing:.15em;color:rgba(255,255,255,.76)}
.dpro-benefits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:min(var(--dpro-max),calc(100% - 48px));margin:-38px auto 0;position:relative;z-index:7;border:1px solid rgba(220,224,228,.9);border-radius:6px;background:#fff;box-shadow:0 7px 24px rgba(13,20,27,.12)}.dpro-benefits article{display:flex;align-items:center;gap:12px;min-height:76px;padding:13px 18px;border-right:1px solid #e2e5e8}.dpro-benefits article:last-child{border-right:0}.dpro-benefits article>span{flex:0 0 38px;height:38px;display:grid;place-items:center;border-radius:50%;color:var(--dpro-red);background:#fff1f2;font-size:21px;font-weight:900}.dpro-benefits b,.dpro-benefits small{display:block}.dpro-benefits b{font-size:12px}.dpro-benefits small{margin-top:3px;color:var(--dpro-muted);font-size:9px;line-height:1.25}
.dpro-context{width:min(var(--dpro-max),calc(100% - 48px));margin:12px auto 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--dpro-line);border-radius:5px;background:#fff}.dpro-context>div{min-width:0;padding:10px 14px;border-right:1px solid #e7eaec}.dpro-context>div:last-child{border-right:0}.dpro-context small,.dpro-context strong,.dpro-context span{display:block}.dpro-context small{color:var(--dpro-red);font-size:8px;font-weight:900;letter-spacing:.1em}.dpro-context strong{margin-top:3px;font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dpro-context span{margin-top:2px;color:var(--dpro-muted);font-size:8.8px}.dpro-context .dpro-browse{grid-column:1/-1;border-right:0}.dpro-context .dpro-browse strong{white-space:normal;font-size:13px}
.dpro-main{padding:13px max(24px,calc((100% - var(--dpro-max))/2)) 0}.dpro-notice{min-height:0}.dpro-notice.info,.dpro-notice.success,.dpro-notice.error{min-height:38px;margin:0 0 10px;padding:10px 13px;border-radius:5px;font-size:10px}.dpro-notice.info{color:#245a83;background:#eaf4fc}.dpro-notice.success{color:#17613a;background:#e7f7ed}.dpro-notice.error{color:#9d1a29;background:#feecee}
.dpro-filterbar{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr)) minmax(250px,1.25fr);gap:0;margin-bottom:12px;border:1px solid var(--dpro-line);border-radius:6px;background:#fff;overflow:hidden}.dpro-filterbar>label{display:flex;flex-direction:column;gap:5px;padding:10px 12px;border-right:1px solid #e3e6e9}.dpro-filterbar label>span,.dpro-custom>span{font-size:9px;font-weight:900}.dpro-filterbar select{height:36px;min-width:0;padding:0 9px;border:1px solid #d6dbdf;border-radius:4px;background:#fff;font-size:10px}.dpro-custom{display:grid;grid-template-columns:1fr auto;grid-template-areas:'title button' 'sub button';align-content:center;gap:1px 12px;padding:10px 12px}.dpro-custom>span{grid-area:title}.dpro-custom small{grid-area:sub;color:var(--dpro-muted);font-size:8.5px}.dpro-custom button{grid-area:button;min-width:112px;height:36px;border:1px solid var(--dpro-red);border-radius:4px;background:#fff;color:var(--dpro-red);font-size:10px;font-weight:850;cursor:pointer}
.dpro-services{margin:0 auto}.dpro-section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:8px 1px 11px}.dpro-section-head small{color:var(--dpro-red);font-size:9px;font-weight:900;letter-spacing:.13em}.dpro-section-head h2{margin:3px 0 0;font-size:24px;letter-spacing:-.02em}.dpro-section-head>p{margin:0;color:var(--dpro-muted);font-size:9.5px}.dpro-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.dpro-card{min-width:0;overflow:hidden;border:1px solid #dde2e5;border-radius:6px;background:#fff;box-shadow:0 3px 10px rgba(17,24,31,.035);transition:.18s}.dpro-card:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(17,24,31,.09)}.dpro-card.is-selected{border-color:#58a779;box-shadow:0 0 0 2px rgba(43,139,82,.11)}.dpro-card[hidden]{display:none}.dpro-card-media{height:128px}.dpro-card-carousel{height:100%}.dpro-card-carousel .dpro-arrow{width:28px;height:30px;font-size:18px;opacity:0}.dpro-card:hover .dpro-card-carousel .dpro-arrow{opacity:.78}.dpro-card-carousel .dpro-arrow.prev{left:7px}.dpro-card-carousel .dpro-arrow.next{right:7px}.dpro-card-carousel .dpro-dots{bottom:7px}.dpro-card-carousel .dpro-dots button{width:6px;height:6px}.dpro-card-carousel .dpro-dots button.is-active{width:18px}.dpro-card-body{padding:10px 11px 11px}.dpro-card-title{display:flex;align-items:center;gap:8px}.dpro-card-title>span{flex:0 0 30px;height:30px;display:grid;place-items:center;border-radius:5px;color:var(--dpro-red);background:#fff0f2;font-size:17px;font-weight:900}.dpro-card h3{margin:0;font-size:15px}.dpro-card-body>p{height:38px;margin:6px 0 7px;color:#646b73;font-size:9.2px;line-height:1.35;overflow:hidden}.dpro-starting{display:flex;justify-content:space-between;align-items:baseline;gap:8px;padding-top:7px;border-top:1px solid #eceef0}.dpro-starting small{font-size:8px;color:#7b8289}.dpro-starting strong{color:var(--dpro-red);font-size:13px}.dpro-badges{min-height:39px;display:flex;flex-wrap:wrap;gap:4px;align-content:flex-start;margin:7px 0}.dpro-badges span{padding:3px 5px;border-radius:3px;font-size:7.2px;font-weight:850}.dpro-badges .auto{color:#14683d;background:#e8f6ed}.dpro-badges .review{color:#9a1724;background:#ffedef}.dpro-badges .cert{color:#67520b;background:#fff5c9}.dpro-badges .custom{color:#48515a;background:#edf0f2}.dpro-card-actions{display:grid;grid-template-columns:1fr 1.15fr;gap:6px}.dpro-card-actions button{min-height:35px;border:1px solid #cfd4d8;border-radius:4px;background:#fff;color:#1b1e22;font-size:9px;font-weight:900;cursor:pointer}.dpro-card-actions button.start{border-color:var(--dpro-red);background:var(--dpro-red);color:#fff}.dpro-card-actions button:disabled{opacity:.55;cursor:wait}
.dpro-bottom-cta{margin:13px 0 11px;min-height:110px;display:flex;justify-content:space-between;align-items:center;gap:25px;padding:20px 24px;color:#fff;background:linear-gradient(110deg,#0b0f13 0%,#151a20 65%,#291013 100%);border-left:6px solid var(--dpro-red);border-radius:5px}.dpro-bottom-cta small{font-size:9px;letter-spacing:.18em;color:#c2c7cc}.dpro-bottom-cta h2{margin:4px 0 3px;font-size:27px}.dpro-bottom-cta p{margin:0;color:#c3c8ce;font-size:9.5px}.dpro-bottom-cta button{flex:0 0 auto;min-width:210px;height:46px;border:0;border-radius:4px;background:var(--dpro-yellow);color:#151515;font-size:11px;font-weight:900;cursor:pointer}
.dpro-prof-links{margin:0 calc(max(24px,calc((100% - var(--dpro-max))/2))*-1);padding:10px max(24px,calc((100% - var(--dpro-max))/2));display:flex;align-items:center;gap:18px;border-top:1px solid #e0e4e7;border-bottom:1px solid #e0e4e7;background:#fff;overflow-x:auto}.dpro-prof-links>strong{flex:0 0 auto;font-size:9px;letter-spacing:.1em}.dpro-prof-links>div{display:flex;gap:6px;min-width:max-content}.dpro-prof-links a{min-height:36px;display:flex;align-items:center;gap:13px;padding:0 12px;border:1px solid #e0e4e7;border-radius:4px;color:#333a41;text-decoration:none;font-size:9px;font-weight:800;background:#fff}.dpro-prof-links a.is-active{border-color:#ef9ba4;color:#a90e1c;background:#fff2f3}.dpro-prof-links a span{color:var(--dpro-red)}
.dpro-workflow{margin:10px 0 0;border:1px solid var(--dpro-line);border-radius:6px;background:#fff;overflow:hidden}.dpro-workflow-head{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:9px 13px;border-bottom:1px solid #e7e9eb}.dpro-workflow-head small,.dpro-workflow-head strong{display:block}.dpro-workflow-head small{color:var(--dpro-red);font-size:8px;font-weight:900;letter-spacing:.1em}.dpro-workflow-head strong{margin-top:2px;font-size:11px}.dpro-workflow-head>span{font-size:8.5px;color:#687078}.dpro-workflow-row{display:flex;align-items:stretch;gap:4px;padding:9px;overflow-x:auto}.dpro-workflow-row>a{flex:1 0 105px;min-height:59px;display:grid;grid-template-columns:28px 1fr;grid-template-rows:auto auto;align-content:center;gap:2px 7px;padding:7px;border:1px solid transparent;border-radius:5px;color:#3b4249;text-decoration:none}.dpro-workflow-row>a>span{grid-row:1/3;width:28px;height:28px;display:grid;place-items:center;align-self:center;border:1px solid #cfd5d9;border-radius:50%;font-size:8px}.dpro-workflow-row>a>b{font-size:8.5px}.dpro-workflow-row>a>small{font-size:7px;color:#9d6f00}.dpro-workflow-row>a.is-active{border-color:#f0a5ad;background:#fff1f2;color:#a70f1d}.dpro-workflow-row>a.is-complete{background:#edf8f1;color:#17623b}.dpro-workflow-row>a.is-locked{opacity:.68;background:#f7f7f8}.dpro-workflow-row>i{align-self:center;color:#9ba1a6;font-style:normal;font-size:18px}
.dpro-footer{margin:12px calc(max(24px,calc((100% - var(--dpro-max))/2))*-1) 0;min-height:70px;display:grid;place-items:center;padding:18px;color:#fff;background:#0d1115;text-align:center}.dpro-footer,.dpro-footer *{background-image:none!important}.dpro-footer img,.dpro-footer video,.dpro-footer svg,.dpro-footer picture{display:none!important}.dpro-footer strong{font-size:14px;letter-spacing:.04em}
@media(max-width:1250px){.dpro-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dpro-filterbar{grid-template-columns:repeat(4,1fr)}.dpro-custom{grid-column:1/-1;border-top:1px solid #e3e6e9}.dpro-context{grid-template-columns:repeat(2,1fr)}.dpro-context>div:nth-child(2){border-right:0}.dpro-context>div:nth-child(-n+2){border-bottom:1px solid #e7eaec}}
@media(max-width:900px){.dpro-hero{height:500px}.dpro-hero-copy{width:calc(100% - 38px);padding-bottom:62px}.dpro-hero-message{display:none}.dpro-benefits{grid-template-columns:repeat(2,1fr);margin-top:-28px}.dpro-benefits article:nth-child(2){border-right:0}.dpro-benefits article:nth-child(-n+2){border-bottom:1px solid #e2e5e8}.dpro-filterbar{grid-template-columns:repeat(2,1fr)}.dpro-filterbar>label:nth-child(2n){border-right:0}.dpro-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dpro-bottom-cta{align-items:flex-start;flex-direction:column}.dpro-bottom-cta button{width:100%}.dpro-section-head{align-items:flex-start;flex-direction:column}.dpro-prof-links{margin-left:-24px;margin-right:-24px}.dpro-footer{margin-left:-24px;margin-right:-24px}}
@media(max-width:620px){.desktop-nav a.dpro-current-nav:after{display:none}.dpro-hero{height:590px}.dpro-hero-shade{background:linear-gradient(0deg,rgba(3,6,9,.96) 5%,rgba(3,6,9,.78) 68%,rgba(3,6,9,.33))}.dpro-hero-copy{width:calc(100% - 28px);justify-content:flex-end;padding-bottom:55px}.dpro-eyebrow{font-size:9px}.dpro-hero h1{font-size:clamp(38px,11vw,53px);line-height:.96}.dpro-hero-desc{font-size:12px}.dpro-hero-actions{width:100%;flex-direction:column}.dpro-hero-actions button{width:100%}.dpro-hero-carousel>.dpro-arrow{display:none}.dpro-benefits{width:calc(100% - 24px);grid-template-columns:1fr;margin-top:-18px}.dpro-benefits article{border-right:0!important;border-bottom:1px solid #e2e5e8}.dpro-benefits article:last-child{border-bottom:0}.dpro-context{width:calc(100% - 24px);grid-template-columns:1fr}.dpro-context>div{border-right:0!important;border-bottom:1px solid #e7eaec}.dpro-context>div:last-child{border-bottom:0}.dpro-main{padding-left:12px;padding-right:12px}.dpro-filterbar{grid-template-columns:1fr}.dpro-filterbar>label{border-right:0;border-bottom:1px solid #e3e6e9}.dpro-custom{grid-column:auto;grid-template-columns:1fr;grid-template-areas:'title' 'sub' 'button';gap:4px}.dpro-custom button{width:100%;margin-top:5px}.dpro-section-head h2{font-size:21px}.dpro-grid{grid-template-columns:1fr}.dpro-card-media{height:170px}.dpro-card-body>p{height:auto;min-height:32px}.dpro-card-actions{grid-template-columns:1fr}.dpro-card-actions button{min-height:42px}.dpro-bottom-cta{padding:18px}.dpro-bottom-cta h2{font-size:23px}.dpro-prof-links{margin-left:-12px;margin-right:-12px;padding-left:12px;padding-right:12px}.dpro-workflow-head{align-items:flex-start;flex-direction:column}.dpro-workflow-row>a{flex-basis:115px}.dpro-footer{margin-left:-12px;margin-right:-12px}.dpro-card-carousel .dpro-arrow{display:none}}
@media(prefers-reduced-motion:reduce){.dpro-slide,.dpro-card{transition:none!important}}
