/* fonts */
@font-face {
  font-display:swap;
  font-family:"Fraunces";
  font-style:normal;
  font-weight:700 900;
  src:url("../fonts/frn-hd.woff2") format("woff2");
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family:"Fraunces Fallback";
  src:local("Georgia");
  size-adjust:105.7%;
}
@font-face {
  font-display:swap;
  font-family:"Karla";
  font-style:normal;
  font-weight:400 700;
  src:url("../fonts/krl-tx.woff2") format("woff2");
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family:"Karla Fallback";
  src:local("Arial");
  size-adjust:101.9%;
}
/* tokens */
:root {
  --c-lana:#F6F6F8;
  --c-madeja:#E7E7EB;
  --c-hebra:#D0D0D6;
  --c-urdimbre:#75757E;
  --c-carbon:#1A1A1F;
  --c-quemado:#C2410C;
  --c-rescoldo:#7A2E12;
  --c-blanco:#FFFFFF;
  --c-sombra:#1A1A1F24;
  --s-1:.25rem;
  --s-2:.5rem;
  --s-3:.75rem;
  --s-4:1rem;
  --s-5:1.5rem;
  --s-6:2rem;
  --s-7:3rem;
  --s-8:4rem;
  --s-9:5.5rem;
  --s-10:7rem;
  --s-r:20px;
  --s-rs:16px;
  --f-hd:"Fraunces", "Fraunces Fallback", Georgia, serif;
  --f-tx:"Karla", "Karla Fallback", Arial, sans-serif;
}
/* reset */
*, *::before, *::after {
  box-sizing:border-box;
}
html {
  scroll-padding-top:var(--s-5);
  -webkit-text-size-adjust:100%;
}
body {
  min-height:100vh;
  margin:0;
  font-family:var(--f-tx);
  font-size:1.0625rem;
  line-height:1.6;
  color:var(--c-carbon);
  background:var(--c-lana);
}
img {
  display:block;
  max-width:100%;
  height:auto;
}
h1, h2, h3, h4 {
  margin:0;
  font-family:var(--f-hd);
  font-weight:800;
  line-height:1.12;
  letter-spacing:-.02em;
}
h1 {
  font-size:clamp(2rem, 1.3rem + 2.4vw, 3rem);
  font-weight:900;
}
h2 {
  font-size:clamp(1.6rem, 1.2rem + 1.4vw, 2.3rem);
}
h3 {
  font-size:1.25rem;
}
p, ul, ol, dl, table, figure {
  margin:0;
}
a {
  color:var(--c-carbon);
  text-decoration-thickness:1px;
  text-underline-offset:.2em;
}
a:hover {
  color:var(--c-rescoldo);
}
button, input, select, textarea {
  font:inherit;
  color:inherit;
}
:focus-visible {
  outline:2px solid var(--c-quemado);
  outline-offset:3px;
}
table {
  width:100%;
  border-collapse:collapse;
}
.skp {
  position:fixed;
  top:var(--s-2);
  left:var(--s-2);
  z-index:600;
  padding:var(--s-3) var(--s-5);
  transform:translateY(-200%);
  font-weight:700;
  color:var(--c-blanco);
  background:var(--c-carbon);
  border-radius:999px;
}
.skp:focus {
  transform:none;
  color:var(--c-blanco);
}
@media (prefers-reduced-motion:reduce) {
  *, *::before, *::after {
    animation-duration:.01ms;
    animation-iteration-count:1;
    transition-duration:.01ms;
  }
}
