/*!-----------------------------------------------------------
#
### Setup
#
==============================================================
==============================================================*/

/*!Normalize
--------------------------------------------- */
/*!normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bold}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}

/*!Viewport
--------------------------------------------- */
@viewport {width: device-width;} @-ms-viewport {width: device-width;}

/*!Box sizing
--------------------------------------------- */
/*!Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*, ::after, ::before {box-sizing: border-box;} html {box-sizing: border-box;}



/*!-------------------------------------------------------------
### VARIABLES
---------------------------------------------------------------- */

:root {
  /* Primary */
  --c-main:      #bb88cc;  /*  187, 136, 204  */
  --c-lighter:   #ddaaee;  /*  221, 170, 238  */
  --c-lightest:  #eeccf6;  /*  238, 204, 246  */
  --c-darker:    #aa77bb;  /*  170, 119, 187  */
  --c-darkest:   #9966aa;  /*  153, 102, 170  */
  --c-bluel:     #88aacc;  /*  136, 170, 204  */
  --c-bluem:     #4488bb;  /*  68, 136, 187   */
  
  /* Grays */
  --c-000:  #09090a;  /*  9, 9, 10       */
  --c-111:  #14151a;  /*  20, 21, 26     */
  --c-222:  #22242b;  /*  34, 36, 43     */
  --c-333:  #37373b;  /*  55, 55, 59     */
  --c-555:  #575961;  /*  87, 89, 97     */
  --c-777:  #737580;  /*  115, 117, 128  */
  --c-999:  #999cad;  /*  153, 156, 173  */
  --c-bbb:  #b3b6c7;  /*  179, 182, 199  */
  --c-ddd:  #d5dce8;  /*  213, 220, 232  */
  --c-ddd2: #e0e6ef;  /*  224, 230, 239  */
  --c-eee:  #ecf0f7;  /*  236, 240, 251  */
  --c-fff:  #f5f7fb;  /*  245, 247, 251  */  

  /* Fonts */
  --font-serif:  jubilat,serif;
  --font-sans:   proxima-nova,sans-serif;
  --font-head:   freelunch,sans-serif;
  --font-fa:     "Font Awesome 6 Pro";
  }



/*!-----------------------------------------------------------
#
### Base
#
==============================================================
==============================================================*/


/*!Setup
--------------------------------------------- */
/*! Define base font size so that 1rem ~ 10px */
html { 
  font-size: 62.5%;
  scroll-behavior: smooth;
  min-height: 100%;
  display: grid;
  align-items: center;
  justify-items: center;
  row-gap: 2rem;
  }
body {
  background: #000;
  position: relative;
  margin: 0;
  padding: 3rem;
  color: #222;
  font-family: var(--font-sans);
  font-weight: 300;
  font-style: normal; 
  font-size: 1.8rem;
  line-height: 1.6;
  overflow: auto;
  color: #eee;
  }

header {
  align-self: center;
  }
main.content {
  align-self: start;
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 400px;
  text-align: center;
  }
.info {
  text-align: left;
  }
  @media (min-width:1000px) {
    main.content {
      max-width: 640px;
      }
    }



/*!Links
--------------------------------------------- */
a {
  color: var(--c-darker);
  text-decoration-thickness: 0.75px;
  text-underline-offset: 1.75px;
  text-decoration-color: var(--c-lighter);
  }



/*!Typography
--------------------------------------------- */
h1 {
  margin: 0 0 3rem;
  font-family: var(--font-head);
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1;
  text-align: center;
  }
h2 {
  margin: 0.5em 0 0.2em;
  font-size: 1.2em;
  line-height: 1.4;
  }
.links h2 {
  margin: 2rem 0 0.8rem;
  font-size: 1.4rem;
  font-weight: 400;
  text-transform: uppercase;
  text-align: center;
  letter-spacing: 0.05em;
  color: #eeccf6;
  }
h3 {
  margin: 0.5em 0 0;
  font-size: 1em;
  }
h1.logo, div.hlogo {
  position: relative;
  z-index: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 2rem 0;
  }
h1.logo img {
  display: block;
  width: 100%;
  max-width: 150px;
  height: auto;
  aspect-ratio: 2.632 / 1;
  }
  @media (min-width:1000px) {
    h1.logo img {
      max-width: 200px;
      }
    }
p {
  margin: 0 0 0.8rem;
  }
.excerpt {
  margin: 1rem 0 2rem;
  font-size: 1.8rem;
  line-height: 1.4;
  text-align: center;
  }



/*!Lists
--------------------------------------------- */
ul {
  margin: 0.5em 0;
  }
ul.linklist {
  display: grid;
  justify-items: center;
  row-gap: 1.2rem;
  margin: 0;
  list-style: none;
  padding: 0;
  font-size: 1.6rem;
  }
