/* ==========================================================================
   Variabili Globali (Sostituiscono le vecchie impostazioni D7)
   ========================================================================== */
:root {
  --head-color: #333333;
  --nav-color: #7f0000;
  --headings-color: #000000;
  --link-color: #A42424;
  --text-color: #787878;
}

/* ==========================================================================
   Main Divisions
   ========================================================================== */
body {
  font-family: "Trebuchet MS", Arial, Helvetica, sans-serif;
  color: var(--text-color); 
  background: #333 url('../images/gga-floor-bckgrnd-3.jpg') repeat;
  background-attachment: fixed;
  font-size: 12pt;
}
#page {
  width: 910px;
  margin: 1em auto 1em;
  background: #FFF;
  padding: 25px; 
  overflow: hidden;
}
#header {
  height: 172px;
  line-height: 172px;
  overflow: hidden;
  background-color: var(--head-color);
}
#header-inner {height: 172px;}
#header-tear {
  background: url('../images/top-tear.png') no-repeat center top;
  height: 172px;
}
#navigation {
  clear: both;
  height: 41px;
  line-height: 41px;
  background-color: var(--nav-color);
}
#navigation-inner {height: 41px;}
#navigation-tear {
  background: url('../images/bottom-tear.png') no-repeat center top;
  height: 41px;
}
#block-gga-navigazioneprincipale ul li {
  display: inline;
  list-style-type: none;
  padding: 0 0.5em;
}
#main {
  float: left;
  background: #FFF url('../images/page-background.jpg') no-repeat center top;
  padding-top: 1em;
}
#main-content {
  width: 570px;
  padding: 15px 10px 0 20px;
  float: left;
}
#main-content-full {
  width: 870px;
  padding: 0 20px;
}
#sidebar {
  width: 280px;
  padding: 0 20px 0 10px;
  float: left;
  color: var(--text-color);
}
#footer {
  clear: both;
  width: 960px;
  margin: 0 auto;
  color: #FFF;
}

/* ==========================================================================
   Headings
   ========================================================================== */

h1, h2, h3, h4, h5, h6 {
  font-family: Georgia, "Times New Roman", Times, serif;
  margin: 0 0 .5em;
  font-weight: normal;
  color: var(--headings-color);
}
h1, #page-title h2 { font-size: 2em; }
h2 { font-size: 1.6em; }
h3 { font-size: 1.3em; }
h4 { font-size: 1.2em; }
h5 { font-size: 1.1em; }
h6 { font-size: 1.0em; }

/* ==========================================================================
   Common HTML Elements
   ========================================================================== */
