/* PBK Studio. Tokens come from the Bricks global variables; fallbacks keep it right without them. */
:root{--cc-ink:var(--pbk-ink,#141414);--cc-body:var(--pbk-body,#4A423C);--cc-muted:var(--pbk-muted,#8A827B);--cc-tan:var(--pbk-tan,#DAB89A);--cc-tan-deep:var(--pbk-tan-deep,#B48760);--cc-canvas:var(--pbk-canvas,#F2F0EC);--cc-line:var(--pbk-line,#DDD8D1);--cc-serif:var(--pbk-serif,"Cormorant Garamond",Georgia,serif);--cc-sans:var(--pbk-sans,Jost,system-ui,sans-serif)}

/* ---------- shared ---------- */
.cc-eyebrow{font-family:var(--cc-sans);font-size:11px;letter-spacing:2.2px;text-transform:uppercase;color:var(--cc-muted);margin:0 0 10px}
.cc-note{font-family:var(--cc-sans);font-size:14px;color:var(--cc-muted);margin:14px 0 0}
a.cc-btn,.cc-btn{display:inline-block;background:var(--cc-tan);color:var(--cc-ink)!important;font-family:var(--cc-sans);font-size:11px;font-weight:500;letter-spacing:2.2px;text-transform:uppercase;line-height:1;padding:17px 34px;border:0;border-radius:0;text-decoration:none;transition:background .18s}
a.cc-btn:hover,.cc-btn:hover{background:var(--cc-tan-deep);color:var(--cc-ink)!important}
a.cc-btn:focus-visible,.cc-chip:focus-visible,.cc-card:focus-visible{outline:2px solid var(--cc-ink);outline-offset:3px}
.cc-locked,.cc-empty,.cc-upcoming,.cc-pending{background:var(--cc-canvas);border:1px solid var(--cc-line);padding:32px 28px;text-align:center;font-family:var(--cc-sans);color:var(--cc-body)}
.cc-locked p,.cc-empty p{margin:0 0 14px}.cc-locked p:last-child,.cc-empty p:last-child{margin:0}

/* ---------- grid + cards ---------- */
.cc-grid{display:grid;grid-template-columns:1fr;gap:24px}
@media(min-width:700px){.cc-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.cc-grid{grid-template-columns:repeat(3,1fr)}}
.cc-card{display:flex;flex-direction:column;position:relative;background:#fff;border:1px solid var(--cc-line);text-decoration:none;color:var(--cc-ink);transition:border-color .2s,transform .2s}
.cc-card[hidden]{display:none}
.cc-card:hover{border-color:var(--cc-tan)}
.cc-card__media{display:block;overflow:hidden;background:var(--cc-canvas);aspect-ratio:16/10}
.cc-card__img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.cc-card:hover .cc-card__img{transform:scale(1.03)}
.cc-card__badge{position:absolute;top:12px;left:12px;background:var(--cc-tan);color:var(--cc-ink);font-family:var(--cc-sans);font-size:11px;letter-spacing:2px;text-transform:uppercase;padding:6px 12px;line-height:1.3}
.cc-card__badge del{opacity:.6}
.cc-card--upcoming .cc-card__badge{background:var(--cc-ink);color:#fff}
.cc-card__body{display:flex;flex-direction:column;gap:6px;padding:18px 20px 22px}
.cc-card__kind{font-family:var(--cc-sans);font-size:10.5px;letter-spacing:2px;text-transform:uppercase;color:var(--cc-tan-deep)}
.cc-card__title{font-family:var(--cc-serif);font-weight:400;font-size:23px;line-height:1.25;margin:0;color:var(--cc-ink)}
.cc-card__meta{font-family:var(--cc-sans);font-size:14px;color:var(--cc-muted)}

/* ---------- filter chips ---------- */
.cc-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px}
.cc-chip{font-family:var(--cc-sans);font-size:11px;letter-spacing:1.8px;text-transform:uppercase;padding:11px 18px;min-height:40px;background:#fff;border:1px solid var(--cc-line);color:var(--cc-body);cursor:pointer;border-radius:0;transition:all .18s}
.cc-chip:hover{border-color:var(--cc-tan)}
.cc-chip[aria-pressed="true"]{background:var(--cc-ink);border-color:var(--cc-ink);color:#fff}

/* ---------- events sections ---------- */
.cc-section{margin:0 0 72px}.cc-section:last-child{margin-bottom:0}
.cc-section__title{font-family:var(--cc-serif);font-weight:400;font-size:clamp(30px,3.2vw,40px);line-height:1.2;color:var(--cc-ink);margin:0 0 12px}
.cc-section__intro{font-family:var(--cc-sans);font-size:16px;line-height:1.6;color:var(--cc-body);max-width:60ch;margin:0 0 28px}
@media(max-width:600px){.cc-section{margin-bottom:52px}}

/* ---------- next session feature ---------- */
.cc-next{display:grid;grid-template-columns:1fr;background:var(--cc-canvas);border:1px solid var(--cc-line);font-family:var(--cc-sans);color:var(--cc-body)}
@media(min-width:860px){.cc-next{grid-template-columns:1fr 1fr}}
.cc-next__media{min-height:260px;background:var(--cc-line)}
.cc-next__img{width:100%;height:100%;object-fit:cover;display:block}
.cc-next__panel{padding:clamp(32px,5vw,64px);display:flex;flex-direction:column;justify-content:center}
.cc-next__panel p{margin:0}
.cc-next__title{font-family:var(--cc-serif);font-weight:400;font-size:clamp(30px,3.4vw,42px);line-height:1.15;color:var(--cc-ink);margin:0 0 8px}
.cc-next__date{font-size:15px;letter-spacing:1px;color:var(--cc-tan-deep);margin:0 0 16px!important}
.cc-next__copy{max-width:52ch;margin:10px 0 20px!important;font-size:16px;line-height:1.65}
.cc-next__price{font-size:22px;color:var(--cc-ink);margin:0 0 22px!important}
.cc-next__price del{opacity:.5;font-size:16px}

/* ---------- consultation buy block ---------- */
.cc-buy{background:var(--cc-ink);padding:64px 32px;text-align:center;font-family:var(--cc-sans);color:#CFC9C3}
.cc-buy .cc-eyebrow{color:var(--cc-tan)}
.cc-buy .cc-next__title{color:#fff;margin-bottom:14px}
.cc-buy__price{font-size:24px;color:#fff;margin:0 0 26px}
.cc-buy__unit{font-size:15px;color:#A39C95}
.cc-buy .cc-note{color:#A39C95}
@media(max-width:600px){.cc-buy{padding:44px 20px}}

/* ---------- product page: watch / registered / buy ---------- */
.cc-watch__stage{background:#0E0E0E}
.cc-watch__player{max-width:1180px;margin:0 auto}
.cc-watch__player{max-width:1180px;margin:0 auto}
.cc-watch__player presto-player,.cc-watch__player .presto-player,.cc-watch__player video{width:100%!important;display:block}
.cc-watch__body{max-width:760px;margin:0 auto;padding:48px var(--pbk-gutter,24px) 80px;font-family:var(--cc-sans);color:var(--cc-body)}
.cc-watch__title{font-family:var(--cc-serif);font-weight:400;font-size:clamp(30px,3.4vw,42px);line-height:1.15;color:var(--cc-ink);margin:0 0 18px}
.cc-watch__when{font-size:18px;color:var(--cc-tan-deep);margin:0 0 22px}
.cc-watch__desc{font-size:17px;line-height:1.75;margin:26px 0 0}
.cc-watch__desc p{margin:0 0 1.3em}
.cc-watch--upcoming{background:var(--cc-canvas)}
.cc-watch--upcoming .cc-watch__body{padding-top:72px}
.cc-specs{margin:0 0 8px;border-top:1px solid var(--cc-line)}
.cc-specs__row{display:flex;gap:20px;border-bottom:1px solid var(--cc-line);padding:11px 0}
.cc-specs dt{flex:0 0 112px;font-family:var(--cc-sans);font-size:11px;letter-spacing:2.2px;text-transform:uppercase;color:var(--cc-muted);margin:0;padding-top:3px}
.cc-specs dd{margin:0;font-size:16px;color:var(--cc-ink)}
.cc-buybox{display:grid;grid-template-columns:1fr;max-width:1180px;margin:0 auto;background:#fff;border:1px solid var(--cc-line)}
@media(min-width:900px){.cc-buybox{grid-template-columns:1.05fr .95fr}}
.cc-buybox__media{background:var(--cc-canvas)}
.cc-buybox__img{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:4/3}
.cc-buybox__panel{padding:44px 40px;font-family:var(--cc-sans);color:var(--cc-body)}
.cc-buybox__price{font-size:26px;color:var(--cc-ink);margin:0 0 22px}
.cc-buybox__price del{opacity:.5;font-size:18px}
.cc-buybox__cart{margin:22px 0 20px}
.cc-buybox__cart .quantity{display:none!important}
.cc-buybox__cart form.cart{margin:0}
.cc-buybox__cart button.single_add_to_cart_button{width:100%;text-align:center}
.cc-buybox__points{list-style:none;margin:0;padding:20px 0 0;border-top:1px solid var(--cc-line)}
.cc-buybox__points li{position:relative;padding:0 0 9px 22px;font-size:15px;color:var(--cc-body)}
.cc-buybox__points li::before{content:"+";position:absolute;left:0;top:-1px;color:var(--cc-tan-deep)}
.cc-buybox__desc{max-width:760px;margin:0 auto;padding:64px var(--pbk-gutter,24px) 0;font-family:var(--cc-sans);font-size:17px;line-height:1.75;color:var(--cc-body)}
.cc-buybox__desc h2{font-family:var(--cc-serif);font-weight:400;font-size:31px;color:var(--cc-ink);margin:0 0 .5em}
.cc-buybox__desc p{margin:0 0 1.3em}
.cc-taught{display:flex;gap:18px;align-items:center;max-width:760px;margin:36px auto 0;padding:22px var(--pbk-gutter,24px);border-top:1px solid var(--cc-line);font-family:var(--cc-sans)}
.cc-taught__img{width:72px;height:72px;border-radius:50%;object-fit:cover;flex:0 0 72px}
.cc-taught p{margin:0}
.cc-taught .cc-eyebrow{margin-bottom:4px}
.cc-taught__name{font-family:var(--cc-serif);font-size:22px;line-height:1.2}
.cc-taught__name a{color:var(--cc-ink);text-decoration:none}
.cc-taught__name a:hover{color:var(--cc-tan-deep)}
.cc-taught__creds{font-size:13px;color:var(--cc-muted);margin-top:4px!important}
@media(max-width:600px){.cc-watch__body{padding:34px 20px 56px}.cc-buybox__panel{padding:30px 22px}.cc-buybox__desc{padding:44px 20px 0;font-size:16px}.cc-specs dt{flex-basis:92px}}

/* ---------- workshop notes ---------- */
.cc-notes{background:var(--cc-canvas);border:1px solid var(--cc-line);padding:28px;margin:34px 0 0;width:min(1040px,calc(100vw - 48px));margin-left:50%;transform:translateX(-50%);box-sizing:border-box;font-family:var(--cc-sans)}
.cc-notes .cc-eyebrow{margin:0 0 6px}
.cc-notes__title{font-family:var(--cc-serif);font-weight:400;font-size:24px;line-height:1.25;color:var(--cc-ink);margin:0 0 18px}
.cc-notes__viewer{background:#fff;border:1px solid var(--cc-line);height:min(760px,80vh);margin:0 0 20px}
.cc-notes__viewer iframe{width:100%;height:100%;border:0;display:block}
.cc-notes__actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin:0}
.cc-notes__open{font-size:11px;letter-spacing:2.2px;text-transform:uppercase;color:var(--cc-tan-deep);text-decoration:none;border-bottom:1px solid var(--cc-line);padding-bottom:2px}
.cc-notes__open:hover{color:var(--cc-ink);border-bottom-color:var(--cc-tan-deep)}
.cc-notes__extra a{display:block;font-size:14px;color:var(--cc-tan-deep);margin:10px 0 0}
@media(max-width:781px){.cc-notes{padding:22px 20px;width:calc(100vw - 40px)}.cc-notes__viewer{display:none}.cc-notes__actions{flex-direction:column;align-items:stretch;gap:14px}.cc-notes__actions .cc-btn,.cc-notes__open{text-align:center}.cc-notes__open{border-bottom:0}}

/* ---------- WooCommerce in the Cormorant / Jost system ---------- */
.woocommerce,.woocommerce-page{font-family:var(--cc-sans);color:var(--cc-body)}
.woocommerce h1,.woocommerce h2,.woocommerce h3,.woocommerce-page h1,.woocommerce-page h2{font-family:var(--cc-serif);font-weight:400;color:var(--cc-ink)}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt,.woocommerce .wc-block-components-button:not(.is-link){background:var(--cc-tan)!important;color:var(--cc-ink)!important;border-radius:0!important;font-family:var(--cc-sans);font-size:11px;letter-spacing:2.2px;text-transform:uppercase;font-weight:500;padding:17px 34px;border:0;line-height:1;transition:background .18s}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{background:var(--cc-tan-deep)!important}
.woocommerce ul.products{display:grid!important;grid-template-columns:1fr;gap:28px;margin:0;padding:0}
.woocommerce ul.products::before,.woocommerce ul.products::after,.woocommerce ul.products li.product::before,.woocommerce ul.products li.product::after{content:none!important;display:none!important}
@media(min-width:700px){.woocommerce ul.products{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.woocommerce ul.products{grid-template-columns:repeat(3,1fr)}}
.woocommerce ul.products li.product{width:100%!important;margin:0!important;float:none!important;background:#fff;border:1px solid var(--cc-line);padding:0!important;display:flex;flex-direction:column;transition:border-color .2s;list-style:none}
.woocommerce ul.products li.product:hover{border-color:var(--cc-tan)}
.woocommerce ul.products li.product a img{margin:0!important;aspect-ratio:16/10;object-fit:cover;width:100%}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--cc-serif);font-size:23px;font-weight:400;line-height:1.25;color:var(--cc-ink);padding:18px 20px 6px;margin:0}
.woocommerce ul.products li.product .price{color:var(--cc-body);font-size:16px;padding:0 20px 16px;display:block}
.woocommerce ul.products li.product .button{margin:auto 20px 22px!important;text-align:center}
.woocommerce span.onsale{background:var(--cc-ink);color:#fff;border-radius:0;font-size:11px;letter-spacing:2px;text-transform:uppercase;padding:8px 14px;line-height:1;min-height:0;min-width:0}
.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering select{font-size:14px;color:var(--cc-muted)}
.woocommerce .woocommerce-breadcrumb{font-size:12px;letter-spacing:1.4px;text-transform:uppercase;color:var(--cc-muted);margin:0 0 24px}
.woocommerce .woocommerce-breadcrumb a{color:var(--cc-muted);text-decoration:none}
.woocommerce .woocommerce-breadcrumb a:hover{color:var(--cc-tan-deep)}
.woocommerce table.shop_table{border:1px solid var(--cc-line);border-radius:0;border-collapse:collapse}
.woocommerce table.shop_table th{font-size:11px;letter-spacing:2.2px;text-transform:uppercase;color:var(--cc-ink);background:var(--cc-canvas);padding:16px 12px}
.woocommerce table.shop_table td{border-top:1px solid var(--cc-line);padding:16px 12px}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.select2-container--default .select2-selection--single{border:1px solid var(--cc-line);border-radius:0;padding:14px;font-family:var(--cc-sans);font-size:16px;background:#fff;height:auto;line-height:1.4}
.woocommerce form .form-row label{font-size:13px;color:var(--cc-body)}
.woocommerce-info,.woocommerce-message,.woocommerce-error,.woocommerce-noreviews{border-top-color:var(--cc-tan);background:var(--cc-canvas);border-radius:0}
.woocommerce-info::before,.woocommerce-message::before{color:var(--cc-tan-deep)}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border:1px solid var(--cc-line)}
.woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--cc-line)}
.woocommerce-MyAccount-navigation li:last-child{border-bottom:0}
.woocommerce-MyAccount-navigation li a{display:block;padding:14px 18px;font-size:11px;letter-spacing:2.2px;text-transform:uppercase;color:var(--cc-muted);text-decoration:none}
.woocommerce-MyAccount-navigation li.is-active a,.woocommerce-MyAccount-navigation li a:hover{color:var(--cc-ink);background:var(--cc-canvas)}
.woocommerce form.login,.woocommerce form.register,.woocommerce-form-login{border:1px solid var(--cc-line)!important;border-radius:0!important;padding:28px!important;background:#fff}
.woocommerce nav.woocommerce-pagination ul{border:0;gap:6px;display:flex;justify-content:center}
.woocommerce nav.woocommerce-pagination ul li{border:0}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{font-size:14px;padding:10px 14px;border:1px solid var(--cc-line);color:var(--cc-body)}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--cc-tan);color:var(--cc-ink);border-color:var(--cc-tan)}
