/* 2ip visual contract on native Bootstrap5. No retained Bootstrap3 distribution.
 * Selected adopted component dimensions retain the notice in THIRD-PARTY-NOTICES.txt. */
:root { --bs-body-font-family:"2ip"; --bs-body-font-size:16px; --bs-body-line-height:1.42857143;
  --bs-body-color:var(--twoip-on-surface); --bs-body-bg:var(--twoip-surface-container); --bs-border-radius:4px; --bs-border-color:var(--twoip-outline-variant); }
html {font-size:16px}
body {
  font-family:"2ip";
  font-size:16px;
  line-height:1.42857143;
  color:var(--twoip-on-surface);
  background:var(--twoip-surface-container);
}
h1,.h1,h2,.h2,h3,.h3,h4,.h4,h5,.h5,h6,.h6 {font-family:inherit;font-weight:500;line-height:1.1;color:inherit}
h1,.h1,h2,.h2,h3,.h3 {margin:16px 0 8px}
h4,.h4,h5,.h5,h6,.h6 {margin:8px 0}
h1,.h1 {font-size:41px} h2,.h2 {font-size:34px} h3,.h3 {font-size:28px}
h4,.h4 {font-size:20px} h5,.h5 {font-size:16px} h6,.h6 {font-size:14px}
p {margin:0 0 8px} ul,ol {margin-top:0;margin-bottom:8px;padding-left:40px}
a {text-decoration:none}
label {display:inline;margin-bottom:0;font-weight:normal}
.container {
  width:100%;
  max-width:none;
  padding:0 calc(var(--twoip-grid-gutter, 18px) / 2);
  margin:0 auto;
}
.row {--bs-gutter-x:18px}
.twoip-grid-line {display:flow-root}
.twoip-grid-line > [class*="col-"] {float:left}
.twoip-grid-line > [class*="col-"] {flex-shrink:0;position:relative;min-height:1px;padding:0 9px}
@media(min-width:1275px) {.container {
  width:var(--twoip-container-large, 1258px);
  max-width:var(--twoip-container-large, 1258px);
}}
.twoip-hidden-xs,.twoip-hidden-sm,.twoip-hidden-md,.twoip-hidden-lg {display:revert}
@media(max-width:767px) {.twoip-hidden-xs {display:none!important}}
@media(min-width:768px) and (max-width:991px) {.twoip-hidden-sm {display:none!important}}
@media(min-width:992px) and (max-width:1274px) {.twoip-hidden-md {display:none!important}}
@media(min-width:1275px) {.twoip-hidden-lg {display:none!important}}
.twoip-center-block {display:block;margin-left:auto;margin-right:auto}
.twoip-text-justify {text-align:justify}
.twoip-btn-block {display:block;width:100%}
.twoip-btn-block + .twoip-btn-block {margin-top:5px}
.twoip-form-group {margin-bottom:15px}
/* Horizontal forms retain the adopted product margins/label rules below.
 * Stock Bootstrap3 negative group margins were absent from the old 2ip fork. */
