/*!
 * Bootstrap v3.3.6 (http://getbootstrap.com)
 * Copyright 2011-2015 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */

h1.underline, h4.underline {
    border-bottom: 1px solid #bcbcbc;
    padding-bottom: 21px;
}

@media (max-width: 767px) {

    .text_center-mobile {
        text-align: center;
    }
}


.btn-lg-home {
    padding: 20px 40px;
    font-size: 15px;
}


.btn-info-home {
    color: #fff;
    border-color: #fff;
    background: transparent;
}

    .btn-info-home:hover {
        color: #000;
        border-color: #000;
        background: #fff;
    }

    .btn-info-home:active {
        color: #000;
        border-color: #000;
        background: #fff;
    }

    .btn-info-home:focus {
        color: #000;
        border-color: #000;
        background: #fff;
    }


.breadcrumb > li a {
    color: #0F64FF;
    padding: 8px 4px; /* WCAG 2.5.8: vertical padding lifts target to >=24px */
}
 .breadcrumb > li a:hover {
    color: #0F64FF;
}


.pagination > li > a,
.pagination > li > span {
    background-color: transparent;
    border: 0px;
    margin-left: 10px;
    width: 44px; /* WCAG 2.5.8: minimum 44px target */
    height: 44px;
    text-align: center;
}


.pagination > li:first-child > a:hover,
.pagination > li:first-child > span:hover {
    background: none;
}


.pagination > li:last-child > a:hover,
.pagination > li:last-child > span:hover {
    background: none;
}


.pagination > li > a:hover,
.pagination > li > a:focus,
.pagination > li > span:hover,
.pagination > li > span:focus {
    background-color: transparent;
    border-color: transparent;
}


.pagination > .active > a,
.pagination > .active > a:hover,
.pagination > .active > a:focus,
.pagination > .active > span,
.pagination > .active > span:hover,
.pagination > .active > span:focus {
    border-color: transparent;
    border-radius: 50%;
	border: solid 1px;
}

.logo-container {
    height: 51px;
    width: 187px;
    margin-left: 9px;
}


.navbar-fixed-top {
    border-width: 0;
}


.navbar-static-top {
    border-width: 0;
    margin-bottom: 0;
}


.navbar-default {
    border-color: transparent;
}


.homelink, a.homelink:hover, a.homelink:focus {
    color: #fff;
    text-decoration: none;
}


.register-bar {
    clear: both;
}


.navbar-fixed-top.navbar {
    min-height: 67px;
}

    .navbar-fixed-top.navbar .navbar-collapse {
        max-height: 510px;
        box-shadow: none;
        border-top: none;
        padding-top: 8px;
    }

    .navbar-fixed-top.navbar .navbar-form {
        border: none;
        margin-left: 0;
        margin-right: 0;
    }

        .navbar-fixed-top.navbar .navbar-form .form-control {
            font-size: 1em;
        }


.navbar-static-top.navbar .navbar-collapse {
    max-height: 510px;
    box-shadow: none;
    border-top: none;
}


.navbar-static-top.navbar .navbar-form {
    border: none;
    margin-left: 0;
    margin-right: 0;
}

    .navbar-static-top.navbar .navbar-form .form-control {
        font-size: 1em;
    }

@media (min-width: 992px) {

    .fix-navbar .register-bar {
        display: none;
    }
}


.navbar-fixed-top.navbar > .container > .row > div {
    float: none !important;
    display: inline-block;
    vertical-align: bottom;
}


.navbar-static-top.navbar > .container > .row > div {
    float: none !important;
    display: inline-block;
    vertical-align: bottom;
}


.navbar-fixed-top.navbar .menu-bar > .navbar-nav > li > a {
    font-family: "Segoe UI Semibold", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 1em;
    font-weight: bold;
}


.navbar-fixed-top.navbar .menu-bar > .navbar-nav > .divider-vertical {
    height: 21px;
    margin: 0 4px;
    margin-top: 14.5px;
    border-right: 1px solid #fff;
    border-left: 1px solid #666;
}


.navbar-static-top.navbar .menu-bar > .navbar-nav > li > a {
    font-family: "Segoe UI Semibold", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 1em;
    font-weight: bold;
}


.navbar-static-top.navbar .menu-bar > .navbar-nav > .divider-vertical {
    height: 21px;
    margin: 0 4px;
    margin-top: 14.5px;
    border-right: 1px solid #fff;
    border-left: 1px solid #666;
}


.navbar-fixed-top .navbar-brand {
    font-size: 2.11em;
    font-family: "Segoe UI Light", "Helvetica Neue", Helvetica, Arial, sans-serif;
    color: #232222;
    position: relative;
}

@media (max-width: 1200px) {

    .navbar-fixed-top .navbar-brand {
        position: initial;
        height: 42px;
    }
}


.navbar-fixed-top .navbar-header {
    padding-top: 8px;
}


.navbar-static-top .navbar-brand {
    font-size: 2.11em;
    font-family: "Segoe UI Light", "Helvetica Neue", Helvetica, Arial, sans-serif;
    color: #fff;
    position: relative;
}

@media (max-width: 1200px) {

    .navbar-static-top .navbar-brand {
        position: initial;
        height: 42px;
    }
}


.navbar-fixed-top.navbar-inverse {
    background-color: #232222;
    border-color: transparent;
}

    .navbar-fixed-top.navbar-inverse .navbar-brand {
        color: #fff;
    }

    .navbar-fixed-top.navbar-inverse .divider-vertical {
        border-right-color: #fff;
        border-left-color: #111;
    }


.navbar-static-top.navbar-inverse {
    background-color: #000B2B;
    border-color: transparent;
}

    .navbar-static-top.navbar-inverse .navbar-brand {
        color: #fff;
    }

    .navbar-static-top.navbar-inverse .divider-vertical {
        border-right-color: rgba(255,255,255,0.2);
        border-left-color: transparent;
    }


.navbar-inverse .navbar-nav > li > a {
    color: #fff;
}

    .navbar-inverse .navbar-nav > li > a:hover {
        color: #fff;
        background-color: #0F64FF;
        /*border-bottom: 4px solid #2F5FEF;
    padding-bottom: 10px;*/
    }

    .navbar-inverse .navbar-nav > li > a:focus {
        color: #fff;
        background-color: #0F64FF;
        border: 1px dashed black !important;
        outline: 1px dashed #FFFFFF;
    }

@media (max-width: 1199px) {

    .navbar-inverse .navbar-nav > li > a:hover {
        color: #fff;
        background-color: #0F64FF;
        /*border-bottom: 4px solid #2F5FEF;
    padding-bottom: 6px;*/
    }
}


.menu-bar .shopping_link {
    position: relative;
}

    .menu-bar .shopping_link .cart_amount {
        border-radius: 100%;
        height: 17px;
        width: 17px;
        position: absolute;
        bottom: 6px;
        right: -6px;
        background-color: #0F64FF;
        text-align: -webkit-center;
        line-height: 17px;
        font-size: 9px;
        padding-left: 1.9px;
        color: #fff;
    }

        .menu-bar .shopping_link .cart_amount:hover {
            color: #fff;
        }

@media (max-width: 1199px) {

    .navbar-fixed-top .navbar-collapse .nav > .divider-vertical {
        display: none;
    }
}

@media (max-width: 1199px) {

    .navbar-static-top .navbar-collapse .nav > .divider-vertical {
        display: none;
    }
}

@media (max-width: 767px) {

    .navbar-fixed-top.navbar > .container > .row > div {
        display: block;
    }

    .navbar-header {
        position: relative;
    }
}

@media (max-width: 767px) {

    .navbar-static-top.navbar > .container > .row > div {
        display: block;
    }

    .navbar-header {
        position: relative;
    }
}


.panel {
    -webkit-box-shadow: 0 0px 0px transparent;
    box-shadow: 0 0px 0px transparent;
}


