/* ------------------------------------------------------------------------- */
/* Base HTML Elements Overrides                                              */
/* ------------------------------------------------------------------------- */

html {
    background-color: white;
}

body {
    background-color: transparent;
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 13px;
    margin-top: 0;
}

td {
    vertical-align: top;
}

h1 {
    font-family: Arial, Verdana, Helvetica, sans-serif;
    font-size: 15px;
    color: #385AA1;
    font-weight: bold;
    margin: 0;
    padding-bottom: 0;
    padding-top: 0;
}

h2 {
    font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
    font-size: 18px;
    color: #385AA1 !important;
    font-weight: bold;
    margin-bottom: 0;
    padding-bottom: 0;
    margin-top: 0;
    padding-top: 0;
}

h3 {
    font-family: Tahoma, Verdana, Helvetica, Arial, sans-serif;
    font-size: 11px;
    color: #3e2769;
    font-weight: bold;
    margin-bottom: 0;
    padding-bottom: 0;
    margin-top: 0;
    padding-top: 0;
}

h4 {
    font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
    font-size: 15px;
    color: #666666;
    font-weight: normal;
    margin-bottom: 0;
    padding-bottom: 0;
    margin-top: 0;
    padding-top: 0;
}

h5 {
    font-family: Arial, Verdana, Helvetica, sans-serif;
    font-size: 11px;
    color: #3e2769;
    font-weight: bold;
    margin-bottom: 0;
    padding-bottom: 0;
    margin-top: 0;
    padding-top: 0;
}

h6 {
    font-family: Arial, Verdana, Helvetica, sans-serif;
    font-size: 11px;
    color: #3e2769;
    font-weight: unset;
    margin-bottom: 0;
    padding-bottom: 0;
    margin-top: 0;
    padding-top: 0;
}

h4 + p {
    margin-top: 2px;
    padding-top: 0;
}

h2 + p {
    margin-top: 2px;
    padding-top: 0;
    margin-bottom: 2px;
    padding-bottom: 0;
}

form {
    margin: 0;
}

a:hover {
    text-decoration: underline;
}

/* ------------------------------------------------------------------------- */
/* Floats & Clears                                                           */
/* ------------------------------------------------------------------------- */

.float-left {float:left;}
.float-right {float:right;}
.float-none {float:none;}
.clear-left {clear:left;}
.clear-right {clear:right;}
.clear-both {clear:both;}
.clear-none {clear:none;}
.overflow-auto {overflow:auto;}

.align-right {text-align: right}
.align-left {text-align: left}
.align-center {text-align: center}

.align-top {vertical-align: top}
.align-middle {vertical-align: middle}
.align-bottom {vertical-align: bottom}

.horizontal-auto-margin {margin: 0 auto}
.vertical-auto-margin {margin: auto 0}

/* ------------------------------------------------------------------------- */
/* Bootstrap Overrides                                                       */
/* ------------------------------------------------------------------------- */

.modal-backdrop {
    z-index: 1000;
}

.btn-success:focus,
.btn-success:visited,
.btn-success:active,
.btn-success:hover,
.btn-success,
.open>.dropdown-toggle.btn-success {
    /*border-color: blue;*/
    background-color: #2F89B9;
}

.btn-medium-dark-blue {
    background: #7899b1 !important;
    border: none;
    border-radius: 0;
    text-transform: uppercase;
    width: 12.4rem;
    padding: 0.5rem;
    font-size: 1.395rem;
    font-family: Roboto,sans-serif;
}

.btn-dark-blue {
    background: #1f567d !important;
    border: none;
    border-radius: 0;
    text-transform: uppercase;
    width: 12.4rem;
    padding: 0.5rem;
    font-size: 1.395rem;
    font-family: Roboto,sans-serif;
}

.btn-very-dark-blue {
    background: #153c57 !important;
    border: none;
    border-radius: 0;
    text-transform: uppercase;
    width: 12.4rem;
    padding: 0.5rem;
    font-size: 1.395rem;
    font-family: Roboto,sans-serif;
}

.btn-off:focus,
.btn-off:visited,
.btn-off:active,
.btn-off:hover,
.btn-off {
    border-color: grey;
    background-color: lightgrey;
}

.btn.disabled, .btn[disabled], fieldset[disabled] .btn {
    opacity: 0.15;
}


.popover-title {
    background-color: #0b3e6f;
    color: white;
}

.fa-5 {
    font-size: 12em;
}

.popover[class*=tour-] {
    z-index: 55102;
}

/* ------------------------------------------------------------------------- */
/* Roboto Font Face                                                          */
/* ------------------------------------------------------------------------- */

@font-face {
    font-family: "Roboto";
    src: local(Roboto Thin), url("../fonts/roboto/Roboto-Thin.eot");
    src: url("../fonts/roboto/Roboto-Thin.eot?#iefix") format("embedded-opentype"), url("../fonts/roboto/Roboto-Thin.woff2") format("woff2"), url("../fonts/roboto/Roboto-Thin.woff") format("woff"), url("../fonts/roboto/Roboto-Thin.ttf") format("truetype");
    font-weight: 200; }

@font-face {
    font-family: "Roboto";
    src: local(Roboto Light), url("../fonts/roboto/Roboto-Light.eot");
    src: url("../fonts/roboto/Roboto-Light.eot?#iefix") format("embedded-opentype"), url("../fonts/roboto/Roboto-Light.woff2") format("woff2"), url("../fonts/roboto/Roboto-Light.woff") format("woff"), url("../fonts/roboto/Roboto-Light.ttf") format("truetype");
    font-weight: 300; }

