
/* Work section — components layered on the Forge & Helm site system */
.wp{--waccent:#185FA5;position:relative;z-index:2}
.wp *{box-sizing:border-box}
.wp a{cursor:none}
.wp .wrapw{max-width:1220px;margin:0 auto;padding:0 40px}
@media(max-width:640px){.wp .wrapw{padding:0 22px}}
.w-mono{font-family:var(--font-mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase}
.w-btn{display:inline-flex;align-items:center;gap:.5em;font-family:var(--font-body);font-weight:500;font-size:13px;letter-spacing:.06em;text-transform:uppercase;padding:13px 26px;text-decoration:none;border:1px solid transparent;transition:background .2s,transform .15s,border-color .2s,color .2s;cursor:none}
.w-btn:active{transform:translateY(1px)}
.w-btn-primary{background:var(--waccent);color:#fff}
.w-btn-primary:hover{filter:brightness(1.08)}
.w-btn-ghost{border-color:rgba(232,234,240,.22);color:var(--steel-white)}
.w-btn-ghost:hover{border-color:var(--steel-white);background:rgba(255,255,255,.04)}
.w-ext{font-size:.85em;opacity:.8}
.w-reveal{opacity:0;transform:translateY(16px)}
.w-reveal.in{opacity:1;transform:none;transition:opacity .7s var(--ease-out),transform .7s var(--ease-out)}

/* Work page header (section-scale, not a landing hero) */
.w-head{padding:150px 0 40px}
.w-eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--ash)}
.w-eyebrow .d{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 14px 2px rgba(24,95,165,.7)}
.w-title{font-family:var(--font-display);font-weight:400;line-height:.92;letter-spacing:.01em;text-transform:uppercase;margin:22px 0 0;font-size:clamp(52px,8vw,104px);color:var(--pure-white)}
.w-title .b2{color:var(--accent-light)}
.w-sub{margin-top:22px;font-family:var(--font-body);font-weight:300;font-size:clamp(17px,1.9vw,20px);line-height:1.6;color:var(--ash-light);max-width:62ch}
.w-sub b{color:var(--steel-white);font-weight:500}
.w-stats{display:flex;flex-wrap:wrap;gap:14px;margin-top:38px}
.w-stat{flex:1 1 150px;min-width:140px;border:1px solid rgba(232,234,240,.1);padding:18px 20px;background:linear-gradient(180deg,var(--forge-charcoal),transparent)}
.w-stat .n{font-family:var(--font-display);font-size:42px;line-height:.95;color:var(--steel-white)}
.w-stat .l{font-size:13px;color:var(--ash);margin-top:6px}

/* toolbar / filter */
.w-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:34px 0 4px}
.w-seg{display:inline-flex;flex-wrap:wrap;gap:4px;padding:5px;border:1px solid rgba(232,234,240,.1);background:var(--forge-dark)}
.w-seg button{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ash);background:transparent;border:0;padding:9px 14px;cursor:none;transition:.18s}
.w-seg button:hover{color:var(--steel-white)}
.w-seg button[aria-pressed="true"]{color:#fff;background:var(--accent)}
.w-legend{display:flex;gap:16px}
.w-prov{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--steel-white);padding:5px 11px;border-radius:999px;border:1px solid rgba(232,234,240,.18);background:rgba(10,12,16,.5)}
.w-prov .pd{width:7px;height:7px;border-radius:50%}
.w-prov[data-p="in-house"] .pd{background:var(--accent)}
.w-prov[data-p="in-house"]{border-color:rgba(24,95,165,.6)}
.w-prov[data-p="founding"] .pd{background:var(--accent-light)}
.w-prov[data-p="founding"]{border-color:rgba(133,183,235,.55)}
.w-prov[data-p="client"] .pd{background:var(--ash)}
.w-legend .w-prov{background:transparent}

