/* Mount Rigi global footer: screenshot reference, mobile first. */
.footer-display{position:relative;z-index:2;width:52%;max-width:144rem;margin:0 auto -5rem;line-height:0;pointer-events:none}
.footer-display picture,.footer-display img{display:block;width:100%;height:auto}
.site-footer{background:#080d14;color:var(--white);padding:5.6rem 1.5rem 4.8rem}
.footer-layout{display:grid;gap:5.6rem;max-width:124rem;margin:0 auto;padding-top:5rem}
.footer-contact,.footer-newsletter,.footer-help{min-width:0}
.footer-newsletter{order:-1}
.site-footer h2{margin:0 0 1rem;color:var(--white);font-size:clamp(2.7rem,2.4vw,4rem);line-height:.98;letter-spacing:2px;text-transform:uppercase}
.footer-contact h2,.footer-help h2{font-size:clamp(2.5rem,1.8vw,3.1rem)}
.footer-newsletter h2{max-width:80rem;font-family:var(--display);font-size:clamp(2.6rem,2.2vw,3.6rem);font-weight:400;letter-spacing:-1px}
.footer-contact-block{margin-bottom:4.8rem}
.footer-contact a,.footer-contact p,.footer-help a{display:block;color:var(--white);font-size:2rem;line-height:1.32;text-transform:uppercase}
.footer-contact a{text-decoration:none}
.footer-contact p{margin:0}
.footer-contact-block p+p{margin-top:2.8rem}
.footer-help a{width:max-content;margin:.45rem 0;text-decoration:underline;text-underline-offset:.18em}
.footer-newsletter form{display:flex;width:100%;margin-top:3rem}
.footer-newsletter input{min-width:0;flex:1;height:4.6rem;padding:1.2rem 1.4rem;border:0;border-radius:0;background:var(--white);color:var(--navy);font:700 1.5rem/1 var(--heading);text-transform:uppercase}
.footer-newsletter input::placeholder{color:var(--navy);opacity:1}
.footer-newsletter input:focus,.footer-newsletter input:focus-visible{outline:0;box-shadow:none}
.footer-newsletter button{display:grid;place-items:center;width:4.6rem;height:4.6rem;padding:0;border:0;border-radius:0;background:var(--mint);color:var(--navy)}
.footer-newsletter button img{display:block;width:2.5rem;height:2.5rem;object-fit:contain}
.footer-newsletter button:hover{background:var(--mint);color:var(--navy)}
.footer-newsletter .form-status{min-height:0;margin:1.2rem 0 0;color:var(--white);font-size:1.4rem}.newsletter-status:empty{display:none}.newsletter-status:not(:empty){display:grid;grid-template-columns:2.8rem minmax(0,1fr);align-items:center;gap:.9rem;padding:1rem 1.2rem;border:2px solid transparent;border-radius:1.4rem;font:400 1.4rem/1.3 var(--body);text-align:left}.newsletter-status:not(:empty)::before{display:grid;place-items:center;width:2.6rem;height:2.6rem;color:var(--navy);font:700 1.5rem/1 var(--heading)}.newsletter-status--success{border-color:var(--mint)!important;background:rgb(3 250 225 / 12%);color:var(--white)!important}.newsletter-status--success::before{border-radius:50%;background:var(--mint);content:'✓'}.newsletter-status--error{border-color:#ff3b9d!important;background:rgb(255 59 157 / 12%);color:var(--white)!important}.newsletter-status--error::before{background:#ff3b9d;clip-path:polygon(50% 0,100% 100%,0 100%);content:'!';padding-top:.45rem}
.footer-social{display:flex;justify-content:center;gap:2rem;margin-top:2.2rem}
.footer-social a{display:grid;place-items:center;width:4.4rem;height:4.4rem;color:var(--white);text-decoration:none}
.footer-social svg{width:3.8rem;height:3.8rem}
.footer-social a:hover{color:var(--white)}
.footer-social a:focus-visible{color:var(--mint)}
.footer-help{text-align:right}
.footer-help a{margin-left:auto;margin-right:0}
.footer-responsibility{max-width:110rem;margin:5rem auto 0;padding:2.4rem 1rem 0;border-top:1px solid rgb(255 255 255 / 22%);color:rgb(255 255 255 / 88%);text-align:center}
.footer-responsibility p{margin:0;font-size:1.25rem;line-height:1.5}
.footer-responsibility strong{display:block;margin-bottom:.35rem;color:var(--white);font:700 1.35rem/1.15 var(--heading);letter-spacing:.08em}

@media (min-width:48rem){
  .site-footer{padding:6.8rem 5rem 5.4rem}
  .footer-layout{grid-template-columns:minmax(20rem,1fr) minmax(32rem,1.5fr) minmax(20rem,1fr);grid-template-areas:'contact newsletter help';align-items:start;gap:4rem}
  .footer-contact{grid-area:contact}
  .footer-newsletter{grid-area:newsletter;order:0;text-align:center}
  .footer-help{grid-area:help;text-align:right}
  .footer-newsletter h2{margin-inline:auto}
  .footer-newsletter form{max-width:46rem;margin-inline:auto}
  .footer-help a{margin-left:auto;margin-right:0}
  .footer-social{margin-top:2.2rem}
  .footer-contact-block{margin-bottom:4rem}
}

@media (min-width:48rem) and (max-width:79.99rem){
  .footer-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:'newsletter newsletter' 'contact help';column-gap:6rem;row-gap:8.6rem}
  .footer-newsletter{max-width:70rem;margin-inline:auto}
  .footer-help{text-align:right}
  .footer-help a{margin-left:auto;margin-right:0}
  .footer-newsletter form{max-width:42rem}
  .footer-social{margin-top:2.2rem}
}

@media (min-width:80rem){
  .footer-newsletter{transform:translateY(-5rem)}
}

@media (max-width:47.99rem){
  .footer-display{width:78%;margin-bottom:-3rem}
  .footer-newsletter{text-align:left}
  .footer-newsletter h2{margin-inline:0}
  .footer-social{justify-content:flex-start}
  .footer-help{text-align:left}
  .footer-help a{margin-left:0;margin-right:0}
  .footer-responsibility{margin-top:4rem;padding-inline:0}
  .footer-responsibility p{font-size:1.2rem}
}
.newsletter-status--error{position:relative;border-color:#ff3b9d!important;background:rgb(255 59 157 / 12%);color:var(--white)!important}
.newsletter-status--error::before{display:block;width:2.8rem;height:2.8rem;border-radius:.3rem;background:#fff;clip-path:polygon(50% 0,100% 100%,0 100%);content:'';padding:0}
.newsletter-status--error::after{position:absolute;top:50%;left:1.5rem;display:grid;place-items:center;width:2.2rem;height:2.2rem;border-radius:.25rem;background:#ff3b9d;color:#fff;clip-path:polygon(50% 0,100% 100%,0 100%);content:'!';font:700 1.35rem/1 var(--heading);padding-top:.38rem;transform:translateY(-50%)}
.newsletter-status:not(:empty){font-size:1.55rem}
.newsletter-status--error::before{width:2.8rem;height:2.425rem;border-radius:0;background:#ff3b9d;clip-path:polygon(50% 0,100% 100%,0 100%)}
.newsletter-status--error::after{top:50%;left:1.2rem;width:2.8rem;height:2.425rem;border-radius:0;background:transparent;color:#fff;clip-path:none;content:'!';font-size:1.55rem;padding-top:.48rem;transform:translateY(-50%)}
.newsletter-status:not(.newsletter-status--success):not(.newsletter-status--error){display:none}
.newsletter-status>span{display:block;transform:translateY(3px)}
.newsletter-status--error::after{left:calc(1.2rem - 1px)}