@font-face {
    font-family: "Roboto";
    src: local(Roboto Regular), url("../fonts/roboto/Roboto-Regular.eot");
    src: url("../fonts/roboto/Roboto-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/roboto/Roboto-Regular.woff2") format("woff2"), url("../fonts/roboto/Roboto-Regular.woff") format("woff"), url("../fonts/roboto/Roboto-Regular.ttf") format("truetype");
    font-weight: 400; }

@font-face {
    font-family: "Roboto";
    src: url("../fonts/roboto/Roboto-Medium.eot");
    src: url("../fonts/roboto/Roboto-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/roboto/Roboto-Medium.woff2") format("woff2"), url("../fonts/roboto/Roboto-Medium.woff") format("woff"), url("../fonts/roboto/Roboto-Medium.ttf") format("truetype");
    font-weight: 500; }

@font-face {
    font-family: "Roboto";
    src: url("../fonts/roboto/Roboto-Bold.eot");
    src: url("../fonts/roboto/Roboto-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/roboto/Roboto-Bold.woff2") format("woff2"), url("../fonts/roboto/Roboto-Bold.woff") format("woff"), url("../fonts/roboto/Roboto-Bold.ttf") format("truetype");
    font-weight: 700; }

/* ------------------------------------------------------------------------- */
/* Open Sans                                                                 */
/* ------------------------------------------------------------------------- */

@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 300;
    src: local('Open Sans Light'), local('OpenSans-Light'), url(../fonts/OpenSans-300.woff) format('woff');
}
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 400;
    src: local('Open Sans'), local('OpenSans'), url(../fonts/OpenSans-400.woff) format('woff');
}

/* ------------------------------------------------------------------------- */
/* Font - General                                                            */
/* ------------------------------------------------------------------------- */
.bold {
    font-weight: bold;
}

/* Whitespace is preserved by the browser. Text will wrap when necessary, and on line breaks */
.pre-wrap {
    white-space: pre-wrap;
}

.black-on-white {
    background-color: #FFFFFF;
    color:black;
}

.no-border {
    border: none !important;
}

/* ------------------------------------------------------------------------- */
/* Padding                                                                   */
/* ------------------------------------------------------------------------- */

.no-padding,
.padding-0 {
    padding: 0 !important;
}

.padding-2 {
    padding: 2px;
}

.padding-4 {
    padding: 4px;
}

.padding-6 {
    padding: 6px;
}

.padding-8 {
    padding: 8px;
}

.padding-12 {
    padding: 12px;
}

.padding-16 {
    padding: 16px;
}

.top-padding-0 {
    padding-top: 0;
}

.top-padding-4 {
    padding-top: 4px;
}

.top-padding-8 {
    padding-top: 8px;
}

.top-padding-12 {
    padding-top: 12px;
}

.bottom-padding-0 {
    padding-bottom: 0;
}

.bottom-padding-8 {
    padding-bottom: 8px;
}

.bottom-padding-12 {
    padding-bottom: 12px;
}

.bottom-padding-20 {
    padding-bottom: 20px;
}

.top-bottom-padding-0 {
    padding-top: 0;
    padding-bottom: 0;
}

.top-bottom-padding-4 {
    padding-top: 4px;
    padding-bottom: 4px;
}

.top-bottom-padding-8 {
    padding-top: 8px;
    padding-bottom: 8px;
}

.top-bottom-padding-12 {
    padding-top: 12px;
    padding-bottom: 12px;
}

.left-right-padding-0 {
    padding-left: 0;
    padding-right: 0;
}

.left-right-padding-4 {
    padding-left: 4px;
    padding-right: 4px;
}

.left-right-padding-8 {
    padding-left: 8px;
    padding-right: 8px;
}

.left-right-padding-12 {
    padding-left: 12px;
    padding-right: 12px;
}

.right-padding-4 {
    padding-right: 4px;
}

.right-padding-8 {
    padding-right: 8px;
}

.right-padding-12 {
    padding-right: 12px;
}

.left-padding-4 {
    padding-left: 4px;
}

.left-padding-8 {
    padding-left: 8px;
}

.left-padding-12 {
    padding-left: 12px;
}


/* ------------------------------------------------------------------------- */
/* Margin                                                                    */
/* ------------------------------------------------------------------------- */

.no-margin,
.margin-0 {
    margin: 0;
}

.no-horizontal-margin,
.horizontal-margin-0 {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.no-vertical-margin,
.vertical-margin-0 {
    margin-top: 0;
    margin-bottom: 0;
}

.margin-2 {
    margin: 2px;
}

.margin-4 {
    margin: 4px;
}

.margin-6 {
    margin: 6px;
}

.margin-8 {
    margin: 8px;
}

.margin-12 {
    margin: 12px;
}

.margin-16 {
    margin: 16px;
}

.top-margin-0 {
    margin-top: 0;
}

.top-margin-12 {
    margin-top: 12px;
}

.bottom-margin-8 {
    margin-bottom: 8px;
}

.bottom-margin-12 {
    margin-bottom: 12px;
}

.top-bottom-margin-12 {
    margin-top: 12px;
    margin-bottom: 12px;
}

.top-bottom-margin-8 {
    margin-top: 8px;
    margin-bottom: 8px;
}

.top-bottom-margin-4 {
    margin-top: 4px;
    margin-bottom: 4px;
}

.prevent-copy {
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -o-user-select: none;
    user-select: none;
}

/* ------------------------------------------------------------------------- */
/* Basic Layout Helpers                                                      */
/* ------------------------------------------------------------------------- */

.full-width {
    width: 100%;
}

.full-height {
    width: 100%;
}

.width-5em {
    width: 5em;
}

.remove-bottom-margin {
    margin-bottom: 0 !important;
}

a.goto-anchor {
    position: relative;
    display: block;
}

/* ------------------------------------------------------------------------- */
/* Page                                                                      */
/* ------------------------------------------------------------------------- */

#page-wrapper {
    background-color: transparent;
    margin: auto;
    max-width: 990px;
    position: relative;
}

