/* Dublin City Council - Citizen Hub (global.css) */

/* Import Open Sans font with multiple weights for typography consistency */
@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600;700&display=swap");

/**************** CUSTOM STYLES ****************/

/* ==========================================================================
   Global Reset and Base Styles
   - Removes border-radius globally (except for specific exceptions)
   - Sets base font family and sizing
   ========================================================================== */

html *:not(.self-spinner):not(#CookiebotWidget):not(#CybotCookiebotDialog):not(#CybotCookiebotDialog *) {
    border-radius: 0 !important;
}

html,
body {
    font-family: "Open Sans", sans-serif;
    font-weight: 400;
    color: #000000;
    font-size: 16px;
    line-height: 1.3;
}

body {
    overflow-x: hidden;
}

/* ==========================================================================
   Typography
   - Heading styles and font weights
   - List and link styling
   ========================================================================== */

/*h1,*/
/*h2,*/
/*h3,*/
/*h4 {*/
/*    font-weight: 700;*/
/*}*/

* > h1:first-child,
* > h2:first-child,
* > h3:first-child,
* > h4:first-child {
    margin-top: 0 !important;
}

h1 {
    font-size: 50px;
}

h2 {
    font-size: 22px;
}

h3 {
    font-size: 20px;
}

h4 {
    font-size: 16px;
}

ul,
ol {
    margin-bottom: 1.25em;
}

a sup {
    font-size: 9px;
    display: inline;
    vertical-align: super;
    background: #0092c5;
    color: #ffffff !important;
    margin-left: 3px;
    padding: 1px 3px;
}

.summary-list {
    list-style: none !important;
    padding: 32px !important;
    background: #f6f6f6;
    display: inline-block;
    width: 100%;
}

/* h1,
h2 {
  max-width: 35ch;
}

h3,
h4 h5,
p {
  max-width: 75ch;
} */

/* ==========================================================================
   Layout
   - App content container styles
   ========================================================================== */

#app-content {
    padding: 0 !important;
}

/* ==========================================================================
   Links
   - Default link colors and hover states
   - Excludes buttons and form elements
   ========================================================================== */

