/*
Theme Name: Forgotten Relics
Theme URI: http://www.forgottenrelics.co.uk/
Author: James Perry
Author URI: http://j-perry.net/
Description: A theme for the Forgotten Relics website.
Version: 1.0
*/

/*==============================================================================
 *
 * Top level stuff
 *
 *==============================================================================*/
html {
    margin: 0px;
}

body {
    font-family: 'Source Sans 3', sans-serif;
    margin: 0px;
    background-image: url("images/paper-background.jpg");
}

/* Font properties for main text */
div.maincontent p {
    font-size: 125%;
    line-height: 1.8;
    font-weight: 400;
}

/* Font properties for menu text */
nav.menu-header-container {
    font-size: 115%;
    line-height: 1.2;
    font-weight: normal;
}

/* Font properties for anniversary text */
div.on-this-day {
    font-size: 110%;
    line-height: 1.5;
    font-weight: 400;
}

body p {

}

/*==============================================================================
 *
 * Header
 *
 *==============================================================================*/
div.header {
    background-color: #990000;
    width: 100%;

    text-align: center;
    margin-top: 0px;
    margin-bottom: 0px;

    position: fixed;
    top: 0;
    z-index: 5;
}

div.header h1 {
    color: #cccccc;
}

div.header-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

img.masthead {
    width: 100%;
    margin: 0px;
}

div.sidebar-widget-container {
    display: flex;
    align-items: center;
    margin-right: 20px;
}

div#hamburger-wrapper {
    text-align: left;
    margin-left: 20px;
    /*display: none;*/
}

img#hamburger-img {
    width: 32px;
    height: 32px;
}

img#searchicon-img {
    width: 32px;
    height: 32px;
    margin-right: 5px;
}


div#popup-menu {
    background-color: #990000;
    display: none;
    position: absolute;
    z-index: 10;
}

div#header-menu-wrapper {
    display: none;
}

input.wp-block-search__input {
    height: 24px;
    width: 150px;
}

button.wp-block-search__button {
    height: 24px;
}

/*==============================================================================
 *
 * Information strip
 *
 *==============================================================================*/
div.infostrip {
    display: flex;
    flex-direction: row;
    justify-content: start;
    width: auto;
    height: 85px;
    margin: 0;
    padding: 0;
}

div.infostrip-item {
    width: auto;
}

div.infostrip-gap {
    width: 10px;
}

div.infostrip-sgap {
    width: 5px;
}

div.infostrip-text {
    width: auto;
    font-family: 'Source Sans Pro', sans-serif;
    padding-top: 16px;
    font-size: 16px;
    font-weight: 200;
}

div.infostrip-lowdot {
    width: 20px;
    font-family: 'Source Sans Pro', sans-serif;
    padding-top: 18px;
    font-size: 13px;
    font-weight: 800;
    text-align: center;
    color: white;
    background-image: url("images/lowdot.svg");
    background-position: 1px 18px;
    background-repeat: no-repeat;
}

div.infostrip-meddot {
    width: 20px;
    font-family: 'Source Sans Pro', sans-serif;
    padding-top: 18px;
    font-size: 13px;
    font-weight: 800;
    text-align: center;
    color: white;
    background-image: url("images/meddot.svg");
    background-position: 1px 18px;
    background-repeat: no-repeat;
}

div.infostrip-highdot {
    width: 20px;
    font-family: 'Source Sans Pro', sans-serif;
    padding-top: 18px;
    font-size: 13px;
    font-weight: 800;
    text-align: center;
    color: white;
    background-image: url("images/highdot.svg");
    background-position: 1px 18px;
    background-repeat: no-repeat;
}

div.infostrip-vhighdot {
    width: 20px;
    font-family: 'Source Sans Pro', sans-serif;
    padding-top: 18px;
    font-size: 13px;
    font-weight: 800;
    text-align: center;
    color: white;
    background-image: url("images/vhighdot.svg");
    background-position: 1px 18px;
    background-repeat: no-repeat;
}

