/* =========================
   LINEA DIVISORIA
========================= */

.rule{
  width: 100%;
  height: 2px;
  margin: 20px auto;

  background: linear-gradient(
    90deg,
    transparent,
    rgba(212,175,55,.4),
    rgba(212,175,55,.8),
    rgba(212,175,55,.4),
    transparent
  );
}

/* =========================
   FRASE ANCLA
========================= */

.anchor{
  text-align: center;
  padding: 30px 20px;
  position: relative;
}

.anchor-line{
  max-width: 800px;
  margin: 0 auto;
  position: relative;
}

/* líneas laterales */
.anchor-line::before,
.anchor-line::after{
  content: "";
  position: absolute;
  top: 50%;
  width: 50px;
  height: 1px;

  background: linear-gradient(
    90deg,
    transparent,
    rgba(212,175,55,.5)
  );
}

.anchor-line::before{
  left: -60px;
}

.anchor-line::after{
  right: -60px;
  transform: rotate(180deg);
}

/* TEXTO */
.anchor-text{
  font-size: 24px;
  line-height: 1.6;
  color: var(--text-gold);

  font-weight: 500;
  letter-spacing: 0.5px;

  max-width: 700px;
  margin: 0 auto;

  text-shadow: 0 2px 10px rgba(0,0,0,.4);
}

.anchor-text::before,
.anchor-text::after{
  font-size: 36px;
  color: rgba(212,175,55,.5);
}

.anchor-text::before{
  content: "“";
  margin-right: 6px;
}

.anchor-text::after{
  content: "”";
  margin-left: 6px;
}

/* =========================
   SECCIÓN SERVICIOS
========================= */

#servicios{
  padding: 30px 20px 40px;
  max-width: 1200px; /* 🔥 CLAVE */
  margin: 0 auto;     /* 🔥 centra */
}
.section-head{
  text-align: center;
  margin-bottom: 15px;
}

.h2{
  font-size: 30px;
  font-weight: 700;
  color: var(--text-gold);
}

/* intro */
.section-intro{
  max-width: 700px;
  margin: 5px auto 20px;

  font-size: 17px;
  line-height: 1.6;

  color: var(--text-muted);
  text-align: center;
}

/* =========================
   GRID
========================= */

.grid-3{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 15px;
}
/* TABLET */
@media (max-width: 1024px){
  .grid-3{
    grid-template-columns: repeat(2, 1fr);
  }
}

/* MOBILE */
@media (max-width: 600px){
  .grid-3{
    grid-template-columns: 1fr;
  }
}
/* =========================
   CARD
========================= */

.service-card{
  position: relative;

  background: linear-gradient(
    180deg,
    rgba(10,15,28,.6),
    rgba(5,7,13,.95)
  );

  border-radius: 16px;

  overflow: hidden; /* 🔥 CAMBIA ESTO */

  box-shadow: 0 20px 50px rgba(0,0,0,.6);

  transition: all .35s ease;
}

.service-card:hover{
  transform: translateY(-6px);

  box-shadow:
    0 30px 70px rgba(0,0,0,.8),
    0 0 20px rgba(212,175,55,.12);
}

/* =========================
   IMAGEN
========================= */

.service-img-wrap{
  width: 100%;
  aspect-ratio: 12 / 17;
  overflow: hidden;
}

.service-img-wrap img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .4s ease;
}

.service-card:hover img{
  transform: scale(1.05);
}

/* =========================
   CONTENIDO
========================= */

.service-body{
  padding: 18px;
  text-align: center;
}

.service-title{
  font-size: 17px;
  font-weight: 600;
  color: var(--text);

  letter-spacing: .5px;
  margin-bottom: 6px;

  text-shadow: 0 2px 10px rgba(0,0,0,.4);
}

.service-desc{
  font-size: 14px;
  color: var(--text-muted);

  line-height: 1.5;
  margin-bottom: 12px;

  max-width: 90%;
  margin-left: auto;
  margin-right: auto;
}

/* botón */
.service-btn{
  font-size: 13px;
  font-weight: 500;

  color: var(--gold-soft);

  display: inline-block;
  margin-top: 6px;

  transition: all .3s ease;
}

.service-card:hover .service-btn{
  transform: translateX(5px);
}

/* link wrapper */
.ser-link{
  text-decoration: none;
  display: block;
}

