﻿
/* ==========================================================
   FFMA LEGAL PAGES V2
   ========================================================== */

body:has(.ffma-legal-page){
  background:#f4f4f1;
}

body:has(.ffma-legal-page) > header,
body:has(.ffma-legal-page) > footer{
  display:none!important;
}

body:has(.ffma-legal-page) main{
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
}


/* PAGE SHELL */

.ffma-legal-page{
  width:min(1120px,calc(100% - 32px));
  margin:18px auto 28px;
  color:#111;
}


/* NAVIGATION */

.ffma-legal-nav{
  position:sticky;
  z-index:40;
  top:18px;

  width:max-content;
  max-width:calc(100% - 24px);

  margin:0 auto 28px;
  padding:8px 9px 8px 18px;

  display:flex;
  align-items:center;
  gap:28px;

  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;

  background:rgba(20,20,20,.94);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);

  box-shadow:0 14px 35px rgba(0,0,0,.16);
}

.ffma-legal-brand{
  color:#fff!important;
  text-decoration:none;
  font-size:12px;
  font-weight:850;
  letter-spacing:.03em;
  white-space:nowrap;
}

.ffma-legal-nav-links{
  display:flex;
  align-items:center;
  gap:20px;
}

.ffma-legal-nav-links a{
  color:#aaa;
  text-decoration:none;
  font-size:11px;
  font-weight:650;
  transition:.2s ease;
}

.ffma-legal-nav-links a:hover{
  color:#fff;
}

.ffma-legal-buy-form{
  margin:0;
}

.ffma-legal-buy{
  min-height:40px;
  padding:0 17px;

  border:0;
  border-radius:12px;

  background:#2563eb;
  color:#fff;

  font:inherit;
  font-size:11px;
  font-weight:800;

  cursor:pointer;
  transition:.2s ease;

  box-shadow:0 8px 22px rgba(37,99,235,.22);
}

.ffma-legal-buy:hover{
  background:#1d4ed8;
  transform:translateY(-1px);
}


/* LEGAL DOCUMENT */

.ffma-legal-card{
  padding:72px clamp(30px,7vw,88px);
  margin-bottom:28px;

  background:#fff;
  border:1px solid rgba(15,15,15,.06);
  border-radius:30px;

  box-shadow:0 8px 26px rgba(0,0,0,.025);
}

.ffma-legal-card .narrow{
  width:100%!important;
  max-width:780px!important;
  margin:0 auto!important;
  padding:0!important;
}

.ffma-legal-card h1{
  margin:0 0 18px;

  font-size:clamp(38px,5vw,64px);
  line-height:.96;
  letter-spacing:-.055em;
}

.ffma-legal-card h2{
  margin-top:42px;
  margin-bottom:12px;

  font-size:23px;
  line-height:1.12;
  letter-spacing:-.025em;
}

.ffma-legal-card h3{
  margin-top:28px;
  font-size:17px;
}

.ffma-legal-card p,
.ffma-legal-card li{
  color:#555;
  font-size:14px;
  line-height:1.75;
}

.ffma-legal-card a{
  color:#2563eb;
}

.ffma-legal-card ul,
.ffma-legal-card ol{
  padding-left:22px;
}


/* FOOTER */

.ffma-legal-footer{
  padding:42px 46px 22px;

  border-radius:30px;

  background:#111;
  color:#fff;
}

.ffma-legal-footer-top{
  display:grid;
  grid-template-columns:1.35fr .8fr .9fr;
  gap:48px;

  padding-bottom:32px;
}

.ffma-legal-footer-brand{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}

.ffma-legal-footer-brand > strong{
  font-size:25px;
  letter-spacing:-.045em;
}

.ffma-legal-footer-brand p{
  margin:8px 0 21px;
  color:#888;
  font-size:13px;
}

.ffma-legal-instagram{
  display:inline-flex;
  align-items:center;
  gap:9px;

  padding:10px 14px;

  border:1px solid rgba(255,255,255,.15);
  border-radius:999px;

  color:#fff!important;
  text-decoration:none;

  font-size:11px;
  font-weight:700;

  transition:.2s ease;
}