p, ul, ol, dl {margin: 0 0 .5em;}
p {line-height: 1.4em;}
li a {line-height: 1.4em;}
a {
  color: var(--link-color);
  border-bottom: 1px dotted var(--link-color);
  text-decoration: none;
}
/*a:hover {text-decoration: underline;}*/
hr {
  border: 2px dotted #999;
  margin: 0 0 .5em;
  color: #FFF;
  background-color: #FFF;
  border-style: none none dotted;
}
textarea, input {
  border: 1px dotted #525252;
  padding: 2px;
}
legend a {border: 0px;}
blockquote {
  padding: 1em;
  font-style: italic;
}
table {
  width: 100%;
  margin-bottom: 1em;
  border-collapse: collapse;
}
table tr.even {background-color: #FFF;}
table tr td {padding: .5em .5em .5em .5em;}
th {
  border-bottom: 3px solid #ccc;
  padding-right: 1em;
  padding-left: .5em;
  text-align: left;
}
tbody tr {
  background-color: #eee;
  border-bottom: 1px solid #ccc;
  padding: 0.1em 0.6em;
}
img, img a {
  border: none;
  text-decoration: none;
}
/* Aggiornato per Drupal 11 (Status Messages) */
div.error, tr.error, .messages--error {
  padding: .5em .5em .5em 1.5em;
  background-color: #FFCCCC;
  margin-bottom: 1em;
  border: 1px solid #DD7777;
  color: #900;
}
div.status, tr.status, .messages--status {
  padding: .5em .5em .5em 1.5em;
  background-color: #DDFFCC;
  margin-bottom: 1em;
  border: 1px solid #92AA88;
  color: #230;
}
div.warning, tr.warning, .messages--warning {
  padding: .5em .5em .5em 1.5em;
  background-color: #FFFFDD;
  margin-bottom: 1em;
  border: 1px solid #F0C020;
  color: #8A6D3B;
}
.breadcrumb {
  margin-bottom: 1em;
  display: none;
}
.tabs {margin-bottom: 1em;}
.feed-icon {font-size: 8pt;}

/* ==========================================================================
   Header
   ========================================================================== */
#header-region {
  height: 41px;
  line-height: 41px;
  text-align: right;
  overflow: hidden;
}
#header-region h2 {display: none;}
#header-region ul {text-align: right;}
#header-region ul li {display: inline;}
#header-region ul li a {
  color: #FFF;
  border: none;
  font-size: .9em;
  margin: 0 .5em 0 0;
}
#header-region ul li.last a {margin: 0 20px 0 0;}
#header-region ul.menu li a:hover {border-bottom: 1px dotted #FFF;}
#logo-title { 
  width: 695px;
  float: left;
  clear: both;
  line-height: 131px;
  height: 131px;
}
#logo-title-full { 
  width: 910px;
  float: left;
  clear: both;
  line-height: 131px;
  height: 131px;
}
#logo img {
  vertical-align: middle;
  padding-left: 20px;
  float: left;
}
a#logo {border: none;}
#site-name, #site-slogan {
  float: left;
  text-transform: uppercase;
  font-family: Georgia, "Times New Roman", Times, serif;
}
#site-name a {
  letter-spacing: -1px;
  color: #FFF;
  padding-left: 20px;
  text-decoration: none;
  border: none;
  font-size: 2.2em;
}
#site-slogan {
  color: #B2B2B2;
  font-weight: bold;
  padding-left: .5em;
  font-size: 1.6em;
}
#search-box {
  width: 215px;
  float: left;
  line-height: 131px;
  height: 131px;
}
#search-block-form label, #search-block-form #edit-submit {display: none;}
#search-block-form input {
  border: 1px #525252 dotted;
  margin: 3px 8px 0 8px;
  padding: 0px 0 0 14px;
  width: 115px;
  font-size: .8em;
  font-weight: normal;
  border: 0;
  vertical-align: top;
  background: url('../images/gga-search-magnifier.png') left center no-repeat;
}
#name-slogan {display: none;}

/* ==========================================================================
   Navigation
   ========================================================================== */
#primary h2 {display: none;}
#navigation ul#menu-main li, #navigation ul.menu li {
  display: inline;
  padding: 0;
}
#navigation ul#menu-main li a, #navigation ul.menu li a {
  color: #FFF;
  text-transform: uppercase;
  font-weight: bold;
  border: none;
  font-size: .9em;
  margin: 0 0 0 .8em;
}
#navigation ul#menu-main {padding-left:0;}
#navigation ul#menu-main li.first a, #navigation ul.menu li:first-child a {margin: 0 0 0 20px;}
#navigation ul#menu-main li a:hover, #navigation ul.menu li a:hover {border-bottom: 1px dotted #FFF;}

/* ==========================================================================
   Mission Statement
   ========================================================================== */
#mission {
  padding: 1em;
  border: 1px dotted #D2D4C9;
  margin-bottom: 1em;
}

/* ==========================================================================
   Tabs
   ========================================================================== */
.tabs ul.primary {margin: 0;}

/* ==========================================================================
   Footer
   ========================================================================== */
 
#footer a, #footer h1, #footer h2, #footer h3, #footer h4, #footer h5, #footer h6 {color: #FFF;}
#footer-message-left {
  float: left;
  width: 100%;
  text-align: center;
}
#footer-region {
  margin-top: 1em;
  clear: both;
  text-align: center;
}
#attribution {
  font-size: .75em;
  float: right;
}

/* ==========================================================================
   Sidebar
   ========================================================================== */