a,
button {
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

a:not(.btn, .form-name) {
    color: #00749e;
    text-decoration: underline;
}

a:not(.btn, .form-name):hover {
    text-decoration: none;
}

/* ==========================================================================
   Buttons
   - Custom button styles overriding Bootstrap
   - Primary, default, and search button variants
   ========================================================================== */

.btn:not(.ui-pnotify-action-button) {
    font-weight: 600;
    font-size: 18px !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    white-space: wrap !important;
}

.radio-label {
    text-align: left !important;
}

/*.navbar .btn,*/
.achieveforms-container .fillinButtons .btn,
.login-btn-group .btn {
    padding: 14px 20px;
}

.navbar .btn {
    padding: 0 !important;
}

.btn:focus,
.btn:active:focus,
.btn.active:focus {
    outline: 0 !important;
}

.btn:hover {
    text-decoration: underline;
}

.btn.active {
    -webkit-box-shadow: none;
    box-shadow: none;
}

.btn-search {
    background-color: #002a35 !important;
    border-color: #002a35 !important;
    padding-bottom: 10px;
    z-index: 10;
}

.btn-search:hover {
    background-color: #00313e !important;
    border-color: #00313e !important;
}

.btn-default,
.navbar .btn-primary,
._AF .btn-af,
.achieveforms-container .previousbutton {
    border: 1px solid #ebebeb;
    background-color: #ebebeb;
    -webkit-box-shadow: none;
    box-shadow: none;
    text-shadow: none;
    color: #000000;
}

.navbar .btn-primary {
    border: none !important;
    background-color: transparent !important;
}

.btn-default:hover,
._AF .btn-af:hover,
.achieveforms-container .previousbutton:hover {
    border-color: #0092c5;
    background-color: #0092c5;
    color: #ffffff;
}

.navbar .btn-primary:hover,
.navbar .btn-primary.active {
    border-color: transparent !important;
    background-color: transparent !important;
    color: #000000 !important;
}

.navbar .btn-primary {
    font-weight: normal !important;
}

.navbar .btn-primary.active {
    font-weight: bold !important;
}

.achieveforms-container .cancelbutton {
    background: transparent !important;
    border: none;
    padding: 0 !important;
    color: #00749e !important;
    text-decoration: underline;
}

.achieveforms-container .cancelbutton:hover {
    color: #0092c5 !important;
    text-decoration: none;
}

@media screen and (max-width: 768px) {
    .achieveforms-container .all-sections .field .fieldContent .fieldName {
        min-height: auto;
    }
}

/* ==========================================================================
   Alerts
   - Bootstrap alert/table component customizations
   - Success, info, warning, and danger states
   ========================================================================== */

  /* Alerts */


.alert {
    padding: 15px !important;
    margin-top: 10px !important;
	margin-bottom: 5px !important;
    border: none !important;
    border-radius: 0 !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    text-shadow: none !important;
    background-image: none !important;
    width: 100%;
    line-height: 1.3;

}

.alert h4 {
    margin-top: 0 !important;
    margin-bottom: 5px !important;
    color: inherit;
}

.alert h4 {
    font-size: 18px !important;
}

.alert p {
    font-size: 16px !important;
}

.alert > p,
.alert > ul {
    margin-bottom: 0 !important;
}

.alert > p + p {
    margin-top: 5px !important;
}

.alert-success {
    background-color: #dff0d8 !important;
    border-color: #d6e9c6 !important;
}

.alert-info {
    background-color: #e5f4f9 !important;
    border-color: #e5f4f9 !important;
}

.alert-warning {
    background-color: #fbdb98 !important;
    border-color: #fbdb98 !important;
}

.alert-danger {
    background-color: #ebb6b6 !important;
    border-color: #ebb6b6 !important;
}

.alert-success,
.alert-info,
.alert-warning,
.alert-danger {
    border: none !important;
    color: #000000 !important;
}

.alert-success hr,
.alert-info hr,
.alert-warning hr,
.alert-danger hr {
    border-top-color: #000000 !important;
}

.alert .alert-link {
    font-weight: 700;
}

.alert-success .alert-link,
.alert-info .alert-link,
.alert-warning .alert-link,
.alert-danger .alert-link {
    color: #00749e !important;
}

.bootstrap-datetimepicker-widget * {
    overflow: inherit !important;
    word-wrap: inherit !important;
}

.bootstrap-datetimepicker-widget .dropdown-menu {
    padding: 0 !important;
}

.bootstrap-datetimepicker-widget table td, .bootstrap-datetimepicker-widget table th, .bootstrap-datetimepicker-widget .table td, .bootstrap-datetimepicker-widget .table th {
    padding: 5px !important;
    border: none !important;
    vertical-align: middle !important;
}

.bootstrap-datetimepicker-widget .btn {
    padding: 6px !important;
}

.bootstrap-datetimepicker-widget a {
    color: #00749e !important;
}

.datepicker table tr td.active.active, .datepicker table tr td.active.disabled.active, .datepicker table tr td.active.disabled:active, .datepicker table tr td.active.disabled:hover.active, .datepicker table tr td.active.disabled:hover:active, .datepicker table tr td.active:active, .datepicker table tr td.active:hover.active, .datepicker table tr td.active:hover:active {
    background-color: #00749e !important;
    background-image: none !important;
}

/* ==========================================================================
   Card Grid
   - Custom card layout system
   - Tile and grid item styles
   ========================================================================== */




.card-grid {
   /* margin: 15px -15px 0 -15px;*/
    padding: 0;
    display: flex;
    flex-wrap: wrap;
}


.card-grid-item > div > p,
.card-grid-item > p {
    margin: 0 !important;
    height: 100%;
}

.card-grid-tile,
.card-grid-tile-3 {
    border-top: 0;
    /*background: #f6f6f6;*/
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    /*border-bottom: solid 2px #0092c5;*/
}

.card-grid-tile .btn-card,
.card-grid-tile-3 .btn-card {
    margin-bottom: 20px !important;
    font-weight: bold !important;
}

.card-grid-tile h3,
.card-grid-tile-3 h3 {
    margin-bottom: 20px !important;
}

.card-grid-item {
    padding: 15px;
}

.card-grid-item > div > p,
.card-grid-item > p {
    margin: 0 !important;
    height: 100%;
    display: block;
}

.card-grid-item .btn-card {
    border: none;
    height: auto;
    color: #000000;
    background: #f6f6f6;
    margin-bottom: 0;
    border-radius: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    width: 100%;
    text-align: left;
    white-space: normal;
    padding: 20px;
    min-height: 5px;
    text-decoration: none;
    font-size: 16px !important;
    position: relative;
    font-weight: 100;
}

.card-grid-item .btn-card--category {
    font-weight: 700;
    font-size: 20px !important;
    padding-left: 15px;
}

.card-grid-item .btn-card-more {
    font-weight: bold;
}

@media screen and (max-width: 768px) {
    .btn-card-list {
        display: none;
        visibility: hidden;
        max-height: 0;
    }

    .btn-card-more {
        display: none !important;
    }

    .card-grid-tile {
        min-height: 0;
    }

    .card-grid-tile-3 {
        min-height: 0;
    }

    .card-grid-item {
        min-height: 0;
    }

    .btn-card--category {
        min-height: 0;
    }
}

.card-grid-item .btn-card:hover {
    background: #dfdfdf;
   /* text-decoration: underline;*/
}

.card-grid-item .btn-card:not(.btn-card--category):after {
    /*position: absolute;*/
    /*top: 19px;*/
    /*right: 15px;*/
    margin-top: 20px;
    display: block;
    width: 22px;
    height: 14px;
    content: "";
    background: url('data:image/svg+xml,<svg width="19" height="13" viewBox="0 0 19 13" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16.263 5.81L11.17 1.004L12.117 0L19 6.5L12.117 13L11.17 11.996L16.263 7.19H0V5.81H16.263Z" fill="%2300749E"/></svg>') no-repeat center center;
    transform: translateY(-2px) translateX(0);
}

.card-grid-item .btn-card:not(.btn-card--category)::after {
    transition: all 300ms ease-in-out;
}

.card-grid-item .btn-card:not(.btn-card--category):hover::after {
    transform: translateY(-2px) translateX(4px);
}

.serviceColumnLetter:after {
    top: 5px;
    left: 0;
}

.card-grid-btn-center {
    margin: 0 auto;
    display: block;
    max-width: 300px;
}





/* ==========================================================================
   Services List
   - Service directory and search functionality
   - Service groups and filtering
   ========================================================================== */

.search-row {
    margin-top: 15px;
}

.search-row input,
.search-row .btn-search {
    height: 55px;
}

.service-groups {
    padding: 15px 0 15px 0 !important;
    margin-bottom: 15px;
}

.service-groups ul.menu {
    margin: -15px;
    overflow: hidden;
}

.service-groups ul.menu li {
    padding: 15px;
}

@media (min-width: 767px) {
    .service-groups ul.menu li {
        width: 33.333333%;
    }
}

.service-groups a.fsservice-pretty-link:link,
.service-groups a.fsservice-pretty-link:visited {
    border: none;
    background: #f6f6f6;
    color: #000000;
    padding: 15px;
}

.service-groups a.fsservice-pretty-link:hover {
    background: #dfdfdf;
}

.service-groups a.fsservice-pretty-link.active {
    background-color: #0092c5 !important;
    border-color: #0092c5 !important;
    color: #ffffff !important;
}

.grouped-services,
.all-services .col-md-12 {
    padding-left: 0;
    padding-right: 0;
}

.all-services {
    /*padding-left: 15px;*/
    /*padding-right: 15px;*/
}

.serviceColumnLetter {
    position: relative;
    padding-left: 20px;
}

.desktop_forms {
    max-width: none;
}

.all-services .col-sm-12 .row,
.all-services .col-sm-4 .row,
.all-services .col-sm-6 .row,
.filtered-services .col-sm-12 .row,
.filtered-services .col-sm-4 .row,
.filtered-services .col-sm-6 .row {
    border-bottom: 2px solid #0092c5;
    background: #f6f6f6;
    color: #000000;
    width: 100%;
    text-align: left;
    margin: 0 0 32px 0;
    padding: 15px;
}

.all-services .col-sm-12 .row .col-sm-2.col-md-1,
.all-services .col-sm-4 .row .col-sm-2.col-md-1,
.all-services .col-sm-6 .row .col-sm-2.col-md-1,
.filtered-services .col-sm-12 .row .col-sm-2.col-md-1,
.filtered-services .col-sm-4 .row .col-sm-2.col-md-1,
.filtered-services .col-sm-6 .row .col-sm-2.col-md-1 {
    padding: 0;
}

.all-services .col-sm-12 .row .col-sm-10.col-md-10,
.all-services .col-sm-4 .row .col-sm-10.col-md-10,
.all-services .col-sm-6 .row .col-sm-10.col-md-10,
.filtered-services .col-sm-12 .row .col-sm-10.col-md-10,
.filtered-services .col-sm-4 .row .col-sm-10.col-md-10,
.filtered-services .col-sm-6 .row .col-sm-10.col-md-10 {
    padding-right: 0;
    padding-left: 32px;
}

@media (max-width: 767px) {
    .all-services .col-sm-12 .row .col-sm-10.col-md-10,
    .all-services .col-sm-4 .row .col-sm-10.col-md-10,
    .all-services .col-sm-6 .row .col-sm-10.col-md-10,
    .filtered-services .col-sm-12 .row .col-sm-10.col-md-10,
    .filtered-services .col-sm-4 .row .col-sm-10.col-md-10,
    .filtered-services .col-sm-6 .row .col-sm-10.col-md-10 {
        padding-left: 0;
    }
}

.all-services .services.list-unstyled,
.filtered-services .services.list-unstyled {
    margin: 0;
}

.all-services .services.list-unstyled li,
.filtered-services .services.list-unstyled li {
    margin-bottom: 5px;
}

.all-services .form-link-color {
    color: #000000;
}

/* ==========================================================================
   Forms
   - Form control focus states
   ========================================================================== */

.form-control:focus {
    border-color: #00749e;
    outline: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
}

/**************** BOOTSTRAP PRIMARY COLOR OVERRIDES ****************/

/* ==========================================================================
   Bootstrap Theme Overrides
   - Replaces default Bootstrap primary color (#00749e)
   - Hover state uses lighter shade (#0092c5)
   ========================================================================== */

.text-primary {
    color: #00749e;
}

a.text-primary:hover {
    color: #0092c5;
}

.bg-primary {
    background-color: #00749e;
}

a.bg-primary:hover {
    background-color: #0092c5;
}

.btn-primary,
.achieveforms-container .nextbutton,
.achieveforms-container .submitbutton,
#anonymousLoginScreen #btn-login {
    background-color: #00749e;
    border-color: #00749e;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.open .dropdown-toggle.btn-primary,
.achieveforms-container .nextbutton:hover,
.achieveforms-container .submitbutton:hover,
#anonymousLoginScreen #btn-login:hover {
    background-color: #0092c5;
    border-color: #0092c5;
}

