@font-face {
  font-family: "body-font";
  src: url("../static/fonts/Neuton-Regular.ttf") format("truetype");
  font-weight: 300;
}

@font-face {
  font-family: "title-font";
  src: url("../static/fonts/ChaumontScript-Regular.woff") format("woff");
  font-weight: 900;
}

@font-face {
  font-family: "title-font";
  src: url("../static/fonts/ChaumontScript-Regular.woff") format("woff");
  font-weight: 400;
}

:root {
  --main: #141f36;
  --accent: #8B2635;
  --shine: #004346;
  --bg: #E0E2DB;
  --ink: #2929297b;
  --transp: #00000000;
  --radius-amount: 1px;
  --border-style: double;
  --body-font :   monospace;
}

.small-caps {
  text-transform: uppercase;
}

div.line {
  /* yikes */
  border-top: thin solid var(--main);
  color: var(--main);
  box-sizing: border-box;
}

/*
MAIN STUFF
*/

body {
  background-color: var(--bg);
  /* box-shadow: inset 0px 0px 10px 10px var(--accent); */
  border: 5px var(--border-style) var(--accent);
  margin: 1em;
  padding: 1em;
  display: flex;
  flex-direction: column;
  align-items: center;
  border-radius: 10em;
  font-size: 15px;
}

#main {
  max-width: 1000px;
}

p,
label,
a,
li {
  font-family:var(--body-font);
  color: var(--main);
  margin: 0;
}




h2,
h3 {
  color: var(--main);
  font-family: "title-font";
  text-decoration: none;
  margin: 0;
}

h4 {
  color: var(--main);
  font-family:var(--body-font);
  text-transform: uppercase;
  font-weight: 400;
  letter-spacing: .1em;
  margin: 0;
}

h2 {
  font-size: 3em;
}

h3 {
  font-size: 2em;
  padding: 0.5em 1em;
}

h4 {
  font-size: 1.25em;
  padding: 0.25em 0.75em;
}

h4:before {
  content: "▒ ";
}

ol.recettes-list {
  width: 100%;
  padding: 0em;
  counter-reset: item;
  list-style-type: none;
  column-count: 2;
}

ol.recettes-list li {
  display: block;
  font-family:var(--body-font);
  padding: 0.25em 1em;
}

ol.recettes-list li:before {
  font-family: "title-font";
  content: counter(item, decimal);
  padding-right: 1em;
  text-align: right;
  display: inline-block;
  white-space: nowrap;
  counter-increment: item;
  font-weight: 400;
  color: var(--accent);
}

a.recette-link {
  color: var(--main);
  transition: 0.1s;
  text-decoration: none;
}

a.recette-link:visited {
  color: var(--main);
}

a.recette-link:after {
  content: " ▒";
  color: var(--shine);
  font-weight: 400;
  opacity: 0;
  transition: 0.3s opacity;
}

a.recette-link:hover:after {
  opacity: 1;
}

a.recette-link:hover {
  color: var(--accent);
}

/* NAVBAR */

nav {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  justify-content: center;
}

div.nav-content {
  max-width: 40em;
  display: flex;
  flex-wrap: wrap
}

nav a {
  transition: 0.1s background-color, 0.3s color;
  flex-grow: 1;
  text-decoration: none;
  padding: 0.5em;
  text-align: center;
  /* border-bottom: 2px solid var(--accent); */
  border-top: 2px solid var(--transp);
  transform-origin: .3s border;
  box-shadow: 1px 2px 0px .1px var(--accent);
  transition: box-shadow .1s ease-in-out;
}

nav a:visited {
  color: var(--main);
}

nav a:hover {
  /* border-bottom: 2px solid var(--accent); */
  box-shadow: 2px 2px 0px .1px var(--shine);
}

/*
BANDEROLLE ET TOUT 
*/

div.main-title {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-items: center;
  align-items: center;
  justify-content: center;
  width: 100%;
}

