/* 
Title:		Lombardia Beni Culturali screen styles
Author: 	Codex, Pavia (IT) - http://www.codexcoop.it
Created: 	March 2017
Updated: 	November 2019
*/

/*
- LAYOUT
- TYPOGRAPHY
- HOME PAGE (and covers)
- COMPONENTS (tabs, pagination, lists, etc.)
- FORMS
- PAGE TEMPLATES (side / main, etc.)
*/

/* LAYOUT
------------------------------------------------------------------ */
body {
  color: #1C1F24;
  background: #e6e9f2;
}
a {
  color: #297A38;
}
#wrap {
  position: relative;
  margin: 0 auto;
  overflow: hidden;
  width: 100%;
  background: #fff;
}
@media (min-width: 768px) {
  #wrap {
    max-width: 760px;
  }
}
@media (min-width: 992px) {
  #wrap {
    max-width: 990px;
  }
}
@media (min-width: 1200px) {
  .container {
    width: 1040px; /* default 1170px; */
  }
  #wrap {
    max-width: 1080px;
  }
}
@media (min-width: 768px) {
  .navbar .container {
    padding-left: 0;
    padding-right: 0;
  }
  #content {
    min-height: 500px;
  }
}

/* Display utilities ----------- */
.d-none {
  display: none !important;
}
.d-block {
  display: block !important;
}
.d-inline-block {
  display: inline-block !important;
}
@media (min-width: 768px) {
  .d-md-none {
    display: none !important;
  }
  .d-md-block {
    display: block !important;
  }
  .d-md-inline-block {
    display: inline-block !important;
  }
}

/* Header ----------------------- */
#top-bar {
  padding: 6.5px 0;
  background: #297A38;
}
@media (min-width: 768px) {
  #top-bar {
    padding: 0;
    height: 20px;
  }
}
#logo-bar {
  padding-top: 18px;
  padding-bottom: 18px;
}
#logo-lbc {
  font-size: 18px;
  line-height: 29px;
  font-weight: bold;
  vertical-align: middle;
  color: #1C3564;
}
#logo-rl {
  margin-right: 24px;
}
#logo-bar-right .toggler {
  float: right;
}
#sm-sitesearch-form {
  min-height: 1px;
  background: #003366;
}
#sm-sitesearch-form form {
  padding: 12px 0;
}
@media (min-width: 768px) {
  #logo-bar {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  #logo-lbc {
    font-size: 21px;
  }
  #logo-bar-right form {
    float: right;
    padding-top: 8px;
  }
}

/* Navbar -------------- */
.navbar {
  min-height: 0;
  border-left: 0;
  border-right: 0;
  border-radius: 0;
}
#menu .navbar-nav {
  border-left: 1px solid #e3e3e3;
  font-size: 16px;
  font-weight: bold;
}
#menu .navbar-nav li {
  border-right: 1px solid #e3e3e3;
  border-bottom: 1px solid #e3e3e3;
}
#menu .navbar-nav .dropdown-menu li {
  border-bottom: 0;
}
#menu .navbar-nav a {
  color: #1C3564;
}
#menu .navbar-nav a.parent-link {
  display: inline-block;
  float: left;
  padding-right: 5px;
}
#menu .navbar-nav a.dropdown-toggle {
  display: inline-block;
  padding-right: 10px;
  padding-left: 10px;
}
#menu .navbar-nav .dropdown-menu {
  min-width: 220px;
}
@media (min-width: 768px) {
  .navbar {
    background: #f5f5f5;
  }
  #menu .navbar-nav li {
    border-bottom: 0;
  }
  #menu .navbar-nav > li > a {
    padding: 12px 15px;
  }
}