.btn-primary.disabled,
.btn-primary[disabled],
fieldset[disabled] .btn-primary,
.btn-primary.disabled:hover,
.btn-primary[disabled]:hover,
fieldset[disabled] .btn-primary:hover,
.btn-primary.disabled:focus,
.btn-primary[disabled]:focus,
fieldset[disabled] .btn-primary:focus,
.btn-primary.disabled:active,
.btn-primary[disabled]:active,
fieldset[disabled] .btn-primary:active,
.btn-primary.disabled.active,
.btn-primary[disabled].active,
fieldset[disabled] .btn-primary.active {
    background-color: #0092c5;
    border-color: #0092c5;
}

.btn-primary .badge {
    color: #00749e;
}

.dropdown-menu > .active > a,
.dropdown-menu > .active > a:hover,
.dropdown-menu > .active > a:focus {
    background-color: #0092c5;
}

.nav .open > a,
.nav .open > a:hover,
.nav .open > a:focus {
    border-color: #0092c5;
}

.nav-pills > li.active > a,
.nav-pills > li.active > a:hover,
.nav-pills > li.active > a:focus {
    background-color: #00749e;
}

.pagination > li > a,
.pagination > li > span {
    color: #00749e;
}

.pagination > li > a:hover,
.pagination > li > span:hover,
.pagination > li > a:focus,
.pagination > li > span:focus {
    color: #0092c5;
}

.pagination > .active > a,
.pagination > .active > span,
.pagination > .active > a:hover,
.pagination > .active > span:hover,
.pagination > .active > a:focus,
.pagination > .active > span:focus {
    background-color: #0092c5;
    border-color: #0092c5;
}

.label-primary {
    background-color: #00749e;
}

.label-primary[href]:hover,
.label-primary[href]:focus {
    background-color: #0092c5;
}

.label-fix {
    padding-top: 10px;
}

a.list-group-item.active > .badge,
.nav-pills > .active > a > .badge {
    color: #00749e;
}

a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
    border-color: #0092c5;
}

.progress-bar {
    background-color: #00749e;
}

a.list-group-item.active,
a.list-group-item.active:hover,
a.list-group-item.active:focus {
    background-color: #0092c5;
    border-color: #0092c5;
}

.panel-primary {
    border-color: #00749e;
}

.panel-primary > .panel-heading {
    background-color: #00749e;
    border-color: #00749e;
}

.panel-primary > .panel-heading + .panel-collapse .panel-body {
    border-top-color: #00749e;
}

.panel-primary > .panel-footer + .panel-collapse .panel-body {
    border-bottom-color: #00749e;
}

/**************** MYREQUESTS OVERRIDES ****************/

/* ==========================================================================
   MyRequests Table Styles
   - Custom table and control styling for request management
   ========================================================================== */

#hello-title {
    color: #000000;
    border: none;
}

#MyRequestTable .tasks {
    padding: 0;
}

table,
.table_controls input,
table,
.table_controls select {
    padding: 6px 12px !important;
    height: 35px;
}

@media (min-width: 768px) {
    table,
    .table_controls table {
        margin-left: 5px;
    }
}

.table_search .btn-default.search {
    margin-left: 0 !important;
    height: 35px;
    font-size: 16px !important;
}

.case-row {
    background-color: #ebebeb !important;
}

.case-table .btn.btn-info {
    background-color: #00749e;
    border-color: #00749e;
}

.table_buttons .btn {
    margin: 0 3px;
}

/**************** FORMS OVERRIDES ****************/

/* ==========================================================================
   Login and Registration Forms
   - Custom authentication form layouts
   ========================================================================== */

.login-form,
.logout-form {
    max-width: 600px;
}

.login-form .form-horizontal,
.logout-form {
    margin-top: 18px;
}

.login-form .col-sm-3,
.login-form .col-sm-9 {
    width: 100%;
}

.login-form .control-label {
    padding-top: 0;
    margin-bottom: 6px;
    width: 100%;
    text-align: left;
}

.login-form .resetLink {
    margin-top: 18px;
    display: inline-block;
}

#anonymousLoginScreen {
    padding: 0;
    text-align: left !important;
}

#anonymousLoginScreen .registration-text {
    max-width: 600px;
    margin-top: 0 !important;
    margin-bottom: 32px !important;
}

#anonymousLoginScreen #btn-register {
    padding: 14px 20px;
}

#anonymousLoginScreen .btn-custom,
#anonymousLoginScreen #btn-register {
    padding: 14px 20px !important;
    border: 1px solid #ebebeb;
    background-color: #ebebeb;
    letter-spacing: normal;
    color: #000000 !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    margin-top: 15px;
}

#anonymousLoginScreen .btn-custom:hover,
#anonymousLoginScreen #btn-register:hover {
    border-color: #0092c5;
    background-color: #0092c5;
    color: #ffffff !important;
}

#anonymousLoginScreen #btn-login {
    color: #ffffff !important;
}