.ffma-legal-instagram:hover{
  border-color:#2563eb;
  background:rgba(37,99,235,.12);
  color:#60a5fa!important;
}

.ffma-legal-instagram svg{
  width:16px;
  height:16px;

  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
}

.ffma-legal-footer-links,
.ffma-legal-footer-commerce{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:9px;
}

.ffma-legal-footer-label{
  margin-bottom:5px;

  color:#777;

  font-size:9px;
  font-weight:800;
  letter-spacing:.13em;
}

.ffma-legal-footer-links a,
.ffma-legal-footer-links button{
  padding:0;

  border:0;
  background:none;

  color:#d5d5d5;

  font:inherit;
  font-size:11px;
  text-decoration:none;

  cursor:pointer;
}

.ffma-legal-footer-links a:hover,
.ffma-legal-footer-links button:hover{
  color:#60a5fa;
}


/* CURRENCY */

.ffma-legal-currency select{
  min-width:128px;

  padding:10px 34px 10px 13px;

  border:1px solid rgba(255,255,255,.15);
  border-radius:10px;

  background:#1b1b1b;
  color:#fff;

  font:inherit;
  font-size:11px;

  cursor:pointer;
}

.ffma-legal-currency select:focus{
  outline:none;
  border-color:#2563eb;
  box-shadow:0 0 0 3px rgba(37,99,235,.15);
}

.ffma-legal-currency-note{
  max-width:210px;

  margin-top:3px;

  color:#777;
  font-size:9px;
  line-height:1.5;
}


/* PAYMENT ROW */

.ffma-legal-payment-row{
  display:flex;
  align-items:center;
  gap:16px;

  padding:21px 0;

  border-top:1px solid rgba(255,255,255,.09);
  border-bottom:1px solid rgba(255,255,255,.09);
}

.ffma-legal-payment-methods{
  display:flex;
  align-items:center;
  gap:7px;
}

.ffma-legal-payment-brand{
  width:58px;
  height:35px;

  display:flex;
  align-items:center;
  justify-content:center;

  padding:7px 9px;

  border-radius:7px;
  background:#fff;
}

.ffma-legal-payment-brand img{
  display:block;

  width:100%;
  max-width:40px;
  max-height:18px;

  object-fit:contain;
}

.ffma-legal-payment-note{
  margin-left:auto;

  color:#666;
  font-size:9px;
}

.ffma-legal-stripe{
  color:#777;
  font-size:9px;
}

.ffma-legal-stripe strong{
  color:#635bff;
}


/* COPYRIGHT */

.ffma-legal-footer-bottom{
  display:flex;
  justify-content:space-between;
  gap:20px;

  padding-top:19px;

  color:#666;
  font-size:9px;
}


/* RESPONSIVE */

@media(max-width:800px){

  .ffma-legal-nav-links{
    display:none;
  }

  .ffma-legal-nav{
    gap:18px;
  }

  .ffma-legal-card{
    padding:46px 25px;
  }

  .ffma-legal-footer{
    padding:32px 24px 20px;
  }

  .ffma-legal-footer-top{
    grid-template-columns:1fr 1fr;
    gap:30px;
  }

  .ffma-legal-footer-brand{
    grid-column:1/-1;
  }

  .ffma-legal-payment-row{
    align-items:flex-start;
    flex-direction:column;
  }

  .ffma-legal-payment-note{
    margin-left:0;
  }

}


@media(max-width:520px){

  .ffma-legal-page{
    width:calc(100% - 18px);
  }

  .ffma-legal-footer-top{
    grid-template-columns:1fr;
  }

  .ffma-legal-footer-brand{
    grid-column:auto;
  }

  .ffma-legal-footer-bottom{
    flex-direction:column;
  }

}

/* ==========================================================
   END FFMA LEGAL PAGES V2
   ========================================================== */