.panel-group {
    margin-bottom: 21px;
}

    .panel-group.border-bottom {
        border-bottom: 1px solid #bcbcbc;
        padding-bottom: 84px;
    }

    .panel-group .panel {
        border-radius: 0px;
        border: none;
        box-shadow: none;
    }

        .panel-group .panel + .panel {
            margin-top: 5px;
        }

    .panel-group .panel-heading {
        border-bottom: 0;
    }

        .panel-group .panel-heading .panel-title a {
            text-decoration: none;
        }

            .panel-group .panel-heading .panel-title a:hover {
                color: #0F64FF;
            }

            .panel-group .panel-heading .panel-title a:before {
                content: ' ';
                background-repeat: no-repeat;
                display: inline-block;
                width: 22px;
                height: 12px;
                background-position: -92px -5px;
                margin-right: 10.5px;
            }

            .panel-group .panel-heading .panel-title a.collapsed:before {
                background-position: -5px -126px;
            }

        .panel-group .panel-heading + .panel-collapse > .panel-body,
        .panel-group .panel-heading + .panel-collapse > .list-group {
            border-top: none;
        }

    .panel-group .panel-footer {
        border-top: 0;
    }

        .panel-group .panel-footer + .panel-collapse .panel-body {
            border-bottom: none;
        }

    .panel-group .panel-default {
        border-color: none;
    }

        .panel-group .panel-default > .panel-heading {
            color: #333333;
            background-color: transparent;
            border-color: none;
        }

            .panel-group .panel-default > .panel-heading + .panel-collapse > .panel-body {
                border-top-color: none;
            }

            .panel-group .panel-default > .panel-heading .badge {
                color: transparent;
                background-color: #333333;
            }

        .panel-group .panel-default > .panel-footer + .panel-collapse > .panel-body {
            border-bottom-color: none;
        }


body {
    padding-top: 0px;
    /* Below changes in body tag to support DefaultPortalTemplate in maker*/
    margin: 0;
    height: 100%;
    font-family: "Segoe UI", "Helvetica Neue", Arial, sans-serif;
    background-color: #fff;
}

@media (max-width: 767px) {

    body {
        padding-top: 0px;
    }
}


.layer_down {
    height: 50px;
    background: url("layer_down.png") no-repeat bottom center;
    position: absolute;
    bottom: 0;
    z-index: 900;
    width: 100%;
}


.layer_up {
    height: 40px;
    background: url("layer_up.png") no-repeat bottom center;
    position: relative;
    z-index: 20;
}


.section-margin {
    margin: 21px 0;
}


.section-inline-search {
    background-size: cover;
}

    .section-inline-search .row > div {
        margin-top: 100px;
    }

        .section-inline-search .row > div h1 {
            color: #fff;
        }

@media screen and (max-width: 600px) {

    .section-inline-search .row > div h1 {
        font-size: 16vw;
    }
}

.section-inline-search .row > div .form-inline .form-group .input-group {
    margin-right: 21px;
}

    .section-inline-search .row > div .form-inline .form-group .input-group .input-group-addon {
        background-color: #fff;
        border-right: none;
    }

    .section-inline-search .row > div .form-inline .form-group .input-group .form-control {
        height: 60px;
        border-left: none;
        box-shadow: none;
    }

        .section-inline-search .row > div .form-inline .form-group .input-group .form-control:focus {
            box-shadow: none;
            border-right: none;
            border-color: #ccc;
        }


.wrapper {
    width: 100%;
    margin: 0 auto;
    text-align: center;
    -moz-transition: width 0.3s ease-out;
    -o-transition: width 0.3s ease-out;
    -webkit-transition: width 0.3s ease-out;
    transition: width 0.3s ease-out;
}


    .wrapper .contained {
        position: relative;
        height: 400px;
        padding-bottom: 56.25%;
    }


        .wrapper .contained > svg {
            margin-top: -100px;
            position: absolute;
            display: block;
        }


.contained .row {
    margin-top: 80px;
}


footer {
    position: relative;
    color: #333;
}

    footer .footer-top {
        width: 100%;
        min-height: 130px;
        background-color: #F5F5F5;
        display: flex;
        align-items: center;
    }

        footer .footer-top h3, footer .footer-top h4 {
            color: #000;
        }

        footer .footer-top .list-social-links {
            margin-top: 25px;
            margin-bottom: 12.5px;
        }

@media screen and (max-width: 991px) {

    footer .footer-top h3,
    footer .footer-top .list-social-links {
        text-align: center;
    }
}

footer .footer-bottom {
    width: 100%;
    min-height: 68px;
    background-color: #F5F5F5;
    font-size: 14px;
    display: flex;
    align-items: center;
}

    footer .footer-bottom p {
        margin: 0;
    }

    footer .footer-bottom h4 {
        margin-top: 0;
        color: #333;
    }

    footer .footer-bottom ul {
        list-style-type: none;
        margin: 0;
    }

        footer .footer-bottom ul li a,
        footer .footer-bottom ul li a:hover,
        footer .footer-bottom ul li a:focus,
        footer .footer-bottom ul li a:active,
        footer .footer-bottom ul li a.active {
            font-size: 15px;
            color: #333;
        }


.list-social-links {
    list-style-type: none;
    padding-left: 0;
}

    .list-social-links li {
        display: inline-block;
        margin: 0 10px;
    }

        .list-social-links li a,
        .list-social-links li a:hover,
        .list-social-links li a:focus,
        .list-social-links li a:active,
        .list-social-links li a.active {
            color: #fff;
        }

@media screen and (max-width: 993px) {

    .section-landing h1 {
        font-size: 65px;
    }

    .section-landing h2 {
        letter-spacing: normal;
        margin-left: -3px;
    }
}


.user-icon {
    width: 16px;
    height: 16px;
    display: inline-block;
    margin-right: 7px;
}


.article-title-container {
    border-top: solid 1px #bcbcbc;
    border-bottom: solid 1px #bcbcbc;
    padding-left: 15px;
    padding-top: 28px;
    padding-bottom: 28px;
}


.article-title {
    margin-left: -35px;
}

    .article-title > span {
        margin-left: 3px;
    }

        .article-title > span .article-author {
            font-weight: bold;
            color: #0F64FF;
        }


.article-content {
    margin-top: 15px;
}

    .article-content > p {
        text-align: justify;
    }

@media screen and (max-width: 993px) {

    .article-title {
        margin-left: 0;
        text-align: center;
    }

    .article-author {
        text-align: center;
    }
}


.section-search .header-search {
    padding-top: 40px;
    padding-bottom: 40px;
    margin-bottom: 40px;
    background-color: #eeeeee;
}

    .section-search .header-search img {
        max-width: 350px;
    }

@media screen and (max-width: 600px) {

    .section-search .header-search h1 {
        font-size: 13vw;
    }
}


.section-search .title-search {
    font-size: 26px;
    font-weight: bold;
}


.section-search input {
    border-style: none;
    padding-left: 10px;
    height: 60px;
}


.section-search .media .media-left > img {
    max-width: 240px;
}


.section-search .media .media-body {
    padding-left: 20px;
}

    .section-search .media .media-body > a {
        text-decoration: none;
        font-weight: bold;
    }

    .section-search .media .media-body .media-heading {
        margin-top: 5px;
        margin-bottom: 20px;
    }


.cards-container {
    margin-top: 84px;
    display: flex;
    justify-content: center;
}

@media screen and (max-width: 991px) {

    .cards-container {
        flex-direction: column;
    }
}


.carousel-custom .carousel-inner > .item {
    margin-right: auto;
    margin-left: auto;
}

    .carousel-custom .carousel-inner > .item .carousel-caption {
        display: flex;
        align-items: center;
        top: 5%;
        left: 5%;
        right: 5%;
    }

@media screen and (min-width: 768px) {

    .carousel-custom .carousel-inner > .item .carousel-caption {
        left: 5%;
        right: 5%;
    }
}


.carousel-custom .carousel-indicators li {
    border-color: #232222;
}


.table.table-forms td {
    padding: 15px 8px;
}


.table.table-forms tbody tr:first-child td {
    border-top: none;
}


.poll {
    background-color: #eeeeee;
    border-top: 7px solid #0b80d0;
    position: relative;
    padding-left: 15px;
    padding-right: 15px;
}

    .poll .poll-header {
        display: flex;
        -ms-flex-align: center;
        -webkit-align-items: center;
        -webkit-box-align: center;
        align-items: center;
        justify-content: space-between;
        border-bottom: 1px solid #bcbcbc;
        padding-bottom: 5px;
    }

        .poll .poll-header h4 {
            font-weight: bold;
            display: inline-block;
        }

    .poll .poll-content {
        padding-top: 25px;
    }

        .poll .poll-content p {
            font-size: 14px;
        }

        .poll .poll-content form {
            border-bottom: 1px solid #bcbcbc;
            padding-bottom: 10px;
        }

        .poll .poll-content .poll-buttons {
            padding-top: 20px;
            padding-left: 11px;
        }

            .poll .poll-content .poll-buttons .btn {
                padding: 4px 14px;
                font-size: 14px;
            }

            .poll .poll-content .poll-buttons .btn-default {
                color: #000;
                border-color: #000;
            }

                .poll .poll-content .poll-buttons .btn-default:hover {
                    color: #000;
                    border-color: #000;
                }

    .poll .poll-tags {
        padding-top: 10px;
    }

        .poll .poll-tags h4 {
            border-bottom: 1px solid #bcbcbc;
            padding-bottom: 10px;
        }

        .poll .poll-tags .tag {
            display: inline-block;
            background-color: #e1e1e1;
            color: #232222;
            padding: 5px 14px;
            margin: 5px 0px;
            text-transform: uppercase;
            font-size: 13px;
        }


