@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,400italic,700italic,700);
@import url(https://fonts.googleapis.com/css?family=Montserrat:400,700);
@import url(https://fonts.googleapis.com/icon?family=Material+Icons);

/* Bootstrap 5's Reboot covers most of this. Retaining only specific overrides if needed. */
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,main,nav,output,ruby,section,summary,time,mark,audio,video{
    margin:0;
    padding:0;
    border:0;
    font-size:100%;
    font:inherit;
    vertical-align:baseline;
}
article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{
    display:block;
}
audio,canvas,video{
    display:inline-block;
}
audio:not([controls]){
    display:none;
    height:0;
}
[hidden]{
    display:none;
}
html{
    font-family:sans-serif;
    -ms-text-size-adjust:100%;
    -webkit-text-size-adjust:100%;
}
body{
    margin:0;
}
a:focus{
    outline:thin dotted; /* Bootstrap 5 generally handles focus outlines better with focus-ring */
}
a:active,a:hover{
    outline:0;
}
h1{
    font-size:2em;
    margin:0;
}
abbr[title]{
    border-bottom:1px dotted;
}
b,strong{
    font-weight:bold;
}
dfn{
    font-style:italic;
}
hr{
    box-sizing:content-box;
    height:0;
}
mark{
    background:#ff0;
    color:#000;
}
code,kbd,pre,samp{
    font-family:monospace,serif;
    font-size:1em;
}
pre{
    white-space:pre-wrap;
}
q{
    quotes:"\201C" "\201D" "\2018" "\2019";
}
small{
    font-size:80%;
}
sub,sup{
    font-size:75%;
    line-height:0;
    position:relative;
    vertical-align:baseline;
}
sup{
    top:-0.5em;
}
sub{
    bottom:-0.25em;
}
img{
    border:0;
}
svg:not(:root){
    overflow:hidden;
}
figure{
    margin:0;
}
fieldset{
    border:1px solid silver;
    margin:0 2px;
    padding:.35em .625em .75em;
}
legend{
    border:0;
    padding:0;
}
button,input,select,textarea{
    font-family:inherit;
    font-size:100%;
    margin:0;
}
button,input{
    line-height:normal;
}
button,select{
    text-transform:none;
}
button,html input[type="button"],input[type="reset"],input[type="submit"]{
    -webkit-appearance:button;
    cursor:pointer;
}
button[disabled],html input[disabled]{
    cursor:not-allowed;
}
input[type="checkbox"],input[type="radio"]{
    box-sizing:border-box;
    padding:0;
}
input[type="search"]{
    -webkit-appearance:textfield;
    box-sizing:content-box;
}
input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{
    -webkit-appearance:none;
}
button::-moz-focus-inner,input::-moz-focus-inner{
    border:0;
    padding:0;
}
textarea{
    overflow:auto;
    vertical-align:top;
    resize:vertical; /* Kept, often useful */
}
table{
    border-collapse:collapse;
    border-spacing:0;
}

/* --- Bootstrap 5 Adjustments Start --- */

/* Clearfix is often unnecessary with Flexbox/Grid layouts, but kept for compatibility if floats remain */
.clearfix::after{
    content:"";
    display:table;
    clear:both;
}

body{
    padding-top:120px; /* Keep if fixed header needs this space */
    color:#4a5669; /* Custom color */
    line-height:1.5; /* Adjusted to a more common default line-height for readability */
    font-size:16px;
    font-weight:normal;
    font-family:"Open Sans",sans-serif;
    background-color:#fff;
    -webkit-font-smoothing:antialiased;
}
body::after{
    overflow:hidden;
    position:absolute;
    width:0;
    height:0;
    font-family:"Material Icons";
    content:"\e86f";
}
body.preload::before{
    content:'';
    position:fixed;
    z-index:1100;
    top:0;
    left:0;
    right:0;
    bottom:0;
    background-color:#0098ef;
    transition:opacity .4s;
}
body.preload::after{
    content:'';
    position:fixed;
    z-index:1101;
    top:50%;
    left:50%;
    width:32px;
    height:32px;
    margin:-16px 0 0 -16px;
    background:transparent url(../img/layout/loading.svg) center center no-repeat;
    animation:body-preload .6s linear infinite;
}
body.preload.preload-done::before,body.preload.preload-done::after{
    opacity:0;
}
@keyframes body-preload{
    0%{-webkit-transform:rotate(0);transform:rotate(0)}
    100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}
}
/* Removed duplicate @-webkit-keyframes, modern browsers support @keyframes */

button{
    display:inline-block;
    line-height:24px;
    padding:0;
    margin:0;
    outline:0;
    border:0;
    box-shadow:none;
    box-sizing:border-box; /* B5 default */
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none;
}
button:disabled{
    cursor:not-allowed;
    color:#a0abbc!important;
    background:#f0f2f5!important;
}
a{
    color:#0098ef; /* Custom primary link color */
    text-decoration:none;
    transition:color .2s,background-color .2s;
}
a:focus,a:active{
    outline:0;
}
a:hover{
    text-decoration:underline;
}
h1,h2,h3,h4,h5{
    font-family:Montserrat,sans-serif;
    font-weight:normal;
}
h1{
    font-size:42px;
    line-height:52px;
}
h2{
    font-size:32px;
    line-height:42px;
}
h3{
    font-size:24px;
    line-height:34px;
}
h4{
    font-size:20px;
    line-height:30px;
}
h5{
    font-size:16px;
    line-height:26px;
}
p{
    line-height:28px;
}
small{
    font-size:87.5%;
    line-height:87.5%;
}
em{
    font-style:italic;
}
strong{
    font-weight:bold;
}
mark{
    color:#4a5669;
    padding:0 .2em;
    background-color:#fc3;
    border-radius:.2em;
}
abbr{
    cursor:help;
}
address{
    line-height:28px;
}
blockquote{
    position:relative;
    padding:20px 0 20px 30px;
}
blockquote::before{
    position:absolute;
    content:"";
    top:0;
    left:0;
    width:30px;
    height:100%;
    border:2px solid #e6e9ee;
    border-right:0;
    border-top-left-radius:12px;
    border-bottom-left-radius:12px;
}
blockquote footer{
    margin-top:15px;
    color:#a0abbc;
    font-size:14px;
    line-height:26px;
}
blockquote cite{
    font-style:italic;
}
hr{
    margin:0;
    border:0;
    border-top:2px solid #e6e9ee;
}
dl{
    display:flex;
    flex-flow:row;
    flex-wrap:wrap;
    line-height:28px;
}
dl dt{
    flex:0 0 30%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    color:#a0abbc;
}
dl dd{
    flex:0 0 70%;
    padding-left:10px;
    box-sizing:border-box;
}
dl dt:not(:first-of-type),dl dd:not(:first-of-type){
    margin-top:20px;
}
img,video,iframe{
    display:inline-block;
    max-width:100%;
}
.text-margin-left{
    margin-left:1em; /* Consider using B5 spacing utilities like ms-3 */
}
.text-margin-right{
    margin-right:1em; /* Consider using B5 spacing utilities like me-3 */
}
.text-align-left{
    text-align:start; /* Changed to B5 equivalent */
}
.text-align-right{
    text-align:end; /* Changed to B5 equivalent */
}
.text-align-center{
    text-align:center;
}
.text-break-all{
    word-break:break-all;
}
.text-color-dark{
    color:#4a5669!important;
}
.text-color-light{
    color:#fff!important;
}
.text-color-gray{
    color:#a0abbc!important;
}
.text-color-primary{
    color:#0098ef!important;
}
.text-color-secondary{
    color:#fc3!important;
}
.text-color-success{
    color:#00b75a!important;
}
.text-color-warning{
    color:#ffcc34!important;
}
.text-color-error{
    color:#cd3100!important;
}
ul.list-style-nav,ul.list-style-none,ul.list-style-icon{
    list-style-type:none;
}
ul.list-style-nav{
    overflow:hidden;
    background-color:#fff;
    border:2px solid #e6e9ee;
    border-radius:12px;
}
ul.list-style-nav>li{
    transition:background-color .2s;
}
ul.list-style-nav>li:not(:last-of-type){
    border-bottom:1px solid #e6e9ee;
}
ul.list-style-nav>li:hover{
    background-color:#f0f2f5;
}
ul.list-style-nav>li a:hover{
    color:#a0abbc!important;
    text-decoration:none;
}
ul.list-style-nav>li>a{
    display:block;
    padding:10px 15px;
}
ul.list-style-nav>li ul{
    margin:8px 0 24px 34px!important;
    list-style-type:none;
    font-size:14px;
}
ul.list-style-icon li{
    position:relative;
    padding-left:26px;
}
ul.list-style-icon li .fa,ul.list-style-icon li .fas,ul.list-style-icon li .far,ul.list-style-icon li .fal,ul.list-style-icon li .fab,ul.list-style-icon li .material-icons{
    position:absolute;
    left:0;
    width:20px;
    height:28px;
    line-height:28px;
    text-align:center;
}
ul.list-style-icon li .svg-inline--fa{
    position:absolute;
    top:6px;
    left:0;
    width:20px;
}
button,.button{
    display:inline-block;
    padding:16px 20px;
    cursor:pointer;
    color:#0098ef;
    line-height:1;
    font-size:14px;
    font-weight:bold;
    font-family:Montserrat,sans-serif;
    text-transform:uppercase;
    text-align:center;
    background-color:#fff;
    border:2px solid #e6e9ee;
    border-radius:6px;
    box-sizing:border-box; /* B5 default */
    transition:color .2s;
}
button.button-primary,.button.button-primary,button.button-secondary,.button.button-secondary{
    padding:18px 22px;
    border:0;
}
button.button-primary,.button.button-primary{
    color:#fff;
    background-color:#0098ef;
}
button.button-secondary,.button.button-secondary{
    color:#4a5669;
    background-color:#fc3;
}
button:hover,.button:hover{
    color:#a0abbc;
    text-decoration:none;
}
button.button-primary:hover,.button.button-primary:hover{
    color:rgba(255,255,255,0.6);
}
button.button-secondary:hover,.button.button-secondary:hover{
    color:rgba(74,86,105,0.6);
}
button:focus,.button:focus,button:active,.button:active{
    /* Replaced with standard gradient syntax */
    background-image:linear-gradient(rgba(74,86,105,0.1) 0,rgba(74,86,105,0.1) 100%);
}
.material-icons{
    font-size:inherit;
    line-height:inherit;
    vertical-align:top;
}
.icon-left,.fa.fa-pull-left,.fas.fa-pull-left,.far.fa-pull-left,.fal.fa-pull-left,.fab.fa-pull-left{
    margin-right:.5em; /* Use me-2 or me-3 in HTML for consistency */
}
.icon-right,.fa.fa-pull-right,.fas.fa-pull-right,.far.fa-pull-right,.fal.fa-pull-right,.fab.fa-pull-right{
    margin-left:.5em; /* Use ms-2 or ms-3 in HTML for consistency */
}
.icon-feature{
    height:64px;
    line-height:64px;
    font-size:64px;
    color:#0098ef;
}
.icon-feature-large{
    height:256px;
    line-height:256px;
    font-size:256px;
    color:#0098ef;
    text-shadow:8px 8px 0 rgba(74,86,105,0.1);
}
svg.icon-feature-large{
    filter:drop-shadow(8px 8px 0 rgba(74,86,105,0.1));
}
.icon-feature-inline{
    margin-top:-4px;
    margin-right:12px;
    vertical-align:middle;
    font-size:150%;
    color:#0098ef;
}
#nav-overlay{
    position:absolute;
    z-index:1001;
    top:0;
    left:0;
    width:100%;
    padding:30px 0;
}
#nav-overlay .logo{
    float:none!important; /* Consider using d-flex and justify-content-center or align-items-center */
}
#nav-overlay:not(.nav-overlay-light):not(.nav-overlay-gray):not(.nav-overlay-dark) .logo{
    color:#fff;
}
#nav-overlay nav ul{
    list-style-type:none;
}
#nav-overlay nav .nav-primary{
    margin-top:30px;
    padding:20px 30px;
    border:2px solid rgba(255,255,255,0.2);
    border-radius:12px;
}
#nav-overlay.nav-overlay-light nav .nav-primary,#nav-overlay.nav-overlay-gray nav .nav-primary{
    background-color:#fff;
    border-color:#e6e9ee;
}
#nav-overlay.nav-overlay-dark nav .nav-primary{
    border-color:#3a4659;
}
#nav-overlay nav .nav-primary>li{
    padding:10px 0;
    line-height:20px;
}
#nav-overlay nav .nav-primary>li a:not(.button){
    color:#fff;
}
#nav-overlay.nav-overlay-light nav .nav-primary>li a:not(.button),#nav-overlay.nav-overlay-gray nav .nav-primary>li a:not(.button),#nav-overlay.nav-overlay-dark nav .nav-primary>li a:not(.button){
    color:#0098ef;
}
#nav-overlay nav .nav-primary>li>a:not(.button){
    font-size:14px;
    font-weight:bold;
    font-family:Montserrat,sans-serif;
    text-transform:uppercase;
}
#nav-overlay:not(.nav-overlay-light):not(.nav-overlay-gray):not(.nav-overlay-dark) nav .nav-primary>li>a.button.button-primary{
    padding:16px 20px;
    border:2px solid rgba(255,255,255,0.2);
}
#nav-overlay:not(.nav-overlay-light):not(.nav-overlay-gray) nav .nav-primary>li>a.button:not(.button-primary){
    padding:18px 22px;
    border:0;
}
#nav-overlay nav .nav-primary>li a:not(.button):hover{
    color:rgba(255,255,255,0.6);
    text-decoration:none;
}
#nav-overlay.nav-overlay-light nav .nav-primary>li a:not(.button):hover,#nav-overlay.nav-overlay-gray nav .nav-primary>li a:not(.button):hover{
    color:#a0abbc;
}
#nav-overlay.nav-overlay-dark nav .nav-primary>li a:not(.button):hover{
    color:#667791;
}
#nav-overlay nav .nav-primary>li ul{
    padding:20px 0 10px 0;
}
#nav-overlay nav .nav-primary>li ul li{
    padding:5px 0;
    font-size:14px;
    line-height:20px;
}
#nav-overlay nav .nav-primary>li ul li ul{
    padding:20px 0 15px 30px;
}
#nav-overlay nav .nav-primary>li:last-of-type ul,#nav-overlay nav .nav-primary>li ul li:last-of-type,#nav-overlay nav .nav-primary>li ul li:last-of-type ul{
    padding-bottom:0;
}
#nav-overlay nav .nav-secondary{
    padding:25px 30px;
}
#nav-overlay nav .nav-secondary li{
    padding:5px 0;
    font-size:14px;
    line-height:20px;
}
#nav-overlay nav .nav-secondary li a{
    color:rgba(255,255,255,0.6);
}
#nav-overlay.nav-overlay-light nav .nav-secondary li a,#nav-overlay.nav-overlay-gray nav .nav-secondary li a{
    color:#a0abbc;
}
#nav-overlay.nav-overlay-dark nav .nav-secondary li a{
    color:#667791;
}
#nav-overlay nav .nav-secondary li a:hover{
    color:#fff;
    text-decoration:none;
}
#nav-overlay.nav-overlay-light nav .nav-secondary li a:hover,#nav-overlay.nav-overlay-gray nav .nav-secondary li a:hover{
    color:#4a5669;
}
#nav-overlay nav .nav-secondary li a i{
    width:20px;
    text-align:center;
}
#nav-overlay-open,#nav-overlay-close{
    position:absolute;
    top:0;
    right:0;
    width:32px;
    height:32px;
    margin-top:12px;
    font-size:24px;
    line-height:32px;
    text-align:center;
    cursor:pointer;
    color:#fff;
    border:2px solid rgba(255,255,255,0.2);
    border-radius:6px;
    user-select:none; /* Removed prefixes */
}
#nav-overlay-open.nav-overlay-light,#nav-overlay-close.nav-overlay-light,#nav-overlay-open.nav-overlay-gray,#nav-overlay-close.nav-overlay-gray{
    color:#0098ef;
    background-color:#fff;
    border-color:#e6e9ee;
}
#nav-overlay-open.nav-overlay-dark,#nav-overlay-close.nav-overlay-dark{
    color:#0098ef;
    border-color:#3a4659;
}
#nav-overlay-background{
    position:fixed;
    z-index:1000;
    top:0;
    left:0;
    width:100%;
    height:100%;
    padding-bottom:100%;
    background-color:#0098ef;
}
#nav-overlay-background.nav-overlay-light{
    background-color:#fff!important;
}
#nav-overlay-background.nav-overlay-gray{
    background-color:#f0f2f5!important;
}
#nav-overlay-background.nav-overlay-dark{
    background-color:#2c3645!important;
}
#nav-overlay:not(.nav-overlay-visible),#nav-overlay-open:not(.nav-overlay-visible),#nav-overlay-close:not(.nav-overlay-visible),#nav-overlay-background:not(.nav-overlay-visible){
    display:none;
}

