/* ========================================
   WHERE NEXT LANDING PAGE STYLES
   Used by: Article landing pages, Sights & Attractions, Things To Do, etc.
   ======================================== */

/* ========================================
   ALL ARTICLES SECTION STYLES
   ======================================== */

.all-articles-section h3 {
    padding-top: 15px;
    padding-bottom: 30px !important;
}

.all-articles-section .article-description-inner h3 {
    padding-top: 10px;
    padding-bottom: 5px !important;
}

.all-articles-section #jar h2 {
    margin-left: 0;
    font-size: 18px;
    padding-top: 0;
    margin-top: 0 !important;
    padding-bottom: 30px;
}

.all-articles-section .all-articles-per-section {
    padding-bottom: 15px !important;
}


.all-articles-section .layout--4-8 {
    margin: 0 !important;
}

/* Accessibility improvements - FGSWRSMIG-1046 */
.all-articles-section .all-articles-per-section .article-description-inner a {
    width: auto;
    right: 20px;
    left: 20px;
}

.all-articles-section .all-articles-per-section .article-description-inner a::after {
    right: 10px;
}

/* ========================================
   ARTICLE CARD STYLES
   ======================================== */

.all-articles-per-section {
    padding-bottom: 10px !important;
    padding-top: 0 !important;
}

.all-articles-per-section .article-img img {
    left: 0;
}

.all-articles-per-section .article-description {
    padding-left: 15px !important;
}

.promo-crd.all-article-promo-card {
    background: transparent;
    margin-bottom: 0;
}

.promo-crd.all-article-promo-card .column {
    min-height: 250px !important;
}