#page-leaderboard-container {
    background: transparent;
    padding-bottom: 0;
    clear: both;
}

#page-leaderboard-container .mobile-content {
    padding: 0;
    width: 100%;
}

#page-leaderboard-container .adverts-carousel {
    margin: 9px auto;
}

#page-leaderboard-container .desktop-content .adverts-carousel {
    max-width: 750px;
}

#page-leaderboard-container .desktop-content {
    text-align: center;
}

#page-main-container {
    padding-top: 10px;
    background-color: white;
    border: 2px #2F89B9;
    border-right-style: solid;
    border-left-style: solid;
}

.main.container {
    padding-left: 0;
    padding-right: 0;
    margin-left: 0;
    margin-right: 0;
}

/* ------------------------------------------------------------------------- */
/* Page - Footer                                                             */
/* ------------------------------------------------------------------------- */

footer {
    /*background-color: #eaeaea;*/
    background-color: #eaf3f8;

    padding-bottom: 0 !important;
    margin-bottom: 60px;

    border: 2px #2F89B9;
    border-right-style: solid;
    border-bottom-style: solid;
    border-left-style: solid;
}

footer .bottom-links {
    background: #eaf3f8;
    margin: 0 auto;
    padding: 4px 0;
    text-align: center;
    font-size: 11px
}

footer .footer-tag-line {
    color: #385AA1;
}

/* ------------------------------------------------------------------------- */
/* Page - Menu                                                               */
/* ------------------------------------------------------------------------- */

#menu-container {
    background-color: #2F89B9;
    clear: both;
    border-top-right-radius: 12px;
}

#mobile-menu-button-container {
    display: inline;
    padding: 0 !important;
    float: right;
}

#mobile-menu-button-container img {
    height: 100%;
}

.mobile-buttons {
    padding-top: 0;
    padding-bottom: 0;
    height: 47px;
    width: auto;
    background-color: #2F89B9;
}

#main-nav-bar {
    padding-left: 0;
    padding-right: 0;
    float: left;
    clear: none;
    background-color: rgb(217, 237, 247);
    display: inline-block;
    position: absolute;
    border-top-right-radius: 12px;
    width: 100%;
}

.mainmenu {
    font-weight: bold;
}

ul.mainmenu > li.active > a,
ul.mainmenu > li:hover > a {
    border-bottom: 1px solid lightblue;
    border-left: 1px solid lightblue;
}

/* ------------------------------------------------------------------------- */
/* Page - Menu - Logos                                                       */
/* ------------------------------------------------------------------------- */

#desktop-logo {
    display: none;
    height: 95px;
    width: 124px;
    border-top-left-radius: 12px;
    background: #2F89B9;
    float: left;
    padding: 0
}

.cw-logo {
    width: 100%;
}

/* ------------------------------------------------------------------------- */
/* Page - Menu - Social Icons                                                */
/* ------------------------------------------------------------------------- */

.menu-item-social,
.menu-item-social a:active,
.menu-item-social a:hover {
    text-decoration: none;
    border-radius: 10px;
    box-shadow: none;
    border-bottom: none !important;
    border-left: none !important;
    padding: 2px !important;
}

.menu-item-social {
    margin-right: 0;
}

.menu-item-social a {
    padding: 0 !important;
}

.menu-item-social img {
    height: 40px !important;
    padding-left: 2px !important;
    padding-top: 0;
}

/* ------------------------------------------------------------------------- */
/* Page - Main Content                                                       */
/* ------------------------------------------------------------------------- */

.main-content {
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 0;
    margin-right: 0;
}

/* Main Content Container */
.main-content-container {
    padding-bottom: 12px;
}

/* Main Content Title: Based on H2 tag */
.main-content-title {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 18px;
    color: #385AA1 !important;
    font-weight: bold;
    margin-bottom: 0;
    padding-bottom: 8px;
    margin-top: 0;
    padding-top: 0;
    display: block;
}

.main-content-title-static {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 18px;
    color: #385AA1 !important;
    font-weight: bold;
    margin-bottom: 0;
    padding-bottom: 0;
    margin-top: 0;
    padding-top: 0;
    display: block;
}

/* Main Content Title: Based on H1 tag */
.main-content-sub-title {
    font-family: Arial, Verdana, Helvetica, sans-serif;
    font-size: 15px;
    color: #385AA1 !important;
    font-weight: bold;
    margin-bottom: 0;
    padding-bottom: 8px;
    margin-top: 0;
    padding-top: 0;
    display: block;
}

/* Main Content Body: Based on bootstrap row */
.main-content-body {
    margin-right: -15px;
    margin-left: -15px;
}

.main-content-body:before,
.main-content-body:after {
    display: table;
    content: " ";
}

.main-content-body:after {
    clear: both;
}

/* Single Column Content: Fits inside the Main Content Body */
.single-column-content {
    position: relative;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 15px;
    float: left;
    width: 100%;
}

/* Double Column Content: Fits inside the Main Content Body */
.double-column-content {
    position: relative;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 15px;
    float: left;
    width: 50%;
}