.linklist li {
  display: block;
  margin: 0;
  padding: 0;
  width: 100%;
  max-width: 500px;
  }
.linklist li a {
  background: rgba(187,136,204,0.2);
  transition: background 0.2s ease-in-out;
  position: relative;
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 1.2rem;
  align-items: center;
  width: 100%;
  height: 100%;
  overflow: hidden;
  padding: 0.6rem 0.8rem;
  border: 1px solid rgba(187,136,204,0.1);
  border-radius: 8px;
  text-decoration: none;
  color: #eee;
  }
.linklist li a:hover {
  background: rgba(187,136,204,0.1);
  color: var(--c-lighter);
  }
.linklist span.img {
  background: var(--c-777);
  position: relative;
  display: grid;
  box-sizing: border-box;
  width: 40px;
  padding: 8px;
  border-radius: 4px;
  aspect-ratio: 640 / 512;
  }
.linklist .img img {
  display: block;
  object-fit: contain;
  width: 100%;
  height: 100%;
  filter: invert(100);
  }
.linklist a:hover span.img {
  filter: contrast(120%) saturate(60%) brightness(110%);
  }
.linklist li a span.txt {
  position: relative;
  z-index: 5;
  }

.list1 li:nth-child(n+1) span.img {background-color: #7081a4;}
.list1 li:nth-child(n+2) span.img {background-color: #658ea5;}
.list1 li:nth-child(n+3) span.img {background-color: #659894;}
.list1 li:nth-child(n+4) span.img {background-color: #729a70;}
.list1 li:nth-child(n+5) span.img {background-color: #a38e50;}
.list1 li:nth-child(n+6) span.img {background-color: #a18169;}
.list1 li:nth-child(n+7) span.img {background-color: #9f727f;}
.list2 li:nth-child(n+1) span.img {background-color: #9a6ea0;}
.list2 li:nth-child(n+2) span.img {background-color: #7e77a1;}
.list2 li:nth-child(n+3) span.img {background-color: #7081a4;}
.list2 li:nth-child(n+4) span.img {background-color: #658ea5;}
.list2 li:nth-child(n+5) span.img {background-color: #729a70;}
.list2 li:nth-child(n+6) span.img {background-color: #a38e50;}




/*!Social list
--------------------------------------------- */
.social {
  display: flex;
  column-gap: 1rem;
  justify-content: center;
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 2rem;
  line-height: 1;
  }
.social li {
  display: block;
  margin: 0;
  padding: 0;
  }
.social a, .social a:hover, .social a:active {
  text-decoration: none;
  }
.social a::before {
  display: block;
  content: '';
  padding: 0 .05em;
  opacity: 0.5;
  background-size: 17.5px 20px;
  background-position: center;
  background-repeat: no-repeat;
  width: 17.5px;
  height: 20px;
  filter: invert(66%) sepia(19%) saturate(888%) hue-rotate(240deg) brightness(90%) contrast(80%);
  }
.social a:hover::before {
  opacity: 1;
  }
.link-instagram a::before { /*! "fab fa-instagram" */ background-image: url("/_img/_icons/fab-instagram.svg"); }
.link-tiktok a::before { /*! "fab fa-tiktok" */ background-image: url("/_img/_icons/fab-tiktok.svg"); }
.link-facebook a::before { /*! "fab fa-square-facebook" */ background-image: url("/_img/_icons/fab-square-facebook.svg"); }
.link-threads a::before { /*! "fab fa-threads" */ background-image: url("/_img/_icons/fab-threads.svg"); }
.link-beventi a::before { /*! "fab fa-beventi" */ background-image: url("/_img/_icons/fab-beventi.svg"); }



/*!Accessibility
--------------------------------------------- */
.screen-reader-text, .sr-only, .screen-reader-response {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
  }
.screen-reader-text:focus, .sr-only:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, .6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  display: block;
  font-size: .875rem;
  font-weight: 700;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  }



/*!Misc
--------------------------------------------- */
.sub, .updated {
  font-size: 0.85em;
  color: #777;
  }
.updated {
  margin-top: 2rem;
  }



/*!Footer
--------------------------------------------- */
footer.site {
  margin: 3rem 0 2rem;
  font-size: 1.5rem;
  color: #777;
  text-align: center;
  }
.legal-text {
  padding-top: 2rem;
  }
.legal-text ul {
  list-style: none;
  margin: 0;
  padding: 0;
  }
.legal-text li {
  margin: 0;
  padding: 0;
  display: inline;
  }
.legal-text li:not(:last-of-type)::after {
  content: ' \00B7';
  }

footer.site a {
  color: var(--c-main);
  text-decoration: none;
  }
footer.site a:hover {
  text-decoration: underline;
  text-decoration-color: var(--c-main);
  text-decoration-thickness: 0.6px;
  }