.nav-sidebar {
    padding-left: 20px;
    margin-top: 20px;
    margin-bottom: 20px;
}

    .nav-sidebar .nav > li > a {
        padding: 4px 20px;
        color: #0F64FF;
        border-right: 2px solid #eeeeee;
    }

        .nav-sidebar .nav > li > a:hover,
        .nav-sidebar .nav > li > a:focus {
            color: #232222;
            text-decoration: none;
            background-color: transparent;
            border-right: 2px solid #555555;
        }

        .nav-sidebar .nav > li > a:before {
            position: relative;
            top: 1px;
            display: inline-block;
            font-family: 'Glyphicons Halflings';
            font-style: normal;
            font-weight: normal;
            line-height: 1;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            content: "\e250";
            margin-right: 7px;
        }

    .nav-sidebar .nav > .active > a {
        color: #232222;
        text-decoration: none;
        background-color: transparent;
        border-right: 2px solid #555555;
        font-weight: bold;
    }

        .nav-sidebar .nav > .active > a:before {
            content: "\e252";
        }

    .nav-sidebar .nav > .active:hover > a,
    .nav-sidebar .nav > .activefocus > a {
        font-weight: bold;
    }

    .nav-sidebar .nav > .active > ul.nav {
        display: block;
    }

    .nav-sidebar .nav ul.nav {
        display: none;
    }

    .nav-sidebar .nav .nav > li > a {
        padding-top: 1px;
        padding-bottom: 1px;
        padding-left: 30px;
    }

    .nav-sidebar .nav .nav > .active,
    .nav-sidebar .nav .nav > .active:hover,
    .nav-sidebar .nav .nav > .active:focus {
        font-weight: bold;
    }

    .nav-sidebar .nav .nav .nav > li > a {
        padding-top: 1px;
        padding-bottom: 1px;
        padding-left: 60px;
    }

        .nav-sidebar .nav .nav .nav > li > a:before {
            content: "";
        }

    .nav-sidebar .nav .nav .nav > .active,
    .nav-sidebar .nav .nav .nav > .active:hover,
    .nav-sidebar .nav .nav .nav > .active:focus {
        font-weight: bold;
    }


#navbar .dropdown-menu {
    margin-top: 8px;
}


#navbar .dropdown-search {
    padding-top: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
    margin: 9px;
}

    #navbar .dropdown-search #q {
        min-width: 200px;
    }

@media (max-width: 1199px) {

    #navbar .dropdown-search .input-group-btn {
        vertical-align: top;
    }

    #navbar .dropdown-search #search-filter {
        width: 100%;
        text-align: left;
        padding-left: 25px;
    }

    #navbar .dropdown-search.dropdown-menu > li:hover, #navbar .dropdown-search .dropdown-menu > li:hover {
        color: white;
        background-color: transparent;
    }
}


.tabs-header {
    padding-bottom: 9.5px;
    margin: 42px 0 21px;
}


.help-block.error,
label.control-label.required:before,
.crmEntityFormView .cell div.info.required label:after,
.crmEntityFormView .cell div.info div.validators,
.crmEntityFormView .validator-text,
.crmEntityFormView .rank-order-cell .validator-text,
.crmEntityFormView .constant-sum-cell .validator-text,
.crmEntityFormView .stack-rank-cell .validator-text {
    color: #a94442;
}

@media screen and (-ms-high-contrast: active) {

    .navbar-default .navbar-toggle .icon-bar {
        background-color: #888;
    }

    .navbar-inverse .navbar-toggle .icon-bar {
        background-color: #fff;
    }
}


.pr-color {
    color: #0F64FF;
}


.blue_border {
    padding-bottom: 10px;
    border-bottom: 7px solid #0b80d0;
}


.page_section {
    position: relative;
    background-size: cover;
    color: #000;
}

    .page_section .row {
        padding-top: 40px;
        padding-bottom: 100px;
    }

        .page_section .row.sidebar-home {
            padding-bottom: 0;
        }

    .page_section h1 {
        font-size: 32px;
    }

    .page_section h2 {
        color: #666666;
        font-size: 40px;
    }

    .page_section h3 {
        font-size: 66px;
        font-family: "Segoe UI Light", "Helvetica Neue", Helvetica, Arial, sans-serif;
    }

    .page_section p {
        padding-top: 5px;
    }

    .page_section .btn {
        margin-top: 50px;
    }

    .page_section .form-search .btn {
        padding: 4px 12px;
        margin-top: 0;
    }

    .page_section .section-landing-heading p,
    .page_section .section-landing-sub-heading p {
        border-top: 0;
    }


.form-search .btn {
    border: 1px solid #767B92; /* WCAG 1.4.11: control border >=3:1 (4.18:1) */
}


.form-search .btn-default:hover {
    border-color: #767B92; /* WCAG 1.4.11: control border >=3:1 (4.18:1) */
}


.form-search .dropdown-submenu {
    right: -2px;
}


.form-search .dropdown-menu {
    margin-top: 0px;
}


.dropdown-search.dropdown-menu > li:hover {
    background-color: transparent;
}


#navbar .form-search .dropdown-menu {
    margin-top: 0px;
}


.section-diagonal-left {
    -webkit-transform: skew(0deg, -1.3deg);
    -ms-transform: skew(0deg, -1.3deg);
    transform: skew(0deg, -1.3deg);
    overflow: hidden;
    margin-top: -60px;
    margin-bottom: -20px;
}

    .section-diagonal-left .section-diagonal-left-content {
        -webkit-transform: skew(0deg, 1.3deg);
        -ms-transform: skew(0deg, 1.3deg);
        transform: skew(0deg, 1.3deg);
        background-size: cover;
        margin-top: -70px;
    }

        .section-diagonal-left .section-diagonal-left-content:before {
            content: "";
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            opacity: .2;
            z-index: -1;
            background-color: #fff;
        }


.section-diagonal-right {
    -webkit-transform: skew(0deg, 1.3deg);
    -ms-transform: skew(0deg, 1.3deg);
    transform: skew(0deg, 1.3deg);
    overflow: hidden;
    margin-top: 60px;
    margin-bottom: -20px;
}

    .section-diagonal-right.home-section {
        margin-top: -60px;
    }

    .section-diagonal-right .section-diagonal-right-content {
        -webkit-transform: skew(0deg, -1.3deg);
        -ms-transform: skew(0deg, -1.3deg);
        transform: skew(0deg, -1.3deg);
        background-size: cover;
        margin-top: -70px;
    }

        .section-diagonal-right .section-diagonal-right-content:before {
            content: "";
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            opacity: .8;
            z-index: -1;
            background-color: #0F64FF;
        }


    .section-diagonal-left .row,
    .section-diagonal-right .row {
        padding-top: 125px;
    }


    .section-diagonal-left .col-md-5,
    .section-diagonal-right .col-md-5 {
        float: none;
        margin: 0 auto;
    }


    .section-diagonal-left p,
    .section-diagonal-right p {
        border-top: none;
    }


.section-landing {
    background: linear-gradient(transparent, transparent);
    background-size: cover;
}

    .section-landing .row > div {
        margin-top: 80px;
    }

        .section-landing .row > div .section-landing-heading {
            font-size: 4rem;
            color: #fff;
        }

@media screen and (max-width: 600px) {

    .section-landing .row > div .section-landing-heading {
        font-size: 16vw;
    }
}

.section-landing .row > div .section-landing-sub-heading {
    margin-top: 0;
    margin-bottom: 50px;
    font-size: 1.5rem;
    color: #fff;
    font-weight: Semibold;
}

@media screen and (max-width: 600px) {

    .section-landing .row > div .section-landing-sub-heading {
        font-size: 4vw;
    }
}


.section-sub-landing {
    background-size: cover;
}


.section-default {
    background-size: cover;
}

@media screen and (max-width: 767px) {

    .section-default:before {
        content: " ";
        width: 100%;
        height: 100%;
        position: absolute;
        z-index: 0;
        top: 0;
        left: 0;
        background: -moz-linear-gradient(top, transparent 0%, rgba(0, 0, 0, 0.59) 41%, rgba(0, 0, 0, 0.62) 43%, black 100%);
        /* FF3.6-15 */
        background: -webkit-linear-gradient(top, transparent 0%, rgba(0, 0, 0, 0.59) 41%, rgba(0, 0, 0, 0.62) 43%, black 100%);
        /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 0.59) 41%, rgba(0, 0, 0, 0.62) 43%, black 100%);
        /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#000000',GradientType=0 );
        /* IE6-9 */
    }
}