/* ------------------------------------------------------------------------- */
/* Page - Main Content - Articles                                            */
/* ------------------------------------------------------------------------- */

section.article .article-lead-paragraph a,
section.article .article-lead-paragraph a,
section.article .article-explanation a,
section.article .article-additional-information a {
    color:blue !important;
}

.article-headline {
    font-family: Verdana, Geneva, sans-serif !important;
    font-size: 17px !important;
    font-weight: bold !important;
    line-height: 20px !important;
    text-align: left !important;
    padding-bottom: 0.5em !important;
}

.article-feature-headline {
    font-family: Verdana, Geneva, sans-serif !important;
    font-size: 24px !important;
    font-weight: bold !important;
    line-height: 27px !important;
    text-align: left !important;
    padding-bottom: 0.5em !important;
}

.article-lead-paragraph {
    font-family: Verdana, Geneva, sans-serif !important;
    font-size: 12px !important;
    font-weight: normal !important;
    line-height: 15px !important;
    text-align: left !important;
    padding-bottom: 0.5em !important;
}

.article-explanation {
    font-family: Verdana, Geneva, sans-serif !important;
    font-size: 13px !important;
    font-weight: normal !important;
    line-height: 18px !important;
    text-align: justify !important;
}

.article-additional-info {
    font-family: Verdana, Geneva, sans-serif !important;
    font-size: 12pt !important;
    font-weight: normal !important;
    line-height: 1.4 !important;
    text-align: left !important;
}

.full-story-image {
    width: 100%;
}

.previous-article-section {
    padding-bottom: 0;
}

/* ------------------------------------------------------------------------- */
/* Page - Main Content - 4 Day Outlook Chart                                 */
/* ------------------------------------------------------------------------- */

/* Outlook chart image has whitespace on image sides so we need to stretch the width out 8px into the margin */
.outlook-chart-image {
    width: 100%;
    margin-left: -8px;
    margin-right: -8px;
}


/* ------------------------------------------------------------------------- */
/* Page - Main Content - Beach Report / Surfing Report                       */
/* ------------------------------------------------------------------------- */

.surfing-report-detail-title,
.beach-report-detail-title {
    padding: 0 0 8px 0;
    height: 100%;
    width: 5em;
    color: black;
    background-color: white;
}

.surfing-report-detail-value,
.beach-report-detail-value {
    padding: 0 0 8px 4px;
    vertical-align: top;
    color: black;
    background-color: white;
}

.surfing-report-update-time,
.beach-report-update-time {
    padding-bottom: 12px;
    background-color: white;
    color: black;
    font-weight: bold;
}

.surfing-report-text,
.beach-report-text {
    padding-bottom: 12px;
    white-space: pre-wrap;
}

/* ------------------------------------------------------------------------- */
/* Page - Main Content - Boating Outlook Latest                              */
/* ------------------------------------------------------------------------- */

.boating-outlook-timestamp {
    padding: 8px 0;
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 12px;
    line-height: 12px;
    font-weight: bold
}

.boating-outlook-report-text {
    padding: 8px 0 0;
    /*white-space: pre-wrap;*/
}

.boating-outlook-image-details-container {
    padding-bottom: 8px;
    color: #1f567d;
    font-weight:bold;
    width: 100%;
    max-width: 300px;
    margin-left: auto;
    margin-right: auto;
    display: block;
    text-align: center;
}

.boating-outlook-image-details-content {
    white-space: nowrap;
    margin: 0;
}

.boating-outlook-image {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    display: block;
}

/* ------------------------------------------------------------------------- */
/* Page - Main Content - Boating Outlook Latest                              */
/* ------------------------------------------------------------------------- */

.webcams-button-container {
    display: inline-block;
    position: relative
}
.webcams-button-link {
    color: transparent;
    margin: 4px;
    display: inline-block;
}
.webcam-button {
    white-space: normal;
    height: 49px;
    padding-top: 0;
    padding-bottom: 0
}
.webcam-player-hidden {
    display: none;
}

/* ------------------------------------------------------------------------- */
/* Page - Main Content - Current Weather                                     */
/*                                                                           */
/* .main-content-body                                                        */
/*      .single-column-content                                               */
/*          .current-weather-location-container                              */
/*              .current-weather-location-content                            */
/*                  .current-weather-location-title                          */
/*                  .current-weather-location-timestamp                      */
/*              .current-weather-location-content                            */
/*          .current-weather-detail-container                                */
/*              .current-weather-detail-content                              */
/*                  .current-weather-detail-title                            */
/*                  .current-weather-detail-value                            */
/* ------------------------------------------------------------------------- */

.current-weather-location-container {
    margin: 0;
    padding: 0;
}
.current-weather-location-container:before,
.current-weather-location-container:after {
    display: table;
    content: " ";
}
.current-weather-location-container:after {
    clear: both;
}
    .current-weather-location-content {
        position: relative;
        min-height: 1px;
        padding: 0;
        float: left;
        width: 100%;
    }
        .current-weather-location-title {
            color: #385AA1;
            padding: 0 0 10px 0;
            font-weight: bold;
        }
        .current-weather-location-timestamp {
            color: #333333;
            padding: 0 0 12px 0
        }
