:root{
  --directory-ink:#171a17;
  --directory-ink-soft:#20241f;
  --directory-paper:#f1eee6;
  --directory-paper-deep:#e8e1d4;
  --directory-gold:#a8814d;
  --directory-gold-light:#dec18f;
  --directory-green:#68bd79;
  --directory-rust:#b87460;
}
.workshops-directory-page{background:var(--directory-ink);color:#242620}
.workshops-directory-page .site-header{position:absolute;background:linear-gradient(180deg,rgba(8,11,9,.9),rgba(8,11,9,0))}
.workshops-directory-page .site-header.scrolled{position:fixed;background:rgba(18,21,18,.96)}
.workshops-directory-page .site-nav a.active{color:#dbc49e}
.workshops-directory-page .site-nav a.active::after{width:100%}
.workshops-hero{position:relative;height:clamp(360px,38vw,480px);min-height:360px;overflow:hidden;color:#fff;background:#111;isolation:isolate}
.workshops-hero-images{position:absolute;inset:0;display:grid;grid-template-columns:repeat(3,1fr);gap:3px}
.workshops-hero-images img{width:100%;height:100%;object-fit:cover;object-position:center 48%;animation:directory-image-enter 1.15s cubic-bezier(.22,.7,.22,1) both}
.workshops-hero-images img:nth-child(2){animation-delay:.08s}.workshops-hero-images img:nth-child(3){animation-delay:.16s}
.workshops-hero-shade{position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(7,10,8,.9) 0%,rgba(7,10,8,.66) 42%,rgba(7,10,8,.28) 75%,rgba(7,10,8,.42)),linear-gradient(0deg,rgba(7,10,8,.82),transparent 58%)}
.workshops-hero-content{position:absolute;z-index:2;left:clamp(24px,8vw,130px);bottom:clamp(48px,6vw,78px);max-width:820px}
.workshops-hero-content .eyebrow{display:block;margin-bottom:18px;color:#e3c690;letter-spacing:.18em}
.workshops-hero h1{max-width:820px;margin:0;font-size:clamp(2.55rem,4.7vw,4.65rem);font-weight:600;line-height:1.02;letter-spacing:-.058em}
.workshops-hero h1 em{display:block;color:#e4c48e;font-weight:500}
.workshops-hero-content p{max-width:650px;margin:20px 0 0;color:#e0e5df;font-size:clamp(.83rem,1.1vw,1rem);line-height:1.65}
.workshops-hero-jump{position:absolute;z-index:3;right:clamp(24px,6vw,92px);bottom:clamp(38px,4.2vw,62px);display:flex;align-items:center;gap:14px;color:#fff;font-size:.63rem;font-weight:700;letter-spacing:.16em;text-decoration:none;text-transform:uppercase}
.workshops-hero-jump i{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.5);border-radius:50%}
.workshops-directory-page .section{padding-top:clamp(48px,5vw,72px);padding-bottom:clamp(48px,5vw,72px)}
.workshops-intro{background:var(--directory-paper);color:#262821}
.workshops-intro .section-top .eyebrow,.workshop-directory .section-top .eyebrow{color:#87683f}
.workshops-intro .section-top .rule,.workshop-directory .section-top .rule{background:#aa9d8973}
.workshops-intro .section-tail,.workshop-directory .section-tail{color:#6c675d}
.workshops-intro-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.72fr);gap:clamp(50px,8vw,120px);align-items:end;margin-top:clamp(30px,4vw,52px)}
.workshops-intro-grid h2,.directory-heading h2,.workshops-contact h2{margin:0;font-size:clamp(2.35rem,4.15vw,4.35rem);font-weight:600;line-height:1.02;letter-spacing:-.058em}
.workshops-intro-grid h2 em,.directory-heading h2 em,.workshops-contact h2 em{color:var(--directory-gold);font-weight:500}
.workshops-intro-copy>p{margin:0 0 26px;color:#5d615a;font-size:.9rem;line-height:1.8}
.workshops-status-summary{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(132,109,76,.35);border-bottom:1px solid rgba(132,109,76,.35)}
.workshops-status-summary a{position:relative;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:12px;padding:18px 12px;color:inherit;text-decoration:none}
.workshops-status-summary a+a{border-left:1px solid rgba(132,109,76,.35)}
.workshops-status-summary strong{font-size:1.8rem;font-weight:500;line-height:1}
.workshops-status-summary small{color:#656960;font-size:.62rem;letter-spacing:.08em;text-transform:uppercase}
.summary-dot{grid-row:1/3;align-self:center;width:9px;height:9px;border-radius:50%;box-shadow:0 0 0 5px rgba(75,145,89,.11)}
.summary-dot.open{background:var(--directory-green)}.summary-dot.closed{background:var(--directory-rust);box-shadow:0 0 0 5px rgba(184,116,96,.1)}
.workshop-directory{background:var(--directory-paper-deep);color:#242620}
.closed-workshop-directory{background:var(--directory-ink);color:#f1eee7}
.closed-workshop-directory .section-top .eyebrow{color:#d1b47f}.closed-workshop-directory .section-top .rule{background:#ffffff28}.closed-workshop-directory .section-tail{color:#aeb4ad}
.directory-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(310px,.55fr);gap:50px;align-items:end;margin:clamp(28px,4vw,48px) 0 clamp(30px,4vw,50px)}
.directory-heading>p{max-width:510px;margin:0;color:#64685f;font-size:.84rem;line-height:1.75}
.directory-heading-dark>p{color:#adb3ad}
.directory-status{display:inline-flex;align-items:center;gap:9px;margin-bottom:16px;font-size:.59rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.directory-status i,.workshop-live-status i{width:8px;height:8px;border-radius:50%}
.directory-status-open{color:#357446}.directory-status-open i{background:var(--directory-green);box-shadow:0 0 0 5px rgba(75,145,89,.12)}
.directory-status-closed{color:#d9aa9a}.directory-status-closed i{background:var(--directory-rust);box-shadow:0 0 0 5px rgba(184,116,96,.12)}
.workshop-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,2vw,28px)}
.workshop-directory-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid rgba(119,99,69,.3);background:#f8f5ee;box-shadow:0 18px 45px rgba(54,46,34,.1);transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
.workshop-directory-card:hover{transform:translateY(-4px);border-color:rgba(145,110,62,.58);box-shadow:0 25px 56px rgba(54,46,34,.18)}
.workshop-card-media{position:relative;display:block;width:100%;overflow:hidden;background:#111712;text-decoration:none}
.workshop-card-media::after{content:"";position:absolute;inset:auto 0 0;height:25%;background:linear-gradient(transparent,rgba(7,10,8,.86));pointer-events:none}
.workshop-card-media img{display:block;width:100%;height:auto;object-fit:initial;background:#111712;transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .5s ease}
.workshop-directory-card:hover .workshop-card-media img{transform:scale(1.018);filter:saturate(1.05)}
.workshop-card-media>span{position:absolute;z-index:2;left:18px;right:14px;bottom:15px;color:#fff;font-size:.55rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.workshop-card-copy{display:flex;flex:1;flex-direction:column;min-width:0;padding:clamp(22px,2.25vw,34px)}
.workshop-card-topline{display:flex;justify-content:space-between;gap:15px;color:#84683f;font-size:.52rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.workshop-card-number{flex:0 0 auto;color:#8b8d85}
.workshop-live-status{display:inline-flex;align-items:center;align-self:flex-start;gap:8px;margin:22px 0 13px;color:#347345;font-size:.56rem;letter-spacing:.12em;text-transform:uppercase}
.workshop-live-status i{background:var(--directory-green);box-shadow:0 0 0 4px rgba(75,145,89,.11)}
.workshop-card-copy h3{margin:0;font-size:clamp(1.4rem,2.1vw,2rem);font-weight:600;line-height:1.13;letter-spacing:-.045em}
.workshop-card-description{min-height:3.4em;margin:12px 0 20px;color:#65685f;font-size:.78rem;font-style:italic;line-height:1.65}
.workshop-facts{margin:auto 0 0;border-top:1px solid rgba(121,105,81,.25)}
.workshop-facts div{display:flex;justify-content:space-between;gap:18px;padding:10px 0;border-bottom:1px solid rgba(121,105,81,.2)}
.workshop-facts dt,.workshop-facts dd{margin:0;font-size:.65rem;line-height:1.45}.workshop-facts dt{color:#777a72}.workshop-facts dt i{width:17px;color:#947342}.workshop-facts dd{color:#30322c;font-weight:600;text-align:right}
.workshop-closing{display:flex;align-items:center;gap:9px;margin:15px 0 0;color:#6a5435;font-size:.61rem;font-weight:600;line-height:1.5}.workshop-closing i{color:#997441}
.workshop-card-link{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:18px;padding-top:17px;border-top:1px solid rgba(121,105,81,.25);color:#25271f;font-size:.59rem;font-weight:700;letter-spacing:.14em;text-decoration:none;text-transform:uppercase}
.workshop-card-link i{transition:transform .25s ease}.workshop-card-link:hover i{transform:translateX(5px)}
.closed-card-grid .workshop-directory-card,.workshop-directory-card.is-closed{border-color:rgba(255,255,255,.14);background:var(--directory-ink-soft);box-shadow:0 22px 50px rgba(0,0,0,.22)}
.closed-card-grid .workshop-card-copy,.workshop-directory-card.is-closed .workshop-card-copy{color:#f3efe7}
.closed-card-grid .workshop-card-topline,.workshop-directory-card.is-closed .workshop-card-topline{color:#c5a46d}
.closed-card-grid .workshop-card-number,.workshop-directory-card.is-closed .workshop-card-number{color:#9ba19a}
.closed-card-grid .workshop-live-status,.workshop-directory-card.is-closed .workshop-live-status{color:#d5a391}
.closed-card-grid .workshop-live-status i,.workshop-directory-card.is-closed .workshop-live-status i{background:var(--directory-rust);box-shadow:0 0 0 4px rgba(184,116,96,.12)}
.closed-card-grid .workshop-card-description,.workshop-directory-card.is-closed .workshop-card-description{color:#aeb4ad}
.closed-card-grid .workshop-facts,.closed-card-grid .workshop-facts div,.closed-card-grid .workshop-card-link,.workshop-directory-card.is-closed .workshop-facts,.workshop-directory-card.is-closed .workshop-facts div,.workshop-directory-card.is-closed .workshop-card-link{border-color:rgba(255,255,255,.13)}
.closed-card-grid .workshop-facts dt,.workshop-directory-card.is-closed .workshop-facts dt{color:#9fa69f}.closed-card-grid .workshop-facts dd,.workshop-directory-card.is-closed .workshop-facts dd{color:#ecede8}
.closed-card-grid .workshop-closing,.workshop-directory-card.is-closed .workshop-closing{color:#d2a793}.closed-card-grid .workshop-card-link,.workshop-directory-card.is-closed .workshop-card-link{color:#f3efe7}
.empty-directory{padding:50px 25px;border:1px solid rgba(132,109,76,.36);text-align:center}.empty-directory i{color:#a27c49;font-size:1.6rem}.empty-directory h3{margin:16px 0 8px;font-size:1.4rem}.empty-directory p{margin:0 0 18px;color:#64685f}.empty-directory a{font-size:.66rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.workshops-contact{background:var(--directory-paper);color:#25271f}
.workshops-contact-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.55fr) auto;gap:clamp(24px,4vw,62px);align-items:end;padding:clamp(30px,4vw,54px);border:1px solid rgba(139,105,60,.42);background:linear-gradient(135deg,#f9f6ef,#e8dfd0)}
.workshops-contact .eyebrow{grid-column:1/-1;color:#86663b}
.workshops-contact h2{font-size:clamp(2rem,3.5vw,3.65rem)}
.workshops-contact p{margin:0;color:#62665e;font-size:.83rem;line-height:1.75}
.workshops-contact a{display:flex;align-items:center;justify-content:space-between;gap:24px;min-width:180px;padding:16px 18px;border:1px solid #87683f;background:#1b1e1a;color:#fff;font-size:.62rem;font-weight:700;letter-spacing:.14em;text-decoration:none;text-transform:uppercase}
.workshop-directory-announcement{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.workshops-footer .footer-inner{padding-top:clamp(52px,6vw,78px)}
html.js .workshops-directory-page [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
html.js .workshops-directory-page [data-reveal].in-view{opacity:1;transform:none}
@keyframes directory-image-enter{from{opacity:.45;transform:scale(1.03)}to{opacity:1;transform:scale(1)}}
@media(max-width:1180px){
  .workshop-card-grid{grid-template-columns:1fr}
  .workshop-directory-card{width:min(100%,760px);margin-inline:auto}
}
@media(max-width:900px){
  .workshops-hero-images{grid-template-columns:1fr 1fr}.workshops-hero-images img:first-child{display:none}
  .workshops-hero-jump{display:none}
  .workshops-intro-grid,.directory-heading{grid-template-columns:1fr;gap:28px}
  .workshops-intro-copy{max-width:700px}.directory-heading>p{max-width:650px}
  .workshops-contact-inner{grid-template-columns:1fr 1fr}.workshops-contact h2{grid-column:1/-1}.workshops-contact a{justify-self:end}
}
@media(max-width:680px){
  .workshops-directory-page .section{padding-top:42px;padding-bottom:42px}
  .workshops-hero{height:390px;min-height:390px}.workshops-hero-images{grid-template-columns:1fr}.workshops-hero-images img:nth-child(2){display:none}.workshops-hero-images img:nth-child(3){object-position:center 48%}
  .workshops-hero-content{left:22px;right:22px;bottom:42px}.workshops-hero-content .eyebrow{margin-bottom:14px;font-size:.54rem;line-height:1.5}.workshops-hero h1{font-size:clamp(2.25rem,11vw,3.25rem)}.workshops-hero-content p{font-size:.8rem}
  .workshops-intro-grid{margin-top:28px}.workshops-intro-grid h2,.directory-heading h2{font-size:clamp(2.25rem,10.5vw,3.2rem)}
  .workshops-status-summary a{padding:16px 8px;column-gap:9px}.workshops-status-summary strong{font-size:1.55rem}.workshops-status-summary small{font-size:.51rem}
  .directory-heading{margin:28px 0 30px}
  .workshop-card-media{padding:0;background:#111712}.workshop-card-media img{width:100%;height:auto;object-fit:initial}
  .workshop-card-copy{padding:24px 22px 26px}.workshop-card-copy h3{font-size:1.75rem}.workshop-card-description{min-height:0}
  .workshop-facts div{gap:12px}.workshop-facts dt,.workshop-facts dd{font-size:.61rem}
  .workshops-contact-inner{grid-template-columns:1fr;align-items:start;padding:28px 23px}.workshops-contact h2{grid-column:auto}.workshops-contact a{justify-self:stretch}.workshops-contact .eyebrow{grid-column:auto}
}
@media(max-width:380px){
  .workshops-hero h1{font-size:2.18rem}.workshops-hero-content p{font-size:.74rem}
  .workshops-status-summary{grid-template-columns:1fr}.workshops-status-summary a+a{border-top:1px solid rgba(132,109,76,.35);border-left:0}
  .workshop-card-copy h3{font-size:1.55rem}.workshop-card-topline{font-size:.48rem}.workshop-facts div{display:grid;grid-template-columns:1fr}.workshop-facts dd{text-align:left;padding-left:21px}
}
@media(prefers-reduced-motion:reduce){
  .workshops-hero-images img,.workshop-directory-card,.workshop-card-media img,.workshop-card-link i{animation:none;transition:none}
  html.js .workshops-directory-page [data-reveal]{opacity:1;transform:none;transition:none}
}
