@import url('workshops.css');

.wsd-grid { display: grid; grid-template-columns: 1fr; gap: 2rem; }
@media (min-width: 1024px) { .wsd-grid { grid-template-columns: minmax(0, 1fr) 22rem; align-items: start; } }
.wsd-cover { display: flex; align-items: center; justify-content: center; aspect-ratio: 16 / 9; border-radius: 1rem; overflow: hidden; background: #f3f4f6; color: #9ca3af; font-size: 3.5rem; margin-bottom: 1.25rem; }
.wsd-cover img { width: 100%; height: 100%; object-fit: cover; }
.wsd-title { font-family: var(--font-display, inherit); font-weight: 700; font-size: clamp(1.6rem, 4vw, 2.4rem); color: #681919; margin: .75rem 0 1rem; }
.wsd-notice { display: flex; gap: .75rem; align-items: flex-start; padding: 1rem; border-radius: .75rem; background: rgba(209,143,49,.1); border: 1px solid rgba(209,143,49,.35); color: #5f3f0c; font-size: .875rem; margin-bottom: 1.5rem; }
.wsd-notice i { margin-top: .15rem; color: #D18F31; }
.wsd-h2 { font-family: var(--font-display, inherit); font-weight: 700; font-size: 1.15rem; color: #681919; margin: 1.75rem 0 .6rem; }
.wsd-text { font-size: .9rem; line-height: 1.65; color: #374151; }
.wsd-info { display: grid; grid-template-columns: 1fr; gap: .75rem 1.5rem; }
@media (min-width: 640px) { .wsd-info { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.wsd-info dt { font-size: .72rem; text-transform: uppercase; letter-spacing: .05em; color: #6b7280; }
.wsd-info dt i { color: #D18F31; margin-right: .3rem; }
.wsd-info dd { font-size: .9rem; color: #1f2937; font-weight: 600; }
.wsd-side { display: flex; flex-direction: column; gap: 1.25rem; }
.wsd-buy, .wsd-instructor { background: #fff; border: 1px solid #e5e7eb; border-radius: 1rem; padding: 1.25rem; box-shadow: 0 1px 3px rgba(0,0,0,.06); }
@media (min-width: 1024px) { .wsd-buy { position: sticky; top: 6rem; } }
.wsd-price { font-weight: 800; font-size: 2rem; color: #681919; line-height: 1.1; }
.wsd-price-old { font-size: .85rem; color: #9ca3af; text-decoration: line-through; }
.wsd-promo { font-size: .75rem; color: #8a5a12; margin: .25rem 0 .75rem; }
.wsd-buy .ws-spots { margin: .75rem 0 1rem; }
.wsd-btn { display: flex; align-items: center; justify-content: center; gap: .5rem; width: 100%; padding: .8rem 1.2rem; border-radius: .7rem; background: #D18F31; color: #fff; font-weight: 700; text-decoration: none; transition: opacity .2s, transform .2s; }
.wsd-btn:hover { opacity: .92; transform: translateY(-1px); }
.wsd-btn-disabled { background: #d1d5db; cursor: not-allowed; }
.wsd-btn-disabled:hover { transform: none; opacity: 1; }
.wsd-hint { margin-top: .6rem; text-align: center; font-size: .72rem; color: #6b7280; }
.wsd-instructor-head { display: flex; align-items: center; gap: .75rem; margin-bottom: .75rem; }
.wsd-instructor-photo { width: 3.5rem; height: 3.5rem; }
@media (prefers-reduced-motion: reduce) { .wsd-btn { transition: none; } .wsd-btn:hover { transform: none; } }