/* ===== PRO SKILLS · WORKSHOPS ===== */
.ws-page{background:var(--c-ink)}
.va-accent{color:var(--c-primary);text-shadow:0 0 40px rgba(132,189,0,.25)}
.ws-breadcrumb{display:flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:12px;color:var(--c-grey-2);margin-bottom:24px;flex-wrap:wrap}
.ws-breadcrumb a{transition:var(--transition)}
.ws-breadcrumb a:hover{color:var(--c-primary)}
.ws-breadcrumb__current{color:var(--c-grey)}

/* hero */
.ws-hero{position:relative;padding:160px 0 50px;overflow:hidden;text-align:center}
.ws-hero__wash{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 60% 60% at 50% 0%, rgba(132,189,0,.08) 0%, transparent 70%)}
.ws-hero__inner{position:relative;z-index:2;max-width:760px;margin:0 auto}
.ws-hero__title{font-family:var(--font-display);font-size:clamp(34px,5vw,58px);font-weight:800;color:var(--c-white);line-height:1.1;letter-spacing:-.03em;margin-bottom:20px}
.ws-hero__sub{font-size:19px;line-height:1.7;color:var(--c-grey);max-width:600px;margin:0 auto}

/* highlights */
.ws-highlights{padding:20px 0 10px}
.ws-hl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1000px;margin:0 auto}
.ws-hl{display:flex;flex-direction:column;gap:12px;padding:28px;border-radius:var(--radius-lg);background:rgba(20,24,31,.6);border:1px solid var(--c-line);transition:border-color .4s ease,transform .4s ease}
.ws-hl:hover{border-color:rgba(132,189,0,.28);transform:translateY(-4px)}
.ws-hl__ico{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:rgba(132,189,0,.08);border:1px solid rgba(132,189,0,.2);color:var(--c-primary)}
.ws-hl__h{font-family:var(--font-display);font-size:17px;font-weight:600;color:var(--c-white)}
.ws-hl__d{font-size:14px;line-height:1.6;color:var(--c-grey)}

/* gallery */
.ws-gallery-sec{padding:60px 0 110px}
.ws-gallery-head{text-align:center;max-width:640px;margin:0 auto 36px}
.ws-gallery-head h2{font-family:var(--font-display);font-size:clamp(26px,3.4vw,38px);font-weight:700;color:var(--c-white);letter-spacing:-.02em;margin-bottom:12px}
.ws-gallery-head p{font-size:16px;color:var(--c-grey);line-height:1.6}
.ws-gallery{column-count:4;column-gap:14px}
.ws-photo{break-inside:avoid;margin:0 0 14px;border-radius:var(--radius);overflow:hidden;border:1px solid var(--c-line);cursor:zoom-in;position:relative;background:var(--c-panel)}
.ws-photo img{display:block;width:100%;height:auto;transition:transform .5s var(--ease-out-expo);opacity:0;animation:wsFade .6s ease forwards}
@keyframes wsFade{to{opacity:1}}
.ws-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(14,17,22,.5),transparent 55%);opacity:0;transition:opacity .4s ease}
.ws-photo:hover img{transform:scale(1.05)}
.ws-photo:hover::after{opacity:1}

/* lightbox */
.ws-lb{position:fixed;inset:0;z-index:2000;display:none;align-items:center;justify-content:center;background:rgba(8,10,13,.92);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:30px}
.ws-lb.open{display:flex}
.ws-lb img{max-width:92%;max-height:88vh;border-radius:var(--radius);box-shadow:0 30px 80px rgba(0,0,0,.6);border:1px solid rgba(255,255,255,.1)}
.ws-lb__close{position:absolute;top:22px;right:26px;width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(20,24,31,.8);border:1px solid var(--c-line);color:var(--c-white)}
.ws-lb__close:hover{border-color:var(--c-primary);color:var(--c-primary)}
.ws-lb__nav{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(20,24,31,.8);border:1px solid var(--c-line);color:var(--c-white)}
.ws-lb__nav:hover{border-color:var(--c-primary);color:var(--c-primary)}
.ws-lb__prev{left:20px}.ws-lb__next{right:20px}

@media (max-width:1024px){.ws-gallery{column-count:3}.ws-hl-grid{grid-template-columns:1fr}}
@media (max-width:768px){.ws-gallery{column-count:2}}
@media (max-width:480px){.ws-gallery{column-count:1}}
@media (prefers-reduced-motion:reduce){.ws-photo img{animation:none;opacity:1}.ws-photo:hover img{transform:none}}