.twoip-control-label {max-width:100%}
.twoip-help-block {
  display:block;
  margin-top:5px;
  margin-bottom:10px;
  color:var(--twoip-on-surface-variant);
}
.input-group {align-items:stretch}
.input-group-text {
  padding:6px 12px;
  font-size:16px;
  line-height:1;
  color:var(--twoip-on-surface-variant);
  text-align:center;
  border:1px solid var(--twoip-outline-variant);
  background:var(--twoip-surface-container);
}
.twoip-group-actions {display:flex;position:relative;white-space:nowrap}
.twoip-checkbox,.twoip-radio {position:relative;display:block;margin-top:0;margin-bottom:0}
.twoip-checkbox label,.twoip-radio label {min-height:20px;padding-left:20px;margin-bottom:0;font-weight:normal;cursor:pointer}
.twoip-checkbox input[type=checkbox],.twoip-radio input[type=radio] {position:absolute;margin-left:-20px;margin-top:4px}
.twoip-panel:not(.twoip-accordion-item) {
  margin-bottom:16px;
  background:var(--twoip-surface);
  border:1px solid transparent;
  border-radius:4px;
  box-shadow:0 1px 1px var(--twoip-on-surface);
}
.twoip-panel-body:not(.twoip-accordion-body) {
  padding:15px;
}
.twoip-panel-body::after {content:"";display:table;clear:both}
.twoip-panel-footer {
  padding:10px 15px;
  background:var(--twoip-surface-container);
  border-top:1px solid var(--twoip-outline-variant);
  border-radius:0 0 3px 3px;
}
.twoip-well {
  min-height:20px;
  padding:19px;
  margin-bottom:16px;
  background:var(--twoip-surface-container);
  border:1px solid var(--twoip-outline-variant);
  border-radius:4px;
  box-shadow:inset 0 1px 1px var(--twoip-on-surface);
}
.twoip-well-sm {padding:9px;border-radius:3px}
.twoip-well-lg {padding:24px;border-radius:6px}
.twoip-thumbnail {
  display:block;
  padding:4px;
  margin-bottom:16px;
  line-height:1.42857143;
  background:var(--twoip-surface);
  border:1px solid var(--twoip-outline-variant);
  border-radius:4px;
}
.twoip-thumbnail > img {display:block;max-width:100%;height:auto;margin:auto}
.twoip-thumbnail .caption {
  padding:9px;
  color:var(--twoip-on-surface);
}
.twoip-label {
  display:inline;
  padding:.2em .6em .3em;
  font-size:75%;
  font-weight:bold;
  line-height:1;
  color:var(--twoip-on-surface);
  text-align:center;
  white-space:nowrap;
  vertical-align:baseline;
  border-radius:.25em;
}
.twoip-label-default {
  background:var(--twoip-surface-container);
}.twoip-label-primary {
  color:var(--twoip-on-primary-container);
  background:var(--twoip-primary-container);
}.twoip-label-success {
  color:var(--twoip-success);
  background:var(--twoip-success-container);
}
.twoip-label-info {
  color:var(--twoip-on-primary-container);
  background:var(--twoip-primary-container);
}.twoip-label-warning {
  color:var(--twoip-warning);
  background:var(--twoip-warning-container);
}.twoip-label-danger {
  color:var(--twoip-error);
  background:var(--twoip-error-container);
}
.twoip-close {
  float:right;
  padding:0;
  font-size:24px;
  font-weight:bold;
  line-height:1;
  color:var(--twoip-on-surface);
  text-shadow:0 1px 0 var(--twoip-on-surface);
  opacity:.2;
  background:transparent;
  border:0;
}
.twoip-close:hover,.twoip-close:focus {opacity:.5}
.sidebar-nav {display:block;padding:0;margin:0;list-style:none}
.sidebar-nav > li > a,.sidebar-nav .twoip-submenu a {position:relative;display:block}
.sidebar-nav .open > .twoip-submenu {display:block}
.table {
  --bs-table-color:var(--twoip-on-surface);
  --bs-table-bg:transparent;
  --bs-table-border-color:var(--twoip-outline-variant);
  --bs-table-striped-bg:var(--twoip-surface-container);
  line-height:1.42857143;
}
.table > :not(caption) > * > * {padding:8px;box-shadow:none}
.table-striped > tbody > tr:nth-of-type(odd) > * {background-color:var(--bs-table-striped-bg)}
.pagination {margin:20px 0}
.pagination .page-link {padding:6px 12px;font-size:16px;line-height:1.42857143}
.modal {--bs-modal-width:600px;--bs-modal-padding:15px;--bs-modal-border-radius:6px;--bs-modal-header-padding:15px;--bs-modal-footer-gap:5px}
.modal {--bs-modal-width:600px}
.modal-header {
  display:block;
  min-height:16.42857143px;
  padding:15px;
  border-bottom:1px solid var(--twoip-outline-variant);
}
.modal-title {margin:0;line-height:1.42857143}
.modal-body {padding:15px}
.modal-footer {
  display:block;
  padding:15px;
  text-align:right;
  border-top:1px solid var(--twoip-outline-variant);
}
.modal-footer > * {margin:0}
.modal-footer .btn + .btn {margin-left:5px}
.tooltip {
  font-family:"2ip";
  font-size:14px;
  line-height:1.4;
  --bs-tooltip-max-width:350px;
  --bs-tooltip-opacity:.9;
  --bs-tooltip-padding-x:8px;
  --bs-tooltip-padding-y:3px;
  --bs-tooltip-bg:var(--twoip-on-surface);
}
.popover {font-family:"2ip";font-size:16px;--bs-popover-max-width:276px}