.section-default .row {
    padding-bottom: 150px;
}


.section-knowledge {
    margin-bottom: 40px;
}


.content-home .btn {
    margin-top: 0;
}


.content-home .panel {
    background-color: transparent;
    border: 0;
    box-shadow: none;
}

    .content-home .panel p {
        border: 0;
    }


.content-home .panel-heading {
    display: none;
}


.content-home .list-group-item {
    padding: 20px 0;
    font-size: 20px;
    background-color: transparent;
    border: 0;
    border-top: 1px solid #ddd;
}

    .content-home .list-group-item img {
        margin-right: 25px;
    }


    .content-home a.list-group-item,
    .content-home .list-group-item a.title {
        color: #232222;
    }

        .content-home a.list-group-item:hover,
        .content-home a.list-group-item:focus,
        .content-home .list-group-item a.title:hover,
        .content-home .list-group-item a.title:focus {
            color: #232222;
            text-decoration: underline;
            background-color: transparent;
        }


.content-home .title,
.content-home .description {
    display: block;
}


.content-home .title {
    font-size: 24px;
    font-family: "Segoe UI Light", "Helvetica Neue", Helvetica, Arial, sans-serif;
}


.content-home .description {
    display: block;
    font-size: 14px;
}


.sidebar-home {
    background-color: #eeeeee;
    border-top: 7px solid #0b80d0;
    margin-top: 36px;
    position: relative;
}

    .sidebar-home h3 {
        font-size: 18px;
    }

    .sidebar-home .panel {
        background-color: transparent;
        border: 0;
        box-shadow: none;
    }

    .sidebar-home .panel-heading {
        padding-left: 0;
        background-color: transparent;
        border: 0;
    }

    .sidebar-home .panel-title {
        font-size: 14px;
        color: #0052D9; /* WCAG 1.4.3: darker blue for text on #eeeeee panel (6.54:1) */
        font-family: "Segoe UI Semibold", "Helvetica Neue", Helvetica, Arial, sans-serif;
    }

    .sidebar-home .list-group-item {
        padding-left: 0;
        font-size: 14px;
        background-color: transparent;
        border: 0;
    }

        .sidebar-home .list-group-item:hover,
        .sidebar-home .list-group-item:focus {
            text-decoration: underline;
            background-color: transparent;
        }

        .sidebar-home .list-group-item .date {
            visibility: hidden;
        }


.section-landing-search {
    min-height: 250px;
    background: url(homehero.jpg) no-repeat 0 25%;
    background-size: cover;
}


.section-landing-forums {
    min-height: 250px;
    background-size: cover;
}


.section-knowledge .list-group a.list-group-item {
    color: #0052D9; /* WCAG 1.4.3: darker blue for links on non-white panel (6.54:1) */
}


.section-knowledge .panel-title {
    color: #000;
}


.page_section.section-landing .row {
    padding-bottom: 60px;
}


    .page_section.section-landing .row > div {
        margin-top: 0px;
    }


ul.tree, ol.tree {
    color: #0F64FF;
}


.tree ul, .tree ol, .tree ul ul, .tree ol ul, .tree ol ol ul, .tree ol ul ul, .tree ul ol ul, .tree ul ul ul {
    list-style-type: disc;
    color: #0F64FF;
}

/* ADX_FORMS  */

.adx_forms_font_calibri {
    font-family: Calibri;
}


.adx_forms_font_new_roman {
    font-family: Times New Roman;
}


.adx_forms_font_helvetica {
    font-family: 'Helvetica', sans-serif;
}

/* Below changes are done to support DefaultPortalTemplate in maker */
html {
    font-family: "Segoe UI", "Helvetica Neue", Arial, sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    height: 100%;
    margin: 0;
    /* Explicitly set the root font-size to 16px (browser default) so 1rem = 16px
       is guaranteed throughout theme.css, regardless of platform or browser defaults. */
    font-size: 16px;
}

.wrapper-body {
    /* Offset for the fixed 70px navbar — prevents non-hero content from starting under the header */
    padding-top: 70px;
    min-height: calc(100% - 132px);
    margin-bottom: 0px;
}

.footer .push {
    height: 43px;
}

.footer {
    margin-top: 0px;
}

.page-copy {
    margin-top: 0px;
    margin-bottom: 0px;
}

.navbar-brand {
    line-height: 37px;
}

h1, h2, h3, h4, h5, h6 {
    color: unset;
}

body, legend {
    color: #000000;
}

.nav-tabs > li > a:hover, .nav-tabs > li > a:focus {
    background-color: #f2f2f2;
    color: #0052D9; /* WCAG 1.4.3: darker blue for text on #f2f2f2 (6.54:1) */
}

.btn-default {
    color: #0F64FF;
    background-color: white;
    border-color: #0F64FF;
}

.btn-default:hover,
.btn-default:active,
.btn-default.active,
.btn-default:focus,
.btn-default.focus {
    color: #0052D9; /* WCAG 1.4.3: darker blue for text on #f2f2f2 hover surface (6.54:1) */
    background-color: #f2f2f2;
    border-color: #0052D9;
}

.btn-primary {
    color: white;
    background-color: #0F64FF;
    border-color: #0F64FF;
}

.btn-primary:hover,
.btn-primary:active,
.btn-primary.active,
.btn-primary:active:hover,
.btn-primary.active:hover,
.btn-primary:active:focus,
.btn-primary.active:focus,
.btn-primary:active.focus,
.btn-primary.active.focus,
.btn-primary:focus,
.btn-primary.focus {
    color: white;
    background-color: #0052D9;
    border-color: #0052D9;
}

/* WCAG 2.5.5: minimum 44×44px touch target */
.navbar-inverse .navbar-toggle {
    border: 1px solid #0F64FF;
    min-height: 44px;
    min-width: 44px;
}

.navbar-inverse .navbar-toggle:hover {
    background-color: #0F64FF;
}

.navbar-inverse .navbar-toggle:focus {
    border: 1px solid black;
    background-color: #0F64FF;
}

.navbar-inverse .navbar-toggle:focus-visible {
    outline: 2px solid #0F64FF;
    outline-offset: 3px;
}

.navbar-inverse .navbar-nav .open .dropdown-menu {
    background-color: #000B2B;
}

.navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
    color: #fff;
}

.navbar-inverse .navbar-nav > .open > a,
.navbar-inverse .navbar-nav > .open > a:hover,
.navbar-inverse .navbar-nav > .open > a:focus {
    background-color: #0F64FF;
    color: #fff;
}

.navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,
.navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus
.navbar-inverse .navbar-nav .open .dropdown-menu > .active > a,
.navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover,
.navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {
    background-color: rgba(255,255,255,0.1);
    color: #fff;
}

.nav > li > a:hover, .nav > li > a:focus {
    background-color: #f2f2f2;
}

.nav .open .dropdown-menu {
    background-color: #ffffff;
}

.nav .open .dropdown-menu > li > a {
    color: black;
}

.nav > .open > a
.nav > .open > a:hover,
.nav > .open > a:focus {
    background-color: #f2f2f2;
}

.nav .open .dropdown-menu > .active > a,
.nav .open .dropdown-menu > .active > a:hover,
.nav .open .dropdown-menu > .active > a:focus,
.nav .open .dropdown-menu > li > a:hover,
.nav .open .dropdown-menu > li > a:focus {
    background-color: #f2f2f2;
    color: black;
}

#filterDropdownId > .dropdown-menu > li > a:focus {
	border: 1px solid;
}

#filterDropdownId > a:focus{
	border: 1px solid;
}

.crmEntityFormView, .entitylist {
    background-color: #ffffff;
    color: #000000;
    border: 1px solid #f2f2f2;
}

.sectionPrimaryColor {
    background-color: #0F64FF;
    color: #ffffff;
}

.sectionPrimaryColor h1, .sectionPrimaryColor h2, .sectionPrimaryColor h3, .sectionPrimaryColor h4, .sectionPrimaryColor h5, .sectionPrimaryColor h6 {
    color: #ffffff;
}

.sectionPrimaryColor .crmEntityFormView h1,
.sectionPrimaryColor .crmEntityFormView h2,
.sectionPrimaryColor .crmEntityFormView h3,
.sectionPrimaryColor .crmEntityFormView h4,
.sectionPrimaryColor .crmEntityFormView h5,
.sectionPrimaryColor .crmEntityFormView h6 {
    color: #000000;
}