/* Updated .group to use modern flexbox syntax. Consider replacing with Bootstrap 5 .row and gutter utilities. */
.group{
    display:flex;
    margin-left: -0.5rem; /* Equivalent to -10px, use Bootstrap's --bs-gutter-x or define custom variable */
    margin-right: -0.5rem; /* Equivalent to -10px */
    margin-bottom: -1rem; /* Equivalent to -20px */
    flex-wrap:wrap;
    align-items:center;
}
.group.align-center{
    justify-content:center;
}
.group.align-left{
    justify-content:flex-start;
}
.group.align-right{
    justify-content:flex-end;
}
.group.space-between{
    justify-content:space-between;
}
.group>*{
    margin:0 0.5rem 1rem 0.5rem!important; /* Equivalent to 10px / 20px, use Bootstrap's p-* or m-* for clarity */
}
.group>.group-stretch{
    flex:1;
}

/* Updated .column-row to use modern flexbox. Consider replacing with Bootstrap 5 .row and .g-* utilities. */
.column-row,#content>.content-row .content-header+.column-row{
    display:flex;
    margin: -1.5rem; /* Equivalent to -30px */
}
.column-row.column-row-flex-width{
    justify-content:space-between!important;
}
.column-row:not(:first-child){
    margin-top:1.5rem; /* Equivalent to 30px */
}
.column-row.align-center,.column-row.align-center-top,.column-row.align-center-center,.column-row.align-center-bottom{
    align-items:center;
    justify-content:center;
}
.column-row.align-left-top,.column-row.align-left-center,.column-row.align-left-bottom{
    align-items:flex-start;
    justify-content:flex-start;
}
.column-row.align-right-top,.column-row.align-right-center,.column-row.align-right-bottom{
    align-items:flex-start;
    justify-content:flex-end;
}
.column-row.align-center-top{
    align-items:flex-start;
}
.column-row.align-left-center,.column-row.align-right-center{
    align-items:center;
}
.column-row.align-left-bottom,.column-row.align-center-bottom,.column-row.align-right-bottom{
    align-items:flex-end;
}
.column-row>.column-20,.column-row>.column-25,.column-row>.column-30,.column-row>.column-33,.column-row>.column-40,.column-row>.column-50,.column-row>.column-60,.column-row>.column-66,.column-row>.column-70,.column-row>.column-75,.column-row>.column-80,.column-row>.column-flex{
    padding:1.5rem; /* Equivalent to 30px */
    box-sizing:border-box; /* B5 default */
}
/* These fixed widths might need to be re-evaluated for a full B5 grid migration */
.column-row>.column-20{
    width:20%;
}
.column-row>.column-25{
    width:25%;
}
.column-row>.column-30{
    width:30%;
}
.column-row>.column-33{
    width:33.33%;
}
.column-row>.column-40{
    width:40%;
}
.column-row>.column-50{
    width:50%;
}
.column-row>.column-60{
    width:60%;
}
.column-row>.column-66{
    width:66.66%;
}
.column-row>.column-70{
    width:70%;
}
.column-row>.column-75{
    width:75%;
}
.column-row>.column-80{
    width:80%;
}
.container{
    position:relative;
    width:1280px; /* Max-width behavior in B5, usually defined by .container-* classes */
    margin:0 auto;
}
.container.container-full-width{
    width:auto;
    margin:0 60px;
    flex-basis:100%;
}
.container::after{ /* Often replaced by flexbox parent */
    content:"";
    display:table;
    clear:both;
}
#header{
    position:fixed;
    z-index:100;
    top:0;
    left:0;
    width:100%;
    height:60px;
    padding:30px 0;
    background-color:#0098ef;
    transition:transform .4s,box-shadow .4s;
}
#header.header-static{
    position:absolute;
}
#header.header-light{
    background-color:#fff!important;
}
#header.header-gray{
    background-color:#f0f2f5!important;
}
#header.header-dark{
    background-color:#2c3645!important;
}
#header.header-dynamic.headroom--pinned.headroom--top{
    transition:box-shadow .4s;
}
#header.header-dynamic.headroom--pinned{
    transform:translate3d(0,0,0);
}
#header.header-dynamic.headroom--unpinned{
    transform:translate3d(0,-100%,0);
}
#header.header-dynamic.headroom--disabled{
    transform:translate3d(0,0,0)!important;
}
#header.header-shadow,#header.header-shadow-scroll.active{
    box-shadow:0 16px 32px rgba(44,54,69,0.05);
}
#header.header-shadow.headroom--unpinned,#header.header-shadow-scroll.active.headroom--unpinned{
    box-shadow:none;
}
#header .logo,#nav-overlay .logo{
    float:left; /* Consider `d-flex` for parent and align-items-center for logo */
    display:flex;
    align-items:center;
    max-width:30%;
    height:60px;
    line-height:60px;
    text-decoration:none!important;
}
#header .logo img,#nav-overlay .logo img{
    display:block;
    max-width:100%;
    max-height:100%;
}
#header .logo .logo-text,#nav-overlay .logo .logo-text{
    font-size:32px;
    white-space:nowrap;
    font-family:Montserrat,sans-serif;
}
#header .logo .logo-text small,#nav-overlay .logo .logo-text small{
    font-size:50%;
    line-height:50%;
    color:rgba(255,255,255,0.6);
}
#header.header-gray .logo .logo-text small,#header.header-light .logo .logo-text small,#nav-overlay.nav-overlay-gray .logo .logo-text small,#nav-overlay.nav-overlay-light .logo .logo-text small{
    color:#a0abbc;
}
#header.header-dark .logo .logo-text small,#nav-overlay.nav-overlay-dark .logo .logo-text small{
    color:#667791;
}
#header:not(.header-nav-overlay) .logo .logo-text.logo-text-baseline{
    padding-top:16px;
}
#header .logo.logo-center{
    float:none; /* Consider d-flex and justify-content-center */
    margin:0 auto;
    justify-content:center;
}
#header nav{
    float:right; /* Consider d-flex and justify-content-end */
    width:70%;
}
#header.header-nav-overlay nav{
    display:none;
}
#header nav ul{
    list-style-type:none;
}
#header nav .nav-primary{
    float:right; /* Consider d-flex and justify-content-end */
    margin-top:28px;
}
#header nav .nav-primary>li{
    position:relative;
    float:left; /* Consider d-flex and using flex gaps */
}
#header nav .nav-primary>li:not(:last-of-type){
    margin-right:40px;
}
#header nav .nav-primary>li.button-follows{
    margin-right:10px;
}
#header nav .nav-primary>li>a{
    display:block;
    height:32px;
    line-height:32px;
    font-size:14px;
    font-weight:bold;
    font-family:Montserrat,sans-serif;
    text-transform:uppercase;
}
#header:not(.header-light):not(.header-gray):not(.header-dark) .logo,#header:not(.header-light):not(.header-gray):not(.header-dark) nav .nav-primary>li>a:not(.button){
    color:#fff;
}
#header nav .nav-primary>li>a:hover:not(.button){
    color:#a0abbc;
    text-decoration:none;
}
#header.header-dark nav .nav-primary>li>a:hover:not(.button){
    color:#667791;
}
#header:not(.header-light):not(.header-gray):not(.header-dark) nav .nav-primary>li>a:hover:not(.button){
    color:rgba(255,255,255,0.6);
}
#header nav .nav-primary>li>a.button{
    padding:0 16px;
    border-radius:4px;
}
#header:not(.header-light):not(.header-gray):not(.header-dark) nav .nav-primary>li>a.button.button-primary,#header.header-light nav .nav-primary>li>a.button:not(.button-primary):not(.button-secondary),#header.header-gray nav .nav-primary>li>a.button:not(.button-primary):not(.button-secondary){
    line-height:28px;
    padding:0 14px;
}
#header:not(.header-light):not(.header-gray):not(.header-dark) nav .nav-primary>li>a.button.button-primary{
    border:2px solid rgba(255,255,255,0.2);
}
#header:not(.header-light):not(.header-gray) nav .nav-primary>li>a.button:not(.button-primary){
    border:0;
}
#header nav .nav-primary>li ul,#header.header-dynamic.headroom--unpinned nav .nav-primary>li ul{
    display:none;
    position:absolute;
    padding:10px;
    margin:10px 0 0 -20px;
    background-color:#fff;
    border-radius:6px;
    box-shadow:0 0 0 2px rgba(74,86,105,0.1),0 15px 30px rgba(74,86,105,0.1);
}
#header nav .nav-primary>li>ul.nav-button{
    margin-left:0;
}
#header nav .nav-primary>li:hover>ul{
    display:block;
    animation:nav-primary-down .2s;
}
#header nav .nav-primary>li>ul::before{
    position:absolute;
    content:"";
    top:-10px;
    left:0;
    right:0;
    height:10px;
}
#header nav .nav-primary>li ul li{
    position:relative;
    line-height:26px;
    white-space:nowrap;
}
#header nav .nav-primary>li ul li a{
    display:block;
    padding:4px 10px;
    font-size:15px;
    border-radius:4px;
}
#header nav .nav-primary>li ul li a:hover{
    color:#a0abbc;
    text-decoration:none;
    background-color:#f0f2f5;
}
#header nav .nav-primary>li ul li ul{
    top:-20px;
    left:100%;
    margin-left:20px;
}
#header nav .nav-primary>li ul li:hover ul{
    display:block;
    animation:nav-primary-right .2s;
}
#header nav .nav-primary>li ul li ul::before{
    position:absolute;
    content:"";
    top:0;
    bottom:0;
    left:-20px;
    width:20px;
}
#header nav .nav-primary>li>ul.nav-left{
    right:0;
    margin:10px -20px 0 0;
}
#header nav .nav-primary>li>ul.nav-left.nav-button{
    margin-right:0;
}
#header nav .nav-primary>li ul.nav-left li a{
    text-align:end; /* Changed to B5 equivalent */
}
#header nav .nav-primary>li ul li ul.nav-left{
    left:auto;
    right:100%;
    margin-right:20px;
}
#header nav .nav-primary>li ul li ul.nav-left::before{
    left:auto;
    right:-20px;
}
#header nav .nav-primary>li ul li:hover ul.nav-left{
    display:block;
    animation:nav-primary-left .2s;
}
@keyframes nav-primary-down{
    0%{opacity:0;transform:translateY(-10px)}
    100%{opacity:1;transform:translateY(0)}
}
@keyframes nav-primary-right{
    0%{opacity:0;transform:translateX(-10px)}
    100%{opacity:1;transform:translateX(0)}
}
@keyframes nav-primary-left{
    0%{opacity:0;transform:translateX(10px)}
    100%{opacity:1;transform:translateX(0)}
}
/* Removed duplicate @-webkit-keyframes */