.current-weather-detail-container {
    margin: 0;
    padding: 8px 0 0;
}
.current-weather-detail-container:before,
.current-weather-detail-container:after {
    display: table;
    content: " ";
}
.current-weather-detail-container:after {
    clear: both;
}
    .current-weather-detail-content {
        padding: 12px 2px 0;
        text-align: center;

        width: 20%;

        float: left;

        position: relative;
        min-height: 1px;
    }
        .current-weather-detail-title {
            color: #385AA1;
            padding-bottom: 12px;
            font-size: 13px
        }
        .current-weather-detail-value {
            padding: 0;
            position: relative;
            min-height: 1px;
            float: left;
            width: 100%;
        }

/* ------------------------------------------------------------------------- */
/* Page - Main Content - Weather Forecast                                    */
/* ------------------------------------------------------------------------- */

td.weather-forecast-day-detail-title {
    width: 5em;
    color: black
}
tr:not(:last-child) > td.weather-forecast-day-detail-title {
    height: 100%;
    padding: 0 0 8px 0;
}
tr:last-child > td.weather-forecast-day-detail-title {
    padding: 0;
}

td.weather-forecast-day-detail-value {
    vertical-align: top;
    color: black
}
tr:not(:last-child) > td.weather-forecast-day-detail-value {
    padding: 0 0 8px 4px;
}
tr:last-child > td.weather-forecast-day-detail-value {
    padding: 0 0 0 4px;
}

/* ------------------------------------------------------------------------- */
/* Page - Main Content - Cyclone Warning                                     */
/* ------------------------------------------------------------------------- */

.cyclone-track > h3 {
    font-size: 18px;
    color: #666666;
    font-weight: bold;
    margin: 16px 0;
}
.cyclone-track > table {
    width: 100%;
}
.cyclone-track > p > img {
    width: 100%;
    height: 100%;
}

#track-map-legend {
    width: 100%;
    font-family: Arial,Helvetica,Verdana,sans-serif;
    font-size: 12px;
}
#track-map-legend h2 {
    border: 1px solid #ccc;
    background-color: #f8f8f8;
    padding: 0.5em 10px;
    margin: 0;
    width: auto;
    color: #444;
    font-size: 10pt;
    font-weight: bold;
    text-align: left;
}
#track-map-legend h2 span {
    font-size: 0.8em;
    color: #333;
    font-weight: normal;
    text-transform: none;
}
#track-map-legend dl {
    border: 1px solid #ccc;
    border-top: none;
    background-color: #f8f8f8;
    padding: 0;
    margin: 0;
    overflow: auto;
}
#track-map-legend dt, #track-map-legend dd {
    padding: 0.4em 10px 0.3em;
    margin: 0;
    font-size: 0.9em;
    font-weight: normal;
    color: #333;
}
#track-map-legend #community-threat dt {
    width: 140px;
    float: left;
    padding: 0.8em 10px;
    width: 25%;
}
#track-map-legend #community-threat dd {
    width: 20%;
    float: left;
    padding: 0.9em 0 0.7em;
    border-right: 1px solid #ccc;
}
#track-map-legend #community-threat dd.last {
    border-right: none;
}
#track-map-legend #community-threat  {
    width: 100%;

}
#track-map-legend .list-columns {
    border: none;
    overflow: auto;
    margin: 0.5em 0;
    height: auto;
}
#track-map-legend .list-column {
    float: left;
    margin-right: 10px;
}
#track-map-legend .list-column h2{
}
#track-map-legend .list-column.last {
    margin-right: 0;
}
#track-map-legend .list-column dl {
    height: 22em;
    padding-top: 0.5em;
}
#track-map-legend .list-column dt {
    float: left;
    clear: left;
    width: 120px;
}
#track-map-legend .list-column dd {
    float: left;
    clear: none;
    margin-bottom: 0.5em;
    height: 2em;
}
#track-map-legend .list-column dd img {
    padding: 0;
    margin: 0 0 8px;
}

/* ------------------------------------------------------------------------- */
/* Page - Main Content - Diving Report                                       */
/* ------------------------------------------------------------------------- */

.diving-report-location-title-container {
    background-color: #2F89B9;
    margin-bottom: 6px;
}
.diving-report-location-title {
    color: white;
    font-size: 15px;
    font-weight: bold;
    /*margin: 6px 0;*/
    /*display: block;*/
}

.diving-report-source-website {
    text-decoration: none;
    color: #2F89B9 !important;
}
.diving-report-text {
    padding-bottom: 8px;
    white-space: pre-wrap;
}

/* ------------------------------------------------------------------------- */
/* Page - Main Content - Double Adverts                                      */
/* ------------------------------------------------------------------------- */

.double-adverts-image {
    width: 100%;
    max-width: 300px;
    margin-left: auto;
    margin-right: auto;
    display: block;
}


/* ------------------------------------------------------------------------- */
/* Page - Main Content - Tides                                               */
/* ------------------------------------------------------------------------- */

.tide-date {
    padding-bottom:10px;
    line-height: 1.5;
    font-family: 'Lato',sans-serif;
    font-size: 14px;
    font-weight: 500;
}

.tide-data-cell {
    text-align: center;
    display: inline;
    float: left;
    width: 22.91666667%;
    margin-left: 1.04166667%;
    margin-right: 1.04166667%;
}

.tide-data-cell-one-line {
    text-align: center;
    display: inline;
    float: left;
    width: 17%;
    margin-left: 1%;
    margin-right: 0;
}

.tide-data-cell-one-line-date {
    text-align: center;
    display: inline;
    float: left;
    width: 20%;
    margin-left: 4%;
    margin-right: 0;
}

.high-tide-title {
    font-size: .76923077em;
}

.low-tide-title {
    font-size: .76923077em;
}

.high-tide-height {
    color: #385AA1;
}

.low-tide-height {
    color: #800000;
}