.sectionPrimaryColor .entitylist h1,
.sectionPrimaryColor .entitylist h2,
.sectionPrimaryColor .entitylist h3,
.sectionPrimaryColor .entitylist h4,
.sectionPrimaryColor .entitylist h5,
.sectionPrimaryColor .entitylist h6 {
    color: #000000;
}

.sectionFixedStyle {
    color: #000000;
}

a {
    color: #0F64FF;
}

a:not(.btn) {
    text-decoration: underline;
}

[role="navigation"] a,
[role="contentinfo"] a,
.toolbar a,
a.list-group-item {
    text-decoration: none;
}

a:hover, a:focus {
    color: #0F64FF;
    text-decoration: underline;
}

.breadcrumb > .active {
    color: #000000;
    font-weight: bold;
}

p {
    font-size: 1rem /* WCAG 1.4.4: rem scales with user font-size (16px root) */
}

h1 {
    font-size: 2.25rem; /* WCAG 1.4.4: 36px at 16px root */
    font-weight: bold;
    margin-left: 0px;
    margin-right: 0px;
}

h2 {
    font-size: 1.75rem; /* WCAG 1.4.4: 28px at 16px root */
    font-weight: 600;
}

h3 {
    font-size: 1.5rem; /* WCAG 1.4.4: 24px at 16px root */
    font-weight: 600;
}

.page-header {
    border-bottom: 0px;
}

.navbar-brand {
    padding: 8px
}

.navbar-static-top.navbar-inverse .navbar-brand {
    font-size: 24px;
    font-weight: bold;
    font-family: unset;
}

.navbar-static-top.navbar-inverse .navbar-brand a {
    color: #fff;
    text-decoration: none;
}
.help-block
{
    color:black;
}

.skip-to-content a 
{
    padding: 10px 20px;
    position: absolute;
    top:-43px;
    left:0px;
    color:#FFFFFF;
    border-radius: 2px;
    background:#000B2B;
    -webkit-transition: top 1s ease-out;
    transition: top 1s ease-out;
    z-index: 100;
    font-family: Segoe UI;
    font-size: 14px;
}

.skip-to-content a:focus
{
    position:absolute;
    left:0px;
    top:0px;
    outline: 2px solid #0F64FF;
    outline-offset: 2px;
    color:#FFFFFF;
    -webkit-transition: top .1s ease-in;
    transition: top .1s ease-in;
    /* Navbar sits at z-index 101 — skip link must clear it when focused */
    z-index: 10000;
}

@media screen and (-ms-high-contrast: active) {
    .nav-tabs>li.active>a, .nav-tabs>li.active>a:hover, .nav-tabs>li.active>a:focus
    {
     border-bottom: 0px ; 
    }
    
    .nav-tabs>li>a
    {  
     border: 0px;
    }

    .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,
    .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus
    .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a,
    .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover,
    .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {
        border: 1px solid;
    }

    .facet-list-group-item 
    {
        margin: 1px;
        border: 0px;
    }
}

/* Power Virtual Agent styles */
.pva-floating-style {
  position: fixed;
  bottom: 0px;
  right: 0px;
  margin-right: 16px;
  margin-bottom: 18px;
  z-index: 9999;
}
/* Power Virtual Agent styles ends */

.visible-lg-block{
    display: flex !important;
    align-items: center;
}

.navbar-brand .siteTitle {
    font-size: 30px;
    font-weight: 400;
}

/* =========================================================
   Kundeforhold Address Search Component (bp-address-search)
   ========================================================= */
.bp-address-search-wrapper {
    width: 450px;
    max-width: 450px;
    padding: 4px 8px;
}

@media (max-width: 767px) {
    .bp-address-search-wrapper {
        width: 100%;
        max-width: 100%;
        padding: 4px 0;
        float: none !important;
        margin: 0;
    }

    /* Mobile: prevent navbar overflow from clipping the address search dropdown */
    #navbar.in {
        overflow: visible;
    }

    .navbar {
        position: relative;
        z-index: 1030;
    }

    .navbar-collapse.in,
    .navbar-collapse.collapsing {
        position: relative;
        z-index: 1030;
        background-color: #fff;
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
    }

    .navbar-collapse.in .bp-address-search-wrapper .bp-address-search__input {
        background-color: rgba(0, 0, 0, 0.05) !important;
        border: 1px solid #767B92;
        color: #000B2B !important;
    }

    .navbar-collapse.in .bp-address-search-wrapper .bp-address-search__input::placeholder {
        color: rgba(0, 11, 43, 0.65) !important;
    }

    .navbar-collapse.in .bp-address-search-wrapper .bp-address-search__icon {
        color: #000B2B;
    }

    .navbar-collapse.in .bp-address-search-wrapper .bp-address-search__clear {
        color: #000B2B;
    }

    .navbar-collapse.in .navbar-nav > li > a {
        color: #000B2B !important;
    }

    .navbar-collapse.in .navbar-nav > li > a:hover,
    .navbar-collapse.in .navbar-nav > li > a:focus {
        color: #0F64FF !important;
        background-color: rgba(15, 100, 255, 0.1) !important;
    }

    .navbar-collapse.in .bp-address-search-wrapper .bp-address-search__input:focus {
        border-color: #0F64FF;
        box-shadow: 0 0 0 2px rgba(15, 100, 255, 0.35);
    }

    .navbar-collapse.collapse:not(.in) .bp-address-search-wrapper {
        display: none !important;
    }
}

.bp-address-search {
    position: relative;
    width: 100%;
}

.bp-address-search__input-wrapper {
    display: flex;
    align-items: center;
    position: relative;
}

.bp-address-search__icon {
    position: absolute;
    left: 10px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    color: #555;
    z-index: 1;
    pointer-events: none;
}

.bp-address-search__input {
    padding: 8px 32px; /* WCAG 1.4.4/1.4.10: vertical padding replaces fixed height so text reflows at zoom */
    width: 100%;
    border-radius: 4px;
    border: 1px solid #767B92; /* WCAG 1.4.11: control border >=3:1 (4.18:1) */
    min-height: 44px; /* WCAG 2.5.8: minimum 44px target */
    font-size: 14px;
    background-color: #fff;
    color: #333;
    box-sizing: border-box;
    text-overflow: ellipsis;
    flex: 1;
    min-width: 0;
}

.bp-address-search__input:focus {
    border-color: #0F64FF;
    outline: 2px solid #0F64FF; /* WCAG 2.4.7/1.4.11: solid focus ring, forced-colors safe */
    outline-offset: 2px;
}

.bp-address-search__clear {
    position: absolute;
    right: 2px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    background: none;
    border: none;
    cursor: pointer;
    color: #555; /* WCAG 1.4.11: clear icon >=3:1 (7.46:1) */
    padding: 0;
    line-height: 1;
    font-size: 12px;
    min-width: 44px;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
}

.bp-address-search__clear:hover,
.bp-address-search__clear:focus {
    color: #0F64FF;
    outline: 1px dashed #0F64FF;
}

.bp-address-search__results {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 9999;
    background: #fff;
    border: 1px solid #ccc;
    border-top: none;
    border-radius: 0 0 4px 4px;
    -webkit-box-shadow: 0 4px 8px rgba(0,0,0,0.15);
    box-shadow: 0 4px 8px rgba(0,0,0,0.15);
    list-style: none;
    margin: 0;
    padding: 0;
    max-height: 240px;
    overflow-y: auto;
    min-width: 320px;
    max-width: 480px;
}

@media (max-width: 767px) {
    .bp-address-search__results {
        min-width: auto;
        width: calc(100vw - 30px);
        max-width: none;
    }
}

.bp-address-search__result-item {
    padding: 8px 12px;
    cursor: pointer;
    font-size: 14px;
    color: #333;
    border-bottom: 1px solid #f0f0f0;
}

.bp-address-search__result-item:last-child {
    border-bottom: none;
}

.bp-address-search__result-item:hover,
.bp-address-search__result-item--active {
    background-color: #0F64FF;
    color: #fff;
}

/* Loading state — animated border pulses while an XHR is in flight */
.bp-address-search--loading .bp-address-search__input {
    border-color: #0F64FF;
    -webkit-animation: bp-search-pulse 1s ease-in-out infinite;
    animation: bp-search-pulse 1s ease-in-out infinite;
}