/* grid */
.w-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:22px;padding:26px 0 110px}
.w-plate{grid-column:span 3;display:flex;flex-direction:column;border:1px solid rgba(232,234,240,.1);overflow:hidden;background:var(--forge-dark);position:relative;transition:border-color .25s,transform .25s var(--ease-out),box-shadow .25s}
.w-plate::before{content:"";position:absolute;inset:0;z-index:4;pointer-events:none;opacity:0;transition:opacity .3s;background:radial-gradient(340px 340px at var(--mx,50%) var(--my,0%),color-mix(in srgb,var(--pa,var(--accent)) 22%,transparent),transparent 70%)}
.w-plate:hover{transform:translateY(-4px);border-color:rgba(232,234,240,.2);box-shadow:0 30px 60px -34px rgba(0,0,0,.8)}
.w-plate:hover::before{opacity:1}
.w-plate--wide{grid-column:span 6}
.w-thumb{position:relative;aspect-ratio:16/9;overflow:hidden;background:linear-gradient(135deg,var(--pa,var(--accent)),color-mix(in srgb,var(--pa,var(--accent)) 34%,#0a0c10))}
.w-plate--wide .w-thumb{aspect-ratio:2.6/1}
.w-thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top center;z-index:1;transition:transform .6s var(--ease-out)}
.w-plate:hover .w-thumb img{transform:scale(1.04)}
.w-thumb .sf{position:absolute;inset:0;z-index:0;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:44px;letter-spacing:.08em;color:rgba(255,255,255,.92)}
.w-thumb::after{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,transparent 60%,rgba(10,12,16,.4))}
.w-thumb .w-prov{position:absolute;top:14px;left:14px;z-index:3}
.w-cover{position:absolute;inset:0;z-index:6}
.w-pbody{padding:22px 22px 24px;position:relative;z-index:5}
.w-plate--wide .w-pbody{padding:30px 34px 34px}
.w-cat{color:var(--pa,var(--accent))}
.w-name{font-family:var(--font-display);font-size:34px;letter-spacing:.03em;margin:8px 0 8px;line-height:1;color:var(--pure-white)}
.w-plate--wide .w-name{font-size:52px}
.w-one{color:var(--ash-light);font-size:14.5px;font-weight:300;margin:0;max-width:56ch}
.w-plate--wide .w-one{font-size:16px}
.w-metarow{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.w-metric{display:flex;align-items:baseline;gap:6px;border:1px solid rgba(232,234,240,.1);padding:6px 10px}
.w-metric .mn{font-family:var(--font-display);font-size:19px;color:var(--steel-white)}
.w-metric .ml{font-size:11px;color:var(--ash)}
.w-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}
.w-tag{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ash);border:1px solid rgba(232,234,240,.1);padding:4px 9px}
.w-view{display:inline-flex;align-items:center;gap:9px;margin-top:18px;font-size:13px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--steel-white)}
.w-view .ln{width:24px;height:1px;background:var(--pa,var(--accent));transition:width .25s var(--ease-out)}
.w-plate:hover .w-view .ln{width:40px}
.w-plate[hidden]{display:none}

