/* Catskills Studio Workbench: schedule and booking surfaces. */
.page-schedule .ss-location-grid figure img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: clamp(220px, 30vw, 420px);
  aspect-ratio: 16 / 9;
  object-fit: cover;
  object-position: center;
}
.page-schedule{background:var(--color-paper);color:var(--color-ink)}.page-schedule .ss-main{overflow-x:clip}.page-schedule .container{max-width:var(--container-standard);margin-inline:auto}.page-schedule .ss-hero-editorial-split{width:min(calc(100% - var(--gutter) - var(--gutter)),var(--container-standard));margin-inline:auto}
.page-schedule :is(h1,h2,h3){font-family:var(--font-display);font-style:var(--display-style);font-weight:var(--display-weight);letter-spacing:var(--tracking-display);line-height:var(--leading-heading);color:var(--color-ink);overflow-wrap:anywhere}.page-schedule p,.page-schedule li{font:400 var(--text-md)/var(--leading-body) var(--font-body);color:var(--color-muted)}
.ss-hero-editorial-split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(18rem,.9fr);gap:var(--space-2xl);align-items:center;padding-block:var(--space-2xl)}.ss-editorial-title{margin:0;font-size:clamp(var(--text-3xl),5vw,var(--text-display))}.ss-editorial-lead{max-width:42rem;margin:var(--space-md) 0 0}.ss-eyebrow-badge,.ss-card-label{display:inline-flex;margin-bottom:var(--space-sm);font:700 var(--text-xs)/1 var(--font-body);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-accent-deep)}
.ss-hero-actions,.ss-inline-actions{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin-top:var(--space-lg)}.ss-btn,.ss-action-primary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);min-height:44px;padding:var(--space-2xs) var(--space-md);border:var(--rule-hair) solid var(--color-rule-2);border-radius:var(--radius-pill);background:var(--color-paper);color:var(--color-ink);font:700 var(--text-sm)/1.2 var(--font-body);text-decoration:none}.ss-btn-primary,.ss-action-primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-ink)}.ss-btn-icon-wrapper,.ss-btn-premium-icon{display:inline-grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:var(--cta-icon-surface)}
.ss-double-bezel,.ss-calendar-bezel-outer{padding:var(--space-2xs);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-outer);background:var(--color-paper-2);box-shadow:var(--shadow-card)}.ss-double-bezel-inner,.ss-calendar-bezel-inner{padding:var(--space-lg);border:var(--rule-hair) solid var(--bezel-inner-border);border-radius:var(--radius-inner);background:var(--color-paper);box-shadow:var(--bezel-inner-highlight)}
.ss-info-grid,.ss-hero-features-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-sm);margin-top:var(--space-lg)}.ss-info-card,.ss-proof-card,.ss-contact-card{padding:var(--space-md);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-card);background:var(--color-paper)}
.ss-cal-day{padding:var(--space-md);border-bottom:var(--rule-hair) solid var(--color-rule)}.ss-cal-day:last-child{border-bottom:0}.ss-cal-day-header{display:flex;justify-content:space-between;gap:var(--space-sm);align-items:baseline}.ss-cal-day-name{margin:0;font:700 var(--text-lg)/1.2 var(--font-body)}.ss-cal-day-badge{display:inline-flex;border-radius:var(--radius-pill);padding:var(--space-3xs) var(--space-xs);background:var(--color-paper-3);font:700 var(--text-xs)/1 var(--font-body)}.ss-cal-day-badge.active{background:var(--color-accent);color:var(--color-accent-ink)}.ss-cal-slot{display:grid;grid-template-columns:minmax(5rem,.45fr) 1fr;gap:var(--space-md);padding:var(--space-sm) 0;border-top:var(--rule-hair) solid var(--color-rule)}.ss-cal-slot-time{font-weight:700;color:var(--color-accent-deep)}.ss-cal-slot-name{color:var(--color-ink)}.ss-cal-first-time{margin-top:var(--space-md);padding:var(--space-sm);border-radius:var(--radius-input);background:var(--color-accent-soft);color:var(--color-ink)}
.ss-section{padding-block:var(--space-2xl)}.ss-section-head{max-width:var(--container-narrow);margin-bottom:var(--space-lg)}.ss-saturday-feature,.ss-free-intro-flow,.ss-location-desktop{background:var(--color-paper-2)}.ss-saturday-grid,.ss-location-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-xl)}.ss-check-list{padding-inline-start:var(--space-lg)}
.ss-faq-accordion{border-top:var(--rule-hair) solid var(--color-rule)}.ss-faq-accordion .accordion-item{border:0;border-bottom:var(--rule-hair) solid var(--color-rule);background:transparent}.ss-faq-accordion .accordion-button{padding:var(--space-md) 0;background:transparent;color:var(--color-ink);font:700 var(--text-md)/1.3 var(--font-body);box-shadow:none}.ss-faq-accordion .accordion-body{padding:0 0 var(--space-md)}
.page-schedule :is(a,button,input,select,textarea):focus-visible{outline:var(--rule-fine) solid var(--color-focus);outline-offset:2px}.page-schedule [aria-disabled=true],.page-schedule :disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.page-schedule [data-state=loading] .ss-btn-text{opacity:.55}.page-schedule [aria-invalid=true]{border-color:var(--color-error)}.page-schedule [data-state=success]{border-color:var(--color-success)}
@media (hover:hover) and (pointer:fine){.ss-btn-primary:hover,.ss-action-primary:hover{background:var(--color-accent-strong);transform:translateY(-1px)}.ss-btn-primary:hover .ss-btn-icon-wrapper{transform:translate(1px,-1px) scale(1.05)}}
@media (max-width:60rem){.ss-hero-editorial-split{grid-template-columns:1fr}.ss-info-grid,.ss-hero-features-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:40rem){.ss-hero-editorial-split,.ss-section{padding-block:var(--space-xl)}.ss-double-bezel-inner,.ss-calendar-bezel-inner{padding:var(--space-md)}.ss-info-grid,.ss-hero-features-row,.ss-saturday-grid,.ss-location-grid{grid-template-columns:1fr}.ss-cal-slot{grid-template-columns:1fr;gap:var(--space-2xs)}.ss-mobile-actionbar{position:sticky;bottom:0;z-index:var(--z-sticky);display:flex;gap:var(--space-xs);padding:var(--space-xs) var(--gutter);background:var(--color-paper);border-top:var(--rule-hair) solid var(--color-rule)}}
@media (prefers-reduced-motion:reduce){.page-schedule *{transition:none!important;animation:none!important}}

