/* Shared action system: satin gold, inset arrows and interaction-led motion. Ordinary links
   stay links; compact and media controls retain their purpose and geometry. */
body.cr-photography-theme {
  --cr-action-edge: #e1c58e;
  --cr-action-bg: linear-gradient(115deg,#bf995b 0%,#efdaaa 38%,#d4b273 68%,#c39b58 100%);
  --cr-action-text: #211b12;
  --cr-action-hover-text: #211b12;
  --cr-action-arrow-bg: #202426;
  --cr-action-arrow-text: #efd399;
  --cr-action-height: 48px;
  --cr-action-radius: 6px;
  --cr-action-focus: #e1c58e;
}
:is(.cr-contact-form-wrap,.cr-cinema-about,.cr-cinema-journal),
:is(.cr-offer-premium.is-featured,.cr-cinema-package.is-featured) {
  --cr-action-edge: #a78c57;
  --cr-action-bg: linear-gradient(115deg,#343a3e 0%,#202426 48%,#3c4245 100%);
  --cr-action-text: #fff6e4;
  --cr-action-hover-text: #fff6e4;
  --cr-action-arrow-bg: #e5c78c;
  --cr-action-arrow-text: #211b12;
  --cr-action-focus: #72551e;
}
body.cr-photography-theme :is(#main-content,.cr-site-header,.cr-site-footer) :is(.cr-button,.cr-home-arrow-link,.cr-offer-card__footer > a,.cr-text-link,.cr-search-form button,.post-password-form input[type="submit"],.wp-block-button__link,.nav-links a.page-numbers,.cr-nav-offer > a) {
  display: inline-flex;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: fit-content;
  max-width: 100%;
  min-height: var(--cr-action-height);
  padding: 9px 18px;
  border: 1px solid var(--cr-action-edge);
  border-radius: var(--cr-action-radius);
  background: var(--cr-action-bg);
  background-size: 180% 100%;
  background-position: 0% 50%;
  color: var(--cr-action-text);
  font: 500 .875rem/1.5 var(--cr-sans);
  letter-spacing: 0;
  text-transform: none;
  text-decoration: none;
  text-align: center;
  white-space: normal;
  box-shadow: var(--cr-action-shadow,inset 0 1px 0 #fff5,0 3px 0 #83643866,0 8px 18px -10px #0009);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  filter: none;
  animation: none;
  cursor: pointer;
  transition: background-position 450ms ease,transform 250ms ease,box-shadow 250ms ease,border-color 250ms ease;
}
body.cr-photography-theme :is(#main-content,.cr-site-header,.cr-site-footer) :is(.cr-button,.cr-home-arrow-link,.cr-offer-card__footer > a,.cr-text-link,.cr-search-form button,.post-password-form input[type="submit"],.wp-block-button__link,.nav-links a.page-numbers,.cr-nav-offer > a):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]) {
  background-position: 100% 50%;
  color: var(--cr-action-hover-text);
  border-color: #f2d89f;
  filter: none; box-shadow: var(--cr-action-hover-shadow,inset 0 1px 0 #fff7,0 3px 0 #83643866,0 12px 24px -10px #ae854a66);
}
/* One sheen per interaction; never an idle looping animation. */
body.cr-photography-theme :is(#main-content,.cr-site-header,.cr-site-footer) :is(.cr-button,.cr-nav-offer > a)::before,
body.cr-photography-theme :is(#main-content,.cr-site-header,.cr-site-footer) :is(.cr-home-arrow-link,.cr-text-link,.wp-block-button__link,.nav-links a.page-numbers)::before {
  content: ""; position: absolute; z-index: 0; inset: -60% auto -60% 0; width: 34%; height: auto;
  background: linear-gradient(90deg,transparent,#fff6,transparent); opacity: 0;
  transform: translateX(-180%) skewX(-20deg); pointer-events: none;
}
body.cr-photography-theme :is(#main-content,.cr-site-header,.cr-site-footer) :is(.cr-button,.cr-nav-offer > a)::after { content: none; }
body.cr-photography-theme :is(#main-content,.cr-site-header,.cr-site-footer) .cr-button > span { position: relative; z-index: 1; }
body.cr-photography-theme :is(#main-content,.cr-site-header,.cr-site-footer) .cr-button > span:first-child { min-width: 0; overflow-wrap: anywhere; }
body.cr-photography-theme :is(#main-content,.cr-site-header,.cr-site-footer) :is(a,button).cr-button:has(> .cr-button__arrow) { padding-inline: 18px 12px; }
body.cr-photography-theme :is(#main-content,.cr-site-header,.cr-site-footer) :is(.cr-button__arrow,.cr-home-arrow-link > svg) {
  display: inline-flex; align-items: center; justify-content: center; flex: 0 0 28px;
  width: 28px; height: 28px; margin: 0; padding: 0; border: 1px solid #ffffff26; border-radius: 3px;
  background: var(--cr-action-arrow-bg) !important; color: var(--cr-action-arrow-text); transform: none;
  box-shadow: inset 0 1px 0 #fff2; font-size: 0; line-height: 0; align-self: center; transition: transform 250ms ease;
}
body.cr-photography-theme .cr-button__arrow > .cr-action-arrow,
body.cr-photography-theme .cr-lightbox__nav > .cr-action-arrow {
  display: block; flex: none; width: 16px; height: 16px; margin: 0; padding: 0;
}
/* Old cinematic link rules must not recolour or rotate the new vector icon. */
body.cr-photography-theme :is(#main-content,.cr-site-header,.cr-site-footer) .cr-button__arrow > svg.cr-action-arrow {
  color: var(--cr-action-arrow-text) !important; opacity: 1; transform: none !important;
}
/* Compact controls share the palette and states, without large CTA padding. */
body.cr-photography-theme :is(.cr-cinema-gallery-controls button,.cr-filter-bar button,.cr-menu-toggle,.cr-lightbox__close,.cr-lightbox__nav,.cr-cinema-reset,.cr-scroll-top) {
  min-height: 44px; min-width: 44px;
  border: 1px solid var(--cr-action-edge);
  border-radius: var(--cr-action-radius); background: var(--cr-action-bg); color: var(--cr-action-text);
  background-size: 180% 100%;
  box-shadow: inset 0 1px 0 #fff4,0 4px 12px -8px #000a; cursor: pointer;
  transition: background-position 350ms ease,transform 250ms ease;
}
body.cr-photography-theme :is(.cr-filter-bar button,.cr-cinema-reset) { padding: 10px 16px; font: 400 .875rem/1.5 var(--cr-sans); }
body.cr-photography-theme :is(.cr-cinema-gallery-controls button,.cr-filter-bar button,.cr-menu-toggle,.cr-lightbox__close,.cr-lightbox__nav,.cr-cinema-reset,.cr-scroll-top):is(:hover,:focus-visible):not(:disabled) {
  background-position: 100% 50%; color: var(--cr-action-hover-text);
  border-color: #b79a58;
}
/* Keep legacy archive hover rules from removing the gold background. */
body.cr-photography-theme #main-content .cr-filter-bar { gap: 12px; }
body.cr-photography-theme #main-content .cr-filter-bar button {
  background: var(--cr-action-bg); background-size: 180% 100%; background-position: 0% 50%;
  color: var(--cr-action-text); border: 1px solid var(--cr-action-edge);
  padding: 10px 16px; border-radius: var(--cr-action-radius);
  font: 500 .875rem/1.5 var(--cr-sans); letter-spacing: 0; text-transform: none;
  transition: background-position 350ms ease,box-shadow 200ms ease,border-color 200ms ease;
}
body.cr-photography-theme #main-content .cr-filter-bar button:is(:hover,:focus-visible) {
  background: var(--cr-action-bg); background-size: 180% 100%; background-position: 100% 50%;
  color: var(--cr-action-text); border-color: #f2d89f; box-shadow: inset 0 1px 0 #fff5,0 4px 14px -8px #d4b27366;
}
body.cr-photography-theme #main-content .cr-filter-bar button:is(.is-active,[aria-pressed="true"]),
body.cr-photography-theme #main-content .cr-filter-bar button:is(.is-active,[aria-pressed="true"]):is(:hover,:focus-visible,:active) {
  background: #202426; color: #f3d697; border-color: #d4b273; box-shadow: inset 0 0 0 1px #d4b273;
}
body.cr-photography-theme #main-content .cr-filter-bar button:active:not([aria-pressed="true"]) { box-shadow: inset 0 2px 5px #62451d55; }
body.cr-photography-theme .cr-scroll-top { display: inline-flex; align-items: center; justify-content: center; padding: 10px 16px; color: var(--cr-action-text); text-decoration: none; font: 500 .875rem/1.5 var(--cr-sans); }
body.cr-photography-theme .cr-menu-toggle span:not(.screen-reader-text) { background: currentColor; }
body.cr-photography-theme .cr-cinema-reset { background: var(--cr-action-bg); background-size: 180% 100%; color: var(--cr-action-text); }
/* Keep the video poster photographic; Play retains a clear circular affordance. */
body.cr-photography-theme .cr-video-card__play {
  border: 1px solid var(--cr-action-edge);
  border-radius: 50%; background: var(--cr-action-bg); color: var(--cr-action-text);
  box-shadow: 0 6px 24px #0005; transition: transform 300ms ease,box-shadow 300ms ease;
}
body.cr-photography-theme .cr-video-card__play i { border-left-color: currentColor; }
body.cr-photography-theme .cr-video-card__poster:is(:hover,:focus-visible) .cr-video-card__play { box-shadow: 0 8px 28px #bd945955; transform: scale(1.06); }
body.cr-home-cinematic #main-content .cr-monograph-play {
  padding: 10px 18px; border: 1px solid var(--cr-action-edge);
  border-radius: var(--cr-action-radius); background: var(--cr-action-bg); background-size: 180% 100%; color: var(--cr-action-text);
  box-shadow: inset 0 1px 0 #fff5,0 6px 16px -8px #0008;
  transition: background-position 450ms ease,transform 250ms ease;
}
body.cr-home-cinematic #main-content .cr-monograph-play:is(:hover,:focus-visible) { background-position: 100% 50%; transform: translateY(-2px); }
body.cr-home-cinematic #main-content .cr-monograph-play__icon { border: 0; border-radius: 4px; color: var(--cr-action-arrow-text); background: var(--cr-action-arrow-bg); }
body.cr-home-cinematic #main-content .cr-monograph-play :is(small,.cr-cinema-play__label) { color: inherit; }
body.cr-photography-theme :is(.cr-button,.cr-home-arrow-link,.cr-text-link,.wp-block-button__link,.nav-links a.page-numbers,.cr-nav-offer > a,button,input[type="submit"]):focus-visible { outline: 2px solid var(--cr-action-focus); outline-offset: 4px; }
body.cr-photography-theme :is(.cr-button,button,input[type="submit"]):disabled,
body.cr-photography-theme [aria-disabled="true"] { opacity: .45; cursor: not-allowed; }
body.cr-home-cinematic #main-content .cr-cinema-actions {
  display: grid; grid-template-columns: minmax(116px,.8fr) minmax(0,1.2fr);
  width: min(100%,440px); align-items: stretch; gap: 12px; margin-inline: auto;
}
body.cr-home-cinematic #main-content .cr-home-offers-action { display: flex; min-width: 0; margin: 0; }
body.cr-home-cinematic #main-content .cr-cinema-actions :is(a.cr-button,a.cr-home-arrow-link) {
  display: flex; justify-content: space-between; width: 100%; min-width: 0;
  min-height: 52px; height: 100%; gap: 10px; padding: 11px 12px; margin: 0;
}
body.cr-home-cinematic #main-content .cr-cinema-actions .cr-button > span:first-child { flex: 1; text-align: center; }
body.cr-home-cinematic #main-content .cr-cinema-actions > a:only-child { grid-column: 1 / -1; justify-self: center; max-width: 260px; }
/* Search remains one aligned input/action row, including at mobile widths. */
body.cr-photography-theme #main-content .cr-search-form > div {
  display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: stretch; gap: 12px; width: 100%;
}
body.cr-photography-theme #main-content .cr-search-form input[type="search"] {
  box-sizing: border-box; width: 100%; min-width: 0; height: 52px; min-height: 52px;
  margin: 0; padding: 12px 14px; border-radius: 6px; font: 400 .875rem/1.5 var(--cr-sans);
}
body.cr-photography-theme #main-content .cr-search-form button.cr-button {
  width: 100%; min-width: 116px; min-height: 52px; height: 52px; margin: 0; padding: 11px 12px;
  gap: 10px; border-radius: 6px; transform: none;
  --cr-action-shadow: inset 0 1px 0 #fff5;
  --cr-action-hover-shadow: inset 0 1px 0 #fff7;
  --cr-action-active-shadow: inset 0 1px 4px #0003;
}
.cr-atelier .cr-cinema-centered { display: flex; justify-content: center; }
body.cr-photography-theme :is(#main-content,.cr-site-header,.cr-site-footer) .cr-footer-lead__actions { display: flex; flex-wrap: wrap; gap: 16px; }
body.cr-photography-theme #main-content .navigation.pagination .nav-links { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 10px; }
body.cr-photography-theme #main-content .nav-links a.page-numbers { min-width: 44px; min-height: 44px; padding: 9px 12px; }
body.cr-photography-theme #main-content .nav-links .page-numbers.current { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 9px 12px; border: 1px solid #d4b273; border-radius: 6px; background: #202426; color: #f3d697; }

/* Equal side columns center Offers regardless of individual label widths. */
body.cr-photography-theme .cr-primary-nav__list--centered { display: grid; grid-template-columns: 1fr auto 1fr; gap: 18px; align-items: center; }
body.cr-photography-theme .cr-primary-nav__list--centered > .cr-nav-side { display: flex; align-items: center; gap: 18px; margin: 0; padding: 0; list-style: none; }
.cr-nav-side--start { justify-content: flex-end; }
.cr-nav-side--end { justify-content: flex-start; }
.cr-nav-side--all { grid-column: 1 / -1; }
/* Preserve the active-page cue after grouping the saved navigation items. */
.cr-nav-side > li:not(.cr-nav-offer) > a::after { position: absolute; right: 0; bottom: 6px; left: 0; height: 1px; background: currentColor; content: ""; transform: scaleX(0); transform-origin: right; transition: transform 180ms ease; }
.cr-nav-side > li:not(.cr-nav-offer):is(:hover,:focus-within,.current-menu-item,.current_page_item) > a::after { transform: scaleX(1); transform-origin: left; }
body.cr-photography-theme :is(#main-content,.cr-site-header,.cr-site-footer) .cr-primary-nav__list--centered .cr-nav-offer > a {
  min-width: 112px; min-height: 48px; padding: 10px 22px;
  justify-content: center; text-align: center; font-weight: 500;
}
@media (min-width:1121px) {
  body.cr-photography-theme .cr-primary-nav { transition: none; }
}
@media (min-width:1121px) and (max-width:1300px) {
  body.cr-photography-theme .cr-site-header__inner { gap: 16px; }
  body.cr-photography-theme .cr-primary-nav__list--centered,
  body.cr-photography-theme .cr-primary-nav__list--centered > .cr-nav-side { gap: 12px; }
  body.cr-photography-theme :is(#main-content,.cr-site-header,.cr-site-footer) .cr-site-header__actions > a.cr-button--header { padding-inline: 12px; }
}
@media (max-width:1120px) {
  body.cr-photography-theme .cr-primary-nav__list--centered { grid-template-columns: 1fr; gap: 12px; }
  body.cr-photography-theme .cr-primary-nav__list--centered > .cr-nav-side { display: grid; gap: 0; justify-content: stretch; }
  body.cr-photography-theme .cr-primary-nav__list--centered > .cr-nav-side > li { border-bottom: 1px solid var(--cr-line-light); }
  body.cr-photography-theme .cr-primary-nav__list--centered > .cr-nav-side--offer { justify-items: center; padding-block: 8px; }
  body.cr-photography-theme .cr-primary-nav__list--centered > .cr-nav-side--offer > li { border: 0; }
  body.cr-photography-theme :is(#main-content,.cr-site-header,.cr-site-footer) .cr-primary-nav__list--centered .cr-nav-offer > a { min-width: 180px; font-size: 1rem; }
  .cr-nav-side > li:not(.cr-nav-offer) > a::after { content: none; }
}
@media (max-width:760px) {
  body.cr-photography-theme :is(#main-content,.cr-site-header,.cr-site-footer) .cr-site-header__actions > a.cr-button--header { display: none; }
  body.cr-photography-theme :is(#main-content,.cr-site-header,.cr-site-footer) .cr-footer-lead__actions a.cr-button { width: 100%; }
}
@media (max-width:560px) {
  body.cr-home-cinematic #main-content .cr-cinema-actions { gap: 10px; }
  body.cr-home-cinematic #main-content .cr-cinema-actions :is(a.cr-button,a.cr-home-arrow-link) { padding: 10px 9px; gap: 8px; font-size: .8125rem; }
  body.cr-home-cinematic #main-content .cr-cinema-actions :is(.cr-button__arrow,.cr-home-arrow-link > svg),
  body.cr-photography-theme #main-content .cr-search-form button.cr-button .cr-button__arrow { flex-basis: 22px; width: 22px; height: 22px; font-size: 1rem; }
  body.cr-photography-theme #main-content .cr-search-form > div { gap: 8px; }
  body.cr-photography-theme #main-content .cr-search-form button.cr-button { min-width: 100px; padding-inline: 10px; gap: 8px; font-size: .8125rem; }
}
@keyframes cr-action-sheen {
  0% { opacity: 0; transform: translateX(-180%) skewX(-20deg); }
  20%,70% { opacity: .65; }
  100% { opacity: 0; transform: translateX(420%) skewX(-20deg); }
}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  body.cr-photography-theme:not(.cr-reduce-motion) :is(#main-content,.cr-site-header,.cr-site-footer) :is(.cr-button,.cr-home-arrow-link,.cr-text-link,.wp-block-button__link,.nav-links a.page-numbers,.cr-nav-offer > a):is(:hover,:focus-visible):not([aria-disabled="true"]):not(:disabled):not(.cr-button--search) { transform: translateY(-2px); }
  body.cr-photography-theme:not(.cr-reduce-motion) :is(#main-content,.cr-site-header,.cr-site-footer) :is(.cr-button,.cr-home-arrow-link,.cr-text-link,.wp-block-button__link,.nav-links a.page-numbers,.cr-nav-offer > a):is(:hover,:focus-visible):not([aria-disabled="true"]):not(:disabled)::before { animation: cr-action-sheen 700ms ease both; }
  body.cr-photography-theme:not(.cr-reduce-motion) :is(#main-content,.cr-site-header,.cr-site-footer) .cr-button:is(:hover,:focus-visible) .cr-button__arrow { transform: translate(1px,-1px); }
}
@media (prefers-reduced-motion:no-preference) {
  body.cr-photography-theme:not(.cr-reduce-motion) :is(#main-content,.cr-site-header,.cr-site-footer) :is(.cr-button,.cr-home-arrow-link,.cr-text-link,.wp-block-button__link,.nav-links a.page-numbers,.cr-nav-offer > a):active:not([aria-disabled="true"]):not(:disabled):not(.cr-button--search) { transform: translateY(1px); box-shadow: var(--cr-action-active-shadow,inset 0 1px 4px #0003); }
}
@media (prefers-reduced-motion:reduce) {
  body.cr-photography-theme :is(a,button,input[type="submit"],.cr-button__arrow,.cr-video-card__play),
  body.cr-photography-theme :is(a,button)::before { animation: none !important; transition: none !important; transform: none !important; }
}
body.cr-photography-theme.cr-reduce-motion :is(a,button,input[type="submit"],.cr-button__arrow,.cr-video-card__play),
body.cr-photography-theme.cr-reduce-motion :is(a,button)::before { animation: none !important; transition: none !important; transform: none !important; }