.tooltiptext {
    visibility: hidden;
    width: 130px;
    background-color: #555;
    color: #fff;
    text-align: center;
    padding: 5px 0;
    position: absolute;
    z-index: 100;
    margin-left: -85px;
    margin-top: 10px;
}

.tooltiptextrisk {
    visibility: hidden;
    width: 130px;
	font-weight: 400;
    background-color: #555;
    color: #fff;
    text-align: center;
    padding: 5px 0;
    position: absolute;
    z-index: 100;
    margin-left: -65px;
    margin-top: -30px;
}

/*div.infostrip-item:hover .tooltiptext {
    visibility: visible;
}*/

/*==============================================================================
 *
 * Footer 
 *
 *==============================================================================*/
/*
 * This stuff basically replicates the main content structure above. 
 */
div.footer-column-wrapper {
    background-color: #a51414;
}

div.footer-columns {
    max-width: 1200px;
    display: table;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0px;
    margin-bottom: 0px;
}

div.footer-sidebar {
    float: right;
    margin: 20px;
    width: 250px;
}

div.footer-maincontent {
    max-width: 800px;
    float: right;
    margin-left: 0px;
    margin-right: 0px;
    /*background-color: #ffffff;*/
    padding: 10px;
}


div.footer {
    margin: 0px;
    /*margin: 30px;*/
    background-color: #a51414;
    text-align: left;
    color: #ffffff;
    /*max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0px;*/
    background-image: url("images/relicslogo.svg");
    background-repeat: no-repeat;
    background-position: 100% 20px;
    background-size: 90px;
    padding-top: 20px;
    padding-bottom: 20px;
}

div.footer h2 {
    /*margin-left: 20px;*/
    margin-right: 40%;
    font-size: 110%;
    color: #dddddd;
}

div.footer p {
    /*margin-left: 20px;*/
    margin-top: 20px;
    margin-right: 40%;
}

img.footer-social-media-icon {
    width: 40px;
    height: 40px;
}

div.menu-footermenu-container {
    text-align: center;
    font-size: 80%;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}

ul#menu-footermenu {
    list-style-type: none;
    color: #999999;
    overflow: hidden;
    display: inline-block;
}

ul#menu-footermenu li {
    float: left;
}

ul#menu-footermenu li a {
    color: #999999;
    text-decoration: none;
}

ul#menu-footermenu li a:hover {
    text-decoration: underline;
}

span.footer-menu-spacer {
    margin-left: 10px;
    margin-right: 10px;
}

/* hide the leftmost pipe so they only appear between the items and not before */
ul#menu-footermenu li:first-of-type span {
    display: none;
}

div.footer-copyright {
    /*float: right;*/
    text-align: center;
    font-size: 80%;
    color: #999999;
}

/*==============================================================================
 *
 * Sidebar 
 *
 *==============================================================================*/
div.sidebar {
    float: right;
    /*height: 100%;*/
    background-color: #ffffff;
    margin: 20px;
    width: 250px;
}

div.on-this-day {
    color: #dcbb8b;
    padding: 20px 15px 85px 15px;
    background-color: #a51414;
    background-image: url("images/calbase.jpg");
    background-repeat: no-repeat;
    background-position: bottom;
}

div.on-this-day h1 {
    color: #dddddd;
    font-size: 1.3rem;
    font-weight: bold;
}

div.cinema {
    height: 345px;
    padding: 50px 15px 85px 15px;
    margin-top: 15px;
    background-image: url("images/cinemabg.jpg");
    background-repeat: no-repeat;
    background-color: #a51414;
}

div.cinema h1 {
    margin-bottom: 20px;
    font-size: 1.3rem;
    font-weight: bold;
    color: #dcbb8b;
}