/* línea inferior */
.service-card::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:100%;
  height:2px;

  background: linear-gradient(
    90deg,
    transparent,
    var(--gold-main),
    transparent
  );

  opacity:.3;
}

/* =========================
   REVEAL BASE (Apple Style)
========================= */

.reveal{
  opacity: 0;
  transform: translateY(40px);
  filter: blur(6px);

  transition:
    opacity 0.8s ease,
    transform 0.8s ease,
    filter 0.8s ease;
}

.reveal.show{
  opacity: 1;
  transform: translateY(0);
  filter: blur(0);
}

.service-card{
  transition-delay: calc(var(--i) * 0.08s);
}


/* =========================
   QUIÉNES SOMOS
========================= */

#quienes-somos{
  padding: 40px 20px 50px;
}

/* CONTENEDOR */
.about-section{
  max-width: 1100px;
  margin: 0 auto;
}

/* GRID */
.about-wrap{
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: 40px;
  align-items: center;
}

/* TEXTO MÁS IMPORTANTE */
.about-copy{
  max-width: 600px;
}

/* NOMBRE ABAJO DEL TEXTO */
.about-info{
  margin-top: 20px;
}

/* JERARQUÍA */
.about-name{
  font-size: 20px;
  font-weight: 700;
  color: var(--text);
}

.about-role{
  font-size: 14px;
  color: var(--gold-soft);
  margin-top: 4px;
}

/* TEXTO MÁS LEGIBLE */
.about-text{
  font-size: 16px;
  line-height: 1.8;
  color: var(--text-muted);
}
/* =========================
   FOTO PERFECTA (LIMPIO)
========================= */

.about-photo{
  width: 260px;
  height: 260px;
  border-radius: 50%;
  overflow: hidden;
  position: relative;
  margin: 0 auto;

  border: 3px solid rgba(255,255,255,.08);

  box-shadow:
    0 25px 60px rgba(0,0,0,.7),
    0 0 25px rgba(212,175,55,.15);
}

/* GLOW */
.about-photo::after{
  content:"";
  position:absolute;
  width: 320px;
  height: 320px;
  border-radius: 50%;

  background: radial-gradient(
    circle,
    rgba(212,175,55,.18),
    rgba(212,175,55,.08),
    transparent 70%
  );

  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}

/* IMAGEN PERFECTA */
.about-photo img{
  width: 100%;
  height: 100%;
  object-fit: cover;

  /* 🔥 AJUSTE FINAL */
  object-position: 50% 5%;

  display: block;

  transition: transform .6s cubic-bezier(.22,1,.36,1);
}

/* HOVER */
.about-photo:hover img{
  transform: scale(1.05);
}

/* =========================
   INFO (NOMBRE / ROL)
========================= */

.about-info{
  text-align: center;
  margin-top: 10px;
}

.about-name{
  font-size: 18px;
  font-weight: 600;
  color: var(--text);
}

.about-role{
  font-size: 13px;
  color: var(--text-muted);
  margin-top: 4px;
}

/* =========================
   TEXTO
========================= */

.about-copy{
  max-width: 650px;
}

.about-text{
  font-size: 15px;
  line-height: 1.7;
  color: var(--text-muted);

  margin-bottom: 14px;

  text-align: left;
}

/* =========================
   EFECTO HOVER SUTIL
========================= */

.about-photo:hover{
  transform: scale(1.03);
  transition: transform .4s ease;
}

/* =========================
   RESPONSIVE
========================= */

/* TABLET */
@media (max-width: 900px){

  .about-wrap{
    grid-template-columns: 1fr;
    text-align: center;
  }

  .about-copy{
    max-width: 100%;
  }

  .about-text{
    text-align: center;
  }
}

/* MOBILE */
@media (max-width: 600px){

  .about-photo{
    width: 200px;
    height: 200px;
  }

  .about-name{
    font-size: 16px;
  }

  .about-text{
    font-size: 14px;
  }
}


/* =========================
   AGENDA PRO (FINAL LIMPIO)
========================= */

.agenda{
  padding: 60px 20px;

  opacity: 0;
  transform: translateY(60px);
  transition: all .9s cubic-bezier(.22,1,.36,1);
}

.agenda.show{
  opacity: 1;
  transform: translateY(0);
}

/* =========================
   PANEL
========================= */

