/* colours */

:root{
  --idaBlack: #463654;
  --idaOffWhite: #fff1fc;
  --idaGrey: #6d4c82;
  --idaWhite: #ffffff;
  --idaPink: #f0bcf0;
  --idaGreen: #54c1b6;
  --idaOrange: #f7834d;

  --globalWidth: 960px;
  --headerHeight: 224px;
  --selectionHeight: 90px;

  --serverErrorHeight: 300px;
  --serverErrorMargin: 69px;

  --navBoxSize: 48px;
  --navBoxMargin: 74px;
  --navBoxPosition: 106px;
  --navBoxFontSize: 28px;
}

@media (prefers-color-scheme: dark)
{

:root{
  --idaBlack: #fff1fc;
  --idaWhite: #161122;
}



}

.idaBlack{color: var(--idaBlack)!important;}
.idaOffWhite{color: var(--idaOffWhite)!important;}
.idaGrey{color: var(--idaGrey)!important;}
.idaGreen{color: var(--idaGreen)!important;}
.idaPink{color: var(--idaPink)!important;}
.idaOrange{color: var(--idaOrange)!important;}

/* text and font stuff */

body
  {
    font-family: 'Roboto', sans-serif;
    font-style: normal;
    color: var(--idaBlack);
    background-color: var(--idaWhite);
  }

h1
  {
    font-size: 96px;
  }

h2
  {
    font-size: 48px;
  }

p
  {
    font-size: 24px;
  }

img
  {
    image-rendering: pixelated;
  }

@media only screen and (min-height: 1090px)
  {
    :root
    {
      --globalWidth: 621px;
      --headerHeight: 348px;
      --selectionHeight: 180px;

      --navBoxSize: 96px;
      --navBoxMargin: 122px;
      --navBoxPosition: 74px;
      --navBoxFontSize: 56px;

      --serverErrorHeight: 440px;
      --serverErrorMargin: 0px;
    }

    h1
    {
      font-size: 120px;
    }

    h2
    {
      font-size: 58px;
    }

    p
    {
      font-size: 38px;
    }

    #article p
    {
      font-size: 24px;
    }
  }

/* a classes */

a
  {
    text-decoration: none;
    cursor: pointer;
  }

a.underline:hover

  {
    text-decoration: underline;
  }

/* popup/infobox */

div.popup
  {
    position: relative;
    background-color: var(--idaWhite);
  }

img.imgpopup
  {
    max-height: 621px;
    max-width: 900px;
    border: 1px solid var(--idaBlack);
    background: var(--idaWhite);
  }

/* item */

div.marker
{}

p.pmarker
  {
    width: 80px;
    font-size: 54px;
    clear: both;
    float: left;
  }

div.item
  {
    display: block;

    background-color: var(--idaWhite);

    position: relative;

    border: 1px solid var(--idaBlack);

    width: auto;
    margin-right: 8px;
    padding-bottom: 0px;


    height: 256px;
  }

div.item:last-child
  {
    margin-right: 0px;
  }

img.item
  {
    max-height: 256px;
    min-height: 256px;
    opacity: 1;
  }

/* desc */

div.desc
  {
    visibility: hidden;
    opacity: 0;
    display: inline-block;
    position: absolute;

    bottom: 0px;
  }

p.desc
  {
    background-color: var(--idaGrey);
    padding: 5px;
    margin: 0px;

    font-size: 16px;

    clear: both;
    float: left;
  }

p.desc:first-child
  {
    font-weight: bold;
  }


/* blog */

#article p.pd-alttext
  {
    font-style: italic;
    color: var(--idaBlack);

    padding-bottom: 24px;
  }

#article img
  {
    margin-top: 24px;

    object-fit: contain;

    max-width: var(--globalWidth);
    max-height: 400px;
    border: 1px solid white;
  }

#article:last-child p
  {
    margin-bottom: 0px;
  }


/* desc on hover */

div.item:hover div.desc
  {
    visibility: visible;
    opacity: 1;
  }

div.item:hover img.item
  {
    opacity: 0.7;
  }

img.imgpopup:hover
  {
    opacity: 0.7;
  }

/* scroll button */

a.scrollbutton
  {
    color: var(--idaBlack);
    font-size: var(--navBoxFontSize);
  }

div.scrollbutton
  {
    cursor: pointer;
    width: var(--navBoxSize);
    height: var(--navBoxSize);
    background: var(--idaWhite);
    border: 1px solid var(--idaWhite);

    position: absolute;

    z-index: 20;

    opacity: 1;


    top: var(--navBoxPosition);
  }

div.scrollbutton:hover
  {
    opacity: 1;
    background: var(--idaWhite);
    border: 1px solid var(--idaBlack);
  }

div.scrollbutton.left
  {
    left: 0px;
    margin-left: 12px;
  }

div.scrollbutton.right
  {
    right: 0px;
    margin-right: 12px;
  }

div.container
  {
    overflow-x: auto;
    white-space: nowrap;
    /*padding-left: 58px;*/
    /*padding-right: 51px;*/
    margin-left: var(--navBoxMargin);
    margin-right: var(--navBoxMargin);
  }

/* .item classes */

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

.nomargin
  {
    margin: 0px;
  }

.italic
  {
    font-style: italic;
  }

.center
  {
    text-align: center;
  }

.left
  {
    text-align: left;
  }

.inlineblock
  {
    display: inline-block;
  }

.transition
  {
    transition: opacity .5s, visibility .5s, border .5s, background .5s, display .5s;
  }

.noselect {
  -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Old versions of Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome, Edge, Opera and Firefox */

    /* thanks to the random stackoverflow user who wrote this bit of code */
}

::-webkit-scrollbar
  {
    display: none;
  }

.scrollbar
{
  scrollbar-width: none;
}

.overflow
{
  overflow-y: hidden;
}

.verborder
  {
    border: 1px solid var(--idaBlack);
    border-left: 0px;
    border-right: 0px;
  }

.width
  {
    width: var(--globalWidth);
  }