@-webkit-keyframes bp-search-pulse {
    0%   { -webkit-box-shadow: 0 0 0 0   rgba(15, 100, 255, 0.4); box-shadow: 0 0 0 0   rgba(15, 100, 255, 0.4); }
    50%  { -webkit-box-shadow: 0 0 0 3px rgba(15, 100, 255, 0.15); box-shadow: 0 0 0 3px rgba(15, 100, 255, 0.15); }
    100% { -webkit-box-shadow: 0 0 0 0   rgba(15, 100, 255, 0.4); box-shadow: 0 0 0 0   rgba(15, 100, 255, 0.4); }
}

@keyframes bp-search-pulse {
    0%   { -webkit-box-shadow: 0 0 0 0   rgba(15, 100, 255, 0.4); box-shadow: 0 0 0 0   rgba(15, 100, 255, 0.4); }
    50%  { -webkit-box-shadow: 0 0 0 3px rgba(15, 100, 255, 0.15); box-shadow: 0 0 0 3px rgba(15, 100, 255, 0.15); }
    100% { -webkit-box-shadow: 0 0 0 0   rgba(15, 100, 255, 0.4); box-shadow: 0 0 0 0   rgba(15, 100, 255, 0.4); }
}

/*
 * Card styles override portalbasictheme.css defaults.
 * theme.css loads after portalbasictheme.css (adx_displayorder 20 vs 10),
 * so these rules win the cascade where specificity is equal.
 * Descendant selectors (.columnBlockLayout h3, .columnBlockLayout p, .columnBlockLayout .button1)
 * are used deliberately to match the (0,1,1) specificity of portalbasictheme's
 * [data-component-theme] compound selectors.
 */

/* Gap between card columns — only on white-background card sections, not the hero.
   DOM structure: .row.sectionBlockLayout > .container > .columnBlockLayout (no .row child).
   Hero sections use background-image; card sections use background-color: #fff. */
.sectionBlockLayout[style*="background-color"][style*="#fff"] > .container {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}

.sectionBlockLayout[style*="background-color"][style*="#fff"] > .container > .columnBlockLayout {
    flex: 1 1 0;
    min-width: 0;
    width: auto;
}

@media (max-width: 767px) {
    .sectionBlockLayout[style*="background-color"][style*="#fff"] > .container {
        gap: 16px;
    }

    .sectionBlockLayout[style*="background-color"][style*="#fff"] > .container > .columnBlockLayout {
        flex: 0 0 100%;
        width: 100%;
    }
}

.columnBlockLayout {
    background-color: #F3F4F6;
    border-radius: 16px;
    margin-bottom: 0;
    padding: 0 0 24px 0; /* top/right/bottom/left — zero sides so images are flush with card edges */
    display: flex;
    flex-direction: column;
    overflow: hidden; /* clips card images to the card's border-radius corners */
}

.columnBlockLayout img {
    border-radius: 16px 16px 0 0;
    object-fit: cover;
    height: 220px !important;
    width: 100% !important;
}

.columnBlockLayout h3 {
    color: #000;
    font-size: 20px;
    font-weight: 700;
    padding: 20px 24px 0;
    margin-top: 0;
}

.columnBlockLayout p {
    color: #666;
    font-size: 14px;
    padding: 0 24px;
    flex-grow: 1;
}

.columnBlockLayout .button1 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 33 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.073 1 30.38 12 20.073 23m9.084-11.05H0' stroke='%23fff' stroke-width='2.618'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 20px 14px;
    border-radius: 50%;
    background-color: #0F64FF;
    color: #fff;
    border: none;
    cursor: pointer;
    text-decoration: none;
    transition: background-color 0.2s ease;
    margin: 0 24px 0 auto;
    padding: 0;
    font-size: 0;
    line-height: 1;
}


.columnBlockLayout .button1:hover,
.columnBlockLayout .button1:focus {
    background-color: #0052D9;
    color: #fff;
    text-decoration: none;
}

/* Focus ring — outline used instead of box-shadow because overflow:hidden
   on the parent .columnBlockLayout would clip a descendant's box-shadow.
   outline-offset: 4px ensures the ring sits against the card background
   (#F3F4F6) for sufficient WCAG SC 1.4.11 contrast. */
.columnBlockLayout .button1:focus {
    outline: 2px solid #0F64FF;
    outline-offset: 4px;
}

.columnBlockLayout .button1:active {
    background-color: #003DAD;
    color: #fff;
    text-decoration: none;
}

/* Card section spacing */
.sectionBlockLayout[data-component-theme="portalThemeColor7"] {
    padding: 40px 0 !important;
}

/* Remove top padding when two card sections are adjacent — prevents double spacing */
.sectionBlockLayout[style*="background-color"][style*="#fff"] + .sectionBlockLayout[style*="background-color"][style*="#fff"] {
    padding-top: 0px !important;
}

/* Gap between cards is handled by flex gap — margin-bottom would add unwanted extra space */
.sectionBlockLayout[style*="background-color"][style*="#fff"] .columnBlockLayout {
    margin-bottom: 0;
}

/* Address search in navbar — update for dark navy background */
/* Bootstrap portalbasictheme.css forces .form-control background to #fff !important */
.bp-address-search-wrapper .bp-address-search__input {
    background-color: rgba(255, 255, 255, 0.1) !important;
    border: 1px solid rgba(255, 255, 255, 0.3);
    color: #fff !important;
    overflow: hidden !important;
    min-height: 44px; /* WCAG 2.5.5: minimum 44px touch target */
}

.bp-address-search-wrapper .bp-address-search__input::placeholder {
    color: rgba(255, 255, 255, 0.85) !important;
}

.bp-address-search-wrapper .bp-address-search__input:focus {
    border-color: #0F64FF;
    background-color: rgba(255, 255, 255, 0.15) !important;
    box-shadow: 0 0 0 2px rgba(15, 100, 255, 0.35);
}

/* Generous section padding */
.page-copy .row.sectionBlockLayout {
    padding: 60px 0;
}

/* Mobile card responsiveness */
@media (max-width: 767px) {
    .columnBlockLayout {
        margin-bottom: 16px;
    }
}

/* ============================================================
   Borgerportalen footer — two-column layout matching vestfor.dk
   ============================================================ */

.bp-footer {
    background-color: #f5f5f5;
    color: #1a1a1a;
    font-size: 14px;
    padding: 60px 0 0;
}

.bp-footer__columns {
    display: flex;
    flex-direction: row;
    gap: 60px;
    padding-bottom: 60px;
}

.bp-footer__col {
    flex: 1;
}

.bp-footer__heading {
    font-size: 16px;
    font-weight: 700;
    margin-top: 0;
    margin-bottom: 16px;
    color: #1a1a1a;
    border: none;
    padding: 0;
}

.bp-footer__subheading {
    font-size: 14px;
    font-weight: 700;
    margin-top: 16px;
    margin-bottom: 8px;
    color: #1a1a1a;
    border: none;
    padding: 0;
}

.bp-footer__company {
    font-weight: 600;
    margin-bottom: 4px;
}

.bp-footer__address {
    font-style: normal;
    margin-bottom: 12px;
    line-height: 1.6;
}

.bp-footer p {
    margin-bottom: 6px;
    line-height: 1.6;
}

.bp-footer a {
    color: #1a1a1a;
    text-decoration: none;
}

.bp-footer a:hover,
.bp-footer a:focus {
    text-decoration: underline;
}

.bp-footer__cvr {
    margin-top: 16px;
}

.bp-footer__social {
    list-style: none;
    padding: 0;
    margin: 0;
}

.bp-footer__social li {
    margin-bottom: 10px;
}

.bp-footer__social a {
    text-decoration: none;
    color: #1a1a1a;
}

.bp-footer__social a:hover,
.bp-footer__social a:focus {
    text-decoration: underline;
}

.bp-footer__bottom {
    border-top: 1px solid #ddd;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 0;
    font-size: 13px;
    color: #1a1a1a;
}

.bp-footer__legal {
    display: flex;
    gap: 24px;
}

.bp-footer__legal a {
    color: #1a1a1a;
    text-decoration: none;
}

.bp-footer__legal a:hover,
.bp-footer__legal a:focus {
    text-decoration: underline;
}

.bp-footer__legal a[aria-disabled="true"] {
    color: #6E6E6E;
    cursor: default;
}

.bp-footer__legal a[aria-disabled="true"]:hover,
.bp-footer__legal a[aria-disabled="true"]:focus {
    text-decoration: none;
}

@media (max-width: 767px) {
    .bp-footer__columns {
        flex-direction: column;
        gap: 40px;
    }

    .bp-footer__bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }
}

.bp-address-gate {
    padding: 80px 20px;
    text-align: center;
}

.bp-address-gate__prompt {
    max-width: 480px;
    margin: 0 auto;
}

