html { min-height: 100%; margin: 0; padding: 0; background: white; font: normal 16px/1 "Roboto", sans-serif; }
body { position: relative; max-width: 2048px; min-height: 800px; margin: 0 auto; padding: 2rem; background-image: url("/assets/images/background.jpeg"); background-position: 80% -6rem; background-size: contain; background-repeat: no-repeat; background-clip: padding-box; }
p { line-height: 1.4; font-size: 1.2rem; }
li { font-size: 1.2rem; }
a { color: Blue; }

header a { display: inline-block; padding-left: 4.5rem; background-image: url("/assets/images/minnesota.svg"); background-size: 4rem; background-repeat: no-repeat; color: black; text-decoration: none; }
header h1 { margin: 0; font-size: 3rem; }
header h2 { margin: 0.2rem 0; font-weight: normal; }
nav { margin: 1.5rem; position: absolute; top: 0; right: 0; }
nav a { display: inline-block; padding: 0.5rem; text-decoration: none; }
nav a img { width: 3rem; }
footer { margin: 4rem 0; text-align: center; }
footer small { font-size: 1rem; }

main { margin-top: 12rem; }
main div#intro h1 { max-width: 42rem; margin: 0; font-size: 3rem; line-height: 1.5; }
main div#intro h1 span { padding: 0.2rem 0.5rem; background: rgba(255,255,255,0.8); box-decoration-break: clone; -webkit-box-decoration-break: clone; }
main div#intro h2 { max-width: 38rem; margin: -0.45rem 0 8rem auto; font-size: 2rem; line-height: 1.6; text-align: right; }
main div#intro h2 span { padding: 0.2rem 0.5rem; background: rgba(255,255,255,0.8); box-decoration-break: clone; -webkit-box-decoration-break: clone; }
main div#intro p { float: left; margin: 2rem 0; }
main div#intro p a { display: inline-block; padding: 0.5rem 0.7rem; background: red; color: white; text-decoration: none; font-size: 2rem; font-weight: bold; }
main div#welcome { position: relative; background: White; margin: 0 -2rem 0; padding: 2rem 2rem 2rem 55%; }
main div#welcome p#me img { position: absolute; z-index: 0; left: 0; bottom: -4px; width: 50%; max-width: 650px; }
main div#welcome p#buttons { margin-top: 2rem; }
main div#welcome p#buttons a { margin-right: 1rem; padding: 0.5rem 0.7rem; background: blue; color: white; text-decoration: none; }
main div#agrarian { position: relative; z-index: 1; background: #00A84A; color: white; margin: 0 -2rem 2rem; padding: 6rem 2rem; text-align: center; }
main div#agrarian h2 { margin: 0; font-size: 6rem; font-family: Futura; font-weight: normal; }
main div#agrarian h2 em { display: inline-block; border-bottom: solid 5px white; line-height: 1;  }
main div#agrarian h2 strong { display: block; font-family: Acme; font-size: 8rem; }
main div#agrarian p { margin: 2rem 0 0; font-size: 2rem; }