div.sidebar-socials {
    height: 140px;
    padding: 0px 15px 0px 15px;
    background-image: url("images/socialbg.jpg");
    background-repeat: no-repeat;
    background-color: #a51414;
}

div.sidebar-socials h1 {
    padding-top: 15px;
    color: #dcbb8b;
    font-size: 1.3rem;
    font-weight: bold;
}

div.menu-sidebarmenu-container {
    margin-left: 15px;
    margin-right: 15px;
}

ul.menu-sidebarmenu {
    list-style-type: none;
    color: #cccccc;
    padding-inline-start: 0px;
    text-align: left;
}

ul.menu-sidebarmenu li {
    margin-left: 20px;
    margin-right: 20px;
    margin-top: 5px;
    margin-bottom: 5px;
}

ul.menu-sidebarmenu li a {
    color: #cccccc;
    text-decoration: none;
}

ul.menu-sidebarmenu li a:hover {
    text-decoration: underline;
}

ul.menu-sidebarmenu li.menu-item-type-custom {
    color: #eeeeee;
    font-weight: bold;
    font-size: 120%;
    margin-top: 20px;
    margin-bottom: 10px;
    margin-left: 10px;
}

ul.menu-sidebarmenu li.menu-item-type-custom a {
    color: #eeeeee;
    text-decoration: none;
}

div.sidebar-widget-area {
    /*margin: 20px;*/
    display: none;
    overflow: hidden;
}

div.sidebar-widget-area label {
    display: none;
    font-weight: bold;
    color: #cccccc;
}

div.twitter-embed {
    margin: 20px;
}

div.social-links {
    width: 186px;
    height: 60px;
    background-image: url("images/social.png");
    margin: 20px;
}

a.twitter-link {
    margin-left: 90px;
}

/*==============================================================================
 *
 * Main content 
 *
 *==============================================================================*/
div.endcolumn {
    clear: both;
}

figcaption.wp-element-caption {
    color: #999999;
    font-weight: bold;
    font-size: 80%;
    margin-bottom: 30px;
}

figure img {
    max-width: 800px;
    margin-top: 30px;
    background-color: #a51414;

    background-image: url("images/piclogo.png");
    background-position: right bottom;
    background-repeat: no-repeat;
    padding-bottom: 30px;
}

div.noimgborder figure img {
    background-image: none;
    padding-bottom: 0px;
}

div.column-wrapper {
    padding-top: 0px;
}

div.columns {
    max-width: 1200px;
    display: table;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0px;
    margin-bottom: 0px;
}

div.maincontent {
    max-width: 800px;
    float: right;
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 20px;
    margin-bottom: 20px;
    background-color: #ffffff;
    padding: 10px;
}

div.maincontent h2 {
    font-size: 125%;
    color: #cc0000;
    margin-top: 30px;
    font-weight: bold;
}

div.maincontent h3 {
    font-size: 100%;
    color: #cc0000;
    margin-top: 20px;
    font-weight: bold;
}

/*
 * WordPress complains if the first heading is h1 and the others are h2.
 * So make it h2 and use first-of-type to style it differently from the rest.
 * Also add a horizontal rule under it.
 */
div.maincontent h2:first-of-type {
    display: none;
}

div.maincontent h1 {
    font-size: 225%;
    color: #666666;
    margin-top: 10px;
    font-weight: bold;
	line-height: 1.1;

    border-width: 0px 0px 2px 0px;
    border-color: #dddddd;
    border-style: solid;

	padding-top: 20px;
    padding-bottom: 10px;
    
    padding-right: 45px;
    background-image: url("images/red-logo.svg");
    background-repeat: no-repeat;
    background-size: auto 50px;
	background-position-x: right;
	background-position-y: 5px;
}

div.maincontent table {
    padding: 5px;
    background-color: #eeeeee;
    border-collapse: separate;
}

div.maincontent td {
    background-color: #cccccc;
    border-color: #eeeeee;
    border-style: solid;
    border-width: 0px;
    /*width: 50%;*/
}