.bp-address-gate__icon {
    font-size: 48px;
    color: #333;
    margin-bottom: 24px;
}

.bp-address-gate__heading {
    font-size: 28px;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 12px;
}

.bp-address-gate__search-slot {
    max-width: 500px;
    margin: 20px auto 0;
}

.bp-header-search--homepage {
    display: none !important;
}

.bp-header-search--gate-active {
    display: none !important;
}


/* Hero section with Vimeo background video */

.bp-hero {
    position: relative;
    overflow: hidden;
    min-height: 70vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #000B2B; /* visible until video loads */
    margin-top: -70px; /* Pull hero up by the navbar height so the video bleeds behind the transparent header. Counteracted by wrapper-body padding-top: 70px on non-hero pages. */
}

.bp-hero__video {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100vw;
    height: 56.25vw; /* 16:9 inverse */
    min-width: 177.78vh; /* 16:9 */
    min-height: 100%;
    transform: translate(-50%, -50%);
    pointer-events: none;
    z-index: 0;
}

.bp-hero__video iframe {
    width: 100%;
    height: 100%;
    border: none;
}

.bp-hero__overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(0deg, rgba(0, 11, 43, 0.70), rgba(0, 11, 43, 0.50));
    z-index: 1;
}

.bp-hero__content {
    position: relative;
    z-index: 2;
    text-align: center;
    /* 180px top/bottom gives the hero enough breathing room to feel cinematic
       while keeping text vertically centred across typical viewport heights. */
    padding: 180px 0;
}

.bp-hero__content h1 {
    color: #fff;
    font-size: clamp(36px, 6vw, 64px);
    font-weight: 700;
}

.bp-hero__content h2 {
    color: #fff;
    font-size: clamp(18px, 2.5vw, 24px);
    font-weight: 400;
    opacity: 0.9;
}

@media (max-width: 767px) {
    .bp-hero__content {
        padding: 80px 20px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .bp-hero__video {
        display: none;
    }
    .bp-hero {
        background-color: #000B2B;
    }
    .navbar,
    .navbar-brand,
    .navbar-nav > li > a,
    .navbar-toggle .icon-bar {
        transition: none !important;
    }
    /* WCAG 2.2.2: stop the infinite search-pulse animation */
    .bp-address-search--loading .bp-address-search__input {
        animation: none;
    }
    /* WCAG 2.3.3 (AAA): global fallback neutralising remaining animations/transitions */
    *,
    *::before,
    *::after {
        animation-duration: .01ms !important;
        transition-duration: .01ms !important;
    }
}

/* Sticky header — transparent over hero, white after scroll.
   Mirrors vestfor.dk header behavior. */

.navbar {
    position: fixed !important;
    top: 0;
    left: 0;
    right: 0;
    z-index: 101;
    min-height: 70px; /* WCAG 1.4.4/1.4.10: min-height lets navbar grow so text does not clip at 200% zoom */
    padding: 0 2rem;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    margin-bottom: 0 !important;
    transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1),
                color 150ms cubic-bezier(0.4, 0, 0.2, 1);
}

.navbar .container-fluid {
    display: flex;
    align-items: center;
    height: 100%;
    padding: 0;
}

.navbar-brand {
    color: #fff !important;
    font-weight: 700;
    font-size: 1.25rem;
    overflow: visible;
    transition: color 150ms cubic-bezier(0.4, 0, 0.2, 1);
}

.navbar-nav > li > a {
    color: rgba(255, 255, 255, 0.9) !important;
    font-weight: 700 !important;
    font-size: 1rem !important;
    transition: color 150ms cubic-bezier(0.4, 0, 0.2, 1);
}

.navbar-nav > li > a:hover,
.navbar-nav > li > a:focus {
    color: #fff !important;
}

.navbar.navbar--scrolled {
    background-color: #fff !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
}

.navbar.navbar--scrolled .navbar-brand,
.navbar.navbar--scrolled .navbar-brand a,
.navbar.navbar--scrolled .navbar-brand a span {
    color: #001E6E !important;
}

/* Power Pages portalbasictheme.css sets explicit color on .navbar-brand a,
   overriding inherited color from .navbar-brand. Target the anchor directly. */
.navbar-brand a,
.navbar-brand a span {
    color: #fff !important;
    transition: color 150ms cubic-bezier(0.4, 0, 0.2, 1);
}

.navbar.navbar--scrolled .navbar-nav > li > a {
    color: #000B2B !important;
}

.navbar.navbar--scrolled .navbar-nav > li > a:hover,
.navbar.navbar--scrolled .navbar-nav > li > a:focus {
    color: #0F64FF !important;
    /* WCAG 1.4.3: clear the brand-blue fill inherited from .navbar-inverse hover (line ~303);
       on the white scrolled header it produced blue-on-blue (1:1). #0F64FF on #fff = 4.9:1. */
    background-color: transparent !important;
}

.navbar.navbar--scrolled .navbar-nav > li > a:focus {
    /* WCAG 2.4.7: the legacy dashed-white outline (line ~312) is invisible on the white scrolled
       header; replace with a solid blue outline that is visible and forced-colors-safe. */
    border: none !important;
    outline: 2px solid #0F64FF !important;
    outline-offset: 2px;
}

.navbar.navbar--scrolled .bp-address-search-wrapper .bp-address-search__input {
    background-color: rgba(0, 11, 43, 0.05) !important;
    border: 1px solid #767B92;
    color: #000B2B !important;
}

.navbar.navbar--scrolled .bp-address-search-wrapper .bp-address-search__input::placeholder {
    color: rgba(0, 11, 43, 0.65) !important; /* WCAG 1.4.3: placeholder reaches >=4.5:1 */
}

.navbar.navbar--scrolled .bp-address-search-wrapper .bp-address-search__input:focus {
    border-color: #0F64FF;
    box-shadow: 0 0 0 2px rgba(15, 100, 255, 0.35);
}

.navbar-toggle .icon-bar {
    background-color: #fff !important;
    transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1);
}

.navbar.navbar--scrolled .navbar-toggle .icon-bar {
    background-color: #000B2B !important;
}


/* Bestilling — service selection flow */

.bp-bestilling {
    padding: 40px 0;
}

.bp-bestilling__loading,
.bp-bestilling__error,
.bp-bestilling__empty {
    padding: 60px 20px;
    text-align: center;
    color: #666;
    font-size: 16px;
}

.bp-bestilling__error {
    color: #c0392b;
}

.bp-bestilling__empty h2,
.bp-bestilling__services h2 {
    font-size: 24px;
    font-weight: 700;
    color: #000B2B;
    margin-bottom: 8px;
}

.bp-bestilling__empty p,
.bp-bestilling__services > p {
    font-size: 16px;
    color: #555;
    margin-bottom: 32px;
    line-height: 1.6;
}

.bp-bestilling__service-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.bp-bestilling__service-card {
    position: relative;
    background-color: #fff;
    border: 1px solid #8c929e;
    border-radius: 8px;
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    transition: box-shadow 0.2s ease, border-color 0.2s ease;
}

.bp-bestilling__service-card:hover {
    border-color: #0F64FF;
    box-shadow: 0 2px 12px rgba(15, 100, 255, 0.1);
}

.bp-bestilling__service-card:focus-within {
    border-color: #0F64FF;
}

.bp-bestilling__service-name {
    font-size: 18px;
    font-weight: 700;
    color: #000B2B;
    margin: 0;
}

.bp-bestilling__service-desc {
    font-size: 15px;
    color: #555;
    line-height: 1.6;
    margin: 0;
}