#sidebar .inventory-current a, #sidebar .inventory-sold a {
  color: var(--text-color);
  border: none;
}
#sidebar .inventory-current a:hover, #sidebar .inventory-sold a:hover {
  text-decoration: underline;
  color: var(--text-color);
}
#sidebar ul li.expanded {border: none;}
#sidebar ul.menu li {margin: 0;}
#sidebar ul li {
  list-style-type: none;
  list-style-image: none;
  line-height: 2em;
  border-bottom: 1px dashed #D2D4C9;
}
#sidebar ul li.leaf {padding: 0;}
#sidebar p {text-align: justify;}
#sidebar h2 {
  letter-spacing: -1px;
  margin-bottom: .2em;
}
#sidebar .block {margin-bottom: 2em;}
#sidebar .block ul.menu {padding: 0 0 .5em 0;}
#sidebar .block ul.menu li li {padding-left: 1em;}
#sidebar .item-list ul {
  margin: 0;
  padding: 0;
}
#sidebar .item-list ul li {margin: 0;}
#sidebar h2 a, #sidebar h3 a {color: #a42424;}
.block {margin-bottom: 1em;}

/* ==========================================================================
   Node / Content
   ========================================================================== */
.user-picture {float: right;}
.picture a {border: none;}
.node {margin: 0 0 1em;}
.node ul.links li.first {padding: 0;}
.node-title a {border: none;}
.meta, .submitted {
  margin: -1em 0 1em;
  text-transform: uppercase;
  border-bottom: 1px dashed #D2D4C9;
  font-size: .8em;
}
.node .field-name-field-tags .field-label {
  display: inline;
  float: left;
  margin-right: .5em;
}
.node .field-name-field-tags .field-item {
  margin-right: 1em;
  float: left;
}
.node ul.links {
  display: block;
  clear: both;
  float: left;
}

/* ==========================================================================
   Comments
   ========================================================================== */
.comment {
  margin: 0 0 1em;
  border: 1px dotted #525252;
  padding: 1em;
}
.comment h3 a {border-bottom: none;}

/* ==========================================================================
   Books & Forum
   ========================================================================== */
.page-links a {border: none;}
#forum ul.links {margin-bottom: 1em;}
#forum tr th {text-align: center;}
#forum tr td {
  border: 1px solid #CCC;
  padding: 1em;
}
#forum tr td.forum {background-image: none;}
#forum tr td.last-reply {text-align: center;}
#forum tr td.forum .indent {margin-left: 0;}
#forum tr td.container {
  padding: 2em;
  text-align: center;
}
#forum tr.odd, #forum tr.even {background-color: #FFF;}

a.rss-feed-link {border: none;}
/* Contenitore e link dell'icona RSS */
.rss-feed-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px;
  border-radius: 50%;
  background-color: rgba(242, 101, 34, 0.1); /* Sfondo arancio trasparente */
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1),
              background-color 0.3s ease,
              box-shadow 0.3s ease;
  outline: none;
  text-decoration: none;
}
/* SVG dell'icona RSS */
.rss-feed-icon {
  fill: #f26522; /* Colore arancione standard RSS */
  transition: fill 0.3s ease, transform 0.3s ease;
}
/* Effetto al passaggio del mouse (Hover) e da tastiera (Focus) */
.rss-feed-link:hover,
.rss-feed-link:focus-visible {
  transform: translateY(-3px) scale(1.12); /* Sollevamento e ingrandimento con effetto elasticizzato */
  background-color: #f26522; /* Lo sfondo diventa arancione pieno */
  box-shadow: 0 6px 16px rgba(242, 101, 34, 0.35); /* Effetto bagliore sfumato */
}
/* Inversione colore dell'icona all'hover */
.rss-feed-link:hover .rss-feed-icon,
.rss-feed-link:focus-visible .rss-feed-icon {
  fill: #ffffff; /* L'icona diventa bianca per massimo contrasto */
  transform: rotate(8deg); /* Micro-rotazione dinamica */
}
/* Feedback visivo al click (Active) */
.rss-feed-link:active {
  transform: translateY(-1px) scale(1.02);
  box-shadow: 0 3px 8px rgba(242, 101, 34, 0.25);
}

/* ==========================================================================
   Fields
   ========================================================================== */
