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

* {
  margin: 0;
}

@media (prefers-reduced-motion: no-preference) {
  html {
    interpolate-size: allow-keywords;
  }
}
body {font-family:  Georgia, Times new roman, serif; margin: 2%; font-size: 1.05em;
color: #111;
  line-height: 1.1;
  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: #f6f6f6;}
	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, a:active {
	text-decoration: none;
  color: #00e;
  background: transparent;
}

a:visited {
  /*color: #529;*/
  color: #00e;
  background: transparent;
}
p, ul, ol, pre, blockquote {margin-bottom: 0.5em;}
header {margin-bottom: 1em;}
p.header {margin-bottom: 0;}
h1 {font-size: 1.60em;}
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));
}
footer p{margin-bottom: 0;}
strike{text-decoration: line-through; color: blue; text-decoration-color:black;}
.red {color: red;}
.green {color: green;}
.grey {color: grey;}
.note {background-color: aliceblue; padding: 0.5em 1em 0.5em 1em;}
.note::before   { content: 'Nota: ';  font-weight: bold;  }
img.responsive {
max-width: 100%; 
display: block; 
height: auto;
}
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;}