/* Keep section introductions in the same centered reading frame as the hero. */
.page-schedule .ss-section-head { margin-inline: auto; text-align: center; }

/* Keep the schedule decision visible sooner after the site header. */
.page-schedule .ss-hero-editorial-split {
  padding-block-start: .5rem;
}

.page-schedule .ss-schedule-utility-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: .75rem 1.5rem;
  margin-bottom: .75rem;
  color: var(--ss-muted);
  font-size: .85rem;
}

.page-schedule .ss-schedule-utility-row a {
  color: var(--ss-green);
  text-decoration: none;
  border-bottom: 1px solid rgba(17, 106, 66, .2);
}

@media (max-width: 40rem) {
.page-schedule .ss-schedule-utility-row { justify-content: center; text-align: center; }
}

/* The schedule promise is the first row; the calendar follows beneath it. */
.page-schedule .ss-hero-editorial-split {
  grid-template-columns: minmax(0, 1fr);
}

.page-schedule .ss-editorial-left {
  max-width: 52rem;
  margin-inline: auto;
  text-align: center;
}

.page-schedule .ss-editorial-lead { margin-inline: auto; }
.page-schedule .ss-hero-actions,
.page-schedule .ss-hero-features-row { justify-content: center; }

/* Keep the schedule decision surface visually tied to campaign landing pages. */
.page-schedule .ss-calendar-bezel-outer,
.page-schedule .ss-double-bezel {
  border-color: rgba(17, 106, 66, .16);
  box-shadow: 0 .9rem 2.25rem rgba(54, 43, 36, .07);
}
.page-schedule .ss-cal-day-badge.active {
  background: var(--ss-green, #116a42);
  color: #fff;
}
.page-schedule .ss-cal-slot-name { font-weight: 600; }
