.dubois_portfolio .hero-section{padding:100px 0 80px;position:relative;overflow:hidden}
.dubois_portfolio .hero-section::before{content:'';position:absolute;top:-120px;left:-200px;width:700px;height:700px;background:radial-gradient(circle,#92b7071f 0%,transparent 70%);pointer-events:none}
.dubois_portfolio .hero-section::after{content:'';position:absolute;bottom:-100px;right:-150px;width:500px;height:500px;background:radial-gradient(circle,#92b70712 0%,transparent 70%);pointer-events:none}
.dubois_portfolio .hero-tag{display:inline-flex;align-items:center;gap:8px;background:#92b7071a;border:1px solid #92b7074d;border-radius:30px;padding:6px 16px;font-size:.78rem;font-weight:500;color:#b8d44a;letter-spacing:.5px;text-transform:uppercase;margin-bottom:28px}
.dubois_portfolio .hero-tag i{font-size:.7rem;color:#92b707}
.dubois_portfolio .hero-title{font-size:clamp(2.8rem,6vw,4.8rem);font-weight:800;line-height:1.08;letter-spacing:-1.5px;margin-bottom:24px; color:#fff;}
.dubois_portfolio .hero-title .accent-blue{color:#92b707}
.dubois_portfolio .hero-subtitle{font-size:1.15rem;color:#b2b2b2;max-width:580px;margin-bottom:48px;font-weight:300}
.dubois_portfolio .btn-primary-custom{background:#92b707;color:#fff;border:none;border-radius:8px;padding:13px 28px;font-weight:600;font-size:.9rem;letter-spacing:.3px;transition:background 0.2s,transform .15s;display:inline-flex;align-items:center;gap:8px}
.dubois_portfolio .btn-primary-custom:hover{background:#7a9a06;color:#fff;transform:translateY(-1px)}
.dubois_portfolio .btn-outline-custom{background:transparent;color:#d4d4e8;border:1px solid #2a2a45;border-radius:8px;padding:13px 28px;font-weight:600;font-size:.9rem;transition:border-color 0.2s,color .2s;display:inline-flex;align-items:center;gap:8px}
.dubois_portfolio .btn-outline-custom:hover{border-color:#92b707;color:#b8d44a}
.dubois_portfolio .hero-chip{background:#111120;border:1px solid #1e1e35;border-radius:6px;padding:7px 14px;font-size:.8rem;font-weight:500;color:#9090b8;display:inline-flex;align-items:center}
.dubois_portfolio .hero-tags-row{display:flex;flex-wrap:wrap;gap:10px}
.dubois_portfolio .live-widget{background: #1f1f1f; border: 1px solid #373737;border-radius:16px;padding:28px;position:relative;overflow:hidden}
.dubois_portfolio .live-widget::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg, transparent, #d4ff00, transparent)}
.dubois_portfolio .live-badge{display:inline-flex;align-items:center;gap:6px;background:#92b70714;border:1px solid #92b70733;border-radius:20px;padding:4px 12px;font-size:.72rem;font-weight:600;color:#92b707;letter-spacing:.8px;text-transform:uppercase;margin-bottom:20px}
.dubois_portfolio .live-dot{width:6px;height:6px;border-radius:50%;background:#92b707;animation:pulse-dot 1.5s infinite}
@keyframes pulse-dot {
0%,100%{opacity:1}
50%{opacity:.3}
}
.dubois_portfolio .order-score{font-size:3.5rem;font-weight:800;color:#f0f0fa;line-height:1;margin-bottom:4px}
.dubois_portfolio .order-label{font-size:.78rem;color:#b2b2b2;font-weight:500;text-transform:uppercase;letter-spacing:.6px}
.dubois_portfolio .stat-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}
.dubois_portfolio .stat-item{background:#ffffff08;border:1px solid #1e1e35;border-radius:8px;padding:12px}
.dubois_portfolio .stat-item .s-label{font-size:.7rem;color:#b2b2b2;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}
.dubois_portfolio .stat-item .s-val{font-size:.95rem;font-weight:700;color:#f0f0fa}
.dubois_portfolio .status-low{color:#3de87a}
.dubois_portfolio .status-verified{color:#92b707}
section{padding:90px 0}
.dubois_portfolio .section-tag{display:inline-block;font-size:.72rem;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:#92b707;margin-bottom:0px}
.dubois_portfolio .section-title{font-size:clamp(1.9rem,3.5vw,2.8rem);font-weight:800;letter-spacing:-.8px;margin-bottom:0px;color:#fff;}
.dubois_portfolio .section-lead{font-size:1.05rem;color:#b2b2b2;max-width:560px;font-weight:300}
.dubois_portfolio .divider{border:none;height:1px;background:#505053;margin:0}
.dubois_portfolio .overview-section{background:#111}
.dubois_portfolio .overview-card{background: #161515; border: 1px solid #2a2a2a; border-radius:14px;padding:28px;height:100%;transition:border-color 0.25s,transform .2s}
.dubois_portfolio .overview-card:hover{border-color:#92b707;transform:translateY(-3px)}
.dubois_portfolio .overview-icon{width:48px;height:48px;border-radius:10px;background:#92b7071a;display:flex;align-items:center;justify-content:center;margin-bottom:16px;font-size:1.2rem;color:#92b707}
.dubois_portfolio .overview-card h5{font-size:1rem;font-weight:700;margin-bottom:8px;color:#fff;}
.dubois_portfolio .overview-card p{font-size:.9rem;color:#b2b2b2;line-height:1.6;margin:0}
.dubois_portfolio .challenge-section{background:#111}
.dubois_portfolio .challenge-item{display:flex;gap:20px;padding:28px 0;border-bottom:1px solid #1e1e35}
.dubois_portfolio .challenge-item:last-child{border-bottom:none}
.dubois_portfolio .challenge-num{flex-shrink:0;width:40px;height:40px;border-radius:8px;background:#92b70714;border:1px solid #92b70733;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;color:#92b707}
.dubois_portfolio .challenge-content h5{font-size:1rem;font-weight:700;margin-bottom:6px;color:#f0f0fa}
.dubois_portfolio .challenge-content p{font-size:.88rem;color:#b2b2b2;margin:0}
.dubois_portfolio .challenge-img-box{background:#111120;border:1px solid #1e1e35;border-radius:16px;overflow:hidden;height:100%;min-height:380px;position:relative}
.dubois_portfolio .challenge-img-box img{width:100%;height:100%;object-fit:cover;opacity:.5}
.dubois_portfolio .challenge-img-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#0a0a0f8c 0%,#92b7071f 100%);display:flex;flex-direction:column;justify-content:flex-end;padding:28px}
.dubois_portfolio .challenge-img-overlay .big-text{font-size:2.5rem;font-weight:800;color:#f0f0fa;line-height:1.1}
.dubois_portfolio .challenge-img-overlay .sub-text{font-size:.85rem;color:#9090b8;margin-top:6px}
.dubois_portfolio .solution-section{background:#111}
.dubois_portfolio .solution-step{display:flex;gap:24px;position:relative;padding-bottom:36px}
.dubois_portfolio .solution-step:not(:last-child)::after{content:'';position:absolute;left:19px;top:44px;width:2px;bottom:8px;background:linear-gradient(180deg,#92b707 0%,transparent 100%);opacity:.2}
.dubois_portfolio .step-num{flex-shrink:0;width:40px;height:40px;border-radius:50%;background:#92b707;display:flex;align-items:center;justify-content:center;font-family:'Syne',sans-serif;font-size:.8rem;font-weight:700;color:#fff;z-index:1}
.dubois_portfolio .step-body h5{font-size:1rem;font-weight:700;margin-bottom:6px;color:#f0f0fa}
.dubois_portfolio .step-body p{font-size:.88rem;color:#b2b2b2;margin:0}
.dubois_portfolio .arch-flow{background: #1f1f1f; border: #373737;border-radius:16px;padding:32px;position:relative;overflow:hidden}
.dubois_portfolio .arch-flow::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#92b707,#92b707,transparent)}
.dubois_portfolio .arch-node{background: #111111; border: 1px solid #313131;border-radius:10px;padding:14px 16px;margin-bottom:8px;display:flex;align-items:center;gap:12px;transition:border-color .2s}
.dubois_portfolio .arch-node:hover{border-color:#92b707}
.dubois_portfolio .arch-node-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}
.dubois_portfolio .icon-blue{background:#92b70726;color:#92b707}
.dubois_portfolio .icon-cyan{background:#92b7071a;color:#92b707}
.dubois_portfolio .icon-green{background:#3de87a1a;color:#3de87a}
.dubois_portfolio .arch-node-text .n-title{font-size:.85rem;font-weight:600;color:#f0f0fa}
.dubois_portfolio .arch-node-text .n-sub{font-size:.75rem;color:#b2b2b2}
.dubois_portfolio .arch-arrow{text-align:center;color:#6a6a6a;font-size:1rem;margin:2px 0}
.dubois_portfolio .arch-badge{display:inline-flex;align-items:center;gap:6px;background:#92b70714;border:1px solid #92b70733;border-radius:20px;padding:4px 12px;font-size:.72rem;font-weight:600;color:#b8d44a;letter-spacing:.6px;text-transform:uppercase;margin-bottom:16px}
.dubois_portfolio .results-section{background:#111}
.dubois_portfolio .result-card{ background: #151516; border: 1px solid #2a2a2a;border-radius:14px;padding:20px 25px;height:100%;transition:border-color 0.25s,transform .2s;position:relative;overflow:hidden}
.dubois_portfolio .result-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg, transparent, #d4ff00, transparent);opacity:0;transition:opacity .25s}
.dubois_portfolio .result-card:hover::before{opacity:1}
.dubois_portfolio .result-card:hover{transform:translateY(-4px)}
.dubois_portfolio .result-metric{font-family:'Syne',sans-serif;font-size:2.8rem;font-weight:800;color:#92b707;margin-bottom:10px}
.dubois_portfolio .result-card h5{font-size:1rem;font-weight:700;margin-bottom:10px;color:#f0f0fa}
.dubois_portfolio .result-card p{font-size:.88rem;color:#b2b2b2;line-height:1.6;margin:0}
.dubois_portfolio .stack-section{background:#111}
.dubois_portfolio .tech-grid{display:flex;flex-wrap:wrap;gap:12px;margin-top:0px}
.dubois_portfolio .tech-pill{    background: #151516; border: 1px solid #2a2a2a;border-radius:10px;padding:14px 22px;display:flex;align-items:center;gap:10px;transition:border-color 0.2s,transform .15s;cursor:default}
.dubois_portfolio .tech-pill:hover{border-color:#92b707;transform:translateY(-2px)}
.dubois_portfolio .tech-pill i{font-size:1.3rem;color:#92b707}
.dubois_portfolio .tech-pill span{font-size:.9rem;font-weight:600;color:#d4d4e8}

@media (max-width: 768px) {
.dubois_portfolio .hero-section{padding:70px 0 60px}
section{padding:60px 0}
.dubois_portfolio .live-widget{margin-top:40px}
}