#header nav .nav-secondary{
    position:absolute;
    top:0;
    right:0;
    -webkit-font-smoothing:subpixel-antialiased; /* Kept, but often not needed with modern font rendering */
}
#header nav .nav-secondary li{
    float:left; /* Consider d-flex for parent and using gap utility for spacing */
}
#header nav .nav-secondary li:not(:last-of-type){
    margin-right:30px;
}
#header nav .nav-secondary li a{
    display:block;
    font-size:13px;
    color:rgba(255,255,255,0.6);
}
#header.header-light nav .nav-secondary li a,#header.header-gray nav .nav-secondary li a{
    color:#a0abbc;
}
#header.header-dark nav .nav-secondary li a{
    color:#667791;
}
#header nav .nav-secondary li a:hover{
    color:#fff;
    text-decoration:none;
}
#header.header-light nav .nav-secondary li a:hover,#header.header-gray nav .nav-secondary li a:hover{
    color:#4a5669;
}

/* SRF-WHMCS Specific Styles */
.srf-whmcs{
    line-height:1.5;
}
.srf-whmcs h1,.srf-whmcs h2,.srf-whmcs h3,.srf-whmcs h4,.srf-whmcs h5,.srf-whmcs h6{
    font-family:Montserrat,sans-serif;
}
.srf-whmcs h1 small{
    font-size:50%;
}
.srf-whmcs h1 small,.srf-whmcs h2 small,.srf-whmcs h3 small,.srf-whmcs h4 small,.srf-whmcs h5 small,.srf-whmcs h6 small,.srf-whmcs .h1 small,.srf-whmcs .h2 small,.srf-whmcs .h3 small,.srf-whmcs .h4 small,.srf-whmcs .h5 small,.srf-whmcs .h6 small,.srf-whmcs .h1 .small,.srf-whmcs .h2 .small,.srf-whmcs .h3 .small,.srf-whmcs .h4 .small,.srf-whmcs .h5 .small,.srf-whmcs .h6 .small,.srf-whmcs .ticket-number{
    color:#a0abbc;
}
.srf-whmcs blockquote{
    border-left-width:0;
}
.srf-whmcs div.header-lined h1{
    border-color:#ddd;
}
/* .label is replaced by .badge in B5 */
.srf-whmcs .badge{ /* Renamed from .label */
    border-radius:.25em;
}
.srf-whmcs .container{
    width:auto;
    max-width:1310px;
}
.srf-whmcs .main-content{
    margin:0;
    min-height:330px;
}
.srf-whmcs .main-content>p[style]:last-of-type{
    color:#a0abbc;
    margin-top:30px;
}
/* .panel-sidebar is replaced by .card-sidebar */
.srf-whmcs .card-sidebar{ /* Renamed from .panel-sidebar */
    margin:10px 0 30px 0;
    border-color:#ddd;
}
.srf-whmcs .card-sidebar:last-child{ /* Renamed from .panel-sidebar */
    margin-bottom:20px;
}
.srf-whmcs .alert ul{
    font-size:14px;
    line-height:24px;
    padding:10px 30px 0 30px;
}
.srf-whmcs .field,.srf-whmcs .form-control,.srf-whmcs .btn-danger[disabled="disabled"]{
    border-color:#ddd!important;
    box-shadow:none!important;
}
.srf-whmcs .input-group .form-control:focus{
    z-index:2;
}
.srf-whmcs .btn-primary:active{
    background-color:#4a5669!important;
    border-color:#4a5669!important;
}
.srf-whmcs a,.srf-whmcs .btn-link,.srf-whmcs .btn-link:hover,.srf-whmcs .btn-link:focus,.srf-whmcs div.header-lined h1,.srf-whmcs #registration .sub-heading span,.srf-whmcs div.header-lined .breadcrumb>.active,.srf-whmcs #order-standard_cart .sub-heading span,.srf-whmcs #order-standard_cart .sub-heading-borderless span{
    color:#0098ef;
}
.srf-whmcs .btn-primary,.srf-whmcs .btn-primary:hover,.srf-whmcs .btn-primary:focus,.srf-whmcs .pagination>.active>a,.srf-whmcs .pagination>.active>a:focus,.srf-whmcs .pagination>.active>a:hover,.srf-whmcs .pagination>.active>span,.srf-whmcs .pagination>.active>span:focus,.srf-whmcs .pagination>.active>span:hover,.srf-whmcs a.list-group-item.active,.srf-whmcs a.list-group-item.active:hover,.srf-whmcs a.list-group-item.active:focus,.srf-whmcs .card-primary>.card-header,.srf-whmcs .card-sidebar a.list-group-item.active,.srf-whmcs .card-sidebar a.list-group-item.active:focus,.srf-whmcs .card-sidebar a.list-group-item.active:hover{
    background-color:#0098ef;
    border-color:#0098ef;
}
.srf-whmcs .btn[disabled]{
    border-color:#ccc!important;
}
.srf-whmcs .table-list>tbody>tr:nth-child(2n)>td{
    background-color:#fff;
}
.srf-whmcs .card-sidebar a.list-group-item.active i.fa,.srf-whmcs .card-sidebar a.list-group-item.active i.fas,.srf-whmcs .card-sidebar a.list-group-item.active i.far,.srf-whmcs .card-sidebar a.list-group-item.active i.fal,.srf-whmcs .card-sidebar a.list-group-item.active i.fab,.srf-whmcs .card-sidebar a.list-group-item.active:hover i.fa,.srf-whmcs .card-sidebar a.list-group-item.active:hover i.fas,.srf-whmcs .card-sidebar a.list-group-item.active:hover i.far,.srf-whmcs .card-sidebar a.list-group-item.active:hover i.fal,.srf-whmcs .card-sidebar a.list-group-item.active:hover i.fab{
    color:#fff!important;
}
.srf-whmcs .card-sidebar a.list-group-item.active i.fa-dot-circle,.srf-whmcs .card-sidebar a.list-group-item.active:hover i.fa-dot-circle{
    color:#4a5669!important;
}
body:not(.footer-gray):not(.footer-dark):not(.footer-color) .srf-whmcs{
    border-bottom:2px solid #e6e9ee;
}
.srf-whmcs .card-sidebar span.pull-right+.panel-minimise{ /* Panel minimise might need rework */
    margin-right:.5em;
}
.srf-whmcs.modal-open .modal{
    overflow-x:hidden;
    overflow-y:auto;
}
.srf-whmcs .tiles{
    margin:0 0 30px 0;
}
.srf-whmcs .tiles .tile,.srf-whmcs .tiles .tile:hover{
    cursor:auto;
    padding:0 15px;
    box-sizing:border-box; /* B5 default */
    border:0;
    background-color:transparent;
}
.srf-whmcs .tiles .tile a{
    overflow:hidden;
    display:block;
    border:1px solid #ddd;
    border-radius:6px;
}
.srf-whmcs .tiles .tile a:hover{
    background-color:#f8f8f8;
    transition:background-color .2s;
}
.srf-whmcs .tiles .tile .icon{
    top:auto;
    right:32px;
    bottom:12px;
    font-size:16px;
    color:#a0abbc;
}
.srf-whmcs .tiles .tile .stat{
    padding:14px 20px;
    margin-top:0;
    color:#4a5669!important;
}
.srf-whmcs .tiles .tile .title{
    color:#a0abbc;
    padding:8px 20px;
    text-transform:none;
    background-color:#f8f8f8;
    font:normal 14px/24px "Open Sans",sans-serif;
}
.srf-whmcs .tiles .tile a:hover .title{
    background-color:#fff;
    transition:background-color .2s;
}
.srf-whmcs .tiles .tile .highlight{
    display:none;
}
.srf-whmcs .client-home-panels{
    margin-top:15px;
}
/* .panel is replaced by .card in B5 */
.srf-whmcs .client-home-panels .card{ /* Renamed from .panel */
    margin-bottom:30px;
    border:1px solid #ddd;
}
.srf-whmcs .client-home-panels .card.card-accent-red{ /* Renamed from .panel.panel-accent-red */
    border:2px solid #d9534f;
}
.srf-whmcs .client-home-panels .card>.card-header{ /* Renamed from .panel>.panel-heading */
    color:#4a5669;
    padding:14px 20px;
    background-color:#f8f8f8;
}
.srf-whmcs .client-home-panels .card>.card-header h3{ /* Renamed from .panel>.panel-heading h3 */
    font:normal 16px/26px "Open Sans",sans-serif;
}
.srf-whmcs .client-home-panels .card.card-accent-red>.card-header h3{ /* Renamed from .panel.panel-accent-red>.panel-heading h3 */
    color:#d9534f;
}
.srf-whmcs .client-home-panels .card>.card-header .pull-right{ /* Renamed from .panel>.panel-heading .pull-right */
    margin-top:-2px;
}
.srf-whmcs .client-home-panels .card>.card-body p{ /* Renamed from .panel>.panel-body p */
    padding:20px;
    margin-bottom:20px;
}
.srf-whmcs .client-home-panels .card>.card-body p:last-of-type{ /* Renamed from .panel>.panel-body p:last-of-type */
    margin-bottom:0;
}
.srf-whmcs .client-home-panels .card>.card-body .margin-10{ /* Renamed from .panel>.panel-body .margin-10 */
    margin:20px;
}
.srf-whmcs .client-home-panels .card>.list-group{ /* Renamed from .panel>.list-group */
    border:0;
}
.srf-whmcs .client-home-panels .card>.card-footer{ /* Renamed from .panel>.panel-footer */
    padding:10px 20px;
}
.srf-whmcs .client-home-panels .card>.card-footer,.srf-whmcs .client-home-panels .card>.list-group .list-group-item:hover{ /* Renamed from .panel>.panel-footer */
    background-color:#f8f8f8;
}
.srf-whmcs #order-standard_cart .view-cart-items-header{
    color:#4a5669;
    padding:14px 20px;
    background-color:#f8f8f8;
    border:1px solid #ddd;
    border-bottom-width:0;
}
.srf-whmcs #order-standard_cart .view-cart-items{
    background-color:#fff;
    border:1px solid #ddd;
    border-top-width:0;
    border-bottom-left-radius:4px;
    border-bottom-right-radius:4px;
}
.srf-whmcs #order-standard_cart .view-cart-items .item,.srf-whmcs #order-standard_cart .view-cart-items .item:nth-child(2n){
    padding:20px;
    background-color:transparent;
}
.srf-whmcs #order-standard_cart .view-cart-items .item:not(:last-child){
    border-bottom:1px dashed #ddd;
}
.srf-whmcs #order-standard_cart .view-cart-tabs .tab-content{
    border:1px solid #ddd;
    border-top-width:0;
}
.srf-whmcs #order-standard_cart .empty-cart .btn{
    color:#0098ef;
    background-color:#fff;
    border:1px solid #ddd;
    border-top-width:0;
}
.srf-whmcs #order-standard_cart .order-summary{
    overflow:hidden;
    background-color:#fff;
    border:1px solid #ddd;
}
.srf-whmcs #order-standard_cart .order-summary h2{
    color:#4a5669;
    padding:10px 20px;
    background-color:#f8f8f8;
    font:normal 20px/30px "Open Sans",sans-serif;
}
.srf-whmcs #order-standard_cart .order-summary .loader{
    color:#aaa;
    top:12px;
    padding-right:12px;
}
.srf-whmcs #order-standard_cart .summary-container{
    padding:20px;
    background-color:transparent;
}
.srf-whmcs #order-standard_cart .order-summary .btn-continue-shopping{
    padding:0;
    margin-top:20px;
    color:#0098ef;
}
.srf-whmcs #order-standard_cart .order-summary .summary-totals{
    border-color:#ddd;
}
.srf-whmcs #order-standard_cart .product-info{
    overflow:hidden;
    padding:0;
    background-color:#fff;
    border:1px solid #ddd;
    border-radius:3px;
}
.srf-whmcs #order-standard_cart .product-info p,.srf-whmcs #order-standard_cart .product-info .product-title{
    padding:0;
    margin:0;
}
.srf-whmcs #order-standard_cart .product-info p{
    font-size:14px;
    line-height:24px;
}
.srf-whmcs #order-standard_cart .product-info p small{
    color:#a0abbc;
    font-size:12px;
}
.srf-whmcs #order-standard_cart .product-info .product-title{
    font-size:20px;
    line-height:30px;
    padding:10px 20px;
    background-color:#f8f8f8;
}
.srf-whmcs #order-standard_cart .product-info .product-title+p:not(:empty){
    padding:20px;
}
.srf-whmcs #order-standard_cart .products{
    margin-bottom:-30px;
}
.srf-whmcs #order-standard_cart .products .product,.srf-whmcs #order-standard_cart .products .product header,.srf-whmcs #order-standard_cart .products .product footer,.srf-whmcs #order-standard_cart .products .product div.product-desc,.srf-whmcs #order-standard_cart .products .product div.product-desc p,.srf-whmcs #order-standard_cart .products .product div.product-desc ul{
    padding:0;
    margin:0;
}
.srf-whmcs #order-standard_cart .products .product{
    margin-bottom:30px;
}
.srf-whmcs #order-standard_cart .products .product header{
    position:relative;
    padding:10px 20px;
}
.srf-whmcs #order-standard_cart .products .product header span{
    color:#4a5669;
}
.srf-whmcs #order-standard_cart .products .product header .qty{
    position:absolute;
    float:none;
    right:20px;
    bottom:12px;
    color:#a0abbc;
    font-style:normal;
}
.srf-whmcs #order-standard_cart .products .product header span:first-child:not(:only-of-type){
    display:inline-block;
    max-width:70%;
}
.srf-whmcs #order-standard_cart .products .product footer{
    margin:20px 0;
}
.srf-whmcs #order-standard_cart .products .product div.product-desc{
    padding:20px;
}
.srf-whmcs #order-standard_cart .products .product div.product-desc p,.srf-whmcs #order-standard_cart .products .product div.product-desc ul{
    font-size:14px;
    line-height:24px;
}
.srf-whmcs #order-standard_cart .products .product div.product-desc ul{
    list-style-type:none;
}
.srf-whmcs #order-standard_cart .products .product div.product-desc p small{
    color:#a0abbc;
    font-size:12px;
}
.srf-whmcs #order-standard_cart .products .product div.product-desc p+ul li:first-child{
    margin-top:20px;
}
.srf-whmcs section#main-body,.srf-whmcs #order-standard_cart{
    padding:0;
    margin:0;
}
.srf-whmcs section#main-body{
    padding:40px 0;
}
.srf-whmcs section#home-banner{
    padding:120px 0;
    background-color:#2c3645;
}
.srf-whmcs section#home-banner h2{
    line-height:1.5;
    max-width:640px;
    margin:0 auto 20px auto;
}
.srf-whmcs section#home-banner p{
    max-width:640px;
    margin:30px auto 30px auto;
    color:#667791;
}
.srf-whmcs section#home-banner .input-group{
    overflow:hidden;
    border-radius:6px;
}
/* Navbar classes need significant HTML review with B5 */
.srf-whmcs .navbar-main{
    min-height:0; /* Bootstrap 5 navbars have default min-heights, may need adjustment */
    background-color:#00629a;
    font:normal 16px "Open Sans",sans-serif;
}
.srf-whmcs .navbar-main .navbar-nav>li>a{
    padding:20px;
    line-height:28px;
}
.srf-whmcs .navbar-main li.account{
    background-color:transparent;
}
.srf-whmcs .navbar-main .navbar-nav>li>a:hover,.srf-whmcs .navbar-main .navbar-nav>li>a:focus,.srf-whmcs .navbar-main .navbar-nav>.active>a,.srf-whmcs .navbar-main .navbar-nav>.active>a:hover,.srf-whmcs .navbar-main .navbar-nav>.active>a:focus,.srf-whmcs .navbar-main .navbar-nav>.open>a,.srf-whmcs .navbar-main .navbar-nav>.open>a:hover,.srf-whmcs .navbar-main .navbar-nav>.open>a:focus{
    background-color:rgba(0,0,0,0.2);
}
.srf-whmcs .navbar-main .navbar-nav .dropdown-menu{
    padding:10px 0;
}
.srf-whmcs .navbar-main .navbar-nav .dropdown-menu.dropdown-menu-languages{
    padding:10px;
    columns:3; /* Removed -webkit-columns */
}
.srf-whmcs .navbar-main .navbar-toggler{ /* Renamed from .navbar-toggle */
    width:100%;
    color:#fff;
    margin:0 auto;
    text-align:center;
}
.srf-whmcs .admin-banner{
    text-align:center;
    background-color:#fc3;
}
.srf-whmcs .admin-banner p{
    margin:0!important;
    padding:10px 20px;
}
.srf-whmcs .admin-banner p a{
    color:#4a5669!important;
}
.srf-whmcs .home-shortcuts{
    padding:0 0 20px 0;
    background-color:#f0f2f5;
}
.srf-whmcs .home-shortcuts ul{
    margin:0 -10px;
}
.srf-whmcs .home-shortcuts li,.srf-whmcs .home-shortcuts li:first-child{
    width:25%;
    border:0;
    padding:20px 10px 0 10px;
    box-sizing:border-box; /* B5 default */
}
.srf-whmcs .home-shortcuts li a{
    padding:10px 0;
    color:#4a5669;
    background-color:#fff;
    border:2px solid #e6e9ee;
    border-radius:8px;
}
.srf-whmcs .home-shortcuts li a:hover{
    color:#a0abbc;
}
.srf-whmcs .home-shortcuts li i{
    font-size:24px;
}
.srf-whmcs .home-shortcuts li p{
    text-transform:none;
}
.srf-whmcs .home-news-single h3{
    margin-bottom:30px;
}
.srf-whmcs .home-news-single h3 span{
    display:block;
    color:#a0abbc;
    font-size:16px;
    margin-top:8px;
}
.srf-whmcs .home-news-single p.more{
    margin:20px 0;
}
.srf-whmcs .domain-checker-bg,.srf-whmcs .domain-checker-container{
    background-image:none;
}
.srf-whmcs .domain-checker-container{
    margin-bottom:10px;
    background-color:#f9f9f9;
    border:1px solid #ddd;
}
.srf-whmcs .domain-pricing{
    padding:0 15px;
    overflow:hidden;
    margin-top:30px;
    margin-bottom:10px;
    background-color:#f9f9f9;
    border:1px solid #ddd;
    border-radius:4px;
}
.srf-whmcs .domain-pricing .tld-row{
    background-color:#fff;
}
.srf-whmcs .card-header .collapse-icon i.fa-plus,.srf-whmcs .card-header .collapse-icon i.fa-minus{ /* Renamed from .panel-heading */
    line-height:1;
    margin-top:-6px;
    vertical-align:middle;
}
.srf-whmcs .ticket-reply{
    overflow:hidden;
    margin:20px 0 0 0;
    border-color:#ddd;
    border-radius:4px;
}
.srf-whmcs .ticket-reply .user{
    background-color:#f8f8f8;
}
.srf-whmcs .ticket-reply.staff{
    border-color:#bce8f1;
}
.srf-whmcs .ticket-reply.staff .user,.srf-whmcs .ticket-reply.staff .date{
    color:#31708f;
    background-color:#d9edf7;
}
.srf-whmcs .ticket-reply .message ul,.srf-whmcs .ticket-reply .message ol{
    padding-left:20px;
}
.srf-whmcs .dataTables_wrapper .dataTable,.srf-whmcs .dataTables_wrapper .dataTables_info,.srf-whmcs .dataTables_wrapper .dataTables_length{
    border:1px solid #ddd;
    border-radius:6px;
}
.srf-whmcs .dataTables_wrapper .dataTables_info{
    color:#333;
    margin-bottom:15px;
    background-color:#f5f5f5;
}
.srf-whmcs .dataTables_wrapper .dataTables_filter label{
    padding:15px;
}
.srf-whmcs .dataTables_wrapper .dataTables_filter label .form-control{
    border-radius:4px;
}
.srf-whmcs .dataTables_wrapper .dataTables_length{
    margin-top:15px;
    background-color:#f5f5f5;
}
.srf-whmcs .dataTables_wrapper .dataTables_length label{
    padding:10px;
    margin-bottom:0;
}
.srf-whmcs .dataTables_wrapper .dataTables_paginate{
    padding:16px 10px;
}
.srf-whmcs .dataTables_wrapper table.table-list thead th,.srf-whmcs .dataTables_wrapper table.table-list thead th.sorting_asc,.srf-whmcs .dataTables_wrapper table.table-list thead th.sorting_desc{
    background-color:transparent;
}
.srf-whmcs .dataTables_wrapper table.table-list thead th:not(.sorting_asc):not(.sorting_desc){
    color:#a0abbc;
}
.srf-whmcs div.announcement-single+.announcement-single:not(.home-news-single){
    padding-top:10px;
}
.srf-whmcs .kb-article-content{
    font-size:16px;
    line-height:28px;
}