/* Bottoni (hamburger e search) -------------- */
.toggler-search {
  margin-left: 10px;
  border: 0;
  color: #fff;
  background: #003366;
}
.toggler-hamburger {
  border: 0;
  background: #fff;
}
.hamburger {
  display: block;
  width: 25px;
  height: 20px;
  position: relative;
  margin: 2px 0;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .5s ease-in-out;
  -moz-transition: .5s ease-in-out;
  -o-transition: .5s ease-in-out;
  transition: .5s ease-in-out;
  cursor: pointer;
}
.hamburger span {
  background: #000;
  display: block;
  position: absolute;
  height: 3px;
  width: 100%;
  border-radius: 3px;
  opacity: 1;
  left: 0;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .25s ease-in-out;
  -moz-transition: .25s ease-in-out;
  -o-transition: .25s ease-in-out;
  transition: .25s ease-in-out;
}
.hamburger span:nth-child(1) {
  top: 0px;
}
.hamburger span:nth-child(2), .hamburger span:nth-child(3) {
  top: 8px;
}
.hamburger span:nth-child(4) {
  top: 16px;
}
.hamburger.open span:nth-child(1) {
  top: 9px;
  width: 0%;
  left: 50%;
}
.hamburger.open span:nth-child(2) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}
.hamburger.open span:nth-child(3) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.hamburger.open span:nth-child(4) {
  top: 9px;
  width: 0%;
  left: 50%;
}

/* Main content ----------------- */
#breadcrumbs {
  margin-bottom: 20px;
  font-size: 12px;
  color: #777;
}
#content {
  margin-bottom: 40px;
}

/* Footer ----------------------- */
.footer {
  color: #fff;
  background-color: #003366;
  padding: 30px 15px;
}
@media (min-width: 768px) {
  .footer {
    padding: 30px;
  }
}
#footer-title {
  margin-bottom: 30px;
  font-size: 21px;
  font-weight: bold;
}
.footer a {
  color: #fff;
}
.footer a:hover {
  text-decoration: underline;
}
.footer [class^="col"] {
  padding-left: 0;
}
.footer .link-list {
  margin-left: 0;
  padding: 0;
  list-style-type: none;
}
.footer .link-list li {
  margin-left: 0;
}
.footer .link-list li a {
  font-size: 16px; /* .889em; */
  line-height: 2.3em;
  display: block;
  padding: 0 16px; /* 0 24px; */
  position: relative;
  /* text-decoration: none; */
}
#footer-copy {
  margin-top: 20px;
}
#back-to-top {
  display: none;
  position: fixed;
  z-index: 9999;
  bottom: 10px;
  right: 10px;
  width: 40px;
  height: 40px;
  font-size: 24px;
  line-height: 40px;
  text-align: center;
  text-decoration: none;
  color: #fff;
  background: #333;
  background: rgba(51, 51, 51, 0.7);
}
#back-to-top:hover {
  background: #666;
}

/* TYPOGRAPHY
------------------------------------------------------------------ */
h1, h2, h3, h4, h5 {
  margin-top: 0;
  margin-bottom: 10px;
  color: #404040;
}
h2 > a, h3 > a, h4 > a,
h2 > a:hover, h3 > a:hover, h4 > a:hover {
  color: #404040;
}
/* NOTA: h1 non utilizzato */
h2 { font-size: 21px; font-weight: 600; }
h3 { font-size: 18px; font-weight: 600; }
h4 { font-size: 16px; font-weight: 600; }
h2 span.subtitle {
  display: block;
  font-size: 18px;
}

ul, ol {
  margin: 0 0 10px 20px;
  padding: 0;
  list-style-position: outside;
}
hr {
  border-top: 2px solid #003366;
}
.text-warning {
  color: #f00;
}
.strong {
  font-weight: 600;
}
blockquote {
  font-size: 14px;
}

/* HOME PAGE
------------------------------------------------------------------ */
#hp-slider {
  width: 100%;
  margin-bottom: 20px;
}
h2.hp-section-title {
  margin-bottom: 15px;
/*
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
*/
  font-size: 18px;
  font-weight: bold;
  color: #1C3564;
}
h2.hp-section-title small {
  text-transform: none;
  font-size: 14px;
}
h3.hp-item-title {
  font-size: 18px;
  margin: 14px 0 12px 0;
}
div.hp-card {
  margin-bottom: 20px;
  padding: 9px;
  border: 1px solid #ddd;
}