/* ------------------------------------------------------------------------- */
/* Page - Main Content - Title                                               */
/* ------------------------------------------------------------------------- */

#main-content-title-container {
    padding-bottom: 0px;
}

/* ------------------------------------------------------------------------- */
/* Page - Main Content - Weather Town Forecast                               */
/* ------------------------------------------------------------------------- */

.main-content-container .min {
    color: #0045b9;
    font-size: 1.5em;
}

.main-content-container .max {
    color: #A30000;
    font-size: 1.4em;
}

.main-content-container p.date {
    font-size: 0.9em;
    padding: 2px 0 8px;
    border-bottom: 2px solid #ccc;
    width: 650px;
}

.main-content-container .rain {
    border-top: 1px dotted #ccc;
    margin: 3px 0;
    padding: 3px 0;
}

/* ------------------------------------------------------------------------- */
/* Page - Main Content - Weather Satellite Image                             */
/* ------------------------------------------------------------------------- */

.satellite-image-slideshow {
    border-image-width: 0;
    display: inline-block;
    margin: 0;
    padding: 0;
    width: 100%;
    background: no-repeat 50% 50%;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    -ms-behavior: url(assets/vendor/background-size-polyfill-gh-pages/backgroundsize.min.htc);
}

/* ------------------------------------------------------------------------- */
/* Page - Main Content - Wave Forecast                                       */
/* ------------------------------------------------------------------------- */

.map-label-overlay {
    font-size:10px;
    /*background-color: rgba(0,0,0,0.5);*/
    background-color: #2F89B9;
    color: white;
    position: absolute;
    top: 4px;
    left: -11px;
    padding-left: 4px;
    padding-right: 4px;
    margin-left: 15px;
    margin-right: 15px;
}

/* ------------------------------------------------------------------------- */
/* Page - Main Content - Weather Map Menu (Mobile)                           */
/* ------------------------------------------------------------------------- */

.area-selection-menu {
    margin-bottom:1vw;
    padding-top:1vw;
    padding-bottom: 1vw;
    font-size:16px;
    color:black;
    text-align: center;
}

/* ------------------------------------------------------------------------- */
/* Page - Main Content - Luminary Times                                      */
/* ------------------------------------------------------------------------- */
.luminary-icon {
    padding-bottom:8px;
    padding-top:8px;
    font-size: 50px;
    color: #2F89B9
}


/* ------------------------------------------------------------------------- */
/* Page - Main Content - Video Player                                        */
/* ------------------------------------------------------------------------- */

.video-play-container {
    display: block;
    margin: 0 auto;
    max-width: 100%;
}

.plyr .plyr__play-large {
    display: none;
}

.plyr__play-large svg {
    width: 0;
    height: 0;
}

/* ------------------------------------------------------------------------- */
/* Page - Main Content - Vimeo Video Player                                  */
/* ------------------------------------------------------------------------- */

.responsive-video {
    width: 370px;
    height: 280px;
}

.jp-stop,
.jp-play {
    padding: 2px 6px 3px 6px;
}

/* ------------------------------------------------------------------------- */
/* Page - Main Content - Video Recent List                                   */
/* ------------------------------------------------------------------------- */

a.video-category-tag > span {
    border-radius: 0;
    margin-right: 4px;
}

a.video-category-tag:hover {
    text-decoration: none;
}

/* ------------------------------------------------------------------------- */
/* Page - Main Content - Double Picture                                      */
/* ------------------------------------------------------------------------- */

.even-aerial,
.odd-aerial {
    padding-left: 0;
    padding-right: 0;
}

.double-picture-wrapper-1,
.double-picture-wrapper-2 {
    margin-left: 0;
    margin-right: 0;
}

@media (min-width: 640px) {
    .odd-aerial {
        padding-left: 15px;
        padding-right: 4px;
    }
    .even-aerial {
        padding-left: 4px;
        padding-right: 15px;
    }
    .double-picture-wrapper-2 {
        margin-left: 4px;
        margin-right: 0;
    }
    .double-picture-wrapper-1 {
        margin-left: 0;
        margin-right: 4px;
    }
}

/* ------------------------------------------------------------------------- */
/* Page - Sidebar                                                            */
/* ------------------------------------------------------------------------- */

.product-title,
.promo-title,
.video-title {
    padding: 6px 0;
    font-family: 'Open Sans', serif;
}

.sidebar-content-container {
    position: relative; /* require to allow toolbar to be overlaid in top right of container */
    padding-bottom: 8px;
    width: 100%
}

#sidebar {
    margin-left: 0;
    margin-right: 0;
    padding-left: 8px;
    padding-right: 8px;
}

#sidebar .widget {
    margin-bottom: 12px;
}

#sidebar .widget .toggle span {
    color: #FFFFFF;
}

#sidebar .widget .toggle {
    background-color: #2F89B9;
}

.widget {
    margin-bottom: 12px;
}

/* ------------------------------------------------------------------------- */
/* Page - Preview Editors                                                    */
/* ------------------------------------------------------------------------- */

.main-toolbar-container {
    position: absolute;
    right: 0;
}

/* ------------------------------------------------------------------------- */
/* Devices 0 -> 388px Wide                                                   */
/* ------------------------------------------------------------------------- */

@media (max-width: 388px) {
    /* Vimeo videos are 370 x 280 in size so we need to shrink the size when we hit 388px wide */
    .responsive-video {
        width: 300px;
        height: 260px;
    }
}

/* ------------------------------------------------------------------------- */
/* Devices 0 -> 430px Wide                                                   */
/* ------------------------------------------------------------------------- */