/* Responsive Media Queries - Kept mostly as is, but consider aligning with B5 breakpoints */
@media(max-width:1024px){
    .srf-whmcs section#main-body{
        padding:20px 0;
    }
    .srf-whmcs section#home-banner{
        padding:60px 0;
    }
}
@media(max-width:990px){
    .srf-whmcs #nav .container{
        padding:0;
    }
    .srf-whmcs .navbar-default .navbar-collapse{
        border-color:rgba(255,255,255,0.2);
    }
    .srf-whmcs .navbar-main .navbar-nav>li>a{
        padding:10px 30px;
    }
    .srf-whmcs .admin-banner p{
        padding-top:8px;
        padding-bottom:8px;
    }
}
@media(max-width:767px){
    .srf-whmcs .container>.navbar-header,.srf-whmcs .container-fluid>.navbar-header,.srf-whmcs .container>.navbar-collapse,.srf-whmcs .container-fluid>.navbar-collapse{
        margin:0;
    }
    .srf-whmcs .nav .nav-divider{
        background-color:rgba(255,255,255,0.2);
    }
    .srf-whmcs .navbar-main .navbar-nav .open .dropdown-menu>li>a{
        padding-left:30px;
        color:rgba(255,255,255,0.6);
    }
    .srf-whmcs .navbar-main .navbar-nav .dropdown-menu.dropdown-menu-languages{
        padding:10px 30px;
    }
    .srf-whmcs .navbar-main .navbar-nav .dropdown-menu.dropdown-menu-languages>li>a{
        padding-left:0;
    }
    .srf-whmcs .tiles .tile:nth-child(1),.srf-whmcs .tiles .tile:nth-child(2){
        margin-bottom:30px;
        border-bottom-width:0;
    }
    .srf-whmcs .home-shortcuts li,.srf-whmcs .home-shortcuts li:first-child{
        width:100%;
    }
    .srf-whmcs .home-news-single h3 span{
        font-size:14px;
    }
}

