.site-footer{padding-top:var(--space-9);background:var(--color-obsidian-panel);border-top:1px solid var(--border-gold)}.site-footer__inner{display:grid;grid-template-columns:1.7fr repeat(3,1fr);gap:var(--space-7);padding-bottom:var(--space-8)}.site-footer__intro,.site-footer__column{min-width:0}.site-footer__brand{display:inline-flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);color:var(--color-white);font-family:var(--font-heading);font-size:1.35rem;font-weight:600;line-height:1;text-decoration:none}.site-footer__brand img{width:56px;height:56px;object-fit:contain}.site-footer__brand small{display:block;margin-top:.3rem;color:var(--color-imperial-gold);font-family:var(--font-body);font-size:.6rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.site-footer p{margin:0 0 var(--space-4)}.site-footer address{color:var(--color-muted-slate);font-size:var(--text-sm);font-style:normal;line-height:1.5}.site-footer h2{margin:0 0 var(--space-4);font-family:var(--font-body);font-size:var(--text-xs);font-weight:700;letter-spacing:.14em;line-height:1.2;text-transform:uppercase}.site-footer ul{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.site-footer li,.site-footer li+li{margin:0;padding:0}.site-footer a{font-size:var(--text-sm)}.site-footer__bottom{display:flex;justify-content:space-between;gap:var(--space-5);padding-top:var(--space-5);padding-bottom:var(--space-5);border-top:1px solid var(--border-bronze)}.site-footer__bottom p{margin:0;color:var(--color-muted-slate);font-size:var(--text-xs)}.site-consent{position:fixed;z-index:150;right:var(--space-4);bottom:var(--space-4);left:var(--space-4);border:1px solid var(--border-gold);background:var(--color-obsidian-panel);box-shadow:var(--shadow-panel)}.site-consent[hidden]{display:none!important}.site-consent__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);width:min(100%,60rem);margin-inline:auto;padding:var(--space-4) var(--space-5)}.site-consent p{margin:0;color:var(--color-warm-ivory);font-size:var(--text-sm)}.site-consent__actions{display:flex;flex-wrap:wrap;gap:var(--space-3);flex:0 0 auto}.site-consent__button,.site-age-modal__confirm,.site-age-modal__decline{min-height:44px;padding:.65rem 1rem;border:1px solid var(--border-gold);border-radius:var(--radius-control);font-size:var(--text-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.site-consent__button--accept,.site-age-modal__confirm{border-color:var(--color-felt-emerald);background:var(--color-felt-emerald);color:var(--color-white)}.site-consent__button--accept:hover,.site-age-modal__confirm:hover{background:var(--color-felt-emerald-deep)}.site-consent__button--reject,.site-age-modal__decline{background:transparent;color:var(--color-warm-ivory)}.site-age-modal{position:fixed;z-index:1100;inset:0;display:grid;place-items:center;padding:var(--space-4);overflow:auto;background:rgb(0 0 0 / .78)}[data-age-modal][hidden]{display:none!important}.site-age-modal__panel{width:min(100%,34rem);padding:clamp(var(--space-5),5vw,var(--space-7));border:1px solid var(--border-gold);background:var(--color-obsidian-panel);box-shadow:var(--shadow-panel)}.site-age-modal__panel h2{margin-bottom:var(--space-4)}.site-age-modal__panel p{margin-bottom:var(--space-5)}.site-age-modal__actions{display:flex;flex-wrap:wrap;gap:var(--space-3)}@media(max-width:767px){.site-footer{padding-top:var(--space-8)}.site-footer__inner{grid-template-columns:1fr 1fr;gap:var(--space-6);padding-bottom:var(--space-7)}.site-footer__intro{grid-column:1/-1}.site-footer__bottom,.site-consent__inner{align-items:flex-start;flex-direction:column}.site-consent{right:var(--space-3);bottom:var(--space-3);left:var(--space-3)}.site-consent__inner{padding:var(--space-4)}.site-consent__actions{width:100%}.site-consent__button{flex:1}.site-age-modal__actions{flex-direction:column}.site-age-modal__actions button{width:100%}}@media(max-width:420px){.site-footer__inner{grid-template-columns:1fr}.site-footer__intro{grid-column:auto}}

/* mobile-photo-center */
@media (max-width: 56.25rem) {
  img,
  video {
    object-position: center !important;
  }

  .image-frame,
  .media-frame,
  .card__media,
  [class*='__media'] {
    width: 100%;
    max-width: 100%;
    margin-inline: 0;
    justify-self: stretch;
    overflow: hidden;
    grid-column: 1 / -1;
  }

  .image-frame img,
  .media-frame img,
  .media-frame video,
  .card__media img,
  [class*='__media'] img,
  [class*='hero'] img,
  [class*='hero__image'] {
    width: 100%;
    height: 100%;
    max-width: none;
    min-width: 100%;
    min-height: 100%;
    object-fit: cover;
    object-position: center !important;
  }
}

/* cookie-banner-compact */
@media (max-width: 56.25rem) {
  .cookie-consent,
  .cookie-banner,
  .consent-banner,
  .site-consent,
  [data-cookie-consent],
  [data-consent-banner] {
    height: auto;
    min-height: 0;
    max-height: min(70dvh, calc(100dvh - 2rem));
    overflow-x: hidden;
    overflow-y: auto;
  }

  .cookie-consent__content,
  .cookie-consent__inner,
  .cookie-consent__card,
  .cookie-consent-inner,
  .cookie-banner__inner,
  .consent-banner__inner,
  .consent-banner__content,
  .consent-content,
  .site-consent__inner {
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 1rem;
    height: auto;
    min-height: 0;
  }

  .cookie-consent__text,
  .cookie-consent-text,
  .cookie-banner__copy,
  .consent-banner__text,
  .consent-banner__copy,
  .consent-content p {
    flex: 0 1 auto;
  }

  .cookie-consent__actions,
  .cookie-consent-actions,
  .cookie-banner__actions,
  .consent-banner__actions,
  .consent-actions,
  .site-consent__actions {
    flex: 0 0 auto;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    width: 100%;
    height: auto;
    min-height: 0;
    gap: 0.75rem;
  }

  .cookie-consent__actions button,
  .cookie-consent__actions .button,
  .cookie-consent__actions .btn,
  .cookie-consent-actions button,
  .cookie-consent-actions .button,
  .cookie-banner__actions button,
  .cookie-banner__actions .button,
  .consent-banner__actions button,
  .consent-banner__actions .button,
  .consent-banner__button,
  .consent-actions button,
  .consent-actions .btn,
  .consent-actions .button,
  .site-consent__actions button,
  .site-consent__actions .button {
    flex: 0 0 auto;
    width: 100%;
    height: auto;
    min-height: 44px;
    max-height: none;
    align-self: stretch;
  }
}
