/* =====================================================
   ANELTA — GLOBAL STYLES
===================================================== */
:root {
   --red:       #890c25;
  --red-deep:  #5c0819;
  --red-light: #c01535;
  --gold:      #c8972a;
  --ivory:     #faf7f2;
  --ivory-2:   #f2ede5;
  --dark:      #1a1009;
  --dark-2:    #2c1e10;
  --mid:       #5a4a38;
  --muted:     #9a8472;
  --border:    #1b1a18;
  --white:     #ffffff;
  --navy:      #890c25;
  --navy-2:    #5c0819;
  --navy-3:    #c01535;
  --amber:     #c8972a;
  --amber-2:   #f5a030;
  --amber-bg:  #fff8ee;
  --amber-b:   #fde3b8;
  --white:     #ffffff;
  --ivory:     #f9f7f4;
  --ivory-2:   #f1ede6;
  --dark:      #0d1117;
  --mid:       #4a5568;
  --muted:     #8a94a6;
  --border:    #e2e8f0;
  --r:         6px;
  --rl:        14px;
  --sh:        0 2px 16px rgba(11,31,58,.08);
  --sh2:       0 8px 40px rgba(11,31,58,.14);
  --ease:      cubic-bezier(.25,.46,.45,.94);
  --spring:    cubic-bezier(.34,1.56,.64,1);
  --fd:        'Literata', Georgia, serif;
  --fb:        'Inter', system-ui, sans-serif;
}

*,*::before,*::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { font-family:var(--fb); background:var(--ivory); color:var(--dark); font-size:16px; line-height:1.6; overflow-x:hidden; }
a { text-decoration:none; color:inherit; }
img { display:block; max-width:100%; }
ul { list-style:none; }

/* ---- Container ---- */
.container { max-width:1160px; margin:0 auto; padding:0 32px; }

/* ---- Eyebrow ---- */
.eyebrow {
  display:inline-flex; align-items:center; gap:.55rem;
  font-size:.72rem; font-weight:600; letter-spacing:.2em; text-transform:uppercase;
  color:var(--amber); font-family:var(--fb);
}
.eyebrow::before { content:""; width:22px; height:2px; background:var(--amber); }

/* ---- Section title ---- */
.section-title {
  font-family:var(--fd); font-size:clamp(2rem,3.5vw,3rem);
  font-weight:700; line-height:1.12; color:var(--dark); margin-top:.6rem;
}
.section-title em { font-style:italic; color:var(--amber); }
.section-lead { font-size:1.05rem; color:var(--mid); line-height:1.85; max-width:620px; margin-top:1rem; }