.all-article-promo-card:hover .article-description .article-description-inner {
    transition: bottom 0.3s ease-in-out;
    background: #E9F0F5;
    background-image: repeating-linear-gradient(-225deg, transparent, transparent 30px, #E9F0F5 30px, #E9F0F5 60px), linear-gradient(to bottom, rgba(244, 248, 250, 0.9), rgba(244, 248, 250, 0));
}

/* ========================================
   ARTICLE IMAGE STYLES
   ======================================== */

.article-img {
    position: relative;
    overflow: hidden;
}

.article-img img {
    position: absolute;
    object-fit: cover;
    width: 100%;
    height: 100%;
    object-position: top;
}

/* ========================================
   ARTICLE DESCRIPTION STYLES
   ======================================== */

.article-description-inner {
    background: #e8f0f6;
    border-top: 3px #0092CB solid;
    padding: 10px 20px 45px;
    color: #061B2B;
    position: relative;
    width: 100%;
}

.article-description-inner a {
    position: absolute;
    bottom: 10px;
    color: #0092CB;
    font-size: 16px;
    font-weight: 500;
    z-index: 2;
    width: 100%;
}

.article-description-inner a:after {
    content: '\e84d';
    font-family: 'icons', sans-serif;
    position: absolute;
    right: 50px;
}

.article-description .article-description-inner a, 
.article-description .article-description-inner a:after {
    color: #0092CC !important;
}

.article-description:hover .article-description-inner {
    transition: bottom 0.3s ease-in-out;
    background: #E9F0F5;
    background-image: repeating-linear-gradient(-225deg, transparent, transparent 30px, #E9F0F5 30px, #E9F0F5 60px), linear-gradient(to bottom, rgba(244, 248, 250, 0.9), rgba(244, 248, 250, 0));
}

.article-date {
    font-size: 16px;
    position: absolute;
    bottom: 10px;
    left: 20px;
}

.bgLightBlue .article-description-inner {
    background-color: #E9F0F5 !important;
}

/* ========================================
   PAGINATION STYLES
   ======================================== */

.pagination {
    padding: 0;
    text-align: center;
    margin: 40px 0 30px;
}

.pagination li {
    display: inline-block;
    margin: 0 8px 0 0;
    font-size: 1.4em;
    height: 44px;
}

.pagination a, 
.pagination .expandable-panel-link {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    text-decoration: none;
    background: rgba(199, 218, 231, 0.4);
    color: #061B2B;
    font-weight: 500;
    font-size: 14px;
    padding: 10px;
    margin: 0;
    line-height: 22px;
    transition: all 0.4s;
}

.pagination a:hover, 
.pagination .expandable-panel-link:hover {
    background: rgba(199, 218, 231, 0.6);
    text-decoration: none !important;
}

.pagination a:hover polygon, 
.pagination .expandable-panel-link:hover polygon {
    fill: #004965;
}

.pagination svg {
    position: relative;
    vertical-align: middle;
}

.pagination svg polygon {
    fill: #0092CB;
}

.pagination .active a, 
.pagination .active .expandable-panel-link {
    background: #061B2B;
    color: white;
    cursor: default;
}

.pagination .arrow a, 
.pagination .arrow .expandable-panel-link {
    background: rgba(199, 218, 231, 0.4);
}

.pagination .label-first,
.pagination .label-last {
    margin: 0 10px 0 0;
    display: none;
    border: solid 1px #061B2B;
    border-radius: 4px;
}

.pagination .label-first a, 
.pagination .label-first .expandable-panel-link,
.pagination .label-last a,
.pagination .label-last .expandable-panel-link {
    padding: 0 18px;
    min-width: 94.8px;
    border-radius: 4px;
    color: #061B2B;
    background: white;
    position: relative;
    font-weight: 500;
}

.pagination .label-first a:hover, 
.pagination .label-first .expandable-panel-link:hover,
.pagination .label-last a:hover,
.pagination .label-last .expandable-panel-link:hover {
    background: #ebf2f6 !important;
    transition: all 0.4s !important;
    text-decoration: none;
}

.pagination .label-first a:after, 
.pagination .label-first .expandable-panel-link:after,
.pagination .label-last a:after,
.pagination .label-last .expandable-panel-link:after {
    right: auto;
    left: -20px;
}

.pagination .label-last {
    margin: 0;
}

.sa-article-list .pagination {
    margin-top: 20px;
}

/* ========================================
   HORIZONTAL CARD STYLES
   ======================================== */

.horizontal-promo-crd-arrow-link {
    display: flex;
    flex-wrap: wrap;
}

.horizontal-promo-crd-arrow-link .article-img {
    width: 33.33%;
    min-height: 250px !important;
    display: flex;
}

.horizontal-promo-crd-arrow-link .article-description {
    width: 66.66%;
    min-height: 192px !important;
    display: flex;
}

.horizontal-promo-crd-arrow-link .article-description-inner {
    border-top: 5px solid #0092CB;
}

.all-article-promo-card.horizontal-promo-crd-arrow-link .article-description-inner,
.all-article-promo-card.horizontal-promo-crd-arrow-link:hover .article-description-inner {
    background-color: transparent;
    background-image: none;
    margin: 0;
}

.horizontal-promo-crd-arrow-link h3.promo-arrow-title {
    position: relative;
    color: #0357AB;
    padding: 0 25px 0 0 !important;
}

.horizontal-promo-crd-arrow-link h3.promo-arrow-title .text-clamp{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
    max-height: 56px;
}

.promo-crd-arrow-link .promo-arrow-title .promo-crd__arrow-link,
.horizontal-promo-crd-arrow-link .promo-crd__arrow-link {
    margin: -8px 0 0 0 !important;
    padding: 0 !important;
    left: auto !important;
    right: 0 !important;
    top: 50% !important;
    bottom: auto !important;
    line-height: 1 !important;
    font-size: 16px !important;
    color: #0357AB;
}

.horizontal-promo-crd-arrow-link .promo-crd__arrow-link::after {
    position: static !important;
    color: #0357AB;
}

.horizontal-promo-crd-arrow-link .promo-arrow-desc {
    padding-top: 10px;
    margin-top: 10px;
    border-top: 1px solid #c2d4e0 !important;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    line-clamp: 4;
    overflow: hidden;
    text-overflow: ellipsis;
    height: 107px;
}

.horizontal-promo-crd-arrow-link .promo-arrow-title-link {
    position: static;
    font-size: 10px;
}

.horizontal-promo-crd-arrow-link .promo-arrow-title-link::after {
    display: none;
}

.horizontal-promo-crd-arrow-link .promo-arrow-title-link.mobile-view {
    display: block;
}

/* Focus states for accessibility */
.horizontal-promo-crd-arrow-link .promo-arrow-title-link.mobile-view:focus,
.horizontal-promo-crd-arrow-link a.promo-crd__wrap-link.desktop-view:focus {
    outline: 2px solid #007CAD !important;
    outline-offset: -2px;
}

.promo-content {
    background: #fff;
}

.promo-content.child-container-yellow-top, 
.promo-content .child-container-blue-top,
.promo-content .content-tab--blue {
    position: relative;
    z-index: 1;
}

.promo-content.child-container-yellow-top > .container,
.promo-content .child-container-blue-top > .container,
.promo-content .content-tab--blue > .container {
    margin-top: -85px !important;
}

.promo-content > .container{
    background: #fff;
    padding: 65px 30px 0 30px;
    border-radius: 4px;
    margin-top: -85px;
}

/* ========================================
   MEDIA QUERIES
   ======================================== */

/* IE High Contrast Mode Support */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .all-articles-per-section .layout--4-8 .column {
        height: 250px;
    }

    .article-description .article-description-inner {
        min-height: 250px;
    }
}

/* Desktop Large Screens */
@media screen and (min-width: 1023.99px) {
    .promo-content .promo-crd-arrow-link {
        min-height: 343px;
        background-color: #fff;
    }

    .promo-content .promo-crd-arrow-link.bgLightBlue {
        background-color: #E9F0F5;
    }
}

/*Mobile view QTT*/
@media (max-width: 1024px) {
    .promo-content .container {
        margin-top: 0px;
    }
}

/* Desktop/Mobile View Toggle */
@media screen and (max-width: 991.98px) {
    .desktop-view {
        display: none !important;
    }
}

@media screen and (min-width: 991.99px) {
    .mobile-view {
        display: none !important;
    }
}

/* Tablet and Up */
@media (min-width: 767.99px) {
    .pagination .label-first,
    .pagination .label-last {
        display: inline-block;
    }
}

/* Tablet Portrait */
@media (max-width: 820px) {
    .all-articles-section h3 {
        padding-left: 12px;
    }

    .article-description-inner a:after {
        right: 50px;
    }
}

@media (max-width: 47.9375em) {
    .promo-content > .container {
        padding-left: 0;
        padding-right: 0;
        margin-top: -25px !important;
    }
}

/* Mobile Landscape and Below */
@media screen and (max-width: 767.98px) {
    .all-articles-section .layout--4-8 > .column {
        width: 100% !important;
        display: block !important;
        margin-bottom: 0 !important;
        padding: 0 !important;
        min-height: auto !important;
    }

    .all-articles-section h3 {
        padding-left: 12px;
    }

    .all-articles-section .article-description-inner h3 {
        padding-left: 0;
    }

    .all-articles-section .all-articles-per-section .article-img {
        margin-bottom: 8px !important;
    }

    .all-articles-section .all-articles-per-section {
        padding-bottom: 20px !important;
    }

    .promo-crd.all-article-promo-card .column {
        min-height: auto !important;
    }

    .article-img img {
        position: static;
    }

    .article-description-inner {
        margin-top: -5px;
    }

    /* Horizontal card mobile adjustments */
    .all-article-promo-card.horizontal-promo-crd-arrow-link .article-img {
        margin-bottom: 5px !important;
        height: 252px;
    }

    .horizontal-promo-crd-arrow-link .article-description-inner {
        padding: 15px;
    }

    .horizontal-promo-crd-arrow-link .promo-arrow-title-link .promo-arrow-title {
        padding: 0 25px 0 0 !important;
    }

    .article-date {
        position: static;
    }

    .horizontal-promo-crd-arrow-link .article-img,
    .horizontal-promo-crd-arrow-link .article-description {
        width: 100%;
        padding: 0 !important;
        min-height: auto !important;
    }

    .sa-article-list .pagination {
        margin-top: 10px;
        margin-bottom: 10px;
    }
}

/* Mobile Portrait */
@media screen and (max-width: 480px) {
    .pagination li {
        margin-right: 5px;
    }
    
    .pagination li a {
        width: 35px !important;
        height: 35px !important;
    }
    
    .pagination li.current-page a {
        font-size: 14px;
        line-height: 17px !important;
    }
}