.bp-bestilling__service-btn {
    align-self: flex-start;
    margin-top: 8px;
    min-height: 44px;
    background-color: #0F64FF;
    border: none;
    color: #fff;
    padding: 10px 28px;
    border-radius: 24px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.bp-bestilling__service-btn:hover,
.bp-bestilling__service-btn:focus {
    background-color: #0052D9;
    color: #fff;
}

.bp-bestilling__service-btn:focus {
    box-shadow: 0 0 0 3px #fff, 0 0 0 5px #0F64FF;
    outline: 2px solid transparent; /* WCAG 2.4.7: forced-colors renders this as a system focus ring */
    outline-offset: 2px;
}

.bp-bestilling__service-btn:active {
    background-color: #0040B0;
}

/* Styles the Basic Form submit button via adx_submitbuttoncssclass on the Basic Form record */
.bp-bestilling__submit-btn {
    min-height: 44px;
    background-color: #0F64FF;
    border: none;
    color: #fff;
    padding: 10px 28px;
    border-radius: 24px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.bp-bestilling__submit-btn:hover,
.bp-bestilling__submit-btn:focus {
    background-color: #0052D9;
    color: #fff;
}

.bp-bestilling__submit-btn:focus {
    box-shadow: 0 0 0 3px #fff, 0 0 0 5px #0F64FF;
    outline: 2px solid transparent; /* WCAG 2.4.7: forced-colors renders this as a system focus ring */
    outline-offset: 2px;
}

.bp-bestilling__submit-btn:active {
    background-color: #0040B0;
}

.bp-bestilling__form {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.bp-bestilling__ydelse-name {
    font-size: 24px;
    font-weight: 700;
    color: #000B2B;
    margin: 0 0 8px 0;
}

.bp-bestilling__ydelse-intro {
    font-size: 15px;
    color: #555;
    line-height: 1.6;
    margin: 0;
}

.bp-bestilling__btn-back {
    min-height: 44px;
    background-color: transparent;
    border: 2px solid #8c929e;
    color: #1a3a4a;
    padding: 10px 28px;
    border-radius: 24px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: border-color 0.2s ease, background-color 0.2s ease;
    align-self: flex-start;
}

.bp-bestilling__btn-back:hover,
.bp-bestilling__btn-back:focus {
    border-color: #000B2B;
    background-color: #f0f2f5;
    color: #000B2B;
}

.bp-bestilling__btn-back:focus {
    box-shadow: 0 0 0 3px #fff, 0 0 0 5px #0F64FF;
    outline: 2px solid transparent; /* WCAG 2.4.7: forced-colors renders this as a system focus ring */
    outline-offset: 2px;
}

.bp-bestilling__btn-back:active {
    background-color: #dde0e5;
}

.bp-bestilling__form .crmEntityFormView {
    background-color: #fff;
    border: none;
    border-radius: 16px;
    padding: 32px;
    box-shadow: 0 1px 8px rgba(0, 0, 0, 0.08);
    box-sizing: border-box;
}

/* Power Pages Basic Forms renders fields as table rows. display:block converts
   the table layout to vertical stacking. toggleField() in the Bestilling template
   hides rows via inline style (style.display='none'), which overrides this rule. */
.bp-bestilling__form table.table,
.bp-bestilling__form thead,
.bp-bestilling__form tbody,
.bp-bestilling__form tr,
.bp-bestilling__form td.cell,
.bp-bestilling__form td.clearfix {
    display: block;
    width: 100%;
}

.bp-bestilling__form fieldset {
    border: none;
    padding: 0;
    margin: 0 0 24px 0;
}

.bp-bestilling__form fieldset legend {
    font-size: 14px;
    font-weight: 600;
    color: #000B2B;
    margin-bottom: 12px;
    padding: 0;
}

/* Power Pages renders <h3> inside <legend> for section headers;
   overrides the global h3 { font-size: 24px } to create visual hierarchy below h2 */
.bp-bestilling__form fieldset legend h3 {
    font-size: 18px;
}

.bp-bestilling__form .control-group {
    margin-bottom: 22px;
}

.bp-bestilling__form .field-label {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: #555;
    margin-bottom: 6px;
}

.bp-bestilling__form .info.required .field-label::after {
    content: ' *';
    color: #c0392b;
}

.bp-bestilling__form .form-control {
    background-color: #F3F4F6 !important; /* portalbasictheme.css forces #fff !important — must override */
    border: 1px solid transparent;
    border-radius: 12px;
    padding: 14px 16px;
    font-size: 15px;
    color: #000B2B;
    min-height: 48px;
    width: 100%;
    box-sizing: border-box;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
    appearance: none;
    -webkit-appearance: none;
}

.bp-bestilling__form .form-control:focus {
    border-color: #0F64FF;
    outline: 2px solid #0F64FF; /* WCAG 2.4.7/1.4.11: solid focus ring, forced-colors safe */
    outline-offset: 2px;
    background-color: #fff !important; /* intentional: input goes white on focus for contrast */
}

.bp-bestilling__form .form-control:active {
    border-color: #0F64FF;
    outline: none;
    background-color: #fff !important;
}

.bp-bestilling__form select.form-control {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23555' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
    padding-right: 40px;
}

.bp-bestilling__form textarea.form-control {
    min-height: 120px;
    resize: vertical;
    max-width: 100%;
}

.bp-bestilling__form .field-validation-error {
    display: block;
    color: #c0392b;
    font-size: 13px;
    margin-top: 4px;
}

/* Power Pages Basic Forms always applies .btn-primary to the submit button
   in addition to adx_submitbuttoncssclass — this margin is not dead code. */
.bp-bestilling__form .btn-primary {
    margin-top: 8px;
}

/* Power Pages renders lookup search buttons at 34px — below WCAG SC 2.5.5 minimum */
.bp-bestilling__form .input-group-btn button {
    min-width: 44px;
    min-height: 44px;
}

.bp-bestilling__validation-summary {
    padding: 12px 16px;
    font-size: 14px;
    color: #fff;
    background-color: #c0392b;
    border-radius: 6px;
    margin-bottom: 16px;
    box-sizing: border-box;
}

/* Phase 2: Placeretmateriel picker */
.bp-bestilling__placeretmateriel {
    max-width: 640px;
}

.bp-bestilling__placeretmateriel h3 {
    font-size: 18px;
    font-weight: 600;
    color: #000B2B;
    margin: 0 0 12px 0;
}

/* Visually hidden but still focusable/accessible — the card's :has(:checked)
   border and background provide the selected-state visual instead. */
.bp-bestilling__pm-radio {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
}

/* Focus ring surfaces on the card, not the hidden radio, for visual coherence */
.bp-bestilling__service-card:has(.bp-bestilling__pm-radio:focus-visible) {
    outline: 2px solid #0F64FF;
    outline-offset: 2px;
}

.bp-bestilling__pm-label {
    cursor: pointer;
    flex: 1; /* fills available vertical space in column-direction card */
}

.bp-bestilling__service-card:has(input[type="radio"]:checked) {
    border-color: #0F64FF;
    background-color: #f0f6ff;
    box-shadow: 0 0 0 1px #0F64FF;
}

.bp-bestilling__service-card:has(input[type="radio"]:checked):hover {
    box-shadow: 0 0 0 1px #0F64FF, 0 2px 12px rgba(15, 100, 255, 0.1);
}

@media (min-width: 768px) {
    .bp-bestilling__service-list {
        gap: 20px;
    }

    .bp-bestilling__service-card {
        flex-direction: row;
        align-items: center;
        gap: 24px;
    }

    .bp-bestilling__service-card-content {
        flex: 1;
    }

    .bp-bestilling__placeretmateriel .bp-bestilling__service-card {
        flex-direction: column;
        align-items: stretch;
    }

    .bp-bestilling__service-btn {
        align-self: center;
        margin-top: 0;
        flex-shrink: 0;
    }

    .bp-bestilling__form .crmEntityFormView {
        max-width: 640px;
    }
}

.bp-logo {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    text-decoration: none !important;
    overflow: visible;
}

.bp-logo__icon {
    overflow: visible;
    line-height: 0; /* Prevents inline ghost space below SVG in span/inline contexts */
}

.bp-logo__icon svg {
    width: 34px;
    height: auto;
    display: block;
    overflow: visible;
}

.bp-logo__text svg {
    width: 125px;
    height: auto;
    display: block;
}

.bp-logo svg path {
    transition: fill 150ms cubic-bezier(0.4, 0, 0.2, 1);
}

.bp-logo:focus-visible {
    outline: 2px solid #0F64FF;
    outline-offset: 3px;
    border-radius: 2px;
}

/* On mobile, hide the wordmark and show only the V-mark */
/* !important needed to override portalbasictheme.css: .navbar-static-top.navbar-inverse .navbar-brand a span { display: inline; } */
@media (max-width: 767px) {
    .bp-logo__text {
        display: none !important;
    }

    .bp-bestilling__service-btn {
        align-self: flex-start;
        width: auto;
    }

    .bp-bestilling__service-card {
        padding: 16px;
    }

    .bp-bestilling__btn-back {
        width: 100%;
        align-self: stretch;
    }

    .bp-bestilling__form .crmEntityFormView {
        padding: 20px;
    }
}

.bp-bestilling__fraktion-icon {
    width: 48px;
    height: 48px;
    object-fit: contain;
    margin-bottom: 8px;
}

/* Tomningsproblem styling */

  #toemningProblemFormTitle {
    scroll-margin-top: var(--bp-fixed-header-scroll-offset, 96px);
    margin-top: 86px;
  }

  #faqFormTitle {
    scroll-margin-top: var(--bp-fixed-header-scroll-offset, 96px);
    margin-top: 86px;
  }