/* ---- Buttons ---- */
.btn {
  display:inline-flex; align-items:center; gap:.5rem;
  font-family:var(--fb); font-size:.88rem; font-weight:600;
  padding:.75rem 1.6rem; border-radius:var(--r); cursor:pointer;
  transition:all .22s var(--ease); border:none;
}
.btn-primary  { background:var(--amber); color:var(--ivory); }
.btn-primary:hover { background:var(--amber-2); transform:translateY(-2px); box-shadow:0 8px 24px rgba(232,137,26,.35); }
.btn-navy     { background:var(--navy); color:#fff; }
.btn-navy:hover { background:var(--navy-2); transform:translateY(-2px); }
.btn-outline  { background:transparent; color:var(--navy); border:1.5px solid var(--navy); }
.btn-outline:hover { background:var(--navy); color:#fff; }
.btn-ghost    { background:rgba(255,255,255,.1); color:#fff; border:1.5px solid rgba(255,255,255,.3); }
.btn-ghost:hover { background:rgba(255,255,255,.18); }
.btn-sm { padding:.5rem 1.1rem; font-size:.82rem; }

/* ---- Badges ---- */
.badge { display:inline-block; font-size:.7rem; font-weight:600; padding:.22rem .7rem; border-radius:20px; }
.badge-green  { background:#f0fdf4; color:#15803d; }
.badge-amber  { background:var(--amber-bg); color:#b45309; }
.badge-navy   { background:var(--navy); color:#fff; }
.badge-red    { background:#fef2f2; color:#991b1b; }

/* ---- Cards ---- */
.card {
  background:var(--white); border:1px solid var(--border);
  border-radius:var(--rl); overflow:hidden;
  transition:transform .3s var(--spring), box-shadow .25s;
}
.card:hover { transform:translateY(-4px); box-shadow:var(--sh2); }

/* ---- Page hero ---- */
.page-hero {
  background:var(--navy); padding:130px 0 70px; position:relative; overflow:hidden;
}
.page-hero::before {
  content:'"'; position:absolute; right:-80px; top:-100px;
  font-family:var(--fd); font-size:50vw; line-height:1; font-weight:700;
  color:rgba(255,255,255,.02); pointer-events:none;
}
.page-hero-bar { position:absolute; left:0; bottom:0; width:100%; height:4px; background:linear-gradient(90deg,var(--amber),var(--amber-2),transparent); }
.ph-bread { display:flex; align-items:center; gap:.4rem; font-size:.78rem; color:rgba(255,255,255,.45); margin-bottom:1.2rem; }
.ph-bread a { color:rgba(255,255,255,.45); transition:color .15s; }
.ph-bread a:hover { color:var(--amber); }
.ph-bread i { font-size:.6rem; }
.ph-title { font-family:var(--fd); font-size:clamp(2.5rem,5vw,4rem); font-weight:700; color:#fff; line-height:1.1; margin-bottom:1rem; }
.ph-title em { font-style:italic; color:var(--amber); }
.ph-lead { font-size:1.05rem; color:rgba(255,255,255,.65); max-width:580px; line-height:1.85; }

/* ---- Subnav ---- */
.page-subnav { background:var(--white); border-bottom:1px solid var(--border); position:sticky; top:68px; z-index:200; }
.psn-inner { display:flex; align-items:center; gap:.1rem; overflow-x:auto; padding:.6rem 0; scrollbar-width:none; }
.psn-inner::-webkit-scrollbar { display:none; }
.psn-link { white-space:nowrap; font-size:.83rem; font-weight:500; color:var(--muted); padding:.5rem .95rem; border-radius:20px; transition:background .15s,color .15s; flex-shrink:0; }
.psn-link:hover { background:var(--ivory-2); color:var(--ivory); }
.psn-link.active { background:var(--amber-bg); color:var(--amber); font-weight:600; }

/* ---- Reveal animations ---- */
.reveal { opacity:0; transform:translateY(28px); transition:opacity .65s var(--ease),transform .65s var(--ease); }
.reveal.up { opacity:1; transform:none; }
.d1{transition-delay:.1s;} .d2{transition-delay:.18s;} .d3{transition-delay:.26s;} .d4{transition-delay:.34s;}

/* ---- Form elements ---- */
.fg { display:flex; flex-direction:column; gap:.3rem; margin-bottom:.9rem; }
.fg label { font-size:.78rem; font-weight:500; color:var(--mid); }
.fg input, .fg textarea, .fg select {
  font-family:var(--fb); font-size:.88rem; color:var(--dark);
  border:1.5px solid var(--border); border-radius:var(--r);
  padding:.65rem .9rem; background:var(--white);
  outline:none; transition:border-color .18s;
}
.fg input:focus,.fg textarea:focus,.fg select:focus { border-color:var(--amber); }
.fg textarea { resize:vertical; min-height:110px; }
.f-row { display:grid; grid-template-columns:1fr 1fr; gap:.85rem; margin-bottom:.9rem; }
.f-submit {
  width:100%; background:var(--navy); color:#fff; border:none;
  font-family:var(--fb); font-size:.93rem; font-weight:600;
  padding:.9rem; border-radius:var(--r); cursor:pointer;
  display:flex; align-items:center; justify-content:center; gap:.45rem;
  transition:background .18s,transform .2s var(--spring);
}
.f-submit:hover { background:var(--navy-2); transform:translateY(-2px); }

/* ---- Membership alert ---- */
.mem-alert { border-radius:var(--rl); padding:14px 18px; display:flex; align-items:center; gap:14px; border:1px solid; margin-bottom:1.5rem; }
.mem-alert.warning { background:#fffbeb; border-color:#fde68a; color:#92400e; }
.mem-alert.danger  { background:#fef2f2; border-color:#fecaca; color:#991b1b; }
.mem-alert.success { background:#f0fdf4; border-color:#bbf7d0; color:#166534; }
.mem-alert i { font-size:1.3rem; flex-shrink:0; }
.mem-alert .ma-text { flex:1; }
.mem-alert .ma-title { font-weight:600; font-size:.9rem; }
.mem-alert .ma-sub { font-size:.8rem; opacity:.85; }
.ma-btn { border:1.5px solid currentColor; background:none; padding:.4rem 1rem; border-radius:40px; font-size:.82rem; font-weight:600; cursor:pointer; color:inherit; font-family:var(--fb); }

/* ---- Empty state ---- */
.empty-state { text-align:center; padding:4rem 1rem; color:var(--muted); }
.empty-state i { font-size:3rem; margin-bottom:1rem; display:block; opacity:.4; }
.empty-state p { font-size:1rem; }

/* ---- Pagination ---- */
.pagination { display:flex; align-items:center; justify-content:center; gap:.4rem; margin-top:2.5rem; flex-wrap:wrap; }
.page-btn {
  width:38px; height:38px; border-radius:var(--r);
  display:flex; align-items:center; justify-content:center;
  font-size:.85rem; font-weight:500; border:1.5px solid var(--border);
  background:var(--white); color:var(--mid); cursor:pointer;
  transition:all .15s;
}
.page-btn:hover { border-color:var(--amber); color:var(--amber); }
.page-btn.active { background:var(--navy); border-color:var(--ivory); color:#fff; }
.page-btn.dots { border:none; background:none; cursor:default; }

/* ---- Alert flash ---- */
.alert-flash { border-radius:var(--r); padding:.9rem 1.2rem; font-size:.88rem; font-weight:500; margin-bottom:1.2rem; display:flex; align-items:center; gap:.6rem; }
.alert-flash.success { background:#f0fdf4; color:#166534; border:1px solid #bbf7d0; }
.alert-flash.error   { background:#fef2f2; color:#991b1b; border:1px solid #fecaca; }

/* ---- Social buttons ---- */
.soc-btn {
  width:38px; height:38px; border-radius:var(--r);
  background:var(--navy); color:#fff;
  display:flex; align-items:center; justify-content:center; font-size:.87rem;
  transition:background .2s,transform .2s var(--spring);
}
.soc-btn:hover { background:var(--amber); color:var(--ivory); transform:scale(1.1); }
.socials { display:flex; gap:.55rem; }

/* ---- Join band ---- */
.join-band { background:var(--amber); padding:4rem 0; }
.jb-inner { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:1.5rem; }
.jb-inner h2 { font-family:var(--fd); font-size:clamp(1.5rem,3vw,2.2rem); font-weight:700; color:var(--ivory); }
.jb-inner p { font-size:.95rem; color:rgba(11,31,58,.7); margin-top:.3rem; }

/* =====================================================
   ADESÃO CTA
===================================================== */
.adesao{
  padding:6rem 0;
  background:linear-gradient(135deg,var(--red-deep) 0%,var(--red) 60%,var(--red-light) 100%);
  position:relative;overflow:hidden;
}
.adesao::before{
  content:"";position:absolute;inset:0;
  background-image:repeating-linear-gradient(
    -45deg,rgba(255,255,255,.03) 0,rgba(255,255,255,.03) 1px,transparent 0,transparent 50%
  );background-size:20px 20px;
}
.adesao-inner{
  position:relative;z-index:2;
  display:grid;grid-template-columns:1fr 1fr;
  gap:4rem;align-items:center;
}
.adesao-left .section-eyebrow{color:var(--gold);}
.adesao-left .section-eyebrow::before{background:var(--gold);}
.adesao-left .section-title{color:#fff;}
.adesao-left .section-lead{color:rgba(255,255,255,.75);max-width:100%;}
.adesao-benefits{
  display:flex;flex-direction:column;gap:.8rem;margin-top:1.5rem;
}
.adesao-benefit{
  display:flex;align-items:flex-start;gap:.8rem;
  font-size:.9rem;color:rgba(255,255,255,.85);
}
.adesao-benefit i{color:var(--gold);margin-top:.2rem;flex-shrink:0;}
/* Tier cards */
.adesao-tiers{display:flex;flex-direction:column;gap:1rem;}
.tier-card{
  background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);
  border-radius:var(--rl);padding:1.4rem 1.6rem;
  display:flex;align-items:center;gap:1.2rem;
  transition:background .2s;
}
.tier-card:hover{background:rgba(255,255,255,.16);}
.tier-card.featured{
  background:rgba(255,255,255,.18);border-color:var(--gold);
}
.tier-ico{
  width:48px;height:48px;border-radius:var(--r);
  background:rgba(255,255,255,.15);flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  color:#fff;font-size:1.1rem;
}
.tier-card.featured .tier-ico{background:var(--gold);color:var(--dark);}
.tier-title{font-size:1rem;font-weight:600;color:#fff;margin-bottom:.15rem;}
.tier-price{font-size:.82rem;color:rgba(255,255,255,.7);}
.tier-tag{
  margin-left:auto;font-size:.68rem;font-weight:600;
  background:var(--gold);color:var(--dark);
  padding:.2rem .7rem;border-radius:20px;flex-shrink:0;
}
.tier-btn{
  display:block;text-align:center;
  background:#fff;color:var(--red);font-weight:700;
  font-size:.95rem;padding:1rem;border-radius:var(--r);
  margin-top:1.2rem;font-family:var(--ff-body);cursor:pointer;
  border:none;width:100%;
  transition:background .2s,transform .2s var(--spring);
}
.tier-btn:hover{background:var(--ivory);transform:scale(1.02);}

/* =====================================================
   GALERIA
===================================================== */
.galeria{padding:6rem 0;background:var(--dark);}
.galeria .section-eyebrow{color:var(--gold);}
.galeria .section-eyebrow::before{background:var(--gold);}
.galeria .section-title{color:#fff;}
.galeria .section-lead{color:rgba(255,255,255,.6);}
.galeria-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  grid-template-rows:repeat(2,160px);
  gap:8px;margin-top:2.5rem;border-radius:var(--rl);overflow:hidden;
}
.galeria-item{
  background:var(--dark-2);overflow:hidden;position:relative;cursor:pointer;
}
.galeria-item:first-child{grid-column:span 2;grid-row:span 2;}
.galeria-item img{
  width:100%;height:100%;object-fit:cover;
  transition:transform .5s var(--ease),filter .3s;
  filter:brightness(.85);
}
.galeria-item:hover img{transform:scale(1.07);filter:brightness(1);}
.galeria-item-overlay{
  position:absolute;inset:0;
  background:linear-gradient(to top,rgba(26,16,9,.7),transparent);
  opacity:0;transition:opacity .3s;
  display:flex;align-items:flex-end;padding:.8rem;
}
.galeria-item:hover .galeria-item-overlay{opacity:1;}
.galeria-item-label{font-size:.78rem;color:#fff;font-weight:500;}

/* ==========================
   NAV
========================== */
.nav{position:fixed;top:0;left:0;right:0;z-index:900;background:#5c0819;box-shadow:0 2px 24px rgba(0,0,0,.25);backdrop-filter:blur(10px);}
.nav-inner{display:flex;align-items:center;height:68px;gap:1.5rem;}
.nav-logo{display:flex;align-items:center;gap:.7rem;flex-shrink:0;font-family:var(--fd);font-size:1.25rem;font-weight:700;color:#fff;}
.nav-logo-mark{width:36px;height:36px;background:var(--amber);border-radius:var(--r);display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;color:var(--navy);font-family:var(--fd);}
.nav-menu{display:flex;align-items:center;gap:.1rem;margin:0 auto;}
.nav-item{position:relative;}
.nav-link{color:rgba(255,255,255,.75);font-size:.84rem;font-weight:500;padding:.5rem .85rem;border-radius:4px;display:flex;align-items:center;gap:.3rem;transition:color .15s;white-space:nowrap;}
.nav-link:hover,.nav-link.active{color:#fff;}
.nav-link.active{color:var(--amber);}
.nav-drop{position:absolute;top:calc(100%+8px);left:0;background:var(--navy-2);border:1px solid rgba(255,255,255,.08);border-radius:var(--r);min-width:200px;box-shadow:0 16px 48px rgba(0,0,0,.4);opacity:0;visibility:hidden;transform:translateY(6px);transition:all .18s var(--ease);pointer-events:none;z-index:999;}
.nav-item:hover .nav-drop{opacity:1;visibility:visible;transform:none;pointer-events:auto;}
.nav-drop a{display:block;padding:.65rem 1rem;color:rgba(255,255,255,.7);font-size:.83rem;border-bottom:1px solid rgba(255,255,255,.05);transition:color .12s,padding-left .12s;}
.nav-drop a:last-child{border:none;}
.nav-drop a:hover{color:#fff;padding-left:1.3rem;}
.btn-cta{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--fb);font-size:.82rem;font-weight:600;padding:.6rem 1.3rem;border-radius:var(--r);background:var(--amber);color:var(--navy);transition:background .2s;}
.btn-cta:hover{background:var(--amber-2);}
.nav-burger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;margin-left:auto;padding:6px;}
.nav-burger span{width:22px;height:2px;background:#fff;display:block;border-radius:1px;transition:.3s;}
.mob-nav{display:none;position:fixed;inset:0;z-index:850;background:var(--navy);padding:88px 28px 32px;flex-direction:column;overflow-y:auto;}
.mob-nav.open{display:flex;}
.mob-nav a{color:#fff;font-size:1.05rem;padding:.85rem 0;border-bottom:1px solid rgba(255,255,255,.1);font-weight:500;}

/* ==========================
   FOOTER
========================== */
.footer { background:var(--dark); padding:4rem 0 0; border-top:3px solid var(--amber); }
.footer-grid { display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:3rem; padding-bottom:3rem; border-bottom:1px solid rgba(255,255,255,.07); }
.f-brand { display:flex; align-items:center; gap:.7rem; margin-bottom:1rem; }
.f-brand-mark { width:40px; height:40px; background:var(--amber); border-radius:var(--r); display:flex; align-items:center; justify-content:center; font-family:var(--fd); font-size:.95rem; font-weight:700; color:var(--ivory); }
.f-brand-name { font-family:var(--fd); font-size:1.15rem; font-weight:700; color:#fff; }
.f-tagline { font-size:.84rem; color:rgba(255,255,255,.45); line-height:1.7; max-width:260px; margin-bottom:1.3rem; }
.f-col-title { font-size:.7rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; color:var(--amber); margin-bottom:1rem; }
.f-links { display:flex; flex-direction:column; gap:.45rem; }
.f-links a { font-size:.83rem; color:rgba(255,255,255,.5); transition:color .13s,padding-left .13s; }
.f-links a:hover { color:#fff; padding-left:4px; }
.f-bottom { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:.8rem; padding:1.3rem 0; font-size:.76rem; color:rgba(255,255,255,.3); }

/* ==========================
   RESPONSIVE
========================== */
@media(max-width:1024px){
  .footer-grid { grid-template-columns:1fr 1fr; }
}
@media(max-width:768px){
  .nav-menu,.nav-user-area { display:none; }
  .nav-burger { display:flex; }
  .f-row { grid-template-columns:1fr; }
  .jb-inner { flex-direction:column; }
  .footer-grid { grid-template-columns:1fr 1fr; }
}
@media(max-width:480px){
  .container { padding:0 18px; }
  .footer-grid { grid-template-columns:1fr; }
}