#footer{
    padding:30px 0;
    color:#a0abbc;
}
.footer-gray{
    background-color:#f0f2f5;
}
.footer-dark{
    background-color:#2c3645;
}
.footer-color{
    background-color:#0098ef;
}
.footer-dark #footer{
    color:#667791;
}
.footer-color #footer{
    color:rgba(255,255,255,0.6);
}
#footer .footer-primary{
    padding:30px 0;
}
#footer .footer-primary h5{
    padding-bottom:6px;
    font-size:14px;
    font-weight:bold;
    text-transform:uppercase;
}
.footer-dark #footer a:not(.button),.footer-dark #footer .footer-primary ul li a:hover,.footer-color #footer a:not(.button),.footer-color #footer .footer-primary ul li a:hover{
    color:#fff;
}
#footer .footer-primary p:not(:first-child){
    margin-top:14px;
}
#footer .footer-primary ul{
    margin-top:10px;
    list-style-type:none;
}
#footer .footer-primary ul li a{
    display:inline-block;
    padding:4px 10px;
    margin-left:-10px;
    line-height:28px;
    font-size:15px;
    border-radius:4px;
}
#footer .footer-primary ul li a:hover{
    color:#a0abbc;
    text-decoration:none;
    background-color:#f0f2f5;
}
.footer-gray #footer .footer-primary ul li a:hover{
    background-color:#e6e9ee;
}
.footer-dark #footer .footer-primary ul li a:hover{
    background-color:#3c4655;
}
.footer-color #footer .footer-primary ul li a:hover{
    background-color:rgba(255,255,255,0.2);
}
#footer .footer-primary ul li ul{
    margin-top:0;
    padding:5px 0 5px 20px;
}
#footer .footer-primary ul.list-style-icon li{
    padding-left:0;
}
#footer .footer-primary ul.list-style-icon li a{
    position:relative;
    padding-left:34px;
}
#footer .footer-primary ul.list-style-icon li .fa,#footer .footer-primary ul.list-style-icon li .fas,#footer .footer-primary ul.list-style-icon li .far,#footer .footer-primary ul.list-style-icon li .fal,#footer .footer-primary ul.list-style-icon li .fab,#footer .footer-primary ul.list-style-icon li .svg-inline--fa,#footer .footer-primary ul.list-style-icon li .material-icons{
    left:8px;
}
#footer .footer-primary ul.list-style-icon li .svg-inline--fa{
    top:10px;
}
#footer .footer-secondary:not(:first-child){
    padding-top:30px;
    margin-top:30px;
    border-top:2px solid #e6e9ee;
}
.footer-dark #footer .footer-secondary:not(:first-child){
    border-color:#3a4659;
}
.footer-color #footer .footer-secondary:not(:first-child){
    border-color:rgba(255,255,255,0.2);
}
#footer .footer-secondary p{
    font-size:14px;
    text-align:center;
}

