:root{
  --ink:#0E1B2C;
  --ink-2:#1c2d44;
  --coral:#E85D3C;
  --coral-2:#F0805F;
  --cream:#F5F1EA;
  --cream-2:#ECE6DA;
  --paper:#FBF8F2;
  --line:rgba(14,27,44,.12);
  --muted:#5b6776;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;max-width:100vw;overflow-x:hidden}
body{font-family:"Space Grotesk",system-ui,sans-serif;background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.5}
.serif{font-family:"Instrument Serif",Georgia,serif;font-weight:400;letter-spacing:-.01em}
.mono{font-family:"JetBrains Mono",monospace}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;border:none;background:none;color:inherit}
img{max-width:100%;display:block}
#root{min-height:100vh}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

.li-nav-burger{display:none !important}

/* ========== TABLET ≤ 1024px ========== */
@media (max-width:1024px){
  .li-container{padding:0 24px !important}
  /* Grids 6→3, 5→2, 4→2, 3→2 */
  div[style*="repeat(6, 1fr)"]{grid-template-columns:repeat(3,1fr) !important}
  div[style*="repeat(5, 1fr)"]{grid-template-columns:repeat(2,1fr) !important}
  div[style*="repeat(4, 1fr)"]{grid-template-columns:repeat(2,1fr) !important}
  div[style*="repeat(3, 1fr)"]{grid-template-columns:repeat(2,1fr) !important}
  /* Asymmetric grids → stack */
  div[style*="1.5fr 1fr"],
  div[style*="1.4fr 1fr"],
  div[style*="1.2fr 1fr"],
  div[style*="1.15fr 1fr"],
  div[style*="1fr 1.4fr"],
  div[style*="1fr 1.2fr"],
  div[style*="1fr 1.1fr"],
  div[style*="1fr 1.6fr"],
  div[style*="320px 1fr"]{grid-template-columns:1fr !important;gap:32px !important}
  /* Footer 4→2 */
  .li-footer-grid{grid-template-columns:repeat(2,1fr) !important;gap:32px !important}
  /* Compare table */
  div[style*="1.2fr 1fr 1fr 1fr"]{grid-template-columns:1fr 1fr 1fr 1fr !important;gap:8px !important;font-size:12px !important}
  /* Header utility right shorter */
  .li-utility-right{font-size:10px !important;flex-wrap:wrap !important;gap:8px !important}
  h1.serif,h2.serif{word-break:break-word !important}
  /* Section padding reducido */
  section[style*="padding:120px 0"]{padding:80px 0 !important}
  section[style*="padding:100px 0"]{padding:70px 0 !important}
}

/* ========== MOBILE ≤ 768px ========== */
@media (max-width:768px){
  /* Reset grid-3col padding/border en mobile (PorQue, Quienes stats) */
  div[style*="padding-left: 28"]{padding-left:0 !important;padding-right:0 !important}
  div[style*="padding: 36px 28px 36px 0"]{padding:24px 0 !important}
  div[style*="border-right: 1px solid rgba(255,255,255"]{border-right:none !important}
  div[style*="border-right: 1px solid var(--line)"]{border-right:none !important}
  body{font-size:15px}
  .li-container{padding:0 18px !important}
  /* Cualquier grid → 1 col */
  div[style*="grid-template-columns"]{grid-template-columns:1fr !important}
  /* Desktop nav off, burger on */
  .li-nav-desktop{display:none !important}
  .li-nav-burger{display:flex !important;align-items:center;justify-content:center}
  /* Utility bar — hide tels, only email */
  .li-utility-right > *:not(:last-child){display:none !important}
  .li-utility-right{font-size:10px !important}
  .li-utility-left{font-size:10px !important;gap:8px !important}
  .li-utility-left > span:not(:first-child){display:none !important}
  /* Section padding */
  section[style*="padding:120px 0"]{padding:48px 0 !important}
  section[style*="padding:100px 0"]{padding:40px 0 !important}
  section[style*="padding:80px 0"]{padding:36px 0 !important}
  section[style*="paddingTop:170"]{padding-top:110px !important}
  /* Hero stickers off */
  div[style*="rotate(4deg)"]{display:none !important}
  /* Marquee smaller */
  div[style*="animation:marquee"]{padding:14px 0 !important}
  div[style*="animation:marquee"] span.serif{font-size:22px !important}
  /* Big headers cap */
  h1.serif{font-size:clamp(32px, 9vw, 56px) !important;line-height:1 !important}
  h2.serif{font-size:clamp(28px, 7vw, 44px) !important;line-height:1.05 !important}
  /* Compare table responsive — overflow */
  div[style*="1.2fr 1fr 1fr 1fr"]{font-size:11px !important;gap:6px !important;grid-template-columns:1.5fr 1fr 1fr 1fr !important}
  div[style*="1.2fr 1fr 1fr 1fr"] .serif{font-size:14px !important}
  /* Posiciones cards: stack image+content */
  article[style*="grid-template-columns:1fr 1.6fr"]{grid-template-columns:1fr !important}
  article[style*="grid-template-columns:1fr 1.6fr"] > div:first-child{min-height:200px !important;aspect-ratio:16/10}
  /* Sticky aside off */
  div[style*="position:sticky"]{position:relative !important;top:auto !important}
  /* Form inputs full */
  input,textarea{width:100% !important;max-width:100%}
  /* CTA buttons full width en mobile */
  div[style*="text-align:center"] a[style*="display:inline-block"]{display:block !important;width:100%;text-align:center;box-sizing:border-box}
  /* Country dropdown / mega menu off (manejado en mobile drawer) */
  /* Big stats reducir */
  div[style*="font-size:48"][class*="serif"]{font-size:32px !important}
  /* Gaps reducidos */
  div[style*="gap:80"]{gap:32px !important}
  div[style*="gap:60"]{gap:28px !important}
  div[style*="gap:48"]{gap:24px !important}
  div[style*="gap:40"]{gap:20px !important}
  /* Pais hero font cap */
  h1.serif[style*="clamp(72px"]{font-size:clamp(40px, 12vw, 72px) !important}
  /* Programas/Posiciones hero */
  h1.serif[style*="clamp(64px"]{font-size:clamp(36px, 10vw, 56px) !important}
  /* Footer items stack mejor */
  .li-footer-bottom{flex-direction:column !important;text-align:center}
  /* Pais §03 tabs scroll horizontal */
  div[style*="border-bottom:1px solid var(--line)"][style*="flex-wrap:wrap"]{flex-wrap:nowrap !important;overflow-x:auto !important;-webkit-overflow-scrolling:touch}
  div[style*="border-bottom:1px solid var(--line)"][style*="flex-wrap:wrap"] button{white-space:nowrap !important;flex-shrink:0}
}

/* ========== SMALL MOBILE ≤ 380px ========== */
@media (max-width:380px){
  body{font-size:14px}
  .li-container{padding:0 14px !important}
  h1.serif{font-size:clamp(28px, 8vw, 42px) !important}
  h2.serif{font-size:clamp(24px, 6vw, 36px) !important}
}