/* Site large columns keep the actual1275px breakpoint instead of stock xl1200. */
@media(min-width:1275px) {
.twoip-wide-col-1 {width:8.3333333%;flex:0 0 auto}
.twoip-wide-col-2 {width:16.666667%;flex:0 0 auto}
.twoip-wide-col-3 {width:25%;flex:0 0 auto}
.twoip-wide-col-4 {width:33.333333%;flex:0 0 auto}
.twoip-wide-col-5 {width:41.666667%;flex:0 0 auto}
.twoip-wide-col-6 {width:50%;flex:0 0 auto}
.twoip-wide-col-7 {width:58.333333%;flex:0 0 auto}
.twoip-wide-col-8 {width:66.666667%;flex:0 0 auto}
.twoip-wide-col-9 {width:75%;flex:0 0 auto}
.twoip-wide-col-10 {width:83.333333%;flex:0 0 auto}
.twoip-wide-col-11 {width:91.666667%;flex:0 0 auto}
.twoip-wide-col-12 {width:100%;flex:0 0 auto}
.twoip-wide-offset-1 {margin-left:8.3333333%}
.twoip-wide-offset-2 {margin-left:16.666667%}
.twoip-wide-offset-3 {margin-left:25%}
.twoip-wide-offset-4 {margin-left:33.333333%}
.twoip-wide-offset-5 {margin-left:41.666667%}
.twoip-wide-offset-6 {margin-left:50%}
.twoip-wide-offset-7 {margin-left:58.333333%}
.twoip-wide-offset-8 {margin-left:66.666667%}
.twoip-wide-offset-9 {margin-left:75%}
.twoip-wide-offset-10 {margin-left:83.333333%}
.twoip-wide-offset-11 {margin-left:91.666667%}
}
.cdn-country-toggle::after,.review-filter-toggle::after {display:none}

.pagination{--bs-pagination-border-radius:4px}.dropdown-menu-end{right:0;left:auto}
/* Offset-only wrappers occupied the remaining row width in the established layout. */
.row > [class*="offset-"]:not([class*="col-"]){width:auto;flex:1;min-width:0}
@media(max-width:1274px){.row > [class*="twoip-wide-col-"]:not([class*=" col-"]){width:auto;flex:1;min-width:0}}
/* Former block siblings in a stored/module grid keep their full line and can wrap text. */
.twoip-grid-line > :not([class*="col-"]){min-width:0}
/* Product absolute descendants are anchored to their grid column as before. */
.row > [class*="col-"]{position:relative;min-height:1px}
.container-fluid{padding-left:9px;padding-right:9px}

/* Flat tiles use an independently positioned layout, without row child gutters. */
#flat {padding:0;display:block}
.module_isotopemenu .row > .twoip-grid-line {display:contents}
/* Product fields keep their icon column; labels are absolutely positioned. */
.twoip-form-group > .input-group {display:table;border-collapse:separate}
.twoip-form-group > .input-group > .input-group-text {display:table-cell;width:1%;white-space:nowrap;vertical-align:middle}
.twoip-form-group > .input-group > .form-control {position:relative;display:table-cell;float:left;width:100%;margin-left:0!important}
.twoip-form-group > .input-group > .password-group {display:table-cell;width:100%;vertical-align:top}
.login-form .password-group > .input-group > .form-control {margin-left:0!important}


/* Product flow boundaries include the leading table to contain collapsed margins. */
.clearfix::before,.clearfix::after {content:"";display:table}
.pagination > li {display:inline}
.pagination > li > .page-link {float:left}

/* Existing server pagers and semantic span controls inherit their product text. */
.pagination {margin:16px 0}
span.btn {font-size:inherit;display:inline}
.table > thead > tr > th {
  vertical-align:bottom;
  border-bottom:2px solid var(--twoip-outline-variant);
}



.pagination {display:inline-block}

span.btn {vertical-align:baseline}

@media(max-width:767px){.table-responsive{
  width:100%;
  margin-bottom:12px;
  overflow-y:hidden;
  border:1px solid var(--twoip-outline-variant);
}.table-responsive > .table{margin-bottom:0}}

/* Reserve the canonical page gutter in both application and resilient documents. */
html { overflow-y: scroll; scrollbar-gutter: stable; }

/* Keep child margins inside content collapses both during and after height transitions.
 * Native Bootstrap retains height/timing; canonical accordions own their panel contract. */
body :is(.t3-content,.modal) :is(.collapse.show,.collapsing):not(.twoip-accordion-panel) { display: flow-root; }