div.maincontent a {
    color: #cc0000;
    font-weight: bold;
    text-decoration: none;
}

div.maincontent a:hover {
    text-decoration: underline;
}

p.copyright {
	color: #888888;
}

div.calendar {
    color: #999999;
   font-style: italic;
}

div.calendar ul {
    list-style-type: none;
    padding-inline-start: 0px;
    float: left;
    margin-left: 10px;
    margin-top: 0px;
}

div.calendar img {
    float: left;
}

div.maincontent p.has-background {
    margin-top: 0px;
    margin-bottom: 0px;
}

div.maincontent h2.has-background {
    margin-top: 0px;
    margin-bottom: 0px;
}

div.maincontent h3.has-background {
    margin-top: 0px;
    margin-bottom: 0px;
}

div.maincontent ul.has-background {
    margin-top: 0px;
    margin-bottom: 0px;
    padding-left: 60px;
}

figure.bridge-header-img {
    float: left;
}

figure.bridge-header-img img {
    width: 100px;
    margin: 10px;
    background-image: none;
    padding-bottom: 0px;
}

div.maincontent p {
    clear: both;
}

div.risk-ranking-key {
    display: flex;
    /*justify-content: space-between;*/
    flex-wrap: wrap;
}

div.risk-ranking-key img {
    margin: 15px;
    /*flex: 1;*/
}

figure.risk-information-table tr td:first-of-type {
    background-color: #ff9999;
    color: white;
}

/*==============================================================================
 *
 * Image galleries
 *
 *==============================================================================*/
div.gallery {
    overflow: hidden;
    position: relative;
}

div.gallery-inner {
    display: flex;
    position: relative;
    right: 0%;
}

img.gallery-image {
    width: 100%;
    flex-shrink: 0;
}


div.gallery-thumbnails {
    overflow: hidden;
    position: relative;
}

div.gallery-thumbnails-inner {
    display: flex;
    position: relative;
    right: 0%;
}

img.gallery-thumbnail-image {
    width: 20%;
    margin-right: 5px;
}


div.gallery-caption {
    font-weight: bold;
    margin-top: 10px;
    margin-bottom: 10px;
	color: #888888;
}

div.gallery-n-of-n {
    position: absolute;
    left: 0px;
    top: 20px;
    color: #ffffff;
    background-color: #666666;
    font-size: 120%;
    opacity: 0.5;
    padding: 10px;
}


div.gallery-button-overlay {
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    pointer-events: none;
}

span.gallery-button {
    font-size: 500%;
    color: #ffffff;
    background-color: #666666;
    cursor: pointer;
    opacity: 0.5;
    user-select: none;
    pointer-events: auto;
}

span.gallery-button:hover {
    background-color: #cc0000;
    opacity: 1;
}

div.riskranking {
    width: 130px;
    margin-bottom: 10px;
}

img.riskranking-image {
    width: 100%;
}

div.riskranking-detail {
    width: 130px;
    display: flex;
    justify-content: space-between;
    font-family: georgia;
    color: #ffffff;
    font-weight: bold;
}

div.riskranking-detail a {
    text-decoration: none;
    color: #ffffff;
}

div.riskranking-detail a:hover {
    text-decoration: none;
    color: #ffffff;
}

span.riskranking-detail-g {
    background-color: #999999;
    padding: 2px;
    border-radius: 50%;
    width: 1em;
    height: 1em;
    line-height: 1em;
    text-align: center;
    border: 1px solid white;
}

span.riskranking-detail-r {
    background-color: #ff9999;
    padding: 2px;
    border-radius: 50%;
    width: 1em;
    height: 1em;
    line-height: 1em;
    text-align: center;
    border: 1px solid white;
}

span.riskranking-detail-d {
    background-color: #ff0000;
    padding: 2px;
    border-radius: 50%;
    width: 1em;
    height: 1em;
    line-height: 1em;
    text-align: center;
    border: 1px solid yellow;
}

