/* Shared art direction from the approved homepage. Catalog photography is unchanged. */
.site-refresh {
  --home-ink:#20211e; --home-white:#fff; --home-surface:#f5f5f5;
  --home-muted:#62645f; --home-line:#e4e4e4;
  --home-gold:#d9aa0e; --home-gold-text:#886808;
  --ink:var(--home-ink); --muted:var(--home-muted); --cream:var(--home-surface);
  --line:var(--home-line); --gold:var(--home-gold); --logo-gold:var(--home-gold);
  background:var(--home-white); color:var(--home-ink);
}
body.site-refresh main .eyebrow {color:var(--home-gold-text)}
body.site-refresh main :is(h1,h2) :is(em,span) {color:var(--home-ink)}
body.site-refresh :is(.gold,.add-bag) {background:var(--home-gold);color:var(--home-ink)}
body.site-refresh :is(.gold,.add-bag):hover {background:#e4b92d;border-color:#e4b92d}
body.site-refresh :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible {outline-color:var(--home-gold-text)}
body.site-refresh main :is(.subtle,.shop-pricing,.shop-breadcrumb,.subservice-breadcrumb,.product-price>small,.work-gallery-intro,.review-source) {color:var(--home-muted)}
body.site-refresh main :is(.about-purpose,.bulk-services-band,.shop-help,.service-usecases) {background:var(--home-surface);background-image:none}
body.site-refresh main :is(.service-option-body,.service-idea-list,.subservice-overview-copy,.project-overview,.about-story) p {color:var(--home-muted)}
body.site-refresh main :is(.service-preparation-note,.subservice-features article) {background:var(--home-surface);border-color:var(--home-line)}
body.site-refresh main :is(.service-preparation-card li>span,.subservice-local svg,.category-arrow,.service-section-nav a:hover) {color:var(--home-gold-text)}
body.site-refresh main .training-fit-band {background:var(--home-surface);background-image:none}
body.site-refresh main :is(.training-module-grid article,.training-details-grid>article,.training-fit-cards article) {background:var(--home-ink);border-color:#43453f}

/* Each page selects a category-specific lifestyle, product, or workshop photo. */
body.site-refresh main .site-hero {
  position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;
  width:100%;max-width:none;margin-inline:0;border-radius:0;
  min-height:var(--site-hero-min-height,clamp(620px,48vw,760px));padding:60px 0;
  background:var(--home-surface);color:var(--home-ink);
}
body.site-refresh main .site-hero::before {
  content:"";position:absolute;inset:0;z-index:-1;display:block;
  background-image:linear-gradient(90deg,rgba(245,245,245,.98),rgba(245,245,245,.88) 30%,rgba(245,245,245,.55) 43%,transparent 60%),var(--site-hero-photo)!important;
  background-size:cover;background-position:right top;background-repeat:no-repeat;mask-image:none;
}
body.site-refresh main .site-hero::after {display:none;background:none}
body.site-refresh main .site-hero>.wrap {width:min(1280px,88%);align-self:auto}
body.site-refresh main .site-hero :is(.about-hero-copy,.contact-hero-copy,.project-hero-copy,.subservice-hero-copy,.services-intro-grid,.category-hero-copy) {max-width:43%;width:43%;min-width:0}
body.site-refresh main .site-hero .services-intro-copy {max-width:none;width:100%}
body.site-refresh main .site-hero .services-intro-grid {display:block}
body.site-refresh main .site-hero .services-intro-aside {display:none}
body.site-refresh main .site-hero h1 {font-size:clamp(38px,4.1vw,64px);line-height:1.1;letter-spacing:-.045em;margin:20px 0 24px;color:var(--home-ink)}
body.site-refresh main .site-hero p {color:var(--home-muted);font-size:18px;line-height:1.75}
body.site-refresh main .site-hero .shop-breadcrumb {margin-bottom:30px}
body.site-refresh main .shop-hero:not(.category-hero)>.wrap>:is(h1,p) {max-width:43%}
body.site-refresh main .site-hero .eyebrow {color:var(--home-gold-text)}

/* Supporting dark sections repeat the homepage's charcoal/gold hierarchy. */
body.site-refresh main :is(.steps,.steps.steps-parallax) {background:var(--home-ink);background-image:none}
body.site-refresh main .steps :is(h2,.steps-intro) {color:#fff}
body.site-refresh main .steps .eyebrow {color:var(--home-gold)}
body.site-refresh main :is(.contact-grid,.project-enquiry-grid,.subservice-enquiry)>div:first-child {background:var(--home-ink);color:#fff}
body.site-refresh main :is(.contact-grid,.project-enquiry-grid,.subservice-enquiry)>div:first-child h2 {color:#fff}
body.site-refresh main :is(.contact-grid,.project-enquiry-grid,.subservice-enquiry)>div:first-child :is(.eyebrow,h2 span,h2 em) {color:var(--home-gold)}
body.site-refresh main :is(.contact-grid,.project-enquiry-grid,.subservice-enquiry)>div:first-child p {color:#d6d7d3}
body.site-refresh main :is(.contact-grid,.project-enquiry-grid,.subservice-enquiry)>form :is(p,.form-note,.contact-form-note) {color:var(--home-muted)!important}
body.site-refresh main :is(input,textarea)::placeholder {color:var(--home-muted)}

/* One workshop CTA and matching footer close every page. */
body.site-refresh main .page-cta {
  --cta-photo:url('assets/home-refresh/home-cta-workshop.webp');--cta-backdrop:var(--home-ink);
  min-height:clamp(420px,33vw,550px);padding:64px 0;background:var(--home-ink);color:#fff;
}
body.site-refresh main .page-cta::before {
  background-image:linear-gradient(90deg,rgba(32,33,30,.94),rgba(32,33,30,.86) 38%,rgba(32,33,30,.28) 68%,rgba(32,33,30,.16)),var(--cta-photo);
  background-size:cover;background-position:center;
}
body.site-refresh main .page-cta .page-cta-copy {max-width:46%}
body.site-refresh main .page-cta h2,body.site-refresh main .page-cta.page-cta p {color:#fff}
body.site-refresh main .page-cta :is(.eyebrow,h2 span) {color:var(--home-gold)}
body.site-refresh main .page-cta .gold {color:var(--home-ink)}
body.site-refresh main .page-cta .page-cta-call {background:transparent;color:#fff;border-color:rgba(255,255,255,.75)}
body.site-refresh main .page-cta .page-cta-call:hover {background:rgba(255,255,255,.1);border-color:var(--home-gold)}
body.site-refresh main .page-cta :focus-visible {outline-color:var(--home-gold)}
body.site-refresh footer {background:var(--home-ink);color:#fff;border-top:1px solid rgba(255,255,255,.14)}
body.site-refresh footer :is(p,a,.footer-bottom) {color:#d6d7d3}
body.site-refresh footer :is(h4,.store-hours-title) {color:var(--home-gold)}
body.site-refresh footer .footer-bottom {border-color:rgba(255,255,255,.16)}
body.site-refresh footer .footer-socials .social-icon {background:transparent;color:#d6d7d3;border-color:rgba(255,255,255,.25)}
body.site-refresh footer a:is(:hover,:focus-visible) {color:var(--home-gold)}
body.site-refresh footer :focus-visible {outline-color:var(--home-gold)}

@media(max-width:1100px) {
  body.site-refresh main .site-hero {display:block;min-height:0;padding:48px 0 calc(48vw + 28px)}
  body.site-refresh main .site-hero::before {inset:auto 0 0;height:48vw;background-image:var(--site-hero-photo)!important;background-size:cover;background-position:right top}
  body.site-refresh main .site-hero :is(.about-hero-copy,.contact-hero-copy,.project-hero-copy,.subservice-hero-copy,.services-intro-grid,.category-hero-copy) {width:100%;max-width:100%}
  body.site-refresh main .shop-hero:not(.category-hero)>.wrap>:is(h1,p) {max-width:100%}
  body.site-refresh main .site-hero h1 {max-width:760px;font-size:clamp(38px,5vw,54px)}
  body.site-refresh main .site-hero p {max-width:650px}
}
@media(max-width:760px) {
  body.site-refresh main .site-hero {padding:32px 0 calc(var(--site-hero-mobile-photo-height,76vw) + 24px)}
  body.site-refresh main .site-hero::before {height:var(--site-hero-mobile-photo-height,76vw);background-size:auto 100%;background-position:right top}
  body.site-refresh main .site-hero h1 {font-size:clamp(34px,9vw,44px)}
  body.site-refresh main .site-hero p {font-size:16px;line-height:1.7}
  body.site-refresh main .site-hero .shop-breadcrumb {margin-bottom:24px}
  body.site-refresh main .page-cta {min-height:0;padding:48px 0 276px}
  body.site-refresh main .page-cta::before {background-image:linear-gradient(180deg,#20211e,rgba(32,33,30,.85) 14%,rgba(32,33,30,.25)),var(--cta-photo);background-size:100% 260px,auto 260px;background-position:center bottom,right bottom;background-repeat:no-repeat}
  body.site-refresh main .page-cta .page-cta-copy {max-width:100%}
}