@media screen and (max-width: 430px) {

    /* --------------------------------------------------------------------- */
    /* Page - Main Content - Vimeo Video Player                              */
    /* --------------------------------------------------------------------- */

    .jp-video video, .jp-audio, .jp-controls-holder {
        width: 100% !important;
    }

    .jp-jplayer, .jp-video, .jp-video > div, .jp-video img {
        height: auto !important;
        width: 100% !important;
    }

    .jp-video-cw {
        max-width: 300px !important;
    }

    .jp-progress {
        width: 130px;
    }

    .jp-video .jp-type-single .jp-controls {
        margin-left:50%;
        margin-right:50%;
    }
}

/* ------------------------------------------------------------------------- */
/* Devices 0 -> 949px Wide                                                   */
/* ------------------------------------------------------------------------- */

@media (max-width: 949px) {
    ul.mainmenu > li.active > a, ul.mainmenu,
    li:hover > a,
    ul.submenu {
        background-color : #E0E8FB;
    }

    .mainmenu a:hover {
        color: #555555 !important;
    }
}

/* ------------------------------------------------------------------------- */
/* Devices 640px -> Infinity Wide                                            */
/* ------------------------------------------------------------------------- */

@media (min-width: 640px) {

    .mobile-buttons a {
        padding: 10px;
    }

    ul.mainmenu > li {
        margin-right: 0;
    }

    ul.mainmenu > li > a {
        padding-left:10px;
        padding-right:8px;
    }
}

/* ------------------------------------------------------------------------- */
/* Devices 950px -> Infinity Wide                                            */
/* ------------------------------------------------------------------------- */

@media (min-width: 950px) {

    .main-content {
        padding-left: 8px;
    }

    div.navbar {
        height: 58px;
    }

    ul.mainmenu > li.active > a, ul.mainmenu,
    li:hover > a,
    ul.submenu {
        background-color : #2F89B9;
    }

    ul.submenu > li.active > a {
        background-color: black;
    }

    .mainmenu a:hover {
        color: white !important;
        background-color: black;
        text-decoration: none;
    }

    #main-nav-bar {
        /*width: 866px;*/
        width: calc(100% - 124px);
    }

    #menu-container {
        border-top-left-radius: 12px;
        border-top-right-radius: 12px;
    }

    ul.submenu > li {
        margin-left: 0;
        margin-right: 0;
    }
    ul.submenu > li > a {
        padding: 14px 10px;
        font-size: 13px;
        border-left: 1px solid lightblue;
    }

    ul.mainmenu > li > a {
        padding: 14px 8px;
        font-size: 14px;
    }

    /* --------------------------------------------------------------------- */
    /* Page - Menu - Logos                                                   */
    /* --------------------------------------------------------------------- */

    #desktop-logo {
        display: inline-block;
    }

    /* --------------------------------------------------------------------- */
    /* Page - Main Content - Articles                                        */
    /* --------------------------------------------------------------------- */

    .full-story-image {
        width:100%;
        margin: 0 auto !important;
    }
}

/* ------------------------------------------------------------------------- */
/* Devices 768px -> 992px Wide                                               */
/* ------------------------------------------------------------------------- */

@media (min-width: 768px) and (max-width: 992px) {

    .squish-font {
        font-size: 10px; /* Special case for tides data that needs to be made smaller to fit on screen */
    }
}

/* ------------------------------------------------------------------------- */
/* Instagram                                                                 */
/* ------------------------------------------------------------------------- */

.btn-ig {
    background-color: #2F89B9;
    color: white;
    height: 28px;
    width: 81px;
    font-size: 13px;
    border-radius:4px;
}

/* ------------------------------------------------------------------------- */
/* Bootstrap Tour                                                            */
/* ------------------------------------------------------------------------- */

.tour-backdrop {
    opacity: 0.6;
}

/* ------------------------------------------------------------------------- */
/* Radars                                                                    */
/* ------------------------------------------------------------------------- */

.page.radar .radar-viewer [id^=radar-viewer] {
     padding-top: 6.5rem;
}

.between-radar-padding:not(:last-child) {
    padding-bottom: 12px;
}


/* ------------------------------------------------------------------------- */
/* Advert Text                                                               */
/* ------------------------------------------------------------------------- */
.productTitle {
    padding-bottom: 8px;
    color: #1f567d;
    font-weight:bold;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    display: inline-block;
    text-align: left;
}

.productDetail {
    text-align: left;
}

/* ------------------------------------------------------------------------- */
/* Advert Text                                                               */
/* ------------------------------------------------------------------------- */
.productText,
.promoText,
.advertText {
    padding-bottom: 8px;
    color: #1f567d;
    font-weight:bold;
    width: 100%;
    max-width: 300px;
    margin-left: auto;
    margin-right: auto;
    display: block;
    text-align: center;
}

/* ------------------------------------------------------------------------- */
/* Magnificent Popup                                                         */
/* ------------------------------------------------------------------------- */
.mfp-bg {
    z-index: 10010 !important;
}

.mfp-wrap {
    z-index: 10011 !important;
}

/* ------------------------------------------------------------------------- */
/* Button Waves Effect                                                       */
/* ------------------------------------------------------------------------- */

/*!
 * Waves v0.7.5
 * http://fian.my.id/Waves
 *
 * Copyright 2014-2016 Alfiana E. Sibuea and other contributors
 * Released under the MIT license
 * https://github.com/fians/Waves/blob/master/LICENSE
 */