main.about { background: white; margin: 27rem -2rem 2rem; padding: 2rem; }
main.about h1 { max-width: 51rem; margin: -17rem 0 6rem; font-size: 2.5rem; line-height: 1.5; }
main.about h1 span { padding: 0.2rem 0.5rem; background: rgba(255,255,255,0.8); box-decoration-break: clone; -webkit-box-decoration-break: clone; }
main.about div.wrapper { max-width: 72rem; margin: 0 auto; }
main.about p.background { float: left; margin: 0 2rem 2rem 0; }
main.about p.background img { display: inline-block; width: 100%; border-radius: 0.3rem; }
main.about hr { height: 0.3rem; background: #F6F6F6; border: none; }
main.about p > em { background: LightYellow; font-style: normal; }

main.platform { background: white; margin: 27rem -2rem 2rem; padding: 2rem; }
main.platform h1 { max-width: 51rem; margin: -17rem 0 6rem; font-size: 2.5rem; line-height: 1.5; }
main.platform h1 span { padding: 0.2rem 0.5rem; background: rgba(255,255,255,0.8); box-decoration-break: clone; -webkit-box-decoration-break: clone; }
main.platform div.wrapper { max-width: 72rem; margin: 0 auto; }
main.platform div.wrapper > p:first-child { margin: 4rem 0; font-size: 1.9rem; }
main.platform h2 { margin: 4rem 0 0; font-size: 1.9rem; line-height: 1.3; }
main.platform p > em { background: LightYellow; font-style: normal; }
main.platform blockquote { margin: 1.5rem 0; padding: 0 0 0 1rem; border-left: solid 1rem WhiteSmoke; }
main.platform blockquote p { font-size: 1.2rem; font-style: italic; }
main.platform blockquote p:before { content: "“"; }
main.platform blockquote p:after { content: "”"; }
main.platform h3 { margin: 4rem 0 0; font-size: 1.9rem; font-weight: normal; line-height: 1.4; }

main.act { background: white; margin: 23rem -2rem 2rem; padding: 2rem; }
main.act h1 { max-width: 51rem; margin: -13rem 0 6rem; font-size: 2.5rem; line-height: 1.5; }
main.act h1 span { padding: 0.2rem 0.5rem; background: rgba(255,255,255,0.8); box-decoration-break: clone; -webkit-box-decoration-break: clone; }
main.act div.wrapper { max-width: 72rem; margin: 0 auto; }
main.act div.wrapper > p:first-child { margin: 4rem 0; font-size: 1.9rem; }
main.act h2 { margin: 4rem 0 0; font-size: 1.9rem; line-height: 1.3; }
main.act p img { display: inline-block; max-width: 100%; border: solid 1px Black; box-sizing: border-box; }
main.act ul { margin: 2rem 0; padding: 0; list-style: none; }
main.act li { position: relative; margin: 2rem 0; padding: 0 0 0 5rem; font-size: 1.4rem; }
main.act li strong { position: absolute; left: 0; font-size: 1.7rem; }
main.act li span:nth-of-type(1) { display: inline-block; font-size: 1.7rem; font-weight: bold; }
main.act li span:nth-of-type(2) { display: inline-block; margin: 0.5rem 0; font-style: italic; }
main.act li span:nth-of-type(3) { display: inline-block; font-size: 1.2rem; }
main.act h3 { margin: 4rem 0 0; font-size: 1.9rem; font-weight: normal; line-height: 1.4; }

main.basic { min-height: 420px; margin: 8rem -2rem 2rem; padding: 2rem; background: white; }

@media (width <= 1280px) {
  body { padding: 1rem; background-position: top center; background-size: 200%; }
  header a { padding-left: 3rem; background-size: 2.5rem; }
  header h1 { font-size: 1.5rem; }
  header h2 { font-size: 1rem; }
  nav { margin: 0.5rem }
  nav a img { width: 2rem; }
  main { margin-top: 6rem; }

  main div#intro h1 { font-size: 2rem; }
  main div#intro h2 { margin: 1rem 0 2rem; font-size: 1.5rem; text-align: left; }
  main div#intro p { float: none; margin: 1rem 0; }
  main div#intro p a { font-size: 1.5rem; }
  main div#welcome { position: relative; background: White; margin: 0 -1rem 0; padding: 1rem 1rem 90%; }
  main div#welcome p#me img { position: absolute; left: 0; bottom: -4px; width: 100%; }
  main div#welcome p#buttons { margin-top: 2rem; }
  main div#welcome p#buttons a { margin-right: 1rem; padding: 0.5rem 0.7rem; background: blue; color: white; text-decoration: none; }
  main div#agrarian { padding: 2rem; }
  main div#agrarian h2 { font-size: 3rem; }
  main div#agrarian h2 strong { font-size: 5rem; }
  main div#agrarian p { margin: 1rem 0 0; font-size: 2rem; }

  main.platform { margin: 19rem -1rem 2rem; padding: 1rem; }
  main.platform h1 { margin: -11rem 0 4rem; font-size: 1.3rem; line-height: 1.6; }
  main.platform h1 span { padding: 0.1rem 0.3rem; }
  main.platform div.wrapper > p:first-child { margin: 0 0 2rem; font-size: 1.3rem; }
  main.platform h2 { margin-top: 3rem; font-size: 1.5rem; }
  main.platform h3 { font-size: 1.3rem; }

  main.about { margin: 17rem -1rem 2rem; padding: 1rem; }
  main.about h1 { margin: -9rem 0 3rem; font-size: 1.3rem; line-height: 1.6; }
  main.about h1 span { padding: 0.1rem 0.3rem; }
  main.about p.background { float: none; margin: 0; }

  main.act { margin: 15rem -1rem 2rem; padding: 1rem; }
  main.act h1 { margin: -7rem 0 3rem; font-size: 1.3rem; line-height: 1.6; }
  main.act h1 span { padding: 0.1rem 0.3rem; }
  main.act div.wrapper > p:first-child { margin: 0 0 2rem; font-size: 1.3rem; }
  main.act h2 { margin-top: 3rem; font-size: 1.5rem; }
  main.act ul strong { font-size: 1.5rem; }
  main.act ul span:nth-of-type(1) { font-size: 1.5rem; }
  main.act ul span:nth-of-type(2) { margin: 0.3rem 0; font-size: 1.2rem; }
  main.act h3 { font-size: 1.3rem; }
}
