/* =========================================================
   PAGODA — modern fresh website
   Palette: cream bg + ink black + Pagoda red accent
   Type: Inter (UI) + Instrument Serif (display accents)
   ========================================================= */

:root{
  --bg:        #F6F4EE;
  --bg-2:      #EFEBE0;
  --ink:       #0E1014;
  --ink-soft:  #2A2D33;
  --muted:     #6B6D74;
  --line:      #1f1f25;
  --red:       #C41E3A;
  --red-deep:  #9B1530;
  --cream:     #FFFBF2;
  --white:     #FFFFFF;
  --green:     #C9E36A;
  --lilac:     #D8C7FF;
  --peach:     #FFD9C2;
  --sky:       #C7E6FF;
  --shadow:    0 30px 60px -20px rgba(14,16,20,.18);
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;
  background:var(--bg);
  color:var(--ink);
  font-size:16px;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none}

.container{
  width:100%;
  max-width:1240px;
  margin:0 auto;
  padding:0 32px;
}

/* ================== TYPOGRAPHY ================== */
h1,h2,h3,h4,h5{font-weight:800;letter-spacing:-.02em;line-height:1.05;color:var(--ink)}
h1{font-size:clamp(2.4rem,6vw,5.2rem);line-height:1}
h2{font-size:clamp(2rem,4.4vw,3.6rem)}
h3{font-size:1.5rem}
h4{font-size:1.1rem}
h5{font-size:.85rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft)}

.eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  font-size:.78rem;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--red);
  padding:6px 12px;border-radius:999px;
  background:rgba(196,30,58,.08);
  margin-bottom:18px;
}
.eyebrow.light{background:rgba(255,255,255,.12);color:#fff}
.accent{color:var(--red);font-family:'Instrument Serif',serif;font-style:italic;font-weight:400;letter-spacing:-.01em}

.lead{font-size:1.15rem;color:var(--ink-soft);max-width:540px;margin:18px 0 28px}

/* ================== BUTTONS ================== */
.btn{
  display:inline-flex;align-items:center;gap:8px;
  font-weight:600;font-size:.95rem;
  padding:14px 22px;border-radius:999px;
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease;
  border:1.5px solid transparent;cursor:pointer;
}
.btn-primary{background:var(--ink);color:#fff}
.btn-primary:hover{background:var(--red);transform:translateY(-2px);box-shadow:0 12px 24px -8px rgba(196,30,58,.45)}
.btn-dark{background:var(--ink);color:#fff;padding:10px 18px;font-size:.88rem}
.btn-dark:hover{background:var(--red)}

.btn-soy-distribuidor{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--ink);color:#fff !important;
  padding:12px 22px;font-size:.92rem;font-weight:600;
  border-radius:999px;
  border:1.5px solid var(--ink);
  box-shadow:0 8px 20px -4px rgba(14,16,20,.18), 0 4px 8px rgba(14,16,20,.1);
  text-decoration:none;
  transition:transform .25s ease, box-shadow .25s ease, background .25s ease, border-color .25s ease;
  white-space:nowrap;
}
.btn-soy-distribuidor .arrow{
  display:inline-block;
  transition:transform .25s ease;
  font-size:1.05rem;line-height:1;
}
.btn-soy-distribuidor:hover{
  background:var(--red);
  border-color:var(--red);
  transform:translateY(-3px);
  box-shadow:0 14px 28px -6px rgba(196,30,58,.35), 0 6px 12px rgba(196,30,58,.18);
}
.btn-soy-distribuidor:hover .arrow{transform:translateX(4px)}
.btn-ghost{background:transparent;border-color:var(--ink);color:var(--ink)}
.btn-ghost:hover{background:var(--ink);color:#fff}
.btn-block{width:100%;justify-content:center}

/* ================== NAVBAR ================== */
.nav{
  position:sticky;top:0;z-index:50;
  background:rgba(246,244,238,.85);
  backdrop-filter:saturate(160%) blur(14px);
  -webkit-backdrop-filter:saturate(160%) blur(14px);
  border-bottom:1px solid transparent;
  transition:border-color .3s ease, background .3s ease;
}
.nav.scrolled{border-color:rgba(14,16,20,.08);background:rgba(246,244,238,.95)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;padding:16px 32px}
.logo-wrap{display:flex;align-items:center}
.logo{height:54px;width:auto;max-width:none;object-fit:contain;flex-shrink:0}
.nav-links{display:flex;gap:32px}
.nav-links a{font-size:.95rem;font-weight:500;color:var(--ink-soft);transition:color .2s}
.nav-links a:hover{color:var(--red)}

.nav-cta{display:flex;align-items:center;gap:18px}
.nav .nav-cta .poli-nav-brand{
  position:relative !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:12px 26px !important;
  border-radius:999px !important;
  transition:background .2s ease, transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  text-decoration:none !important;
  height:auto !important;
  width:auto !important;
  max-width:180px !important;
  overflow:hidden !important;
  flex-shrink:0 !important;
  background:
    repeating-linear-gradient(0deg, rgba(60,140,90,.22) 0 1px, transparent 1px 12px),
    repeating-linear-gradient(90deg, rgba(60,140,90,.22) 0 1px, transparent 1px 12px),
    linear-gradient(135deg, #e6f4ea, #d4ecda) !important;
  border:1.5px solid rgba(80,160,110,.4) !important;
  box-shadow:0 8px 20px -4px rgba(14,16,20,.14), 0 4px 8px rgba(14,16,20,.08) !important;
}
.nav .nav-cta .poli-nav-brand:hover{
  border-color:var(--red) !important;
  transform:translateY(-3px) rotate(-1deg) !important;
  box-shadow:0 14px 28px -6px rgba(14,16,20,.18), 0 6px 12px rgba(14,16,20,.1) !important;
}
.poli-deco{
  font-size:1rem;
  line-height:1;
  pointer-events:none;
  flex-shrink:0;
  filter:drop-shadow(0 1px 1px rgba(0,0,0,.15));
  transition:transform .3s ease;
}
.poli-deco-left{margin-right:8px}
.poli-deco-right{margin-left:8px}
.nav .nav-cta .poli-nav-brand:hover .poli-deco-left{transform:rotate(-15deg) scale(1.15)}
.nav .nav-cta .poli-nav-brand:hover .poli-deco-right{transform:rotate(15deg) scale(1.15)}
.nav .nav-cta .poli-nav-brand img.poli-nav-logo{
  height:28px !important;
  width:auto !important;
  max-width:120px !important;
  max-height:28px !important;
  display:block !important;
  object-fit:contain !important;
  margin:0 !important;
}

@media (max-width:840px){
  .nav-links{display:none}
  .poli-nav-brand{display:none}
}

/* ================== HERO ================== */
.hero{
  position:relative;
  padding:80px 0 100px;
  overflow:hidden;
}
.hero::before{
  content:"";position:absolute;
  top:-120px;right:-100px;
  width:520px;height:520px;border-radius:50%;
  background:radial-gradient(circle at 30% 30%, var(--peach), transparent 70%);
  filter:blur(20px);opacity:.7;z-index:0;
}
.hero-grid{
  display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:center;
  position:relative;z-index:1;
}
.hero h1 .accent{display:inline-block}
.cta-row{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:48px}
.hero-stats{
  display:grid;grid-template-columns:repeat(3,1fr);gap:32px;
  padding-top:32px;border-top:1px solid rgba(14,16,20,.12);max-width:560px;
}
.hero-stats div{display:flex;flex-direction:column;gap:6px}
.hero-stats strong{
  font-size:2.6rem;font-weight:900;color:var(--ink);
  letter-spacing:-.04em;line-height:1;
  font-feature-settings:"tnum";
}
.hero-stats span{
  font-size:.78rem;color:var(--muted);
  letter-spacing:.08em;text-transform:uppercase;font-weight:600;
}

/* hero visual */
.hero-visual{position:relative;height:520px;display:flex;align-items:center;justify-content:center}
.orb{
  position:absolute;width:320px;height:320px;border-radius:50%;
  background:conic-gradient(from 90deg, var(--red), var(--peach), var(--lilac), var(--sky), var(--red));
  filter:blur(2px);
  animation:spin 18s linear infinite;
  opacity:.85;
}
@keyframes spin{to{transform:rotate(360deg)}}
.float-stack{
  position:relative;width:100%;height:100%;
  display:flex;align-items:center;justify-content:center;
}
.triangle{
  position:relative;
  width:520px;height:480px;
}
.float{
  position:absolute;
  object-fit:contain;
  filter:drop-shadow(0 25px 30px rgba(14,16,20,.18)) drop-shadow(0 8px 12px rgba(14,16,20,.08));
  transition:transform .4s ease;
}
/* 4-product composition: caja archivo + tinta lifestyle + almohadilla + libro */
.float.prod-1{width:300px;height:262px;top:0;left:0;transform:rotate(-4deg)}          /* Caja archivo azul abierta TL */
.float.prod-2{width:250px;height:250px;top:30px;left:260px;transform:rotate(5deg)}    /* Tinta lifestyle TR */
.float.prod-3{width:210px;height:135px;top:300px;left:20px;transform:rotate(-6deg)}   /* Almohadilla BL */
.float.prod-4{width:180px;height:230px;top:240px;left:300px;transform:rotate(3deg)}   /* Libro actas BR */
.hero-visual:hover .float.prod-1{transform:rotate(-6deg) translateY(-6px)}
.hero-visual:hover .float.prod-2{transform:rotate(8deg) translateY(-6px)}
.hero-visual:hover .float.prod-3{transform:rotate(-9deg) translateY(-6px)}
.hero-visual:hover .float.prod-4{transform:rotate(5deg) translateY(-6px)}
.hero-visual:hover .prod-1{transform:rotate(-8deg) translateY(-6px)}
.hero-visual:hover .prod-2{transform:rotate(7deg) translateY(-6px)}
.hero-visual:hover .prod-3{transform:rotate(-5deg) translateY(-6px)}

@media (max-width:980px){
  .hero{padding:48px 0 60px}
  .hero-grid{grid-template-columns:1fr;gap:48px}
  .hero-visual{height:380px}
}
@media (max-width:520px){
  .hero-stats{grid-template-columns:1fr 1fr;gap:18px}
  .float.prod-1{width:240px}.float.prod-2{width:90px}.float.prod-3{width:170px}
}

/* ================== TICKER ================== */
.ticker{
  background:var(--ink);color:#fff;
  overflow:hidden;padding:18px 0;
  border-top:1px solid #1c1f24;border-bottom:1px solid #1c1f24;
}
.ticker-track{
  display:flex;gap:32px;align-items:center;
  white-space:nowrap;
  animation:marquee 40s linear infinite;
  font-size:1rem;font-weight:500;
}
.ticker-track span{flex-shrink:0}
.ticker-track i{color:var(--red);font-style:normal}
@keyframes marquee{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}

/* ================== SECTIONS ================== */
.section{padding:120px 0;position:relative}
.section-head{max-width:760px;margin:0 auto 72px;text-align:center}
.section-head h2{margin-top:8px}
.section-sub{margin-top:18px;color:var(--ink-soft);font-size:1.1rem}

.two-col{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:start}
@media (max-width:880px){
  .section{padding:80px 0}
  .two-col{grid-template-columns:1fr;gap:32px}
}

/* ================== NOSOTROS ================== */
.nosotros-text p{margin-bottom:16px;color:var(--ink-soft);font-size:1.05rem}
.values{
  display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:36px;
}
.value{
  background:var(--white);border-radius:16px;padding:24px;
  border:1px solid rgba(14,16,20,.06);
}
.value span{
  font-family:'Instrument Serif',serif;font-size:1.6rem;color:var(--red);
}
.value h4{margin:8px 0 6px}
.value p{font-size:.92rem;color:var(--muted);line-height:1.5}

/* ================== SHOWCASE ================== */
.showcase{
  background:var(--ink);color:#fff;
  padding:90px 0;position:relative;overflow:hidden;
}
.showcase-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;
}
.showcase-text h2{color:#fff;margin-bottom:20px}
.showcase-text p{color:rgba(255,255,255,.7);font-size:1.1rem;margin-bottom:28px;max-width:440px}
.color-dots{display:flex;gap:14px}
.color-dots .dot{
  width:36px;height:36px;border-radius:50%;
  border:2px solid rgba(255,255,255,.2);
  display:inline-block;cursor:pointer;
  transition:transform .2s, border-color .2s;
}
.color-dots .dot:hover{transform:scale(1.15);border-color:#fff}
.showcase-img img{
  width:100%;border-radius:24px;
  box-shadow:0 30px 70px -20px rgba(0,0,0,.6);
}
@media (max-width:880px){
  .showcase{padding:60px 0}
  .showcase-grid{grid-template-columns:1fr;gap:40px}
}

/* ================== LÍNEAS ================== */
.lineas{background:var(--bg-2)}
.linea-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:20px;
}
.linea-grid.linea-grid-3{
  grid-template-columns:repeat(3,1fr);gap:24px;
  max-width:1180px;margin:0 auto;
  justify-content:center;
}
.linea-card{
  background:var(--white);border-radius:24px;padding:0;
  display:flex;flex-direction:column;
  position:relative;overflow:hidden;
  border:1px solid rgba(14,16,20,.04);
  transition:transform .3s ease, box-shadow .3s ease;
}
.linea-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.linea-img{
  width:100%;height:180px;
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;
}
.linea-img img{
  max-width:90%;max-height:160px;
  object-fit:contain;
  transition:transform .4s ease;
}
.linea-card:hover .linea-img img{transform:scale(1.05)}

.linea-img.linea-img-photo{
  height:340px !important;
  background:transparent !important;
  padding:0 !important;
  border-radius:24px 24px 0 0;
  overflow:hidden;
  display:block !important;
}
.linea-img.linea-img-photo img{
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:cover !important;
  display:block !important;
}
.linea-body{padding:24px 26px 28px;display:flex;flex-direction:column;gap:10px;flex:1}
.linea-num{
  font-family:'Instrument Serif',serif;font-size:2.2rem;color:var(--red);
  line-height:1;
}
.linea-card h3{font-size:1.35rem}
.linea-tag{font-size:.86rem;color:var(--muted);font-weight:500}
.linea-card ul{display:flex;flex-direction:column;gap:7px;margin:8px 0;flex:1}
.linea-card li{
  font-size:.88rem;color:var(--ink-soft);
  padding-left:16px;position:relative;line-height:1.5;
}
.linea-card li::before{
  content:"";position:absolute;left:0;top:7px;
  width:7px;height:7px;border-radius:50%;background:var(--red);
}
.linea-link{
  font-size:.9rem;font-weight:600;color:var(--ink);
  margin-top:10px;display:inline-block;
  border-bottom:2px solid var(--red);padding-bottom:4px;align-self:flex-start;
  transition:color .2s;
}
.linea-link:hover{color:var(--red)}

.linea-clasica .linea-img{background:#EDE2D0}     /* warm bone — heritage */
.linea-escolar .linea-img{background:#F2DDD3}     /* soft blush — gentle */
.linea-oficina .linea-img{background:#1B1D22}     /* deep ink — bold pro */
.linea-info    .linea-img{background:#D9DCE0}     /* cool stone — graphic */

@media (max-width:1080px){
  .linea-grid{grid-template-columns:1fr 1fr}
  .linea-grid.linea-grid-3{grid-template-columns:1fr 1fr}
}
@media (max-width:720px){
  .linea-grid.linea-grid-3{grid-template-columns:1fr}
  .linea-img.linea-img-photo{height:260px}
}
@media (max-width:560px){
  .linea-grid{grid-template-columns:1fr}
}

/* ================== CÓMO TRABAJAMOS ================== */
.como-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:18px;
}
.como-card{
  background:var(--white);border-radius:20px;padding:32px 26px;
  border:1px solid rgba(14,16,20,.06);
  display:flex;flex-direction:column;gap:14px;
  transition:all .3s ease;
}
.como-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.como-card.highlight{background:var(--ink);color:#fff}
.como-card.highlight h4,.como-card.highlight p{color:#fff}
.como-card.highlight p{color:rgba(255,255,255,.75)}
.como-card .num{
  display:inline-flex;align-items:center;justify-content:center;
  width:40px;height:40px;border-radius:50%;
  background:rgba(196,30,58,.1);color:var(--red);
  font-weight:700;font-size:1rem;
}
.como-card.highlight .num{background:var(--red);color:#fff}
.como-card h4{font-size:1.1rem}
.como-card p{font-size:.92rem;color:var(--muted);line-height:1.55}

@media (max-width:1000px){.como-grid{grid-template-columns:1fr 1fr}}
@media (max-width:540px){.como-grid{grid-template-columns:1fr}}

/* ================== POLI SECTION ================== */
.poli-section{
  background:var(--ink);color:#fff;padding:120px 0;
  position:relative;overflow:hidden;
}
.poli-section::before{
  content:"";position:absolute;
  top:-100px;right:-150px;width:500px;height:500px;border-radius:50%;
  background:radial-gradient(circle, rgba(196,30,58,.35), transparent 70%);
  pointer-events:none;
}
.poli-section::after{
  content:"";position:absolute;
  bottom:-100px;left:-150px;width:500px;height:500px;border-radius:50%;
  background:radial-gradient(circle, rgba(255,217,194,.15), transparent 70%);
  pointer-events:none;
}
.poli-header{
  position:relative;z-index:1;
  text-align:center;max-width:800px;margin:0 auto 80px;
}
.poli-badge{
  display:inline-block;
  font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;
  font-weight:600;
  padding:8px 18px;border-radius:999px;
  background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.2);
  color:#fff;
  margin-bottom:24px;
}
.poli-title-logo{
  display:block;
  max-width:min(260px, 50%);
  height:auto;
  margin:0 auto 24px;
}
.poli-intro{
  font-size:1.15rem;line-height:1.6;
  color:rgba(255,255,255,.75);
  max-width:640px;margin:0 auto;
}

.poli-features{
  position:relative;z-index:1;
  display:grid;grid-template-columns:repeat(4,1fr);gap:24px;
  margin-bottom:80px;
}
.poli-feature{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;padding:28px 24px;
  transition:transform .3s ease, border-color .3s ease;
}
.poli-feature:hover{
  transform:translateY(-4px);
  border-color:rgba(196,30,58,.4);
}
.poli-num{
  font-family:'Instrument Serif',serif;
  font-size:1.7rem;color:var(--red);
  display:block;margin-bottom:10px;
}
.poli-feature h4{color:#fff;font-size:1.05rem;margin-bottom:8px}
.poli-feature p{color:rgba(255,255,255,.65);font-size:.9rem;line-height:1.55}

.poli-showcase{
  position:relative;z-index:1;
  display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:24px;
  align-items:stretch;
}
.poli-product-card{
  background:#fff;border-radius:24px;
  padding:24px;display:flex;flex-direction:column;align-items:center;justify-content:center;
  min-height:340px;
  transition:transform .3s ease;
}
.poli-product-card:hover{transform:translateY(-6px)}
.poli-product-card img{
  max-width:100%;max-height:240px;object-fit:contain;
  margin-bottom:16px;
}
.poli-product-label{
  color:var(--ink);font-weight:600;font-size:.95rem;text-align:center;
}
.poli-featured{
  background:linear-gradient(135deg, #FFE4E8 0%, #E5E0FF 100%);
}
.poli-cta-card{
  background:var(--red);color:#fff;
  border-radius:24px;padding:36px 32px;
  display:flex;flex-direction:column;justify-content:center;
  min-height:340px;
}
.poli-cta-card h3{color:#fff;font-size:1.4rem;margin-bottom:14px;line-height:1.2}
.poli-cta-card p{color:rgba(255,255,255,.85);font-size:.95rem;line-height:1.55;margin-bottom:24px}
.poli-cta-card .btn{align-self:flex-start;background:#fff;color:var(--ink)}
.poli-cta-card .btn:hover{background:var(--ink);color:#fff;transform:translateY(-2px)}

@media (max-width:980px){
  .poli-section{padding:80px 0}
  .poli-features{grid-template-columns:1fr 1fr;gap:16px}
  .poli-showcase{grid-template-columns:1fr 1fr;gap:16px}
  .poli-cta-card{grid-column:1/-1;min-height:auto}
}
@media (max-width:560px){
  .poli-features{grid-template-columns:1fr}
  .poli-showcase{grid-template-columns:1fr}
}

/* ================== CONTACTO ================== */
.contacto{background:var(--bg-2)}
.contacto-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start;
}
.contacto-info{display:flex;flex-direction:column;gap:14px;margin-top:32px}
.contact-item{
  display:flex;flex-direction:column;gap:4px;
  background:var(--white);padding:20px 22px;border-radius:16px;
  border:1px solid rgba(14,16,20,.06);
  transition:all .2s;
}
a.contact-item:hover{border-color:var(--red);transform:translateY(-2px)}
.ci-label{font-size:.76rem;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-weight:600}
.contact-item strong{font-size:1.05rem;color:var(--ink);font-weight:600}
.ci-sub{font-size:.85rem;color:var(--muted);margin-top:2px}
.ci-instagrams{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-weight:600}
.ci-instagrams a{color:var(--ink);text-decoration:none;transition:color .2s}
.ci-instagrams a:hover{color:var(--red)}
.ci-sep{color:var(--muted);font-weight:400}

.contact-form{
  background:var(--white);padding:36px;border-radius:24px;
  border:1px solid rgba(14,16,20,.06);
  display:flex;flex-direction:column;gap:18px;
}
.contact-form label{
  display:flex;flex-direction:column;gap:6px;
  font-size:.85rem;font-weight:600;color:var(--ink-soft);
}
.contact-form input,.contact-form textarea{
  font-family:inherit;font-size:.95rem;
  padding:12px 14px;border-radius:10px;
  border:1.5px solid rgba(14,16,20,.1);
  background:var(--bg);color:var(--ink);
  transition:border-color .2s, background .2s;
  resize:vertical;
}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:520px){.form-row{grid-template-columns:1fr}}
.contact-form input:focus,.contact-form textarea:focus{
  outline:none;border-color:var(--red);background:#fff;
}

@media (max-width:880px){
  .contacto-grid{grid-template-columns:1fr;gap:40px}
}

/* ================== FOOTER ================== */
.footer{background:var(--ink);color:#fff;padding:80px 0 32px}
.footer-grid{
  display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:48px;
  padding-bottom:48px;border-bottom:1px solid rgba(255,255,255,.08);
}
.footer-logo{height:48px;width:auto;margin-bottom:16px;filter:drop-shadow(0 2px 8px rgba(196,30,58,.4))}
.footer p{color:rgba(255,255,255,.6);font-size:.92rem}
.footer h5{color:#fff;margin-bottom:14px}
.footer ul{display:flex;flex-direction:column;gap:8px}
.footer ul a{color:rgba(255,255,255,.6);font-size:.92rem;transition:color .2s}
.footer ul a:hover{color:var(--red)}
.footer-bottom{
  display:flex;justify-content:space-between;align-items:center;
  padding-top:24px;font-size:.85rem;color:rgba(255,255,255,.5);
  flex-wrap:wrap;gap:12px;
}
.footer-bottom a{color:#fff;font-weight:500}

@media (max-width:780px){
  .footer-grid{grid-template-columns:1fr 1fr;gap:32px}
}
@media (max-width:480px){
  .footer-grid{grid-template-columns:1fr}
}

/* ================== REVEAL ANIMATIONS ================== */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease, transform .8s ease}
.reveal.in{opacity:1;transform:translateY(0)}
.reveal.linea-card{transition-delay:0s}
.linea-grid .reveal.in:nth-child(2){transition-delay:.08s}
.linea-grid .reveal.in:nth-child(3){transition-delay:.16s}
.linea-grid .reveal.in:nth-child(4){transition-delay:.24s}
.como-grid .reveal.in:nth-child(2){transition-delay:.08s}
.como-grid .reveal.in:nth-child(3){transition-delay:.16s}
.como-grid .reveal.in:nth-child(4){transition-delay:.24s}