.waves-effect {
    position: relative;
    cursor: pointer;
    overflow: hidden;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
    z-index: 1; }
.waves-effect .waves-ripple {
    position: absolute;
    border-radius: 50%;
    width: 100px;
    height: 100px;
    margin-top: -50px;
    margin-left: -50px;
    opacity: 0;
    background: rgba(0, 0, 0, 0.2);
    background: -webkit-radial-gradient(rgba(0, 0, 0, 0.2) 0, rgba(0, 0, 0, 0.3) 40%, rgba(0, 0, 0, 0.4) 50%, rgba(0, 0, 0, 0.5) 60%, rgba(255, 255, 255, 0) 70%);
    background: -o-radial-gradient(rgba(0, 0, 0, 0.2) 0, rgba(0, 0, 0, 0.3) 40%, rgba(0, 0, 0, 0.4) 50%, rgba(0, 0, 0, 0.5) 60%, rgba(255, 255, 255, 0) 70%);
    background: -moz-radial-gradient(rgba(0, 0, 0, 0.2) 0, rgba(0, 0, 0, 0.3) 40%, rgba(0, 0, 0, 0.4) 50%, rgba(0, 0, 0, 0.5) 60%, rgba(255, 255, 255, 0) 70%);
    background: radial-gradient(rgba(0, 0, 0, 0.2) 0, rgba(0, 0, 0, 0.3) 40%, rgba(0, 0, 0, 0.4) 50%, rgba(0, 0, 0, 0.5) 60%, rgba(255, 255, 255, 0) 70%);
    -webkit-transition: all 0.5s ease-out;
    -moz-transition: all 0.5s ease-out;
    -o-transition: all 0.5s ease-out;
    transition: all 0.5s ease-out;
    -webkit-transition-property: -webkit-transform, opacity;
    -moz-transition-property: -moz-transform, opacity;
    -o-transition-property: -o-transform, opacity;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    -webkit-transform: scale(0) translate(0, 0);
    -moz-transform: scale(0) translate(0, 0);
    -ms-transform: scale(0) translate(0, 0);
    -o-transform: scale(0) translate(0, 0);
    transform: scale(0) translate(0, 0);
    pointer-events: none; }
.waves-effect.waves-light .waves-ripple {
    background: rgba(255, 255, 255, 0.4);
    background: -webkit-radial-gradient(rgba(255, 255, 255, 0.2) 0, rgba(255, 255, 255, 0.3) 40%, rgba(255, 255, 255, 0.4) 50%, rgba(255, 255, 255, 0.5) 60%, rgba(255, 255, 255, 0) 70%);
    background: -o-radial-gradient(rgba(255, 255, 255, 0.2) 0, rgba(255, 255, 255, 0.3) 40%, rgba(255, 255, 255, 0.4) 50%, rgba(255, 255, 255, 0.5) 60%, rgba(255, 255, 255, 0) 70%);
    background: -moz-radial-gradient(rgba(255, 255, 255, 0.2) 0, rgba(255, 255, 255, 0.3) 40%, rgba(255, 255, 255, 0.4) 50%, rgba(255, 255, 255, 0.5) 60%, rgba(255, 255, 255, 0) 70%);
    background: radial-gradient(rgba(255, 255, 255, 0.2) 0, rgba(255, 255, 255, 0.3) 40%, rgba(255, 255, 255, 0.4) 50%, rgba(255, 255, 255, 0.5) 60%, rgba(255, 255, 255, 0) 70%); }
.waves-effect.waves-classic .waves-ripple {
    background: rgba(0, 0, 0, 0.2); }
.waves-effect.waves-classic.waves-light .waves-ripple {
    background: rgba(255, 255, 255, 0.4); }

.waves-notransition {
    -webkit-transition: none !important;
    -moz-transition: none !important;
    -o-transition: none !important;
    transition: none !important; }

.waves-button,
.waves-circle {
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-mask-image: -webkit-radial-gradient(circle, white 100%, black 100%); }

.waves-button,
.waves-button:hover,
.waves-button:visited,
.waves-button-input {
    white-space: nowrap;
    vertical-align: middle;
    cursor: pointer;
    border: none;
    outline: none;
    color: inherit;
    background-color: transparent;
    font-size: 1em;
    line-height: 1em;
    text-align: center;
    text-decoration: none;
    z-index: 1; }

.waves-button {
    padding: 0.85em 1.1em;
    border-radius: 0.2em; }

.waves-button-input {
    margin: 0;
    padding: 0.85em 1.1em; }

.waves-input-wrapper {
    border-radius: 0.2em;
    vertical-align: bottom; }
.waves-input-wrapper.waves-button {
    padding: 0; }
.waves-input-wrapper .waves-button-input {
    position: relative;
    top: 0;
    left: 0;
    z-index: 1; }

.waves-circle {
    text-align: center;
    width: 2.5em;
    height: 2.5em;
    line-height: 2.5em;
    border-radius: 50%; }

.waves-float {
    -webkit-mask-image: none;
    -webkit-box-shadow: 0px 1px 1.5px 1px rgba(0, 0, 0, 0.12);
    box-shadow: 0px 1px 1.5px 1px rgba(0, 0, 0, 0.12);
    -webkit-transition: all 300ms;
    -moz-transition: all 300ms;
    -o-transition: all 300ms;
    transition: all 300ms; }
.waves-float:active {
    -webkit-box-shadow: 0px 8px 20px 1px rgba(0, 0, 0, 0.3);
    box-shadow: 0px 8px 20px 1px rgba(0, 0, 0, 0.3); }

.waves-block {
    display: block; }

