/* Resort 7 Crai premium footer */
footer.site-footer{
  --footer-bg:#050505;
  --footer-panel:#0a0a09;
  --footer-gold:#c89b45;
  --footer-gold-light:#e7c77d;
  --footer-text:#eee8de;
  --footer-muted:#a8a093;
  --footer-line:rgba(200,155,69,.22);
  position:relative;
  display:block!important;
  width:100%;
  margin:0!important;
  padding:0!important;
  overflow:hidden;
  color:var(--footer-text)!important;
  background:
    radial-gradient(circle at 10% 10%,rgba(200,155,69,.08),transparent 24%),
    radial-gradient(circle at 88% 74%,rgba(200,155,69,.055),transparent 22%),
    var(--footer-bg)!important;
  border-top:1px solid rgba(200,155,69,.32)!important;
  font-family:Arial,Helvetica,sans-serif;
  text-align:left!important;
}
footer.site-footer:before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--footer-gold-light),transparent);
  opacity:.85;
}
footer.site-footer:after{
  content:"7 CRAI";
  position:absolute;
  right:-18px;
  bottom:20px;
  font-family:Georgia,serif;
  font-size:clamp(6rem,15vw,14rem);
  line-height:.75;
  letter-spacing:-.06em;
  color:rgba(255,255,255,.018);
  pointer-events:none;
  user-select:none;
}
.site-footer .footer-shell{
  position:relative;
  z-index:2;
  width:min(1420px,calc(100% - 64px));
  margin:0 auto;
  padding:76px 0 28px;
}
.site-footer .footer-grid{
  display:grid;
  grid-template-columns:minmax(250px,1.35fr) minmax(220px,1fr) minmax(180px,.75fr) minmax(170px,.7fr);
  gap:clamp(32px,5vw,78px);
  align-items:start;
}
.site-footer .footer-brand-block{
  max-width:330px;
}
.site-footer .footer-logo-link{
  display:inline-flex;
  align-items:center;
  text-decoration:none!important;
  color:inherit!important;
}
.site-footer .footer-logo{
  display:block;
  width:var(--footer-logo-width,128px);
  height:112px;
  object-fit:contain;
  object-position:left center;
  filter:drop-shadow(0 10px 25px rgba(0,0,0,.35));
}
.site-footer .footer-location{
  display:block;
  margin-top:18px;
  color:var(--footer-gold-light)!important;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.2em;
  text-transform:uppercase;
}
.site-footer .footer-brand-copy{
  margin:12px 0 0;
  color:var(--footer-muted)!important;
  font-family:Georgia,serif;
  font-size:1.02rem;
  line-height:1.75;
}
.site-footer .footer-company{
  margin-top:24px;
  padding-top:21px;
  border-top:1px solid var(--footer-line);
}
.site-footer .footer-company strong{
  display:block;
  color:var(--footer-text)!important;
  font-size:.88rem;
  letter-spacing:.08em;
}
.site-footer .footer-company span{
  display:block;
  margin-top:6px;
  color:#8f887e!important;
  font-size:.78rem;
  line-height:1.45;
}
.site-footer .footer-col h3{
  position:relative;
  margin:0 0 24px;
  padding-bottom:13px;
  color:var(--footer-text)!important;
  font-family:Georgia,serif;
  font-size:1.18rem;
  font-weight:400;
  letter-spacing:.03em;
}
.site-footer .footer-col h3:after{
  content:"";
  position:absolute;
  left:0;bottom:0;
  width:38px;height:1px;
  background:var(--footer-gold);
}
.site-footer .footer-contact-list,
.site-footer .footer-useful-list{
  list-style:none!important;
  padding:0!important;
  margin:0!important;
  display:grid;
  gap:15px;
}
.site-footer .footer-contact-list li,
.site-footer .footer-useful-list li{
  margin:0!important;
  padding:0!important;
  color:var(--footer-muted)!important;
  font-size:.88rem;
  line-height:1.55;
}
.site-footer .footer-label{
  display:block;
  margin-bottom:3px;
  color:#777168!important;
  font-size:.67rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.site-footer a{
  color:var(--footer-text)!important;
  text-decoration:none!important;
  transition:color .22s ease,transform .22s ease,border-color .22s ease,background .22s ease;
}
.site-footer .footer-contact-list a:hover,
.site-footer .footer-useful-list a:hover{
  color:var(--footer-gold-light)!important;
}
.site-footer .footer-event-note{
  display:block;
  margin-top:4px;
  color:var(--footer-gold)!important;
  font-size:.72rem;
}
.site-footer .footer-useful-list a{
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.site-footer .footer-useful-list a:before{
  content:"↗";
  color:var(--footer-gold);
  font-size:.76rem;
}
.site-footer .footer-socials{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.site-footer .footer-social{
  display:inline-flex;
  align-items:center;
  gap:9px;
  min-height:42px;
  padding:0 13px;
  border:1px solid var(--footer-line);
  border-radius:999px;
  background:rgba(255,255,255,.018);
  color:var(--footer-text)!important;
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.04em;
}
.site-footer .footer-social-mark{
  display:grid;
  place-items:center;
  width:22px;height:22px;
  border-radius:50%;
  background:rgba(200,155,69,.12);
  color:var(--footer-gold-light)!important;
  font-family:Georgia,serif;
  font-size:.78rem;
}
.site-footer .footer-social:hover{
  transform:translateY(-2px);
  border-color:rgba(231,199,125,.55);
  background:rgba(200,155,69,.08);
}
.site-footer .footer-social-note{
  margin:18px 0 0;
  color:#777168!important;
  font-size:.75rem;
  line-height:1.55;
}
.site-footer .footer-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-top:56px;
  padding-top:24px;
  border-top:1px solid var(--footer-line);
}
.site-footer .footer-copyright{
  color:#817a70!important;
  font-size:.76rem;
  letter-spacing:.035em;
}
.site-footer .footer-powered{
  display:inline-flex;
  align-items:center;
  gap:9px;
  color:#8f887e!important;
  font-size:.73rem;
  letter-spacing:.04em;
  white-space:nowrap;
}
.site-footer .footer-powered b{
  color:var(--footer-gold-light)!important;
  font-weight:700;
}
.site-footer .footer-powered-mark{
  display:grid;
  place-items:center;
  width:30px;height:30px;
  border:1px solid rgba(200,155,69,.42);
  border-radius:50%;
  color:var(--footer-gold-light)!important;
  font-family:Georgia,serif;
  font-size:.67rem;
  letter-spacing:-.04em;
}
@media(max-width:980px){
  .site-footer .footer-grid{grid-template-columns:1.25fr 1fr;gap:48px 70px}
}
@media(max-width:640px){
  .site-footer .footer-shell{width:min(100% - 36px,1420px);padding-top:56px}
  .site-footer .footer-grid{grid-template-columns:1fr;gap:42px}
  .site-footer .footer-brand-block{max-width:none}
  .site-footer .footer-logo{width:112px;height:98px}
  .site-footer .footer-bottom{align-items:flex-start;flex-direction:column;margin-top:46px;gap:15px}
  .site-footer .footer-powered{white-space:normal}
}


/* v31 editable brand footer */
.site-footer .footer-powered-link{ text-decoration:none!important; }
.site-footer .footer-powered-link:hover{ transform:translateY(-1px); color:var(--footer-gold-light)!important; }
.site-footer .footer-powered-logo{ display:block; max-width:56px; max-height:32px; object-fit:contain; filter:drop-shadow(0 6px 14px rgba(0,0,0,.28)); }
