*, *::before, *::after {
  box-sizing: border-box;
}

* {
  margin: 0;
}

@media (prefers-reduced-motion: no-preference) {
  html {
    interpolate-size: allow-keywords;
  }
}
.notecookies {
	color: red; 
  animation: cssAnimation 0s 8s forwards;
  visibility: visible;
}
.notecookies::before   { content: 'cookies: ';  font-weight: bold;  }
@keyframes cssAnimation {
  to   { visibility: hidden;  }
}
body {
/*font-family:"Helvetica Neue", Helvetica, Arial, sans-serif; */
font-family:  -apple-system, BlinkMacSystemFont, Aptos, Roboto, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
margin: 2%; 
/*font-size: 1.05em;*/
 font-size: 1.050rem; font-weight: 500;
color: #35352f;
  line-height: 1.3;
  max-width: 75em;
-webkit-font-smoothing: antialiased;
}
.columns {
  display: grid;
  grid-template-columns: auto auto;
  column-gap: 1em;
}
@media only screen and (min-width: 75em) {
	html{background-color: #f8f8fb;}
	body{border-right: 0px solid #999; padding:1%;  background-color: #fff; border-radius: 20px;}
	}
	@media only screen and (max-width: 600px) {
ul,li {padding-left: 0; margin-left: 0.5em;}
ol,li {padding-left: 0; margin-left: 0.5em;}
.columns { grid-template-columns: auto; }
	}

img, picture, video, canvas, svg {
  display: block;
  max-width: 100%;
}

input, button, textarea, select {
  font: inherit;
}

p, h1, h2, h3, h4, h5, h6 {
  overflow-wrap: break-word;
}
p {
  text-wrap: pretty;
}
h1, h2, h3, h4, h5, h6 {
  text-wrap: balance;
}
a:link{
	text-decoration: none;
  color: #00e;
  background: transparent;
}
a:hover {
    color: #001a1a;
    text-decoration: underline
}
a:visited {
  /*color: #529;*/
  color: #007a7a;
  text-decoration: underline;
}
p, ul, ol, pre, blockquote {margin-bottom: 0.8em;}
header {margin-bottom: 1em;}
p.header {margin-bottom: 0;}
h1 {font-size: 1.60em;}
@media only screen and (min-width: 75em) {
	h1 {font-size: 2em;}
	}
h2 {margin: 0.5em 0 0.3em 0; font-size: 1.25em;}
h2.titol {margin: 0.5em 0 0.3em 0; font-size: 1.05em;}
hr {margin-bottom: 0.5em; margin-top:1em;
    border: 0;
    height: 1px;
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.75), rgba(0, 0, 0, 0));
}
.badge {
  background-color: yellow;
  color: red; font-weight: bold;
  padding: 2px 8px;
  text-align: center;
  border-radius: 5px;
}
footer p{margin-bottom: 0;}
strike{text-decoration: line-through; color: blue; text-decoration-color:black;}
.red {color: red;}
.green {color: green;}
.grey {background-color: #f8f8fb; padding: 0.5em;}
.note {background-color: #f8f8fb; padding: 0.5em 1em 0.5em 1em;}
.note::before   { content: 'Nota: ';  font-weight: bold;  }
img.responsive {
max-width: 100%; 
display: block; 
height: auto;
border:2px solid #eee; padding: 0.5%;
}
img.float { border-radius: 50%;
  object-fit: cover;
  }
textarea{padding: 0.5%;}
.upload {padding: 0.5em; background-color: #eee;}
input[type=submit] {
	margin-top: 1%;
    padding:5px 15px; 
    background:#ddd; 
    border:0 none;
    cursor:pointer;
    -webkit-border-radius: 5px;
    border-radius: 5px; 
}
blockquote {display: block; font-style: italic; margin:0.5em;}
blockquote p {margin-bottom: 0;}
blockquote p.first:before {
  content: '“ ';
}
blockquote p.first:after {
  content: ' ”';
}
blockquote cite {font-style: normal; font-weight: bold;}
code {
    background: #f9f9f9;
    border: 1px solid #eee;
    border-left: 3px solid #333;
    color: #222;
    page-break-inside: avoid;
    font-family: monospace;
    font-size: 1em;
    line-height: 1.1;
    margin-bottom: 1.6em;
    max-width: 100%;
    overflow: auto;
    padding: 1em 1.5em;
    display: block;
    word-wrap: break-word;
}
#root, #__next {
  isolation: isolate;
}
.gallery {
  display: grid;
  grid-template-columns: repeat(3, auto); /* 3 IMAGES PER ROW */
  grid-gap: 10px;
  max-width: 1200px;
  margin: 0 auto; /* HORIZONTAL CENTER */
}
/* (A2) ON SMALL SCREENS */
@media screen and (max-width: 640px) {
  .gallery {
    grid-template-columns: repeat(2, auto); /* 2 IMAGES PER ROW */
  }
}

/* (B) THUMBNAILS */
.gallery img {
  width: 100%;
  height: 200px;
  cursor: pointer;
  /* FILL, CONTAIN, COVER, SCALE-DOWN : USE WHICHEVER YOU LIKE */
  object-fit: cover;
}
.gallery img:fullscreen { object-fit: contain; }
figcaption{padding: 1em 0.3em; background-color: #eee;}