/* Shared Studio and Gallery footer. Type sizes come from typography.css. */
.rh-footer{box-sizing:border-box;width:100%;margin:0;background:var(--black,#000);color:#fff;text-align:center}
.rh-footer *{box-sizing:border-box}
.rh-footer a{color:#fff}
.rh-footer-main{display:flex;justify-content:center;max-width:1040px;margin:0 auto;padding:96px clamp(20px,5vw,64px) 80px}
.rh-footer-news,.rh-footer-section{display:flex;flex-direction:column;align-items:center;gap:18px;width:100%;max-width:420px;margin:0;min-width:0}
.rh-footer .newsletter-title{margin:0 0 4px;color:#fff;text-transform:uppercase}
.rh-footer p{margin:0;color:#fff;max-width:36em}
.rh-footer-field{display:flex;align-items:stretch;width:100%;max-width:420px;border:1px solid #fff}
.rh-footer-input{flex:1;min-width:0;min-height:44px;margin:0;padding:0 14px;border:0;border-radius:0;background:transparent;color:#fff;outline-offset:-3px}
.rh-footer-input::placeholder{color:#9a9a9a;opacity:1}
.rh-footer-field button{flex:none;min-height:44px;margin:0;padding:0 14px;border:0;border-radius:0;background:transparent;color:#fff;cursor:pointer;white-space:nowrap}
.rh-footer-field button:disabled{opacity:.5;cursor:default}
.rh-footer-note{color:#bdbdbd!important}
.rh-footer-status{color:#fff}
.rh-footer-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.rh-footer-button{display:inline-flex;align-items:center;justify-content:center;gap:.6em;min-width:200px;min-height:44px;padding:12px 18px;border:1px solid #fff;text-decoration:none;text-transform:uppercase;transition:background-color .2s,color .2s}
.rh-footer-button:hover,.rh-footer-button:focus-visible{background:#fff;color:#000!important}
/* Bottom row reads like the header: small spaced capitals, underlined on hover or when current. */
.rh-footer-links{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;align-content:center;gap:0 28px;width:100%;min-height:76px;box-sizing:border-box;margin:0;padding:0 3%;border-top:1px solid #333}
.rh-footer-links-start,.rh-footer-language{display:flex;flex-wrap:wrap;align-items:center;gap:0 28px}
.rh-footer-links-start a,.rh-footer-language button{display:inline-flex;align-items:center;min-height:44px;padding:0;border:0;background:none;color:#fff;font-family:inherit;text-transform:uppercase;cursor:pointer;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;text-decoration-color:transparent;transition:text-decoration-color .2s}
.rh-footer-links-start a:hover,.rh-footer-links-start a:focus-visible,.rh-footer-language button:hover,.rh-footer-language [aria-pressed="true"]{text-decoration-color:#fff}
.rh-footer-social{display:flex;align-items:center;margin-right:-10px}
.rh-footer-social a{display:inline-flex;align-items:center;justify-content:center;width:40px;min-height:44px}
.rh-footer-social svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.rh-footer-social .rh-footer-icon-fill{fill:currentColor;stroke:none}
.rh-footer :focus-visible{outline:1px solid #fff;outline-offset:3px}
@media (max-width:760px){
  .rh-footer-main{padding:72px 24px 60px}
  /* Phones: one row, page links left and icons right; the language choice lives in the menu. */
  .rh-footer-links{flex-wrap:nowrap;justify-content:space-between;gap:0 16px;min-height:58px;padding:0 16px}
  .rh-footer-links-start{flex-wrap:nowrap;gap:0 18px}
  .rh-footer-language{display:none}
}

/* Studio contact side sheet opened from the footer. */
html:has(.rh-contact[open]){overflow:hidden}
.rh-contact{position:fixed;inset:0 0 0 auto;width:min(100%,480px);height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;overflow-y:auto;background:#fff;color:#25251f;opacity:0;transform:translateX(100%);transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .28s ease-out;scrollbar-width:none}
.rh-contact.is-open{opacity:1;transform:none}
.rh-contact::backdrop{background:rgba(20,20,16,.4);opacity:0;transition:opacity .28s}
.rh-contact.is-open::backdrop{opacity:1}
.rh-contact *{box-sizing:border-box}
.rh-contact-form{min-height:100%;display:flex;flex-direction:column;gap:40px;padding:14px 28px 28px}
.rh-contact-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.rh-contact-kicker{text-transform:uppercase;color:#727269}
.rh-contact-close{width:44px;height:44px;margin-right:-12px;display:flex;align-items:center;justify-content:center;padding:0;background:transparent;border:0;color:inherit;cursor:pointer}
.rh-contact-info{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.rh-contact-info h2,.rh-contact-info p{margin:0}
.rh-contact-info p{color:#57574f}
.rh-contact-info a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.rh-contact fieldset{display:grid;gap:22px;margin:0;padding:0;border:0;min-width:0}
.rh-contact legend{padding:0 0 12px}
.rh-contact label{display:grid;gap:8px}
.rh-contact input,.rh-contact textarea{width:100%;min-height:44px;margin:0;padding:10px 12px;border:1px solid #bcbcb6;border-radius:0;background:transparent;color:inherit;font:inherit}
.rh-contact textarea{min-height:120px;resize:vertical}
.rh-contact input:focus-visible,.rh-contact textarea:focus-visible{outline:2px solid #25251f;outline-offset:2px}
.rh-contact-foot{margin-top:auto;display:flex;flex-direction:column;gap:14px;padding-top:24px;border-top:1px solid #ddd}
.rh-contact-send{min-height:52px;padding:0 20px;border:0;background:#25251f;color:#fff;cursor:pointer;transition:background .2s}
.rh-contact-send:hover,.rh-contact-send:focus-visible{background:#000}
.rh-contact-status{margin:0;color:#727269;text-align:center}
@media (prefers-reduced-motion:reduce){.rh-contact,.rh-contact::backdrop{transition:none}}