#anonymousLoginScreen #btn-anon {
    color: #00749e !important;
}

#anonymousLoginScreen #btn-anon {
    margin-top: 32px;
    background: transparent !important;
    border: none;
    padding: 0 !important;
}

#anonymousLoginScreen #btn-anon:hover {
    color: #0092c5 !important;
}

.loading.row .AchieveFormsLoading {
    margin-bottom: 0;
}

/* ==========================================================================
   AchieveForms Integration
   - Third-party form builder customizations
   - Field layouts and validation states
   ========================================================================== */

.ui-pnotify-text {
    margin-bottom: 15px;
}

body._AF a,
body._AF div,
body._AF h1,
body._AF h2,
body._AF h3,
body._AF h4,
body._AF h5,
body._AF p,
body._AF span:not(.fa),
div._AF a,
div._AF div,
div._AF h1,
div._AF h2,
div._AF h3,
div._AF h4,
div._AF h5,
div._AF p,
div._AF span:not(.fa) html._AF a,
html._AF div,
html._AF h1,
html._AF h2,
html._AF h3,
html._AF h4,
html._AF h5,
html._AF p,
html._AF span:not(.fa) {
    font-family: "Open Sans", sans-serif !important;
}

body._AF article,
body._AF footer,
body._AF form,
body._AF header,
body._AF input,
body._AF label,
body._AF nav,
body._AF section,
body._AF select,
body._AF textarea,
div._AF article,
div._AF footer,
div._AF form,
div._AF header,
div._AF input,
div._AF label,
div._AF nav,
div._AF section,
div._AF select,
div._AF textarea,
html._AF article,
html._AF footer,
html._AF form,
html._AF header,
html._AF input,
html._AF label,
html._AF nav,
html._AF section,
html._AF select,
html._AF textarea {
    font-family: "Open Sans", sans-serif;
    font-weight: 400;
    color: #000000;
    font-size: 16px;
}

.achieveforms-container a {
    color: #00749e;
}

.achieveforms-container header.formHeader,
.achieveforms-container header.processHeader {
    padding: 0;
    margin-bottom: 15px;
}

@media only print, only screen and (max-width: 767px) {

    ._AF .row .row,
    .achieveforms-container .row .row {
        width: auto;
        margin-left: -15px;
        margin-right: -15px;
    }
}

.achieveforms-container .language-select-wrapper {
    margin-top: 10px;
    margin-right: -15px;
}

.language-select {
    height: 35px !important;
    padding: 6px 40px 6px 12px !important;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><path fill="%23bcbcbc" d="M311.16 218.53L37.47 81.69c-7.9-3.95-17.52-.75-21.47 7.16L1.69 117.48c-3.95 7.9-.75 17.51 7.16 21.46L242.96 256 8.85 373.06c-7.9 3.95-11.11 13.56-7.16 21.46L16 423.15c3.95 7.9 13.56 11.11 21.47 7.16l273.68-136.84c5.42-2.71 8.84-8.25 8.84-14.31v-46.31c.01-6.07-3.41-11.61-8.83-14.32z" transform="rotate(90 160 256)"/></svg>') !important;
    background-repeat: no-repeat !important;
    background-position: right 10px center !important;
    background-size: 18px 18px !important;
}

.language-select:focus {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><path fill="%23bcbcbc" d="M311.16 218.53L37.47 81.69c-7.9-3.95-17.52-.75-21.47 7.16L1.69 117.48c-3.95 7.9-.75 17.51 7.16 21.46L242.96 256 8.85 373.06c-7.9 3.95-11.11 13.56-7.16 21.46L16 423.15c3.95 7.9 13.56 11.11 21.47 7.16l273.68-136.84c5.42-2.71 8.84-8.25 8.84-14.31v-46.31c.01-6.07-3.41-11.61-8.83-14.32z" transform="rotate(90 160 256)"/></svg>') !important;
    background-repeat: no-repeat !important;
    background-position: right 10px center !important;
    background-size: 18px 18px !important;
}

._AF .btn.btn-default,
.achieveforms-container .btn.btn-default {
    color: #000000;
    padding: 14px 20px;
}

._AF .btn.btn-default:hover,
.achieveforms-container .btn.btn-default:hover {
    color: #ffffff;
}

.autoaddress-control .autoaddress-button {
    height: 55px !important;
}

#page.render {
    padding: 0 !important;
}

.achieveforms-container .all-sections .field {
    padding-top: 0;
}

.achieveforms-container .fillinButtons-wrapper {
    width: 100%;
    padding: 0;
}

.achieveforms-container .all-sections {
    margin: 15px 0 32px;
    padding: 0 0 32px 0;
    border-bottom: 1px solid #dfdfdf;
}

.achieveforms-container .all-sections .all-sections {
    border: 0;
    margin: 0;
    padding: 0;
}

.achieveforms-container .all-sections .row {
    margin: 0;
}

.achieveforms-container .sectionsHead {
    background: #f6f6f6;
    position: relative;
    -webkit-box-shadow: none;
    box-shadow: none;
    margin: 0 0 10px;
}

@media (min-width: 767px) {
    .achieveforms-container .sectionsHead {
        background: transparent;
    }
}

.achieveforms-container .sectionsHead .sectionsHeadInner {
    border-color: #dfdfdf;
    padding-bottom: 14px;
}

.achieveforms-container header.formHeader .formDescription,
.achieveforms-container header.formHeader .formName,
.achieveforms-container header.formHeader .processDescription,
.achieveforms-container header.formHeader .processName,
.achieveforms-container header.processHeader .formDescription,
.achieveforms-container header.processHeader .formName,
.achieveforms-container header.processHeader .processDescription,
.achieveforms-container header.processHeader .processName {
    color: #000000;
}

.achieveforms-container .all-sections .field .fieldContent .fieldInput.content,
.achieveforms-container .all-sections .field .fieldContent .fieldInput.upload,
.achieveforms-container .all-sections .field .fieldContent .prefix-suffix-mode.content,
.achieveforms-container .all-sections .field .fieldContent .prefix-suffix-mode.upload {
    font-size: 1em;
}

/* .achieveforms-container
  .all-sections
  .field
  .fieldContent
  .fieldInput.content
  div:not(:empty) {
  margin-bottom: 1.25em;
} */

/* .achieveforms-container
  .sectionsHead
  .sectionsHeadInner
  .sectionNameWrapper
  button {
  background: transparent;
  color: #000000;
  border: none !important;
  padding: 10px 15px !important;
} */

.achieveforms-container .sectionsHead .sectionsHeadInner .sectionNameWrapper {
    border: none;
    float: none;
    margin: 15px 0 15px 15px !important;
    color: #00749e;
}