@media(max-width:1340px){
    .container,.container.container-full-width{
        width:auto;
        margin:0 30px;
        flex-basis:100%;
    }
}
@media(max-width:1024px){
    #header .logo,#nav-overlay .logo{
        max-width:100%;
        margin-right:60px;
    }
    #header:not(.header-nav-overlay) .logo .logo-text.logo-text-baseline{
        padding-top:0;
    }
    #header nav{
        display:none;
    }
    #nav-overlay:not(.nav-overlay-visible),#nav-overlay-open:not(.nav-overlay-visible),#nav-overlay-close:not(.nav-overlay-visible),#nav-overlay-background:not(.nav-overlay-visible){
        display:block;
    }
    .column-row{
        margin:-0.75rem; /* Equivalent to -15px */
    }
    .column-row:not(:first-child){
        margin-top:0.75rem; /* Equivalent to 15px */
    }
    .column-row>.column-20,.column-row>.column-25,.column-row>.column-30,.column-row>.column-33,.column-row>.column-40,.column-row>.column-50,.column-row>.column-60,.column-row>.column-66,.column-row>.column-70,.column-row>.column-75,.column-row>.column-80,.column-row>.column-flex{
        padding:0.75rem; /* Equivalent to 15px */
    }
    #footer,#footer .footer-primary{
        padding:0.75rem 0; /* Equivalent to 15px */
    }
    #footer .footer-secondary:not(:first-child){
        padding-top:0.75rem; /* Equivalent to 15px */
        margin-top:0.75rem; /* Equivalent to 15px */
    }
}
@media(max-width:960px){
    .column-row{
        display:block!important; /* Forced block display for mobile columns */
    }
    .column-row>.column-20,.column-row>.column-25,.column-row>.column-30,.column-row>.column-33,.column-row>.column-40,.column-row>.column-50,.column-row>.column-60,.column-row>.column-66,.column-row>.column-70,.column-row>.column-75,.column-row>.column-80,.column-row>.column-flex{
        width:auto; /* Auto width for stacked columns */
    }
}
@media(max-width:768px),(max-height:640px){
    body{
        padding-top:80px;
    }
    #header,#nav-overlay{
        padding:10px 0;
    }
    #nav-overlay nav{
        margin:0 -30px;
    }
    #nav-overlay nav .nav-primary{
        margin-top:10px;
        border-left:0;
        border-right:0;
        border-radius:0;
    }
    #header .logo .logo-text,#nav-overlay .logo .logo-text{
        font-size:28px;
    }
}
@media(max-width:480px){
    #header .logo .logo-text small,#nav-overlay .logo .logo-text small{
        display:none;
    }
}