.agenda-panel{
  position: relative;
  overflow: hidden;

  max-width: 1100px;
  margin: 0 auto;

  display: grid;
  grid-template-columns: 1fr 1px 1fr;
  gap: 40px;
  align-items: center;

  background: linear-gradient(
    180deg,
    rgba(10,15,28,.6),
    rgba(5,7,13,.95)
  );

  backdrop-filter: blur(10px);

  border: 1px solid rgba(255,255,255,.05);
  border-radius: 18px;
  padding: 40px;

  box-shadow:
    0 25px 80px rgba(0,0,0,.7),
    inset 0 0 40px rgba(255,255,255,.02);
}

/* glow */
.agenda-panel::before{
  content:"";
  position:absolute;
  inset: 0;

  background: radial-gradient(
    circle at 20% 30%,
    rgba(212,175,55,.08),
    transparent 60%
  );

  pointer-events: none;
}

/* =========================
   IZQUIERDA
========================= */

.agenda-left{
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.a-row{
  display: flex;
  align-items: center;
  gap: 14px;

  padding: 14px 0;

  border-bottom: 1px solid rgba(255,255,255,.05);

  transition: all .3s ease;
}

.a-row:last-child{
  border-bottom: none;
}

.a-row:hover{
  transform: translateX(6px);
}

.a-row:hover .a-main{
  color: #fff;
}

/* ICONOS */
.a-ico{
  width: 42px;
  height: 42px;

  border-radius: 12px;

  background: rgba(212,175,55,.08);

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

  color: var(--gold-main);

  box-shadow:
    inset 0 0 10px rgba(212,175,55,.1),
    0 0 15px rgba(212,175,55,.1);

  transition: all .4s ease;
}

.a-row:hover .a-ico{
  transform: scale(1.15) rotate(5deg);
  box-shadow: 0 0 20px rgba(212,175,55,.3);
}

.a-ico svg{
  width: 20px;
  height: 20px;
}

/* TEXTO */
.a-main{
  font-size: 16px;
  font-weight: 500;
  color: var(--text);
  line-height: 1.4;
  transition: .3s;
}

.a-row-link{
  text-decoration: none;
}

/* =========================
   PAGOS
========================= */

.pay-icons{
  display: flex;
  gap: 12px;
  margin-top: 5px;
}

.pay-ico{
  width: 38px;
  height: 38px;

  border-radius: 10px;
  background: rgba(255,255,255,.05);

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

  transition: .3s;
}

.pay-ico:hover{
  transform: translateY(-3px);
  background: rgba(212,175,55,.1);
}

/* =========================
   DIVISOR
========================= */

.agenda-divider{
  width: 1px;
  height: 100%;

  background: linear-gradient(
    180deg,
    transparent,
    rgba(212,175,55,.5),
    transparent
  );
}

/* =========================
   DERECHA
========================= */

.agenda-right{
  text-align: center;
}





/* =========================
   BOTÓN
========================= */

.btn-agenda{
  position: relative;
  overflow: hidden;

  margin-top: 15px;

  padding: 18px 42px;
  border-radius: 50px;

  font-size: 16px;
  font-weight: 600;

  background: linear-gradient(135deg, #ff4c29, #ff7a18);
  color: white;

  box-shadow:
    0 10px 30px rgba(255,76,41,.4),
    0 0 25px rgba(255,76,41,.2);

  transition: all .35s ease;
}

.btn-agenda:hover{
  transform: translateY(-4px) scale(1.05);

  box-shadow:
    0 20px 50px rgba(255,76,41,.6),
    0 0 40px rgba(255,76,41,.4);
}

.btn-agenda::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:50px;

  box-shadow: 0 0 0 0 rgba(255,76,41,.5);
  animation: pulseBtn 2.5s infinite;
}

@keyframes pulseBtn{
  0%{ box-shadow: 0 0 0 0 rgba(255,76,41,.5); }
  70%{ box-shadow: 0 0 0 18px rgba(255,76,41,0); }
  100%{ box-shadow: 0 0 0 0 rgba(255,76,41,0); }
}

/* =========================
   MOBILE
========================= */

@media (max-width: 768px){

  .agenda-panel{
    grid-template-columns: 1fr;
    gap: 25px;
    text-align: center;
  }

  .agenda-divider{
    display: none;
  }

  .agenda-left{
    align-items: center;
  }

  .a-row{
    justify-content: center;
  }
}

.custom-modal{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;

  background: rgba(0,0,0,.75);

  display: none; /* 🔥 CLAVE */
  align-items: center;
  justify-content: center;

  z-index: 9999;
}

.custom-modal.show{
  display: flex; /* 🔥 SOLO cuando abre */
}


/* =========================
   FAQ HOME PRO
========================= */

.faq-home{
  padding: 90px 20px;
  position: relative;
}

.faq-home .section-head{
  text-align:center;
  margin-bottom:50px;
}

.faq-home .h2{
  font-size: clamp(34px, 5vw, 52px);
  font-weight: 800;
  color: var(--gold-main);
  margin-bottom: 18px;
  letter-spacing: -.02em;
}

.faq-home .section-intro{
  max-width: 760px;
  margin: auto;
  color: var(--text-muted);
  font-size: 18px;
  line-height: 1.8;
}

/* LISTA */

.faq-list{
  max-width: 1100px;
  margin: 0 auto;
  display:flex;
  flex-direction:column;
  gap:18px;
}

/* ITEM */

.faq-item{
  position:relative;
  border-radius:22px;
  overflow:hidden;

  background:
    linear-gradient(
      180deg,
      rgba(18,24,38,.96),
      rgba(8,12,20,.98)
    );

  border:1px solid rgba(212,175,55,.14);

  box-shadow:
    0 10px 35px rgba(0,0,0,.35),
    inset 0 1px 0 rgba(255,255,255,.03);

  transition:
    transform .25s ease,
    border-color .25s ease,
    box-shadow .25s ease;
}

/* HOVER */

.faq-item:hover{
  transform: translateY(-3px);

  border-color:
    rgba(212,175,55,.35);

  box-shadow:
    0 18px 55px rgba(0,0,0,.45),
    0 0 25px rgba(212,175,55,.08);
}

/* OPEN */

.faq-item[open]{
  border-color:
    rgba(212,175,55,.45);
}

/* QUESTION */

.faq-q{
  position:relative;

  cursor:pointer;

  list-style:none;

  padding:
    28px
    85px
    28px
    30px;

  font-size:20px;
  font-weight:700;
  line-height:1.5;

  color:#fff;

  transition:
    color .25s ease;
}

/* remove marker */

.faq-q::-webkit-details-marker{
  display:none;
}

/* plus */

.faq-q::after{

  content:"+";

  position:absolute;

  right:28px;
  top:50%;

  transform:
    translateY(-50%);

  width:42px;
  height:42px;

  border-radius:50%;

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

  font-size:28px;
  font-weight:300;

  color: var(--gold-main);

  border:
    1px solid rgba(212,175,55,.28);

  background:
    rgba(212,175,55,.05);

  transition:
    all .25s ease;
}

/* open state */

.faq-item[open] .faq-q{
  color: var(--gold-main);
}

.faq-item[open] .faq-q::after{

  content:"−";

  background:
    rgba(212,175,55,.14);

  border-color:
    rgba(212,175,55,.45);

  transform:
    translateY(-50%)
    rotate(180deg);
}

/* =========================
   CONTACTO PREMIUM
========================= */

.contacto{

  position:relative;

  padding:110px 20px;

  overflow:hidden;
}

.contacto-wrap{

  max-width:1200px;

  margin:auto;

  padding:70px 50px;

  border-radius:34px;

  background:
  linear-gradient(
    145deg,
    rgba(14,14,14,.96),
    rgba(5,5,5,.98)
  );

  border:1px solid rgba(212,175,55,.16);

  box-shadow:
  0 20px 80px rgba(0,0,0,.45),
  inset 0 1px 0 rgba(255,255,255,.03);

  position:relative;
}

.contacto-wrap::before{

  content:'';

  position:absolute;

  inset:0;

  background:
  radial-gradient(
    circle at top right,
    rgba(212,175,55,.10),
    transparent 35%
  );

  pointer-events:none;
}

/* HEADER */

.contacto-header{

  text-align:center;

  margin-bottom:70px;
}

.contacto-badge{

  display:inline-flex;

  align-items:center;

  justify-content:center;

  padding:10px 18px;

  border-radius:999px;

  background:rgba(212,175,55,.08);

  border:1px solid rgba(212,175,55,.18);

  color:var(--gold-main);

  font-size:.82rem;

  font-weight:700;

  letter-spacing:.08em;

  text-transform:uppercase;

  margin-bottom:24px;
}

.contacto-title{

  font-size:clamp(2.2rem,5vw,4rem);

  line-height:1.08;

  margin:0 0 22px;

  color:#fff;

  font-weight:800;
}

.contacto-subtitle{

  max-width:760px;

  margin:auto;

  color:var(--text-muted);

  font-size:1.08rem;

  line-height:1.9;
}

/* GRID */

.contacto-grid{

  display:grid;

  grid-template-columns:repeat(3,1fr);

  gap:28px;

  margin-bottom:65px;
}

/* CARD */

.contacto-card{

  position:relative;

  padding:34px 28px;

  border-radius:28px;

  background:
  linear-gradient(
    180deg,
    rgba(255,255,255,.02),
    rgba(255,255,255,.01)
  );

  border:1px solid rgba(255,255,255,.05);

  transition:.35s ease;
}

.contacto-card:hover{

  transform:translateY(-6px);

  border-color:rgba(212,175,55,.24);

  box-shadow:
  0 18px 50px rgba(0,0,0,.35);
}

.contacto-icon{

  width:70px;

  height:70px;

  border-radius:22px;

  display:flex;

  align-items:center;

  justify-content:center;

  margin-bottom:26px;

  background:
  linear-gradient(
    145deg,
    rgba(212,175,55,.18),
    rgba(212,175,55,.05)
  );

  color:var(--gold-main);

  font-size:1.5rem;
}

.contacto-content h3{

  color:#fff;

  font-size:1.15rem;

  margin:0 0 14px;

  font-weight:700;
}

.contacto-content p{

  color:var(--text-muted);

  line-height:1.85;

  font-size:.97rem;

  margin:0;
}

/* BUTTONS */

.contacto-actions{

  display:flex;

  justify-content:center;

  align-items:center;

  gap:18px;

  flex-wrap:wrap;
}

.contacto-btn{

  min-width:190px;

  height:60px;

  border:none;

  border-radius:18px;

  display:inline-flex;

  align-items:center;

  justify-content:center;

  gap:12px;

  text-decoration:none;

  font-weight:700;

  font-size:1rem;

  transition:.30s ease;

  cursor:pointer;
}

.contacto-btn i{

  font-size:1.1rem;
}

/* WA */

.contacto-btn.wa{

  background:#25D366;

  color:#fff;

  box-shadow:
  0 12px 35px rgba(37,211,102,.25);
}

.contacto-btn.wa:hover{

  transform:translateY(-4px);

  box-shadow:
  0 18px 45px rgba(37,211,102,.35);
}

/* EMAIL */

.contacto-btn.email{

  background:#111;

  color:#fff;

  border:1px solid rgba(255,255,255,.08);
}

.contacto-btn.email:hover{

  transform:translateY(-4px);

  border-color:rgba(212,175,55,.28);
}

/* AGENDA */

.contacto-btn.agenda{

  background:var(--gold-main);

  color:#111;

  box-shadow:
  0 14px 40px rgba(212,175,55,.24);
}

.contacto-btn.agenda:hover{

  transform:translateY(-4px);

  box-shadow:
  0 18px 50px rgba(212,175,55,.34);
}

/* RESPONSIVE */

@media(max-width:980px){

  .contacto-grid{

    grid-template-columns:1fr;
  }

  .contacto-wrap{

    padding:60px 28px;
  }
}

@media(max-width:640px){

  .contacto{

    padding:90px 16px;
  }

  .contacto-title{

    font-size:2rem;
  }

  .contacto-btn{

    width:100%;
  }
}


/* ANSWER */

.faq-a{

  padding:
    0
    32px
    32px
    32px;

  color:
    rgba(255,255,255,.82);

  font-size:17px;

  line-height:1.9;

  animation:
    faqFade .28s ease;
}

/* animation */

@keyframes faqFade{

  from{
    opacity:0;
    transform:translateY(-6px);
  }

  to{
    opacity:1;
    transform:translateY(0);
  }
}

/* mobile */

@media (max-width:768px){

  .faq-home{
    padding:70px 16px;
  }

  .faq-q{
    font-size:17px;

    padding:
      22px
      72px
      22px
      22px;
  }

  .faq-a{
    font-size:15px;
    padding:
      0
      22px
      24px
      22px;
  }

  .faq-q::after{
    width:36px;
    height:36px;
    right:18px;
    font-size:24px;
  }
}

/* =========================
   FOOTER PREMIUM
========================= */

.footer{

  position:relative;

  padding-top:90px;

  background:
  linear-gradient(
    180deg,
    #050505,
    #020202
  );

  overflow:hidden;
}

.footer::before{

  content:'';

  position:absolute;

  inset:0;

  background:
  radial-gradient(
    circle at top right,
    rgba(212,175,55,.06),
    transparent 30%
  );

  pointer-events:none;
}

/* WRAP */

.footer-wrap{

  max-width:1280px;

  margin:auto;

  padding:0 24px 70px;

  display:grid;

  grid-template-columns:
  1.5fr
  1fr
  1fr
  1fr;

  gap:60px;
}

/* BRAND */

.footer-brand{

  max-width:430px;
}

.footer-badge{

  display:inline-flex;

  padding:9px 16px;

  border-radius:999px;

  margin-bottom:24px;

  background:rgba(212,175,55,.08);

  border:1px solid rgba(212,175,55,.14);

  color:var(--gold-main);

  font-size:.78rem;

  font-weight:700;

  letter-spacing:.08em;

  text-transform:uppercase;
}

.footer-logo{

  color:#fff;

  font-size:2rem;

  line-height:1.2;

  margin:0 0 22px;

  font-weight:800;
}

.footer-desc{

  color:var(--text-muted);

  line-height:1.9;

  font-size:1rem;

  margin-bottom:30px;
}

/* SOCIAL */

.footer-social{

  display:flex;

  gap:14px;
}

.footer-social a{

  width:48px;

  height:48px;

  border-radius:16px;

  display:flex;

  align-items:center;

  justify-content:center;

  background:rgba(255,255,255,.03);

  border:1px solid rgba(255,255,255,.06);

  color:#fff;

  text-decoration:none;

  transition:.30s ease;
}

.footer-social a:hover{

  transform:translateY(-4px);

  border-color:rgba(212,175,55,.28);

  color:var(--gold-main);

  background:rgba(212,175,55,.08);
}

/* COLS */

.footer-col h4{

  color:#fff;

  margin:0 0 26px;

  font-size:1rem;

  font-weight:700;
}

.footer-col ul{

  list-style:none;

  padding:0;

  margin:0;

  display:flex;

  flex-direction:column;

  gap:16px;
}

.footer-col ul li{

  color:var(--text-muted);

  font-size:.96rem;
}

.footer-col ul li a{

  color:var(--text-muted);

  text-decoration:none;

  transition:.25s ease;
}

.footer-col ul li a:hover{

  color:var(--gold-main);

  padding-left:6px;
}

/* CONTACT */

.footer-contact li{

  display:flex;

  align-items:flex-start;

  gap:12px;

  line-height:1.7;
}

.footer-contact i{

  color:var(--gold-main);

  margin-top:3px;
}

/* BUTTON */

.footer-btn{

  display:inline-flex;

  align-items:center;

  justify-content:center;

  margin-top:30px;

  min-width:220px;

  height:56px;

  border-radius:18px;

  background:var(--gold-main);

  color:#111;

  text-decoration:none;

  font-weight:700;

  transition:.30s ease;

  box-shadow:
  0 14px 40px rgba(212,175,55,.22);
}

.footer-btn:hover{

  transform:translateY(-4px);

  box-shadow:
  0 20px 50px rgba(212,175,55,.30);
}

/* BOTTOM */

.footer-bottom{

  border-top:1px solid rgba(255,255,255,.05);

  padding:24px 0;
}

.footer-bottom-wrap{

  max-width:1280px;

  margin:auto;

  padding:0 24px;

  display:flex;

  align-items:center;

  justify-content:space-between;

  gap:20px;

  flex-wrap:wrap;
}

.footer-bottom p{

  color:rgba(255,255,255,.45);

  font-size:.9rem;

  margin:0;
}

.footer-legal{

  display:flex;

  align-items:center;

  gap:20px;
}

.footer-legal a{

  color:rgba(255,255,255,.45);

  text-decoration:none;

  font-size:.9rem;

  transition:.25s ease;
}

.footer-legal a:hover{

  color:var(--gold-main);
}

/* RESPONSIVE */

@media(max-width:1100px){

  .footer-wrap{

    grid-template-columns:
    1fr
    1fr;

    gap:50px;
  }
}

@media(max-width:700px){

  .footer{

    padding-top:70px;
  }

  .footer-wrap{

    grid-template-columns:1fr;

    gap:50px;
  }

  .footer-logo{

    font-size:1.7rem;
  }

  .footer-bottom-wrap{

    flex-direction:column;

    text-align:center;
  }

  .footer-legal{

    justify-content:center;
  }
}