@media (min-width: 767px) {
    .achieveforms-container .sectionsHead .sectionsHeadInner .sectionNameWrapper {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        float: left;
        margin: 0 0 6px 0 !important;
    }

    .achieveforms-container .sectionsHead .sectionsHeadInner .sectionNameWrapper:not(:last-child):not(:empty):after {
        display: inline-block;
        width: 15px;
        height: 14px;
        margin-left: 6px;
        margin-right: 6px;
        content: "";
        background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><path fill="%23bcbcbc" d="M311.16 218.53L37.47 81.69c-7.9-3.95-17.52-.75-21.47 7.16L1.69 117.48c-3.95 7.9-.75 17.51 7.16 21.46L242.96 256 8.85 373.06c-7.9 3.95-11.11 13.56-7.16 21.46L16 423.15c3.95 7.9 13.56 11.11 21.47 7.16l273.68-136.84c5.42-2.71 8.84-8.25 8.84-14.31v-46.31c.01-6.07-3.41-11.61-8.83-14.32z"/></svg>') no-repeat center center;
    }
}

.achieveforms-container .sectionsHead .sectionsHeadInner .sectionNameWrapper .sectionNameTab {
    background: transparent;
    border: none !important;
    padding: 0 !important;
    position: relative;
    text-decoration: underline !important;
    text-align: left;
}

.achieveforms-container .sectionsHead .sectionsHeadInner .sectionNameWrapper .sectionNameTab:hover {
    text-decoration: none !important;
    color: #00749e !important;
}

.achieveforms-container .sectionsHead .sectionsHeadInner .sectionNameWrapper.active .sectionNameTab {
    color: #000000 !important;
    text-decoration: none !important;
    border: none !important;
}

.achieveforms-container .sectionsHead .sectionsHeadInner .sectionNameWrapper.erroricon i {
    display: none;
}

.achieveforms-container .sectionsHead .sections-toggle-wrapper .navbar-toggle i {
    color: #000000 !important;
}

.achieveforms-container .sectionsHead .sections-toggle-wrapper .navbar-toggle:hover i {
    color: #0092c5 !important;
}

.achieveforms-container .sectionsHead .sections-toggle-wrapper .navbar-toggle:hover {
    cursor: pointer;
}

.achieveforms-container .sectionsHead .sectionsHeadInner .sectionNameWrapper.valid {
    color: #00749e !important;
}

.achieveforms-container .sectionsHead .sectionsHeadInner .sectionNameWrapper.invalid .sectionNameTab,
.achieveforms-container .sectionsHead .sectionsHeadInner .sectionNameWrapper.invalid.active .sectionNameTab {
    color: #b0171f !important;
}

._AF *:focus,
.achieveforms-container *:focus,
.achieveforms-container .sectionsHead .sections-toggle-wrapper .navbar-toggle:focus {
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
}

.achieveforms-container .sectionsHead .sections-toggle-wrapper {
    border: none;
}

.achieveforms-container .sectionsHead .sections-toggle-wrapper .active-section-name {
    font-size: 18px;
    padding-left: 15px;
    color: #000000;
    font-weight: 700;
}

.achieveforms-container .fillinButtons-wrapper,
.achieveforms-container .fillinButtons .fillinButtonsLeft,
.achieveforms-container .fillinButtons .fillinButtonsRight {
    text-align: center;
}

.achieveforms-container .fillinButtons .fillinButtonsLeft,
.achieveforms-container .fillinButtons .fillinButtonsRight {
    width: auto;
    float: none;
}

.achieveforms-container .fillinButtons .fillinButtonsLeft .btn,
.achieveforms-container .fillinButtons .fillinButtonsRight .btn {
    width: auto;
    margin: 0 0 15px 0;
}

.achieveforms-container .fillinButtons .btn {
    min-width: initial !important;
}

.achieveforms-container .fillinButtons .btn i {
    padding: 0 !important;
    display: none !important;
}

@media (min-width: 768px) {

    .achieveforms-container .fillinButtons .fillinButtonsLeft .btn,
    .achieveforms-container .fillinButtons .fillinButtonsRight .btn {
        margin: 0 15px 0 0;
    }
}

.achieveforms-container .nextbutton,
.achieveforms-container .submitbutton {
    color: #ffffff !important;
}

.achieveforms-container .fillinButtons,
.achieveforms-container .fillinButtons .fillinButtonsLeft,
.achieveforms-container .fillinButtons .fillinButtonsRight {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
}