div.gallery-columns {
    display: flex;
}

div.gallery-column-main {
}

div.gallery-column-meta {
    margin: 10px;
}

div.page-history {
    background-color: #dddddd;
    padding-bottom: 10px;
    margin-bottom: 15px;
}

div.page-history h1 {
    background-image: none;
    background-color: #cc0000;
    color: #ffffff;
    font-size: 100%;
    font-weight: normal;
    padding: 5px;
}

div.page-history p {
    background-color: #666666;
    color: #ffffff;
    margin: 10px 10px 10px 10px;
}

/*==============================================================================
 *
 * Index pages 
 *
 *==============================================================================*/
table.page-info {
    width: 100%;
}

div.maincontent td.page-info-heading {
    font-weight: bold;
    color: #cc0000;
    font-size: 120%;
    width: auto;
}

div.maincontent td.page-info-heading-right {
    font-weight: bold;
    color: #cc0000;
    font-size: 120%;
    width: auto;
    text-align: right;
}

div.maincontent td.page-icon {
    width: 120px;
}

div.maincontent td.page-info-tag {
    background-color: #666666;
    color: #ffffff;
    /*width: 15%;*/
    width: 4em;
    padding-left: 5px;
}

div.maincontent td.page-info-single {
    width: auto;
}

div.maincontent td.page-info-left {
    /*width: 25%;*/
    width: 2.5em;
}

div.maincontent td.page-info-right {
}

div.story-info {
    margin-bottom: 20px;
}

div.alphabet-links {
    background-color: #cccccc;
    padding: 5px;
}

span.alphabet-link {
    background-color: #999999;
    color: #ffffff;
    padding: 5px;
}

span.alphabet-link a {
    color: #ffffff;
    text-decoration: none;
}

img.page-info-icon {
    width: 130px;
}

/*==============================================================================
 *
 * Database pages 
 *
 *==============================================================================*/
p.total-tunnels {
    color: #666666;
    font-size: 150%;
    font-weight: bold;
}

div.database-nav {
    display: flex;
    flex-wrap: wrap;
    background-color: #eeeeee;
}

div.database-nav-letter {
    display: flex;
    flex-direction: column;
    margin: 3px;
}

div.database-nav-letter-top {
    text-align: center;
    font-weight: bold;
    color: #ffffff;
    background-color: #cc0000;
    padding: 3px;
}

div.database-nav-letter-bottom {
    text-align: center;
    color: #ffffff;
    background-color: #000000;
    padding: 3px;
}

div.database-nav a {
    color: #ffffff;
}

table.database-nav-table {
}

table.database-nav-table tr {
    display: flex;
    flex-wrap: wrap;
}

table.database-nav-table tr td {
    text-align: center;
    color: #ffffff;
    background-color: #000000;
    padding: 3px;
    width: 25px;
}

table.database-nav-table tr:first-of-type td {
    text-align: center;
    font-weight: bold;
    color: #ffffff;
    background-color: #cc0000;
}

table.database-nav-table tr td a {
    color: #ffffff;
}

div.news-years a {
    font-weight: bold;
    color: #ffffff;
    background-color: #cc0000;
    padding: 2px;
}

div.news-years a.current-year {
    font-weight: bold;
    color: #ffffff;
    background-color: #999999;
    padding: 2px;
}

table.database-table {
    width: 100%;
}

table.database-table tr td {
    text-align: center;
}

table.database-table tr td.normal-tunnel {
    color: #cc0000;
    font-weight: bold;
    text-align: left;
}

tr.normal-tunnel-row td {
    color: #cc0000;
    font-weight: bold;
    text-align: left;
}

tr.reopened-tunnel-row td {
    color: #666666;
    font-weight: bold;
    text-align: left;
}

table.database-table tr td:first-of-type {
    color: #cc0000;
    font-weight: bold;
    text-align: left;
}