/* Covers */
/* NOTA: il componente non è più in uso nella home (serviva per Luoghi della cultura presentati a striscia); forse in uso altrove */
.covers-wrap {
  position: relative;
  width: 100%;
  height: 200px;
}
.covers {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  width: 100%;
  height: 200px;
  margin: 0;
  padding: 0;
}
.covers-list {
  list-style: none;
  width: 30000px;
  margin: 0;
  padding: 0;
}
.covers-list li {
  width: 228px;
  height: 200px;
  float: left;
  margin-right: 10px;
  background: #eee;
}
.covers-list img {
  display: block;
}
.cover-title {
  margin: 6px 0 0;
  padding: 0 6px;
  line-height: 1.2;
}
.cover-title a, .cover-title a:hover {
  color: #404040;
}
a.browse {
  z-index: 99;
  position: absolute;
  top: 0;
  display: block;
  width: 40px;
  height: 200px;
  margin: 0;
  padding: 0;
  text-decoration: none;
  color: #404040;
  background: #ddd;
  background: rgba(221, 221, 221, 0.7);
}
a.browse.prev {
  left: 0;
}
a.browse.next {
  right: 0;
}
a.browse:hover {
  background-color: #ddd;
  background: rgba(221, 221, 221, 0.9);
}
a.browse.disabled {
  display: none;
}
a.browse i {
  position: absolute;
  top: 80px;
  left: 0;
  display: block;
  width: 40px;
  height: 40px;
  margin: 0;
  padding: 0;
  text-align: center;
  font-size: 24px;
  line-height: 40px;
}

/* Risorse collegate */
#external-resources [class^="col"] {
  margin-bottom: 20px;
}
#external-resources img {
  border: 1px solid #ccc;
}
#external-resources p {
  margin: 10px 0;
}

/* COMPONENTS
------------------------------------------------------------------ */
/* TODO: decidere se mantenere regola, e dove collocarla. Es.:
http://lbc2016.codexcoop.it/archivi/soggetti-conservatori/MIAA000A16/?tab=collegamenti */
a.link-muted {
  color: #666;
}
.nav-tabs {
  font-size: 13px;
  margin: 0 0 15px 0;
}
.nav-tabs > li {
  margin-right: 15px;
}
.nav-tabs > li > a,
.nav-tabs > li.active > a,
.nav-tabs > li > a:hover,
.nav-tabs > li.active > a:hover {
  padding: 5px 3px;
  border-top: 0;
  border-right: 0;
  border-left: 0;
  border-bottom: 4px solid transparent;
  background-color: transparent;
}
.nav-tabs > li > a {
  color: #999;
}
.nav-tabs > li > a:hover {
  border-color: #ccc;
  color: #333;
/* background: #eee; */
}
.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover {
  border-color: #999;
  color: #333;
}

/* Pagination */
.pagination {
  font-size: 13px;
}
.pagination > li > a, .pagination > li > span {
  padding: 5px 9px;
}
.page-entries-info {
  margin-top: 10px;
  margin-bottom: 10px;
}
.page-results, .sort-links {
  margin: 0;
  font-size: 12px;
  color: #666;
}
@media (min-width: 768px) {
  .sort-links {
    text-align: right;
  }
}
.prevnext {
  font-size: 85%;
  text-align: right;
}

/* Lists */
.list {
  list-style: none;
  margin: 10px 0;
  padding: 0;
}
.list a {
  font-weight: 500;
}
.list > li {
  padding: 5px;
  border-bottom: 1px solid #eee;
}
.list > li:nth-of-type(even) {
  background-color: #f9f9f9;
}
.list em {
  font-size: 12px;
  color: #777;
}

/* Textual search results */
.ts-r-title {
  font-size: 18px;
}
.ts-r-link {
  font-size: 12px;
  line-height: 20px;
  color: #999;
}
/* OPTIMIZE: .ts-hr, più leggero di hr default */

/* Grid results */
.thumbnail {
  display: table;
  width: 100%;
  margin: 0;
  padding: 0;
  border-collapse: collapse;
  text-align: center;
}
.work-img {
  display: table-cell;
  height: 210px; /* 220px o 230px */
  padding: 10px;
  vertical-align: middle;
  text-align: center;
  background: #eee;
}
@media (min-width: 768px) {
  .work-img img {
    max-width: 180px !important; /* 194px */
    max-height: 180px !important; /* 194px */
  }
}
.work-caption {
  margin: 0 0 20px 0;
  padding: 8px 4px 0;
  font-size: 13px;
  text-align: center;
}
.work-caption p {
  margin: 0;
}
@media (min-width: 768px) {
  .work-caption {
    margin: 0;
    height: 100px;
    overflow-y: hidden;
  }
}