.field-label-inline .field-label, .field-label-inline .field-items {
   float: left;
   margin-right: 5px;
}
.field-label {font-weight: bold;}
/* Utility */
a.tabledrag-handle {border: none;}
/* Serch Bar */
#block-gga-search-form {
  position: absolute;
  float: right;
  display: block;
  border-radius: 9px;
  -webkit-border-radius: 9px;
  -moz-border-radius: 9px;
  margin: 141px 0 0 67px;
  padding: 0;
  border: 0;
  height: 21px;
  width: 128px;
  background-color: white;
  line-height: 0;
}
.help-block div div div {
  margin: 10px 0;
  background-color: blanchedalmond;
  padding: 8px;
  text-align: center;
}
#block-gga-search-form .form-submit {display: none;}
/* Collection Formatting */
.node-artcollections div.field-name-node-title {line-height: normal !important;}
.node-artcollections div.field {line-height: 1.4em;}
.node-artcollections .field-name-body {margin-top: 20px;}
.node-artcollections .field-name-field-collections-category {
  margin-top: 20px;
  display: block !important;
}
.node-artcollections .field-name-field-item-title {font-size: 1.2em;}
.field-name-field-item-title {font-weight: bold;}
.field-name-field-dimensions .field-label {
  font-weight: normal;
  line-height: 1.4em;
}
.field-name-dynamic-twig-fieldnode-submitter-auto {
  margin: -0.5em 0 1em;
  position: relative;
  border-bottom: 1px dashed #D2D4C9;
  font-size: .8em;
}
.field-name-dynamic-twig-fieldnode-submitter-auto p {margin: 0;}
.field-name-field-itemimage {margin-bottom: 15px;}
.field-type-taxonomy-term-reference {margin: 0 0 0.8em;}
.field-name-upload {margin: 0.8em 0 0;}
.field-name-field-sold {
  color: darkred;
  font-weight: bold;
  font-style: italic;
  padding-left: .5em;
}
.node-artcollections .field-name-field-sold {
  background-color: darkred;
  text-align: center;
  margin: 10px 0;
  color: #FFF;
  padding: .4em 0;
  font-style: italic;
}
#sb-title-inner, #sb-info-inner, #sb-loading-inner, div.sb-message {font-family: "Trebuchet MS",Arial,Helvetica,sans-serif;}
.views-row, .panels-flexible-artcollection_teasers {margin-bottom: 15px;}
#artcollections .block, .gga-event-teaser .block {margin: 0;}
#artcollections .ds-2col-stacked-fluid {padding-right: .5em;}
.artcollection-title {
  margin: 0;
  font-family: Georgia, "Times New Roman", Times, serif;
  font-size: 1.3em;
}
.artcollection-preview.group-left, .gga-event-teaser .group-left {width: 20%;}
.artcollection-preview img, .gga-event-teaser .group-left img {margin-top: .3em;}
.artcollection-body.group-right, .gga-event-teaser .group-right {width: 80%;}
.gga-event-teaser .content {padding-bottom: .5em;}
.gga-event-teaser .group-right div.field-name-field-eventdate, .gga-event-teaser .group-right div.field-name-body {padding-left: .5em;}
.artcollection-body div.field-name-field-dimensions, .artcollection-body div.field-name-field-dating, .gga-event-teaser .group-right div.field-name-body {font-size: .9em;}
.artcollection-body div.field-name-body, .gga-event-teaser .group-right div.field-name-body {
  margin-top: .5em;
  padding-right: .5em;
}
.gga-event-teaser .group-right div.field-name-body p {margin-bottom: 3px}
.artcollection-title.group-header {padding: 0 0 0.5em 0;}
.artcollection-body.group-right p {margin: 0;}
.artcollection-body.group-right .field-name-field-sold {padding: 0.4em 0 0.6em 0;}
/*.artcollection-preview.group-left img {padding-top: .3em;}*/
#artcollections h2.node-title {display: none;}