h1>a {
  font-family: "title-font";
  color: var(--accent);
  text-shadow: 2px 2px 0px var(--shine);
  text-decoration: none;
  transition: text-shadow 0.4s;
}

h1>a:hover {
  text-shadow: 3px 3px 0px var(--shine);
}

h1 {
  margin: 0em;
  padding: 0em;
  font-size: 6em;
}


.center {
  display: flex;
  align-items: center;
  justify-content: center;
}

/*
SUBTITLE
*
*/

.section>a:after {
  content: " §";
  color: var(--accent);
  font-size: 0.75em;
  font-weight: 400;
  opacity: 0;
  transition: 0.3s opacity;
}

.section>a:hover:after {
  opacity: 1;
}

.sec-in-recette>a {
  text-decoration: none;
}

.sec-in-recette>a:hover {
  color: var(--accent)
}


.section>a {
  color: inherit;
  font-family: inherit;
  text-decoration: none;
}

p.sem-sep {
  width: 100%;
  text-align: center;
  font-size: 1.5em;
  padding: 0.5em 0 em;
  height: 2em;
}


/* INFO &
 * INGREDIENT LISt
*/

div.recette-header {
  flex-direction: column;
  flex-wrap: wrap;
  display: flex;
  justify-content: start;
}

div.recette-content {
  display: flex;
  flex-direction: row;
  justify-content: center;
}


div.recette-content>* {
  flex: 1;
}


div.instructions-div>p {
  padding: 0.5em 1em;
  text-align: justify;
  hyphens: auto;
  line-height: 1.5em;
}

div.infobox {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
}

div.infobox>p {
  padding: 0em 0.5em;
}

div.infobox>p:before,
fieldset>p:before {
  content: attr(data-before);
  margin: 0em;
  padding: 0em .5em;
  display: inline-flex;
  align-items: center;
  line-height: 1;
}






fieldset {
  border: none;
  color: var(--main);
  font-family:var(--body-font);
  display: flex;
  flex-direction: column;
  padding: 0;
}

fieldset>p,
div.infobox>p {
  /* border: none; */
  padding: 0.25em;
  cursor: pointer;
}

p.acquired {
  color: var(--ink)
}


/*
MISC
*/

footer {
  text-align: center;
  width: 100%;
}

footer>p,
footer>a {
  font-family:var(--body-font);
}

footer>a {
  text-decoration: none;
}

img.creuset {
  transition: 0.5s;
}

img.creuset:hover {
  transform: scale(1.1);
  filter: hue-rotate(180deg);
}

/* Little span */

span#n-recettes {
  position: relative;
}

span#n-recettes>p {
  font-family:var(--body-font);
  color: var(--shine);
  font-size: 2em;
  transform-origin: center;
  /* animation: pulse 0.66s alternate-reverse 0s infinite ease-in-out; */
  z-index: 1000;
  text-align: center;
}

span.bast {
  font-family: "title-font";
  margin: 0;
  padding: 0;
  font-size: 1.25em;
}

@keyframes pulse {
  0% {
    transform: scale(1) rotate(0deg);
  }

  100% {
    transform: scale(1.2) rotate(4deg);
  }
}

#hasard {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 100%;
  justify-content: center;
  line-height: 1;
}

#hasard p,
#hasard a {
  padding: 0.25em;


}

#hasard a,
#reroll-hasard {
  cursor: pointer;
}

#hasard>div {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  flex: 1 1 0%;
}

#hasard>div:nth-child(1) {
  justify-content: end;
}

#hasard>div:nth-child(2) {
  justify-content: start;
}

#reroll-hasard {
  transition: .2s transform;
  width: 1em;
  height: 1em;
  border: 2px solid var(--accent);
  border-top: 2px solid var(--transp);
  border-radius: 100%;
  margin-right: .5em;
}

#reroll-hasard:hover {
  transform: scale(1.1) rotate(300deg);
}

#reroll-hasard:active{
  transform: scale(1.3);
  border: 2px solid var(--shine);
  border-radius: 40%;
}