:root {
--text-size: ;
--headline-size: ;
--text-color: ;
--background-color: ;
--element-color-1: ;
--element-color-2: ;
}

/* --------- general resets ---------- */

* {
  box-sizing: border-box;
  font-family: Arial, Helvetica, sans-serif;
  font-weight: bold;

}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  margin-block-end: 0;
  margin-block-start: 0;
}

h1, h2, h3, h4, h5, h6, p, a {
  font-size: 1rem;
}

ol, ul {
  list-style: none;
}

html {
  font-size: 18px;
}

html, body {
  height: 100%;
  width: 100%;
  /* padding: .25rem;
  padding-top: 0; */
}

body {
  background-color: lightgrey;
  overflow-y: auto;
  overflow-x: hidden;
}

img {
  display: block;
}

/* DEFAULT TEXT STYLING */

.italic {
  font-style: italic;
}

.bold {
  font-weight: bold;
}

.bold-italic {
  font-weight: bold;
  font-style: italic;
}

.underline {
  text-decoration: underline;
}

.strikethrough {
  text-decoration: line-through;
}

.highlight {
  background-color: yellow;
  padding: 0 2px;
}

a {
  color: blue;
  /* -webkit-text-stroke: 1px red; */
  text-decoration: underline;
  font-size: 1rem;
  /* font-family: Arial, Helvetica, sans-serif; */
}

/* GENERAL STYLES */

nav {
  border-bottom: 1px solid black;
  padding: .5rem;
  /* margin-bottom: 0.5rem; */
  display: flex;
  gap: 1rem;
  align-items: center;
  flex-wrap: wrap;
}

summary {
  width: fit-content;
  cursor: pointer;
  user-select: none;
  font-size: 1rem;
  color: orangered;
  margin: 0;
  background-color: yellow;
  padding: .1rem .2rem;
  display: flex;
  align-items: center;
  gap: .2rem;
  font-style: bold;
}

input[type="checkbox" i] {
  margin: 0;
  vertical-align: baseline;
  background-color: orangered;
}

::marker {
  color: orangered;
  font-size: 1rem;
}

.project-list {
  height: fit-content;
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  row-gap: 0.6rem;
  column-gap: 0.5rem;
  padding: .5rem;
  padding-bottom: 1rem;
}

.project {
  display: block;
}

.project-info {
  margin: .5rem 0rem;
}

.project[open] {
  width: fit-content;
  /* width: 100%; */
}

.project-gallery {
  height: fit-content;
  width: 100%;
  display: flex;
  margin-top: 0.5rem;
  /* margin-bottom: 1rem; */
  flex-wrap: wrap;
  flex-direction: row;
  align-items: flex-start;
  gap: .1rem;
}

.nobackground {
  width: 25%;
  height: auto;
  /* padding: .6rem; */
  /* background-color: black; */
}

.dragging {
  border: 2px solid red;
}

.opacity05 {
  opacity: 0.5 !important;
}

.inline {
  display: inline;
  width: fit-content;
}

.printonly {
  display: none;
}

/* ------- index ------ */

#homehouse {
  font-family: Arial, Helvetica, sans-serif;
  font-weight: bold;
  width: 100%;
  height: 100%;
  display: flex;
  position: relative;
  align-items: center;
  justify-content: center;
  background-color: orangered;
}

#centerstage {
  font: inherit;
  height: fit-content;
  width: fit-content;
  text-align: center;
  padding: .05rem .2rem;
}


#linklist,
#emailoptions {
  font: inherit;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  color: black;
}


.start-page-modal-button {
  text-transform: uppercase;
  font: inherit;
  position: absolute;
  color: orangered;
  cursor: pointer;
  text-decoration: 2px underline dotted;
  /* text-underline-offset: 2px; */
}

.leftbot {
  left: 1rem;
  bottom: 1rem;
}


.topright {
  top: 1rem;
  right: 1rem;
}

.lefttop {
  left: 1rem;
  top: 1rem;
}

.botright {
  bottom: 1rem;
  right: 1rem;
}

.button-highlight {
  cursor: pointer;
  background-color: yellow;
  padding: .05rem .2rem;
}

.largetext {
  font-size: 2rem;
}
/* ------- print ------ */

@media only screen and (max-width: 1000px) {
  html {
    font-size: 14px;
  }

  .nomobile {
    display: none !important;
  }

  .project[open] {
    width: 100%;
  }

  nav {
    position: sticky;
    top: 0;
    gap: 0.1rem;
    align-content: center;
    background-color: lightgrey;
  }

}

@media print {

  @page {
    padding: 3mm;
    size: A4 landscape;
  }

  html, body {
    padding: 0;
    overflow: visible !important;
  }

  html {
    font-size: 10pt;
  }

  body {
    overflow-y: visible !important;
      background-color: rgb(255, 0, 0);
      color: white;
  }

  nav {
    justify-content: flex-end;
    padding: 2pt;
    /* border-bottom: 1px solid white; */
    border-bottom: none;
    color: white;
    page-break-after: always;
    flex-direction: column;
    height: 100%;
    width: 100%;
    align-items: flex-start;
    gap: 0.1rem;
    font-weight: bold;
    font-size: 10pt;

  }

  .noprint {
    display: none !important;
  }

  .printonly {
    display: block !important;
  }

  .project-list {
    display: block;
  }

  .project {
    page-break-after: always;
  }

  img {
    max-height: 100vh;
    max-width: 100vw;
  }


}
