:root{
  --navy:#12283a;
  --navy-2:#1a4971;
  --orange:#d53c11;
  --orange-2:#b8330d;
  --link-blue:#2c7aba;
  --ink:#212121;
  --tint-blue:#eff8ff;
  --tint-gray:#f5f7fa;
  --line:#e3e8ee;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
html,body{margin:0;padding:0;}
body{
  font-family:'Jost', 'Century Gothic', Helvetica, Arial, sans-serif;
  color:var(--ink);
  background:#fff;
}
h1,h2,h3{ font-weight:700; margin:0; }
a{ text-decoration:none; }
img{ max-width:100%; display:block; }

/* ===== TOP BAR ===== */
.topbar{
  background:var(--navy-2); color:#fff; text-align:center;
  font-size:0.78rem; letter-spacing:0.04em; padding:8px 16px;
}

/* ===== MAIN HEADER ===== */
.main-header{
  background:var(--navy); padding:18px 24px;
  display:flex; align-items:center; justify-content:center; gap:16px; flex-wrap:wrap;
}
.main-header a{ display:flex; align-items:center; gap:16px; }
.main-header img.ico{ height:42px; width:42px; object-fit:contain; border-radius:50%; background:#fff; padding:4px; }
.main-header img.barraquer{ height:26px; width:auto; object-fit:contain; }
.main-header .x{ color:var(--orange); font-size:1.1rem; font-weight:700; }

/* ===== HERO ===== */
.hero{
  background:linear-gradient(135deg, var(--navy) 0%, var(--navy-2) 100%);
  color:#fff; text-align:center; padding:72px 24px 86px;
}
.hero h1{
  font-size:clamp(2.1rem, 5vw, 3.4rem); line-height:1.12; margin-bottom:18px;
}
.hero p{
  max-width:640px; margin:0 auto 34px; font-size:1.08rem; line-height:1.65; color:rgba(255,255,255,0.85);
}
.btn{
  display:inline-block; background:var(--orange); color:#fff; font-weight:700;
  padding:15px 34px; border-radius:3px; font-size:0.98rem; letter-spacing:0.01em;
  border:none; cursor:pointer; transition:background .2s, transform .2s;
}
.btn:hover{ background:var(--orange-2); transform:translateY(-1px); }
.btn-outline{
  display:inline-block; background:transparent; color:var(--navy-2); font-weight:700;
  padding:13px 30px; border-radius:3px; font-size:0.95rem; border:2px solid var(--navy-2);
  transition:background .2s, color .2s;
}
.btn-outline:hover{ background:var(--navy-2); color:#fff; }

/* ===== SECTIONS ===== */
section{ padding:64px 24px; }
.section-head{ text-align:center; max-width:640px; margin:0 auto 44px; }
.section-head .eyebrow{
  color:var(--orange); font-weight:700; letter-spacing:0.12em; text-transform:uppercase; font-size:0.72rem;
}
.section-head h2{ font-size:clamp(1.7rem,3.4vw,2.4rem); margin:10px 0 12px; color:var(--navy); }
.section-head p{ color:#5a6b7a; font-size:1rem; line-height:1.6; }

/* ===== DESTINATION LIST (estilo "Qué tratamos") ===== */
.list{ max-width:860px; margin:0 auto; }
.list-item{
  display:flex; align-items:center; gap:22px; padding:26px 8px;
  border-bottom:1px solid var(--line); transition:background .2s;
}
.list-item:first-child{ border-top:1px solid var(--line); }
.list-item:hover{ background:var(--tint-gray); }
.icon-circle{
  flex-shrink:0; width:64px; height:64px; border-radius:50%; background:var(--tint-blue);
  display:flex; align-items:center; justify-content:center; color:var(--navy-2);
}
.icon-circle svg{ width:30px; height:30px; }
.list-item .txt{ flex:1; min-width:0; }
.list-item h3{ color:var(--link-blue); font-size:1.18rem; margin-bottom:4px; }
.list-item p{ color:#5a6b7a; font-size:0.92rem; line-height:1.5; margin:0 0 4px; }
.list-item .domain{ font-size:0.78rem; color:#8694a1; }
.list-item .arrow{ flex-shrink:0; color:var(--link-blue); font-size:1.4rem; transition:transform .25s; }
.list-item:hover .arrow{ transform:translateX(5px); }
.badge-ai{
  display:inline-block; background:var(--orange); color:#fff; font-size:0.62rem; font-weight:700;
  letter-spacing:0.05em; padding:2px 8px; border-radius:10px; margin-left:8px; vertical-align:middle;
}

/* ===== TRUST / STATS SECTION ===== */
.trust{ background:var(--tint-blue); }
.stats{
  max-width:1000px; margin:0 auto; display:grid; grid-template-columns:repeat(3,1fr); gap:36px;
}
.stat{ text-align:center; padding:0 12px; }
.stat .num{ font-size:2.6rem; font-weight:800; color:var(--navy); line-height:1; margin-bottom:12px; }
.stat p{ color:#4c5b68; font-size:0.95rem; line-height:1.6; }

@media (max-width:760px){
  .stats{ grid-template-columns:1fr; gap:30px; }
  .list-item{ flex-wrap:wrap; }
}
@media (max-width:560px){
  .list-item{ gap:14px; padding:20px 4px; }
  .icon-circle{ width:52px; height:52px; }
  .icon-circle svg{ width:24px; height:24px; }
  .list-item h3{ font-size:1.05rem; }
}

/* ===== LEGAL / CONTENT PAGES ===== */
.legal-hero{
  background:linear-gradient(135deg, var(--navy) 0%, var(--navy-2) 100%);
  color:#fff; text-align:center; padding:48px 24px 54px;
}
.legal-hero h1{ font-size:clamp(1.7rem,4vw,2.4rem); margin-bottom:10px; }
.legal-hero p{ color:rgba(255,255,255,0.75); font-size:0.95rem; }
.legal-wrap{ max-width:760px; margin:0 auto; padding:56px 24px 72px; }
.legal-wrap h2{ color:var(--navy); font-size:1.35rem; margin:36px 0 14px; }
.legal-wrap h2:first-child{ margin-top:0; }
.legal-wrap p{ color:#3d4a56; font-size:0.96rem; line-height:1.75; margin:0 0 14px; }
.legal-wrap ul{ color:#3d4a56; font-size:0.96rem; line-height:1.75; padding-left:22px; margin:0 0 14px; }
.legal-wrap li{ margin-bottom:6px; }
.legal-wrap strong{ color:var(--navy); }
.legal-wrap .updated{ font-size:0.8rem; color:#8694a1; margin-bottom:8px; }
.back-link{
  display:inline-flex; align-items:center; gap:8px; color:var(--link-blue); font-weight:600;
  font-size:0.92rem; margin-bottom:28px;
}
.back-link:hover{ text-decoration:underline; }

/* ===== FOOTER ===== */
footer{
  background:var(--navy); color:rgba(255,255,255,0.85); text-align:center; padding:40px 24px 30px;
}
footer .flogos{ display:flex; align-items:center; justify-content:center; gap:16px; margin-bottom:18px; flex-wrap:wrap; }
footer .flogos img.ico{ height:38px; width:38px; border-radius:50%; background:#fff; padding:4px; object-fit:contain; }
footer .flogos img.barraquer{ height:22px; width:auto; object-fit:contain; }
footer .flogos .x{ color:var(--orange); font-weight:700; }
footer .alliance{ max-width:640px; margin:0 auto 18px; font-size:0.9rem; line-height:1.7; }
footer .alliance strong{ color:#fff; }
footer .legal-nav{
  display:flex; align-items:center; justify-content:center; gap:10px; flex-wrap:wrap;
  margin:0 0 16px; padding-top:18px; border-top:1px solid rgba(255,255,255,0.12);
  max-width:640px; margin-left:auto; margin-right:auto;
}
footer .legal-nav a{ color:rgba(255,255,255,0.7); font-size:0.78rem; }
footer .legal-nav a:hover{ color:#fff; text-decoration:underline; }
footer .legal-nav .sep{ color:rgba(255,255,255,0.3); font-size:0.78rem; }
footer .copyright{ font-size:0.72rem; color:rgba(255,255,255,0.45); letter-spacing:0.03em; }