/* Forzo l'etichetta, i contenitori e i singoli item a stare sulla stessa riga */
.field-name-field-collections-category, .field-name-field-collections-category div, .field-name-field-collections-category .field-label, .field-name-field-collections-category .field-item {display: inline !important;}
.artcollection-body .field-item {line-height: 1.4em;}
.upcevents-date {font-size: .7em;}
.jcarousel-item a {line-height: .99em;}
.addthis_toolbox a {border-style: none;}
#sb-image a {border-bottom: 0 none transparent;}
.dd .ddTitle, .dd .ddChild {
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}
.dd .ddTitle img, .dd .ddChild a img {
  width: 20px;
  height: 12px;
  margin-top: -2px;
}
.node-unpublished {background-color: #ffdcdc;}
.field-name-field-preview a {border:none;}

/* TimeTable (by PaoloP) */
table#timetable {
  width: auto;
  border-collapse: separate;
}
#timetable tr td {
  padding-bottom:0;
  padding-left:0;
  padding-right:1em;
  padding-top:0.3em;
}
.tabs ul.primary {font-size: 8pt;}
.gga-event-teaser h2.node-title  {font-size: 1.3em;}
.gga-event-teaser .node-title a {
  border-bottom: 1px dotted #999;
  text-decoration: none;
}
div#block-gga-views-block-upcoming-events-block-1 .group-left {width: 40% !important}
div#block-gga-views-block-upcoming-events-block-1 .group-right {width: 60% !important}
.upcevents-date .field-name-title {
  font-size: 1.4em;
  letter-spacing: 0.01em;
}
div#block-gga-views-block-upcoming-events-block-1 .field-name-field-eventdate {text-decoration: bold;}
div#block-gga-views-block-upcoming-events-block-1 #event h2.node-title {display: none;}
div#block-gga-views-block-upcoming-events-block-1 .upcevents-date .block {margin-bottom: 1em;}
div#block-gga-views-block-upcoming-events-block-1 h2 {margin-bottom: .4em;}
.upcevents-preview.group-left .block {margin-bottom: .1em !important;}
form#contact-message-contatti-form label {
  display: block;
  font-weight: bold;
}
form#contact-message-contatti-form div.form-item {margin: 1em 0;}

/* Language Drop Down Fix */
#lang-dropdown-select-language_msdd {position: absolute;}
#block-lang-dropdown-language {height: 76px;}

/* Footer Instagram */
.instagram-icon a {border: none;}
.instagram-icon a img {
  width: 25px;
  margin-top: 5px;
}

/* Language Selector in Header */
div#block-gga-selettorelingua {
  margin: 0 0 0 95px;
  position: absolute;
  width: 107px;
  height: 25px;
  font-size: 10pt;
}
#block-gga-selettorelingua h2 {display: none;}
#block-gga-selettorelingua ul, #block-gga-selettorelingua li {
  margin: 0;
  padding: 0;
  line-height: 0;
}
#block-gga-selettorelingua li {
  list-style: none;
  margin-right: 8px;
  display: inline;
}
#block-gga-selettorelingua a {
  color: #fff;
  font-style: normal;
  border:none;
}
#block-gga-selettorelingua a.is-active {border-bottom: 1px dotted #FFF;}

/* Simple Instagram Block */
#block-simple-instagram-feed-simple-instagram-block h2 a {color: #000;}

/* Rendiamo la singola slide il contenitore di riferimento */
.slick-slide, .slide__content, .slide__media {position: relative !important;}
/* Stile per l'overlay della caption/titolo in basso */
.slick-caption, .slide__caption {
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  min-height: 30px !important;
  width: 100% !important;
  padding: 5px 10px !important;
  background: rgba(0, 0, 0, 0) !important; /* Nero al 65% di opacità */
  box-sizing: border-box !important;
  z-index: 2 !important;
  margin: 0 !important;
}

/* Stile del testo e dell'eventuale link del titolo */
.slick-caption *, .slide__caption * {
  color: #a42424 !important;
  text-decoration: none;
  font-size: .9rem;
  line-height: .99em;
  border-bottom-style: none;
}

/* Stile per l'overlay della caption/titolo in basso */
.slick-caption .views-field-title, .slide__caption .views-field-title {
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  padding: 5px 10px !important;
  background: rgba(204, 204, 204, 0.80) !important; /* Nero al 65% di opacità */
  box-sizing: border-box !important;
  z-index: 2 !important;
  margin: 0 !important;
}

.slick-arrow::before {color: #ccc !important;}
.slick-arrow:hover::before {color: #37465b !important;}