/* product page */
.w-crumb{padding:130px 0 0}
.w-crumb a{font-size:13px;color:var(--ash);letter-spacing:.03em}
.w-crumb a:hover{color:var(--steel-white)}
.w-phero{display:grid;grid-template-columns:1.04fr .96fr;gap:56px;align-items:center;padding:34px 0 66px;border-bottom:1px solid rgba(232,234,240,.08)}
.w-hmeta{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.w-ph-name{font-family:var(--font-display);font-size:clamp(56px,9vw,120px);margin:16px 0 0;line-height:.9;color:var(--pure-white)}
.w-ph-one{font-size:clamp(18px,2.1vw,22px);line-height:1.5;color:var(--steel-white);font-weight:300;max-width:36ch;margin:22px 0 24px}
.w-chips{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}
.w-chip{display:flex;align-items:baseline;gap:7px;border:1px solid rgba(232,234,240,.18);border-radius:999px;padding:8px 14px;background:var(--forge-dark)}
.w-chip .cn{font-family:var(--font-display);font-size:20px;color:var(--pa,var(--accent))}
.w-chip .cl{font-size:12px;color:var(--ash-light)}
.w-actions{display:flex;flex-wrap:wrap;gap:12px}
.w-live{margin-top:18px}
.w-live a{font-family:var(--font-mono);font-size:12.5px;letter-spacing:.06em;color:var(--ash)}
.w-live a:hover{color:var(--pa,var(--accent))}
.w-frame{border:1px solid rgba(232,234,240,.16);overflow:hidden;background:#07090b;position:relative;box-shadow:0 50px 100px -50px rgba(0,0,0,.92)}
.w-frame::before{content:"";position:absolute;inset:-1px;pointer-events:none;box-shadow:0 0 0 1px color-mix(in srgb,var(--pa,var(--accent)) 36%,transparent),0 0 90px -14px color-mix(in srgb,var(--pa,var(--accent)) 66%,transparent)}
.w-fbar{display:flex;align-items:center;gap:8px;padding:12px 14px;background:var(--forge-charcoal);border-bottom:1px solid rgba(232,234,240,.08)}
.w-dot{width:11px;height:11px;border-radius:50%;background:#363c42}
.w-furl{margin-left:10px;flex:1;font-family:var(--font-mono);font-size:11.5px;color:var(--ash);background:#07090b;border:1px solid rgba(232,234,240,.08);padding:6px 11px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.w-screen{position:relative;aspect-ratio:16/10;background:linear-gradient(135deg,var(--pa,var(--accent)),color-mix(in srgb,var(--pa,var(--accent)) 32%,#0a0c10))}
.w-screen img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top center;z-index:1}
.w-screen .sf{position:absolute;inset:0;z-index:0;display:flex;flex-direction:column;gap:8px;align-items:center;justify-content:center;text-align:center;padding:24px}
.w-screen .sf .fn{font-family:var(--font-display);font-size:58px;letter-spacing:.06em;color:#fff}
.w-screen .sf .fl{font-family:var(--font-mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.85)}
.w-sec{padding:76px 0;border-bottom:1px solid rgba(232,234,240,.08)}
.w-sec.alt{background:var(--forge-dark)}
.w-shead{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:34px}
.w-shead h2{font-family:var(--font-display);font-size:clamp(34px,5vw,56px);letter-spacing:.03em;margin:0;line-height:.94;color:var(--pure-white)}
.w-shead .idx{font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;color:var(--iron-gray-light)}
.w-about{display:grid;grid-template-columns:1fr 1.35fr;gap:50px;align-items:start}
.w-about .lede{font-size:clamp(20px,2.4vw,27px);line-height:1.42;max-width:30ch;color:var(--steel-white);font-weight:400}
.w-about .body{color:var(--ash-light);max-width:60ch;font-size:17px;font-weight:300}
.w-caps{display:grid;grid-template-columns:1fr 1fr;gap:0 56px}
.w-cap{padding:24px 0;border-top:1px solid rgba(232,234,240,.08)}
.w-cap h4{margin:0 0 7px;font-size:16.5px;font-weight:500;display:flex;align-items:center;gap:11px;color:var(--steel-white)}
.w-cap h4 .b{width:8px;height:8px;background:var(--pa,var(--accent));flex:0 0 auto}
.w-cap p{margin:0 0 0 19px;color:var(--ash-light);font-size:15px;font-weight:300;max-width:46ch}
.w-flow{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:1px;border:1px solid rgba(232,234,240,.1);overflow:hidden;background:rgba(232,234,240,.1)}
.w-step{padding:28px 22px;background:var(--forge-dark)}
.w-step .num{font-family:var(--font-display);font-size:30px;color:var(--pa,var(--accent));line-height:1}
.w-step h4{margin:12px 0 6px;font-size:16px;font-weight:500;color:var(--steel-white)}
.w-step p{margin:0;color:var(--ash-light);font-size:14px;font-weight:300}
.w-arch{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px}
.w-layer{border:1px solid rgba(232,234,240,.1);border-left:3px solid var(--pa,var(--accent));padding:24px;background:var(--forge-dark)}
.w-layer h4{font-family:var(--font-display);font-size:27px;letter-spacing:.04em;margin:0 0 8px;color:var(--pure-white)}
.w-layer p{margin:0;color:var(--ash-light);font-size:14.5px;font-weight:300}
.w-build{display:grid;grid-template-columns:.8fr 1.2fr;gap:46px;align-items:start;border:1px solid rgba(232,234,240,.16);padding:44px;background:linear-gradient(180deg,var(--forge-charcoal),var(--forge-dark))}
.w-build h3{font-family:var(--font-display);font-size:clamp(30px,4vw,46px);letter-spacing:.03em;margin:0;line-height:.98;color:var(--pure-white)}
.w-build h3 .u{color:var(--pa,var(--accent))}
.w-build p{margin:0;color:var(--ash-light);font-size:17px;font-weight:300;line-height:1.6}
.w-pnav{display:flex;justify-content:space-between;gap:16px;margin-top:36px;flex-wrap:wrap}
@media(max-width:940px){.w-phero{grid-template-columns:1fr;gap:36px}.w-about{grid-template-columns:1fr;gap:24px}.w-build{grid-template-columns:1fr;gap:22px;padding:30px}.w-caps{grid-template-columns:1fr}.w-plate,.w-plate--wide{grid-column:span 6}.w-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.w-grid{grid-template-columns:1fr}.w-plate,.w-plate--wide{grid-column:span 1}.w-head{padding:120px 0 28px}.w-crumb{padding:110px 0 0}}
@media(prefers-reduced-motion:reduce){.wp *{transition:none!important;animation:none!important}.w-reveal{opacity:1!important;transform:none!important}}

.w-plate--wide .w-thumb img{object-position:center center}

.loc-areas{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1px;border:1px solid rgba(232,234,240,.1);background:rgba(232,234,240,.1);overflow:hidden}.loc-areas span{background:var(--forge-dark);padding:15px 18px;font-size:15px;color:var(--steel-white);font-weight:300;display:flex;align-items:center;gap:9px}.loc-areas span::before{content:"";width:6px;height:6px;background:var(--accent);flex:0 0 auto}.loc-faq{display:grid;gap:0}.loc-q{border-top:1px solid rgba(232,234,240,.1);padding:24px 0}.loc-q h4{margin:0 0 8px;font-size:18px;font-weight:500;color:var(--steel-white)}.loc-q p{margin:0;color:var(--ash-light);font-size:16px;font-weight:300;max-width:70ch}.loc-links{display:flex;flex-wrap:wrap;gap:10px}.loc-links a{font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--ash);border:1px solid rgba(232,234,240,.14);padding:10px 15px;text-decoration:none;transition:.2s}.loc-links a:hover{color:var(--steel-white);border-color:var(--steel-white)}