@media (min-width: 768px) {
    .achieveforms-container .fillinButtons,
    .achieveforms-container .fillinButtons .fillinButtonsLeft,
    .achieveforms-container .fillinButtons .fillinButtonsRight {
        -webkit-box-orient: horizontal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

.achieveforms-container .fillinButtons .fillinButtonsLeft {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
}

.achieveforms-container .fillinButtons .fillinButtonsRight {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 0;
    order: 0;
}

._AF input[type="date"],
._AF input[type="datetime-local"],
._AF input[type="datetime"],
._AF input[type="email"],
._AF input[type="month"],
._AF input[type="number"],
._AF input[type="password"],
._AF input[type="search"],
._AF input[type="tel"],
._AF input[type="text"],
._AF input[type="time"],
._AF input[type="url"],
._AF input[type="week"],
._AF select,
._AF textarea,
.achieveforms-container input[type="date"],
.achieveforms-container input[type="datetime-local"],
.achieveforms-container input[type="datetime"],
.achieveforms-container input[type="email"],
.achieveforms-container input[type="month"],
.achieveforms-container input[type="number"],
.achieveforms-container input[type="password"],
.achieveforms-container input[type="search"],
.achieveforms-container input[type="tel"],
.achieveforms-container input[type="text"],
.achieveforms-container input[type="time"],
.achieveforms-container input[type="url"],
.achieveforms-container input[type="week"],
.achieveforms-container select,
    /* .achieveforms-container textarea, */
.form-control {
    font-size: 16px !important;
    padding: 15px !important;
    border-radius: 0 !important;
    min-height: 55px !important;
    color: #000000 !important;
    border: 1px solid #666666 !important;
    /* max-width: 600px !important; */
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.achieveforms-container select,
._AF select,
.achieveforms-container select:focus,
._AF select:focus {
    padding-right: 40px !important;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><path fill="%23bcbcbc" d="M311.16 218.53L37.47 81.69c-7.9-3.95-17.52-.75-21.47 7.16L1.69 117.48c-3.95 7.9-.75 17.51 7.16 21.46L242.96 256 8.85 373.06c-7.9 3.95-11.11 13.56-7.16 21.46L16 423.15c3.95 7.9 13.56 11.11 21.47 7.16l273.68-136.84c5.42-2.71 8.84-8.25 8.84-14.31v-46.31c.01-6.07-3.41-11.61-8.83-14.32z" transform="rotate(90 160 256)"/></svg>') !important;
    background-repeat: no-repeat !important;
    background-position: right 15px center !important;
    background-size: 18px 18px !important;
}

._AF input[type="text"].displayAsSeparated,
.achieveforms-container input[type="text"].displayAsSeparated {
    width: auto !important;
}

.achieveforms-container .all-sections .field .fieldContent .fieldInput.hasPostfix,
.achieveforms-container .all-sections .field .fieldContent .prefix-suffix-mode.hasPostfix {
    border-radius: 0 !important;
    border-right: none !important;
}

.achieveforms-container .all-sections .field .fieldContent .fieldInput.hasCurrencyPrefix,
.achieveforms-container .all-sections .field .fieldContent .fieldInput.hasPrefix,
.achieveforms-container .all-sections .field .fieldContent .prefix-suffix-mode.hasCurrencyPrefix,
.achieveforms-container .all-sections .field .fieldContent .prefix-suffix-mode.hasPrefix {
    border-radius: 0 !important;
    height: 55px !important;
    border-left: none !important;
    /*padding-left: 0 !important;*/
}

._AF .currency-prefix-wrapper.readonly .currency-prefix,
._AF .postfix-wrapper.readonly .postfix,
._AF .prefix-wrapper.readonly .prefix,
._AF .readonly,
._AF fieldset[disabled] input,
._AF input[readonly]:not(.iemobile-pseudo-readonly),
._AF select[readonly],
._AF textarea[readonly],
.achieveforms-container .currency-prefix-wrapper.readonly .currency-prefix,
.achieveforms-container .postfix-wrapper.readonly .postfix,
.achieveforms-container .prefix-wrapper.readonly .prefix,
.achieveforms-container .readonly,
.achieveforms-container fieldset[disabled] input,
.achieveforms-container input[readonly]:not(.iemobile-pseudo-readonly),
.achieveforms-container select[readonly],
.achieveforms-container textarea[readonly] {
    opacity: 0.7 !important;
    /*border: 1px solid !important;*/
    background-color: #eee !important;
}

._AF .separatedDateFieldLabel-alignAbove,
.achieveforms-container .separatedDateFieldLabel-alignAbove {
    margin-top: -5px !important;
}

@media (max-width: 768px) {
    ._AF input[type="text"].displayAsSeparated, .achieveforms-container input[type="text"].displayAsSeparated {
        margin-top: 0 !important;
    }

    ._AF .separatedDateFieldLabel, .achieveforms-container .separatedDateFieldLabel {
        width: 100% !important;
        position: relative !important;
    }
}

label.fix {
    padding-top: 0;
}

label.prefix,
span.prefix,
label.postfix,
span.postfix {
    background-color: #eee !important;
    border-color: #666666;
    height: 55px !important;
    padding: 6px 12px !important;
    padding-top: 8px !important;
}

._AF .input-group-addon,
.achieveforms-container .input-group-addon {
    border: 1px solid #666666;
}

/* .achieveforms-container .input-group {
  max-width: 600px !important;
} */

/* .radio-wrapper,
.checkbox-wrapper,
.fieldName,
.fieldInput.upload {
  max-width: 600px !important;
} */

.achieveforms-container .resumable-drop {
    border: 1px dashed #666 !important;
    margin-bottom: 4px;
}

.achieveforms-container table.repeatable-table {
    width: 100% !important;
    margin-bottom: 20px !important;
    border-collapse: collapse !important;
}

/* ==========================================================================
   Radio Buttons and Checkboxes
   - Custom styled radio and checkbox inputs
   - Uses pseudo-elements for visual design
   ========================================================================== */

input[type="checkbox"] + label.btn:before,
input[type="radio"] + label.btn:before {
    display: none !important;
}

input[type="checkbox"] + label,
input[type="radio"] + label {
    display: flex !important;
}

/* .product_self
  .achieveforms-container
  .all-sections
  .field
  .fieldContent
  fieldset.fieldInput.vertical
  .checkbox-wrapper
  label,
.product_self
  .achieveforms-container
  .all-sections
  .field
  .fieldContent
  fieldset.fieldInput.vertical
  .radio-wrapper
  label,
.product_service
  .achieveforms-container
  .all-sections
  .field
  .fieldContent
  fieldset.fieldInput.vertical
  .checkbox-wrapper
  label,
.product_service
  .achieveforms-container
  .all-sections
  .field
  .fieldContent
  fieldset.fieldInput.vertical
  .radio-wrapper
  label {
  padding-left: 40px;
} */

input[type="radio"] + label:before {
    content: "\00a0";
    border: 3px solid #666666 !important;
    border-radius: 20px !important;
    text-align: center;
    padding: 5px;
    font-size: 32px !important;
    margin-right: 10px;
    width: 32px !important;
    height: 32px !important;
    max-width: 32px !important;
    -webkit-box-shadow: inset 0 0 0 4px rgba(255, 255, 255, 1) !important;
    box-shadow: inset 0 0 0 4px rgba(255, 255, 255, 1) !important;
    -webkit-flex-shrink: 0 !important;
    -moz-flex-shrink: 0 !important;
    flex-shrink: 0 !important;
}

input[type="checkbox"] + label:before {
    content: "\00a0";
    border: 3px solid #666666 !important;
    border-radius: 0 !important;
    padding: 6px 7px;
    font-size: 20px !important;
    margin-right: 10px;
    width: 32px !important;
    height: 32px !important;
    max-width: 32px !important;
    -webkit-flex-shrink: 0 !important;
    -moz-flex-shrink: 0 !important;
    flex-shrink: 0 !important;
}

input[type="checkbox"].check2:focus + label:before,
input[type="checkbox"].radio2:focus + label:before,
input[type="radio"].check2:focus + label:before,
input[type="radio"].radio2:focus + label:before {
    color: #00749e !important;
    border-color: #00749e !important;
}

fieldset.valid input[type="checkbox"] + label:before,
fieldset.valid input[type="radio"] + label:before {
    border-color: #666666 !important;
}

.achieveforms-container .all-sections .field .fieldContent fieldset.fieldInput.valid input[type="checkbox"] + label:before,
.achieveforms-container .all-sections .field .fieldContent fieldset.fieldInput.valid input[type="radio"] + label:before {
    color: #00749e;
}

fieldset.valid input[type="radio"].checked + label:before,
fieldset.valid input[type="radio"]:checked + label:before,
input[type="radio"].checked + label:before,
input[type="radio"]:checked + label:before {
    background-color: #00749e !important;
    border-color: #00749e !important;
    border-width: 3px !important;
}

fieldset.valid input[type="checkbox"].checked + label:before,
fieldset.valid input[type="checkbox"]:checked + label:before,
input[type="checkbox"].checked + label:before,
input[type="checkbox"]:checked + label:before {
    content: url("data:image/svg+xml,%3Csvg width='19' height='14' viewBox='0 0 19 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M18.4648 2.26583L7.01001 13.7005L0.464844 7.15527L2.11985 5.50028L7.01147 10.3919L16.8113 0.609375L18.4648 2.26583Z' fill='white'/%3E%3C/svg%3E%0A");
    background-color: #00749e !important;
    border: none !important;
}

.achieveforms-container .all-sections .field .fieldContent fieldset.fieldInput.error input[type="checkbox"] + label:before,
.achieveforms-container .all-sections .field .fieldContent fieldset.fieldInput.error input[type="radio"] + label:before {
    color: #b33 !important;
    border-color: #b33 !important;
}

.achieveforms-container .all-sections .field .icon-valid {
    color: #00749e !important;
}

.achieveforms-container .all-sections .field .fieldContent .fieldInput label.btn,
.achieveforms-container .all-sections .field .fieldContent .prefix-suffix-mode label.btn {
    border-color: #666666 !important;
}

.achieveforms-container .all-sections .field .fieldContent fieldset.fieldInput.valid input[data-type="date-subfield"],
.achieveforms-container .all-sections .field .fieldContent fieldset.fieldInput.valid input[type="checkbox"] + label.btn,
.achieveforms-container .all-sections .field .fieldContent fieldset.fieldInput.valid input[type="radio"] + label.btn,
.achieveforms-container .all-sections .field .fieldContent fieldset.fieldInput.valid + input.other-input {
    border-color: #00749e !important;
}

input[type="checkbox"]:checked + label.btn,
input[type="radio"]:checked + label.btn,
.no-touch .achieveforms-container .field fieldset.fieldInput.valid input[type="checkbox"] + label.btn:hover,
.no-touch .achieveforms-container .field fieldset.fieldInput.valid input[type="radio"] + label.btn:hover {
    background-color: #00749e !important;
}

._AF .select2-container,
.achieveforms-container .select2-container {
    -webkit-box-shadow: none;
    box-shadow: none;
}

.select2-container-multi .select2-search-field,
.select2-container-multi .select2-search-field input {
    width: 100% !important;
}

._AF .postfix-wrapper.valid .postfix,
._AF .prefix-wrapper.valid .prefix,
._AF input.valid,
._AF select.valid,
._AF textarea.valid,
.achieveforms-container .postfix-wrapper.valid .postfix,
.achieveforms-container .prefix-wrapper.valid .prefix,
.achieveforms-container input.valid,
.achieveforms-container select.valid,
.achieveforms-container textarea.valid {
    border-color: #666666 !important;
}

._AF .select2-container.valid .select2-choice,
._AF .select2-container.valid .select2-choices,
.achieveforms-container .select2-container.valid .select2-choice,
.achieveforms-container .select2-container.valid .select2-choices {
    border-color: #666666 !important;
}

._AF .select2-container.select2-container-multi .select2-choices,
.achieveforms-container .select2-container.select2-container-multi .select2-choices {
    padding: 10px;
    height: auto !important;
    box-shadow: none !important;
    border: 1px solid #666666 !important;
}

._AF .select2-container.select2-container-multi .select2-choices .select2-search-choice,
.achieveforms-container .select2-container.select2-container-multi .select2-choices .select2-search-choice {
    margin: 5px 6px 5px 0;
    padding: 5px 5px 5px 18px;
    border: 1px solid #ebebeb;
    background-color: #ebebeb;
    -webkit-box-shadow: none;
    box-shadow: none;
    text-shadow: none;
    font-size: 14px;
    color: #000000;
    background-image: none;
}

.select2-container-multi .select2-choices .select2-search-field input {
    margin: 0 !important;
}

.select2-drop-active {
    border-color: #666666 !important;
    border-top: none;
}

.select2-results .select2-highlighted {
    background: #00749e !important;
    color: #fff;
}

/* ==========================================================================
   Tables
   - Standard table styling with striped rows
   - Responsive table handling
   ========================================================================== */

table,
.table {
    width: 100%;
    margin-bottom: 20px;
    margin-left: 0;
    border-collapse: collapse;
}

table .table,
.table .table {
    background-color: transparent;
}

table *,
.table * {
    overflow-wrap: anywhere;
    word-wrap: anywhere;
}

table > thead > tr > th,
.table > thead > tr > th {
    vertical-align: bottom;
}

table thead,
.table thead {
    background-color: #f2f2f2;
}

table td,
table th,
.table td,
.table th {
    padding: .5rem;
    border: 1px solid #000;
    vertical-align: top;
}

.table-no-border * {
    border: none !important;
}

table tbody > tr:nth-child(2n+2),
.table tbody > tr:nth-child(2n+2) {
    background-color: #f6f6f6;
}

/*td{border-color:#9ABAD9;border-style:solid;border-width:1px;color:#444;
  font-family:Arial, sans-serif;font-size:14px;overflow:hidden;padding:10px 5px;word-break:normal;}*/

/* ==========================================================================
   Loading Overlay
   - Animated loading pattern for async operations
   ========================================================================== */

.seeking-overlay {
    pointer-events: none;
    position: relative;
    width: 100%;
    height: 100%;
    opacity: 0;
    -webkit-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    transition: opacity 0.3s;
    background-image: url(https://assets.periscope.tv/images/buffering_pattern.199c59aaecd1070c7a19e9907de36572.png);
    background-position-y: bottom;
    background-repeat: repeat-x;
    -webkit-animation-name: slideacross;
    animation-name: slideacross;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    padding: 15px;
}

.seeking-overlay p {
    font-weight: 600;
    margin: 0 !important;
}

.seeking-overlay--is-seeking {
    opacity: 1;
    -webkit-transition: opacity 0.3s 0.3s;
    -o-transition: opacity 0.3s 0.3s;
    transition: opacity 0.3s 0.3s;
}

@-webkit-keyframes slideacross {
    0% {
        background-position: 0 bottom;
    }

    100% {
        background-position: -68px bottom;
    }
}

@keyframes slideacross {
    0% {
        background-position: 0 bottom;
    }

    100% {
        background-position: -68px bottom;
    }
}

.service-groups a.fsservice-pretty-link:link,
.service-groups a.fsservice-pretty-link:visited {
    width: 100%;
}

.greybg {
    background-color: #F6F6F6;
    padding: 10px;
    margin-bottom: 20px;
    margin-top: 20px
}

.readonly .prefix {
    border: none !important;
}

.prefix {
    font-size: 1.1em;
}

.product_self .achieveforms-container .all-sections .field .fieldContent fieldset.fieldInput .checkbox-wrapper label,
.product_self .achieveforms-container .all-sections .field .fieldContent fieldset.fieldInput .radio-wrapper label,
.product_service .achieveforms-container .all-sections .field .fieldContent fieldset.fieldInput .checkbox-wrapper label,
.product_service .achieveforms-container .all-sections .field .fieldContent fieldset.fieldInput .radio-wrapper label {
    font-size: 16px;
    color: #444;
    display: inline-block;
    margin-right: .5em;
    margin-bottom: .5em;
}

.service-groups a.fsservice-pretty-link h2 {
    white-space: nowrap;
    overflow-x: visible;
    text-overflow: ellipsis;
}

/*.tg  {border-collapse:collapse;border-color:#9ABAD9;border-spacing:0;}
.tg td{background-color:#EBF5FF;border-color:#9ABAD9;border-style:solid;border-width:1px;color:#444;
  font-family:Arial, sans-serif;font-size:14px;overflow:hidden;padding:10px 5px;word-break:normal;}
.tg th{background-color:#00749e;border-color:#9ABAD9;border-style:solid;border-width:1px;color:#fff;
  font-family:Arial, sans-serif;font-size:14px;font-weight:normal;overflow:hidden;padding:10px 5px;word-break:normal;}


  task-table-head, .task-table-head .header {
    border-top: none;
    background-color: #00749e;

    border-style: solid;
    border-width: 1px;
    color: #fff;

    font-weight: normal;
    overflow: hidden;
    padding: 10px 5px;

}
*/

.btn-response {
    display: block;
    width: 100%;
    padding: 1em;
    font-size: 1.2em;
    box-sizing: border-box;
    white-space: normal;
    margin: 0;
    border: 1px solid #ccc;
    text-align: left;
}

@media (max-width: 767px) {
    .btn-response {
        font-size: 1em;
        padding: 0.8em;
    }
}

.btn-response {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.btn-response {
    margin: 0;
    word-wrap: break-word;
}

/* ==========================================================================
   Login Page for methods
   ========================================================================== */

.login-form {
    margin: 0 -5px;
    text-align: left;
}

.login-form .row-login {
    text-align: left;
    margin: 0 !important;
    max-width: 100%;
}

.login-form .row-login .provider-div {
    padding-left: 5px !important;
    padding-right: 5px !important;
}

.login-form .row-login .provider-div .thumbnail {
    position: relative;
}

.login-form .row-login .provider-div .thumbnail .logonimg {
    width: 55px;
}

.login-form .row-login .provider-div .thumbnail p {
    margin: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    top: 70px;
}

/* ==========================================================================
   Azure B2C Integration Styles
   - Custom styles for Azure B2C authentication flow
   - Recommended by Guy for Azure B2C
   ========================================================================== */

#verifying_blurb:empty {
    display: none;
}

#verifying_blurb {
    position: absolute;
    bottom: 80px;
    left: 40px;
    z-index: 1;
}

/* ==========================================================================
   Azure B2C Integration Styles
   - Custom styles to fix the padding left
   - Recommended by Kamila for Azure B2C
   ========================================================================== */

.content2 {
    padding-left: 20px;
}

/* ==========================================================================
   the <sup> style added by Kamila; Dec 2025
    ========================================================================== */
.btn-wrapper {
    position: relative;
    /*display: inline-block;  keeps it grouped with the button */
}

.btn-wrapper sup.new-flag {
    position: absolute;
     top: 20px;         /*adjust to fit inside button */
    right: 40px;       /*move toward button edge */
    font-size: 0.7em;
    color: red;
    pointer-events: none; /* prevents accidental clicking */
}


/* ==========================================================================
  Banner Citizen Hub home page specific, added by Kamila; Dec 2025
    ========================================================================== */

/* Root banner container: full width, 200px tall, no margin/padding (anchored to top) */
.hero-banner {
  display: flex;
  width: 100%;
  min-height: 200px;               
  /*overflow: hidden; */
  margin: 0;
  padding: 0;

  /* Add a visible gap between blue and photo sections */
  gap: 1rem;                   /* adjust to taste (e.g., 12px, 16px) */
}

/* Left 70%: blue area (#81CDEF) with width adjusted to account for the gap */
.hero-banner__left {

  flex: 0 0 calc(70% - 0.5rem);
  background-color: #81CDEF;
  position: relative;
  display: flex;
  align-items: center;         
}


/* Caption block inside the blue area: 80% of the blue section width */
.hero-banner__caption {
  width: 80%;
  margin-left: 2%;
  margin-right: 2%;
  line-height: 1.3;
}

/* Right 30%: photo area with width adjusted to account for the gap */
.hero-banner__right {
  flex: 0 0 calc(30% - 0.5rem);
  background-image: url("https://files-dublincity-fspub.s3.eu-west-1.amazonaws.com/images/CH_Dublin.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* Mobile-friendly: stack left/right on small screens */
@media (max-width: 576px) {
  .hero-banner {
    flex-direction: column;
    height: auto; /* allow height to grow when stacked */
    gap: 0;       /* remove the horizontal gap when stacked vertically */
  }
  .hero-banner__left,
  .hero-banner__right {
    flex: 0 0 auto;
    width: 100%;
    height: 200px;
  }
  .hero-banner__caption {
    width: 92%;
    margin-left: 4%;
    margin-right: 4%;
  }
}

 
/* Small screens: keep stacked behavior clean */
@media (max-width: 767.98px) {
  .card-grid.row {
    display: flex; /* Stack naturally on small screens */
    flex-direction: column;
  }
}
/* Remove underlines from headings/text inside the card, regardless of theme */

.btn-card a {
  text-decoration: none !important;
}


/* Ensure cards behave correctly on mobile */
@media (max-width: 767px) {
  .card-grid-item {
    margin-bottom: 1rem;
  }
}

/* Remove underlines from card links */
.btn-card a {
  text-decoration: none !important;
}

/*Make the entire tile clickable, not just the text:*/

.btn-card {
  width: 100%;
  text-align: left;
  white-space: normal;
  

/* ==========================================================================
  Footer for AHS home page specific, added by Kamila; Jan 2026
    ========================================================================== */

.site-footer .footer-nav a {
  text-decoration: none;
}
.site-footer .footer-nav li + li {
  margin-top: 6px; /* vertical spacing between lines if they wrap */
}
/* Make social icons a consistent size on small screens */
@media (max-width: 767px) {
  .site-footer .row [class*="col-"] > div[style*="text-align:right"] {
    text-align: left !important;
    margin-top: 10px;
  }
  .site-footer img[alt="Facebook"],
  .site-footer img[alt="Instagram"],
  .site-footer img[alt="YouTube"] {
    max-width: 24px !important;
    margin-left: 10px !important;
  }
}


  