/* Record BC (Beni Culturali) */
/* OPTIMIZE: max-width necessario per Firefox, ma semplificare marcatura ? */
.thumbs-table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 20px;
}
.thumbs-table td {
  padding: 8px;
  line-height: 1.42857143;
  vertical-align: middle;
}
@media (min-width: 768px) {
  .thumbs-table img {
    max-width: 108px;
  }
}
#record-bc h2 {
  margin-bottom: 5px;
  font-size: 18px;
  font-weight: 600;
}
#record-bc h3 {
  margin: 0 0 10px 0;
  font-size: 16px;
  font-weight: 500;
}
#record-bc h4 {
  margin: 20px 0 10px 0;
  padding: 0 0 5px 0;
  border-bottom: 1px solid #ddd;
  color: #333;
  font-size: 15px;
  font-weight: 600;
}
#record-bc strong {
  font-weight: 600;
  color: #666;
}
#record-bc p {
  margin: 0 0 8px;
}
#record-img {
  text-align: center;
}
#record-img img {
  display: block;
  margin: 10px auto;
  border: 1px solid #808080;
}
#record-credits {
  color: #666;
  margin-top: 2em;
  padding-bottom: 1em;
}
#record-credits p {
  margin: 0;
  padding: 0;
  font-size: 12px;
}
#record-bc .record-pdf {
  font-size: 12px;
  margin: 1.5em 0 1em 0;
}
#record-bc .record-pdf strong {
/*  font-weight: bold; */
}
.record-permalink { /* classe valida anche per risorse diverse da BC */
  margin: 20px 0 !important;
  font-size: 12px;
}

/* Tag cloud (ad es.: fotografie/soggetti/) */
.tc1 {
  font-size: 1.25rem;
}
.tc2 {
  font-size: 1.5rem;
}
.tc3 {
  font-size: 1.75rem;
}
.tc4 {
  font-size: 2rem;
}
.tc5 {
  font-size: 2.25rem;
}
.tc6 {
  font-size: 2.5rem;
}
.tc7 {
  font-size: 2.75rem;
}
.tc8 {
  font-size: 3.5rem;
}

/* FORMS
------------------------------------------------------------------ */
/* Trick: hide autofill Safari icon in input field */
input::-webkit-contacts-auto-fill-button {
  visibility: hidden;
  display: none !important;
  pointer-events: none;
  position: absolute;
  right: 0;
}
label {
  font-size: 13px;
  color: #666;
}
label.radio-inline {
  font-size: 14px;
}
select {
  color: #666 !important;
}
.btn-search {
  width: 120px;
  margin: 15px 0 0;
}

/* PAGE TEMPLATES
------------------------------------------------------------------ */
/* side and section homepages */
@media (min-width: 768px) {
  #main {
    min-height: 600px;
    border-left: 1px solid #ddd;
  }
}
#side h3 {
  margin: 0 0 6px 0;
  padding: 0 0 4px 0;
  border-bottom: 1px solid #ddd;
  font-size: 14px;
  font-weight: 600;
}
.group {
  margin: 0 0 20px 0;
}
#side li {
  font-size: 13px;
  color: #999;
}
#side .current_page_item a { /* = a.on di Percorsi legacy */
  font-weight: 500;
  color: #666;
}
/*
#side li, #menu-box li {
  line-height: normal;
  padding: 0 0 6px 12px;
  background: url(/img/square.gif) no-repeat 0 .4em;
}
#menu-box h3 {
  margin: 12px 0 8px 0;
  padding: 0 0 4px 0;
  border-bottom: 1px solid #ddd;
}
#menu-box .group {
  float: left;
  width: 165px;
  margin-right: 30px;
}
#menu-box .last {
  margin-right: 0;
}
*/
#side ul ul {
  margin: 4px 0 0 0;
}
#side ul ul li {
  margin: 0;
  padding-left: 12px;
  background: url(/img/square-w.gif) no-repeat 0 .4em;
}
#side p {
  margin: 0;
  padding: 0;
  line-height: normal;
  text-align: right;
  font-size: .9167em;
}