table.database-table tr td.reopened-tunnel {
    color: #666666;
    font-weight: bold;
    text-align: left;
}

table.database-table tr:first-of-type td {
    background-color: #ffffff;
    color: #000000;
    text-align: center;
    font-size: 75%;
}

table.database-table tr td.database-info {
    color: #666666;
    font-weight: normal;
    font-size: 80%;
    background-color: #ffffff;

    padding-left: 24px;
    background-image: url("images/in.png");
    background-repeat: no-repeat;
}

table.database-table-news {
    width: 100%;
}

table.database-table-news tr td:first-of-type {
    color: #cc0000;
    font-weight: bold;
    text-align: left;
    width: 60%;
}

table.database-table-news tr td.database-info {
    color: #666666;
    font-weight: normal;
    font-size: 80%;
    background-color: #ffffff;

    padding-left: 24px;
    background-image: url("images/in.png");
    background-repeat: no-repeat;
}

table.database-table-news tr td:nth-of-type(2) {
    width: 10%;
}

table.database-table-news tr td:nth-of-type(3) {
    width: 30%;
}

div#portal-map-container {
    /*max-width: 800px;
    max-width: 100%;*/
    width: 800px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}

div#portal-map {
    width: 100%;
    height: 100%;
    /*height: 800px;*/
}

div.portal-map-info {
    margin-top: 10px;
    display: flex;
}

div.portal-map-os-link {

}

div.portal-map-text {
    font-size: 90%;
}

div.featured-map-key {
    margin-top: 10px;
    display: flex;
}

div.featured-map-key-text {
    margin-left: 10px;
    margin-right: 30px;
}


div.map-info-window {
}

div.map-info-window p {
    font-size: 90%;
    color: #000000;
}

div.map-info-window a {
    color: #000099;
    font-weight: normal;
}

div.map-info-window h3 {
    font-size: 100%;
    color: #000000;
    font-weight: bold;
}

/*==============================================================================
 *
 * Buttons, widgets, etc. 
 *
 *==============================================================================*/
div.button {
    position: relative;
    display: inline-block;
}

div.button img.button-hover {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    object-fit: contain;
    opacity: 0;
}

div.button:hover img.button-hover {
    opacity: 1;
}


/*==============================================================================
 *
 * Media queries to adapt to different screen sizes
 *
 *==============================================================================*/
@media screen and (max-width: 1200px) {
    div.sidebar {
	display: none;
    }
    div.footer-sidebar {
	display: none;
    }
}

@media screen and (max-width: 800px) {
    /*
     * On narrow screens, hide the tunnel name column in the table
     */
    td.normal-tunnel {
	display: none;
    }
    td.reopened-tunnel {
	display: none;
    }
    td.tunnel-heading {
	display: none;
    }

    /*
     * Hide the icon in full metadata index tables
     */
    td.page-icon-fullmeta {
	display: none;
    }

    /*
     * Hide the paper background on small screens
     */
    div.maincontent {
	margin-top: 0px;
	margin-bottom: 0px;
    }

    /*
     * Place gallery metadata below main text on small screens
     */
    div.gallery-columns {
	flex-direction: column;
    }

    /*
     * Remove table padding and background on small screens
     */
    div.maincontent table {
	padding: 0px;
	background-color: #ffffff;
    }

    .hide-on-mobile {
	display: none;
    }

    div.header {
	position: fixed;
    }
}

@media screen and (min-width: 801px) {
    /*
     * On wider screens, hide the tunnel name row
     */
    tr.normal-tunnel-row {
	display: none;
    }
    tr.reopened-tunnel-row {
	display: none;
    }
    div.maincontent {
	padding-left: 20px;
	padding-right: 20px;
    }
    div.footer-maincontent {
	padding-left: 20px;
	padding-right: 20px;
    }

    .hide-on-desktop {
	display: none;
    }

    div.header {
	position: static;
    }
}