/* SRF-WHMCS Specific Overrides */
.srf-whmcs .column-row>.column-20,.srf-whmcs .column-row>.column-25,.srf-whmcs .column-row>.column-30,.srf-whmcs .column-row>.column-33,.srf-whmcs .column-row>.column-40,.srf-whmcs .column-row>.column-50,.srf-whmcs .column-row>.column-60,.srf-whmcs .column-row>.column-66,.srf-whmcs .column-row>.column-70,.srf-whmcs .column-row>.column-75,.srf-whmcs .column-row>.column-80,.srf-whmcs .column-row>.column-flex{
    box-sizing:border-box!important;
}
.srf-whmcs header#header,.srf-whmcs footer#footer,.srf-whmcs header#header *,.srf-whmcs footer#footer *,.srf-whmcs #nav-overlay *{
    box-sizing:content-box; /* This might conflict with B5's default border-box. Re-evaluate if this is truly needed. */
}
.srf-whmcs footer#footer h5{
    margin:0;
    line-height:26px;
}
.srf-whmcs footer#footer p,.srf-whmcs footer#footer ul,.srf-whmcs header#header nav .nav-primary,.srf-whmcs header#header nav .nav-secondary,.srf-whmcs #nav-overlay nav .nav-primary,.srf-whmcs #nav-overlay nav .nav-secondary{
    margin-bottom:0;
}
.srf-whmcs header#header nav .nav-secondary{
    line-height:1;
}
.srf-whmcs header#header button:hover,.srf-whmcs footer#footer button:hover,.srf-whmcs #nav-overlay button:hover,.srf-whmcs header#header .button:hover,.srf-whmcs footer#footer .button:hover,.srf-whmcs #nav-overlay .button:hover{
    text-decoration:none;
}
.srf-whmcs header#header .container,.srf-whmcs footer#footer .container,.srf-whmcs #nav-overlay .container{
    position:relative;
    width:1280px;
    margin:0 auto;
    padding:0!important;
}
.srf-whmcs header#header .container.container-full-width,.srf-whmcs footer#footer .container.container-full-width,.srf-whmcs #nav-overlay .container.container-full-width{
    width:auto;
    margin:0 60px;
    flex-basis:100%;
}
.srf-whmcs header#header .container::after,.srf-whmcs footer#footer .container::after,.srf-whmcs #nav-overlay .container::after{
    content:"";
    display:table;
    clear:both;
}
@media(max-width:1340px){
    .srf-whmcs header#header .container,.srf-whmcs footer#footer .container,.srf-whmcs #nav-overlay .container,.srf-whmcs header#header .container.container-full-width,.srf-whmcs footer#footer .container.container-full-width,.srf-whmcs #nav-overlay .container.container-full-width{
        width:auto;
        margin:0 30px;
        flex-basis:100%;
    }
}