﻿html {
    background-image: linear-gradient(to right, #141e30, #243b55);
    height: 100%;
    overflow-y: scroll;
    scroll-behavior: smooth;
    overflow-x: hidden;
}

body {
    font-family: 'Segoe UI', Roboto, sans-serif;
    font-size: 14px;
    color: #333;
    line-height: 1.6;
    background-color: #f8f9fa; /* light modern background */
    margin: 0;
    padding: 0;
}

.header1 {
    background-color: white;
    text-align: left;
    width: 100%;
}

.wrapperheader1 {
    position: fixed;
    top: 0;
    left: 0; /* Add this */
    width: 100%; /* Add or confirm this */
    background-color: #1f1f1f; /* Adjust color if needed */
    z-index: 1000;
}


html,
body,
form {
    margin: 0;
    padding: 0;
    height: 100%;
    margin: 0;
    padding: 0;
    scroll-behavior: smooth;
}


.container {
    min-height: 100%;
    position: relative;
}


.val {
    color: #ff2323;
    font-size: 18px;
    font-weight: bold;
}

.val2 {
    color: #ff2323;
    font-size: 18px;
    font-weight: bold;
    display: block;
}


.allContent {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    background-color: white;
    margin: 0 auto; /* Center the layout */
    text-align: center;
}

.labelcontrolrow {
    margin-bottom: 10px;
}

.labelcontrolrow2 {
    margin-bottom: 10px;
    margin-top: 10px;
}

.watermark {
    background-image: url(../Images/ogefremwatermark.jpg);
    background-attachment: scroll;
    background-repeat: no-repeat;
    background-position-x: center;
    background-position-y: 30px;
    background-origin: border-box;
}

.label {
    max-width: 250px;
    width: 100%;
    vertical-align: top !important;
    display: inline-block !important;
    font-size: 12px !important;
    color: #1D327A !important;
    line-height: 30px !important;
}

.label2 {
    vertical-align: top !important;
    display: inline-block !important;
    font-size: 12px !important;
    color: #1D327A !important;
    line-height: 30px !important;
}

.formlabel {
    display: inline-flex;
    margin-right: 0;
    font-size: 12px;
}

.formcontrol {
    display: block;
}

.requiredfield {
    color: #ff0000;
    vertical-align: middle;
    line-height: 15px;
    font-size: 18px !important;
    display: inline;
}

.invalid {
    font-size: 20px;
    color: #ff0000;
    vertical-align: middle;
    line-height: 15px;
    font-size: 16px !important;
}

.valid {
    font-size: 20px;
    color: #6cb11d;
    vertical-align: middle;
    line-height: 15px;
    font-size: 16px !important;
}


.disabledtextbox {
    background-color: #dcdcdc !important;
}

.radiobutton {
}

.spacer {
    height: 10px;
}


.labelcontrolrow {
    margin-bottom: 10px;
}

.controlrequiredfield {
    vertical-align: top;
}

.admincontent .controlrequiredfield {
    display: inline-block !important;
}

.delegatefieldbox {
    display: inline-block;
    margin-right: 10px;
    margin-bottom: 5px;
}

.delegatefieldlabel {
    font-size: 10px;
    line-height: 10px;
    margin-bottom: 3px;
    margin-top: 10px;
}

.delegateheader {
    font-size: 16px;
    margin-bottom: 10px;
    font-size: 14px !important;
}

.delegateitem {
    padding: 10px;
    border-radius: 10px;
    background-color: #f3f3f3;
}

.header {
    height: 96px;
    opacity: 1;
    vertical-align: middle;
    text-align: center;
    min-height: 100%;
    position: relative;
}

.logo {
    background-image: url('../Images/PIPC2020.png');
    width: 95px;
    height: 96px;
    display: inline-block;
}

.headerlogo {
    background-image: url('../Images/logo_transcom.png');
    width: 60px;
    height: 61px;
    display: inline-block;
    margin-top: 10px;
}

.africertheaderlogo {
    background-image: url('../Images/logo_africert.png');
    width: 60px;
    height: 61px;
    display: inline-block;
    margin-top: 10px;
}

.ogefremheaderlogo {
    background-image: url('../Images/ogefrem100.png');
    background-repeat: no-repeat;
    width: 100px;
    height: 105px;
    display: inline-block;
    margin-top: 10px;
}

.footer {
    font-size: 12px;
    background: rgba(38, 38, 38, 1) 0% 0% no-repeat padding-box;
    color: #909090;
    opacity: 1;
    text-align: center;
    vertical-align: top;
    margin-top: auto;
}

.mainpageview {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.menu {
    z-index: 3000 !important;
    text-transform: uppercase;
    border-bottom: solid 1px #b9b9b9;
    text-align: left;
}

.footertable {
    margin-left: 152px;
    padding-top: 38px;
}

.maintenancenotification {
    background-color: #1D327A;
    width: 100%;
    padding: 5px 5px 5px 5px;
    top: 0;
    z-index: 9999999;
}

.footerlink {
    font-size: 11px;
    color: white;
    margin-bottom: 4px;
    padding-right: 10px;
    border-right: solid 1px #a8a8a8;
    display: inline-block;
    padding-left: 10px;
}

.footerlinklast {
    font-size: 13px;
    color: white;
    margin-bottom: 4px;
    padding-left: 10px;
    display: inline-block;
}



.subscribetextboxcontainer {
    margin-top: 10px;
    width: 232px;
    border: 2px solid #FFFFFF;
    border-radius: 6px;
    height: 32px;
    padding-top: 2px;
}

.footersmalltext {
    font-size: 11px;
    letter-spacing: 0;
    color: white;
    opacity: 1;
    padding: 5px;
    padding-left: 0px;
    margin-top: 4px;
}

.footerpayfastlogo {
    padding-left: 20px;
    padding-right: 20px;
    vertical-align: middle;
}

.emailbutton {
    width: 16px;
    opacity: 1;
    vertical-align: top;
}

.socialbutton {
    margin-right: 30px;
}

.rr1 {
    max-height: 385px;
    background-image: url('../Banner/1.jpg');
    background-size: contain;
    background-repeat: no-repeat;
}

.main {
    padding: 0px;
    margin: 0px;
    text-align: left;
    letter-spacing: 0;
    color: #171846;
    opacity: 1;
}

.tickerouter {
    background-color: #0D87A8;
    padding: 10px;
    text-align: center;
    margin-bottom: 20px;
}

.ticker {
    text-align: left;
    font-size: 24px;
    letter-spacing: 0.48px;
    color: #FFFFFF;
    opacity: 1;
    text-align: center;
}

h1 {
    text-align: left;
    font-size: 44px;
    font-weight: normal;
    letter-spacing: 0;
    color: #1D327A;
    opacity: 1;
    margin: 0;
    padding: 0;
    margin-top: 30px;
    margin-bottom: 30px;
    line-height: 54px;
    text-transform: uppercase;
}

h2 {
    text-align: left;
    font-size: 28px;
    font-weight: normal;
    letter-spacing: 2.56px;
    color: #304585;
    text-transform: uppercase;
    opacity: 1;
    margin-top: 20px;
    margin-bottom: 20px;
    line-height: 32px;
}

h3 {
    text-align: left;
    font-size: 24px;
    font-weight: normal;
    letter-spacing: 2.4px;
    color: rgba(255, 65, 65, 1);
    text-transform: uppercase;
    opacity: 1;
    margin-top: 10px;
    margin-bottom: 15px;
    line-height: 36px;
}

h4 {
    text-align: left;
    font-size: 18px;
    font-weight: normal;
    letter-spacing: 2.4px;
    color: #707CA9;
    text-transform: uppercase;
    opacity: 1;
    margin-top: 30px;
    margin-bottom: 20px;
    line-height: 36px;
    border-bottom: solid 1px #8A8E93;
}

.banner {
    opacity: 1;
    vertical-align: middle;
    text-align: center;
}


bigtext {
    text-align: left;
    font-size: 36px;
    letter-spacing: 2.4px;
    color: #262C7C;
    text-transform: uppercase;
    opacity: 1;
}

.divider {
    border-top: #707CA9 dashed 3px;
    padding: 0;
    margin: 0;
    margin-top: 30px;
    margin-bottom: 20px;
}

.divider2 {
    border-top: #313131 dashed 1px;
    padding: 0;
    margin: 0;
    margin-top: 5px;
    margin-bottom: 10px;
}



.bigbutton {
    margin-top: 40px;
    margin-bottom: 40px;
    padding-left: 18px;
    padding-right: 18px;
    padding-top: 10px;
    padding-bottom: 10px;
    background: #FFFFFF 0% 0% no-repeat padding-box;
    box-shadow: 0px 1px 1px #000000;
    border: 4px solid #FF3D3D;
    opacity: 1;
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.51px;
    color: #FF3D3D;
    text-transform: uppercase;
    vertical-align: middle;
    cursor: pointer;
    display: inline-block;
    z-index: 100;
}

    .bigbutton:hover {
        background: #FFFFFF 0% 0% no-repeat padding-box;
        box-shadow: 0px 1px 1px #000000;
        border: 4px solid #222F7B;
        color: #222F7B;
    }

    .bigbutton:active {
        background: #222F7B;
        box-shadow: 0px 1px 1px #000000;
        color: #FFFFFF;
        border: 4px solid #222F7B;
    }




.bigbuttondisabled {
    margin-top: 40px;
    margin-bottom: 40px;
    padding-left: 18px;
    padding-right: 18px;
    background: #FFFFFF 0% 0% no-repeat padding-box;
    box-shadow: 0px 1px 1px #000000;
    border: 4px solid #8A8E93;
    opacity: 1;
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.51px;
    color: #8A8E93;
    text-transform: uppercase;
    vertical-align: middle;
    cursor: pointer;
    display: inline-block;
}

    .bigbuttondisabled:hover {
        background: #FFFFFF 0% 0% no-repeat padding-box;
        box-shadow: 0px 1px 1px #000000;
        border: 4px solid #8A8E93;
        color: #8A8E93;
    }

.googlemap {
    height: 445px;
    opacity: 1;
}

.pipc2018video {
    max-width: 600px;
    max-height: 336px;
}

.sponsorlogo {
    display: inline;
}

.sponsorlogos {
    margin-top: 30px;
    text-align: center;
}

.rob {
}

.content {
    text-align: left;
    font-size: 1em;
    letter-spacing: 0;
    opacity: 1;
    line-height: 1.6em;
    padding: 10px;
    margin: 0px;
    text-align: left;
}

.contentlarge {
    text-align: left;
    letter-spacing: 2.2px;
    color: #262C7C;
    opacity: 1;
    line-height: 29px;
    text-align: left !important;
}

.biglabel {
    color: #2DA1BF;
    line-height: 48px;
    font-size: 28px;
    letter-spacing: 0;
    opacity: 1;
    text-align: left;
    width: 150px;
    display: inline-block;
}

a {
    text-decoration: underline;
    color: #207de9;
    letter-spacing: 0;
    opacity: 1;
}

    a:hover {
        color: rgba(255, 65, 65, 1);
    }


.contentbox {
    width: 242px;
    height: 480px;
    background: rgba(255, 255, 255, 1) 0% 0% no-repeat padding-box;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.16);
    border-radius: 0px 0px 6px 6px;
    opacity: 1;
    font-size: 14px;
    display: inline-block;
    margin-left: 5px;
    margin-right: 5px;
    margin-bottom: 30px;
    letter-spacing: 1.4px;
}

    .contentbox h2 {
        text-align: center;
        font-size: 20px;
        font-weight: normal;
        letter-spacing: 2.4px;
        color: #262C7C;
        text-transform: uppercase;
        opacity: 1;
        margin-top: 10px;
        margin-bottom: 5px;
        padding-bottom: 0;
    }

    .contentbox .content {
        margin-left: 32px !important;
        margin-right: 32px !important;
        margin-top: 0;
        line-height: 24px;
    }

.articlelist a {
    text-decoration: none;
}

.contentbox a {
    text-decoration: none;
}

.contentbox:hover {
    transform: scale(1.07);
}


.articlecontentbox {
    border-radius: 4px 4px 4px 4px;
    font-size: 14px;
    padding: 20px;
}

    .articlecontentbox h2 {
        text-align: center;
        font-size: 24px;
        font-weight: normal;
        letter-spacing: 2.4px;
        color: #262C7C;
        text-transform: uppercase;
        opacity: 1;
        margin-top: 10px;
        margin-bottom: 5px;
        padding-bottom: 0;
    }

    .articlecontentbox:hover {
        background: #d8d8d8;
        cursor: pointer;
    }


.readmorebutton {
    font-size: 11px;
    letter-spacing: 1.1px;
    color: rgba(34, 47, 123, 1);
    text-transform: uppercase;
    opacity: 1;
    padding: 10px;
    vertical-align: top;
    margin-top: 10px;
    text-align: center;
}

.readmoreicon {
    background-image: url(../Images/readmore.png);
    width: 18px;
    height: 18px;
    margin-right: 10px;
}

.readmorebutton:hover {
    color: rgba(8, 101, 222, 1);
    cursor: pointer;
}

.readmorebutton:active {
    color: rgba(34, 47, 123, 1);
}

.readmorebutton:target {
    color: rgba(34, 47, 123, 1);
}

.contentboxcontainer {
    margin-bottom: 0;
    text-align: center
}

.feeboxcontainer {
    text-align: center !important;
    vertical-align: top !important;
}

.feebox1 {
    width: 288px;
    height: 500px;
    background: rgba(255, 255, 255, 1) 0% 0% no-repeat padding-box;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.16);
    border-radius: 8px;
    opacity: 1;
    text-align: center;
    display: inline-block;
    margin-right: 3px;
    margin-left: 3px;
    margin-bottom: 20px;
    border-bottom: solid 30px rgba(27, 45, 111, 1);
}

.feebox2 {
    width: 288px;
    height: 500px;
    background: rgba(255, 255, 255, 1) 0% 0% no-repeat padding-box;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.16);
    border-radius: 8px;
    opacity: 1;
    text-align: center;
    display: inline-block;
    margin-right: 3px;
    margin-left: 3px;
    margin-bottom: 20px;
    border-bottom: solid 30px #334386;
}

.feebox3 {
    width: 288px;
    height: 624px;
    background: rgba(255, 255, 255, 1) 0% 0% no-repeat padding-box;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.16);
    border-radius: 8px;
    opacity: 1;
    text-align: center;
    display: inline-block;
    margin-right: 3px;
    margin-left: 3px;
    margin-bottom: 20px;
    border-bottom: solid 30px #5C689E;
}


.feeboxheader1 {
    background: rgba(27, 45, 111, 1) 0% 0% no-repeat padding-box;
    border-radius: 8px 8px 0px 0px;
    opacity: 1;
    font-size: 28px;
    color: rgba(255, 255, 255, 1);
    padding-bottom: 28px;
    padding-top: 28px;
    line-height: 32px;
}

.feeboxheader2 {
    background-color: #334386;
    border-radius: 8px 8px 0px 0px;
    opacity: 1;
    font-size: 28px;
    color: rgba(255, 255, 255, 1);
    padding-bottom: 28px;
    padding-top: 28px;
    line-height: 32px;
}

.feeboxheader3 {
    background-color: #5C689E;
    border-radius: 8px 8px 0px 0px;
    opacity: 1;
    font-size: 28px;
    color: rgba(255, 255, 255, 1);
    padding-bottom: 28px;
    padding-top: 28px;
    line-height: 32px;
}



.feeboxcontent {
    padding: 10px;
}

.feeboxdate {
    color: rgba(255, 100, 100, 1);
    font-size: 18px;
}

.feeboxsubheading1 {
    text-align: center;
    font-size: 14px;
    letter-spacing: 1.4px;
    color: rgba(24, 52, 121, 1);
    text-transform: uppercase;
    margin-top: 5px;
    margin-bottom: 5px;
}

.feeboxsubheading2 {
    text-align: center;
    font-size: 14px;
    letter-spacing: 1.4px;
    color: #304585;
    text-transform: uppercase;
    margin-top: 5px;
    margin-bottom: 5px;
}

.feeboxsubheading3 {
    text-align: center;
    font-size: 14px;
    letter-spacing: 1.4px;
    color: #5A699D;
    text-transform: uppercase;
    margin-top: 5px;
    margin-bottom: 5px;
}

.feeboxtext1 {
    text-align: center;
    font-size: 14px;
    letter-spacing: 0.39px;
    color: rgba(24, 52, 121, 1);
}

.feeboxtext2 {
    text-align: center;
    font-size: 14px;
    letter-spacing: 0.39px;
    color: #304585;
}

.feeboxtext3 {
    text-align: center;
    font-size: 14px;
    letter-spacing: 0.39px;
    color: #5A699D;
}

.feeboxalternatetext {
    text-align: center;
    font-size: 14px;
    letter-spacing: 0.39px;
    color: #717BAA;
}

.feeboxdivider {
    border: 1px solid #E4E4E4;
    opacity: 1;
    margin-bottom: 20px;
}

.feeboxregisterbutton1 {
    background-color: #1D327A;
    box-shadow: 0px 1px 1px #000000;
    border-radius: 4px;
    opacity: 1;
    font-size: 12px;
    color: white;
    width: 137px;
    padding: 5px !important;
    display: inline-block;
    margin-top: 10px;
    margin-bottom: 20px;
    vertical-align: middle;
    cursor: pointer;
    letter-spacing: 1.2px;
    border: 4px solid #1D327A;
}

.applybutton {
    background-color: #1D327A;
    box-shadow: 0px 1px 1px #000000;
    border-radius: 4px;
    opacity: 1;
    font-size: 12px;
    color: white;
    width: 60px;
    padding: 5px !important;
    display: inline-block;
    vertical-align: middle;
    cursor: pointer;
    letter-spacing: 1.2px;
    border: 4px solid #1D327A;
}


.feebox1 a, .feebox2 a, .feebox3 a {
    line-height: 15px !important;
    text-align: center;
    font-size: 12px !important;
}

.feeboxregisterbutton2 {
    background-color: #707CA9;
    box-shadow: 0px 1px 1px #000000;
    border-radius: 4px;
    opacity: 1;
    font-size: 12px;
    color: white;
    width: 137px;
    padding: 5px;
    display: inline-block;
    margin-top: 10px;
    margin-bottom: 20px;
    vertical-align: middle;
    cursor: pointer;
    letter-spacing: 1.2px;
    border: 4px solid #707CA9;
}

.feeboxregisterbutton3 {
    background-color: #5A699D;
    box-shadow: 0px 1px 1px #000000;
    border-radius: 4px;
    opacity: 1;
    font-size: 12px;
    color: white;
    width: 137px;
    padding: 5px;
    display: inline-block;
    margin-top: 10px;
    margin-bottom: 20px;
    vertical-align: middle;
    cursor: pointer;
    letter-spacing: 1.2px;
    border: 4px solid #5A699D;
}

.feeboxalternateregisterbutton {
    background-color: #707CA9;
    box-shadow: 0px 1px 1px #000000;
    border-radius: 4px;
    opacity: 1;
    font-size: 12px;
    color: white;
    width: 137px;
    padding: 5px;
    display: inline-block;
    margin-top: 10px;
    margin-bottom: 20px;
    vertical-align: middle;
    cursor: pointer;
    letter-spacing: 1.2px;
    border: 4px solid #707CA9;
}

.feeboxregisterbutton1:hover {
    border: 4px solid #304585;
    border-radius: 4px;
    background-color: white;
    color: #304585;
}

.feeboxregisterbutton2:hover {
    border: 4px solid #707CA9;
    border-radius: 4px;
    background-color: white;
    color: #707CA9;
}

.feeboxregisterbutton3:hover {
    border: 4px solid #5A699D;
    border-radius: 4px;
    background-color: white;
    color: #707CA9;
}

.feeboxalternateregisterbutton:hover {
    border: 4px solid #707CA9;
    border-radius: 4px;
    background-color: white;
    color: #707CA9;
}

.footerlogo {
    vertical-align: top;
    text-align: right;
    margin-left: 20px;
}

.footerlinks1 {
    display: inline-block;
    vertical-align: top;
    border-right: solid 1px white;
    margin-bottom: 20px;
    width: 100px;
    margin-right: 10px;
    height: 81px;
    margin-top: 10px;
}

.footerlinks2 {
    display: inline-block;
    vertical-align: top;
    margin-bottom: 20px;
    width: 130px;
    margin-right: 10px;
    height: 81px;
    margin-top: 10px;
}

.subscribe {
    display: inline-block;
    vertical-align: top;
}

.social {
    display: inline-block;
    vertical-align: top;
    margin-top: 20px;
}

.footer a {
    font-size: 13px;
    color: #ecedef;
    opacity: 1;
    margin: 0 !important;
    padding: 0 !important;
    text-transform: uppercase;
    line-height: 19px;
    letter-spacing: 0.3px !important;
    text-decoration: none;
}

    .footer a:hover {
        color: #4569f7;
    }

.delegatebox {
    background: rgba(255, 255, 255, 1) 0% 0% no-repeat padding-box;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.16);
    border-radius: 3px;
    opacity: 1;
    text-align: left;
    margin-bottom: 20px;
    border-bottom: none;
}

.delegateboxheader {
    background: #8A8E93;
    border-radius: 2px 2px 0px 0px;
    opacity: 1;
    font-size: 12px;
    color: rgba(255, 255, 255, 1);
    padding-bottom: 5px;
    padding-top: 5px;
    line-height: 16px;
    padding-left: 5px;
}


.delegateboxcontent {
    padding: 10px;
    padding-bottom: 10px;
}

.popupheading {
    text-align: left;
    font-size: 22px;
    letter-spacing: 0;
    color: #1D327A;
    opacity: 1;
    margin-bottom: 20px;
}

.popupsubheading {
    text-align: left;
    font-size: 17px;
    letter-spacing: 0;
    color: #FF7575;
    opacity: 1;
    margin-bottom: 10px;
}

.popupcopy {
    text-align: left;
    font-size: 14px;
    letter-spacing: 1.4px;
    color: #262626;
    opacity: 1;
    line-height: 24px;
    margin-bottom: 20px;
}

.popupouter {
    background-color: white !important;
}

.popupinner {
    margin: 30px;
    margin-top: 10px;
}

.RadMenuPopup .rmLink {
    width: 180px !important;
    text-transform: uppercase;
}

.visadiv {
    display: none;
}

.copyright {
    text-align: left;
    padding-top: 10px;
    color: white;
    text-transform: uppercase;
    letter-spacing: 1.6px;
    font-size: 9px;
    letter-spacing: 2.03px;
    font-size: 9px;
    padding-left: 10px;
    text-align: center;
}

.copyright2 {
    text-align: center;
    color: white;
    text-transform: uppercase;
    font-size: 9px;
    letter-spacing: 2.03px;
    font-size: 9px;
    display: inline-block;
    margin-top: 42px;
}

.subscribetextbox {
    background-color: transparent !important;
    border: none !important;
}

.bluebutton {
    margin-top: 20px;
    margin-bottom: 0;
    padding: 18px;
    background: #FFFFFF 0% 0% no-repeat padding-box;
    box-shadow: 0px 1px 1px #000000;
    border: 4px solid #222F7B;
    opacity: 1;
    text-align: center;
    font-size: 16px;
    letter-spacing: 0.51px;
    color: #222F7B;
    text-transform: uppercase;
    vertical-align: middle;
    cursor: pointer;
    display: inline-block;
    line-height: 19px;
    margin-right: 20px;
}

    .bluebutton:hover {
        background: #222F7B 0% 0% no-repeat padding-box;
        box-shadow: 0px 1px 1px #000000;
        border: 4px solid #222F7B;
        color: white;
    }

.bluebuttonselected {
    background: #222F7B 0% 0% no-repeat padding-box;
    box-shadow: 0px 1px 1px #000000;
    border: 4px solid #222F7B;
    color: white;
    margin-top: 20px;
    margin-bottom: 0;
    padding: 18px;
    opacity: 1;
    text-align: center;
    font-size: 16px;
    letter-spacing: 0.51px;
    text-transform: uppercase;
    vertical-align: middle;
    cursor: pointer;
    display: inline-block;
    line-height: 19px;
    margin-right: 20px;
}

    .bluebuttonselected:hover {
        background: #FFFFFF 0% 0% no-repeat padding-box;
        box-shadow: 0px 1px 1px #000000;
        border: 4px solid #222F7B;
        color: #222F7B;
    }


.programmekey {
    letter-spacing: 1.6px;
    color: #262C7C;
    line-height: 36px;
    margin-bottom: 20px;
    margin-top: 30px;
}


.plenaryline {
    border-top: solid 3px #62D9FA;
    opacity: 1;
    height: 5px;
    width: 20px;
    display: inline-block;
}

.expertloungeline {
    border-top: solid 3px #222F7B;
    opacity: 1;
    height: 5px;
    width: 20px;
    display: inline-block;
}

.talkshowloungeline {
    border-top: solid 3px #FCC62B;
    opacity: 1;
    height: 5px;
    width: 20px;
    display: inline-block;
}

.speedloungeline {
    border-top: solid 3px #FF4141;
    opacity: 1;
    height: 5px;
    width: 20px;
    display: inline-block;
}

.deepdiveloungeline {
    border-top: solid 3px #0D87A8;
    opacity: 1;
    height: 5px;
    width: 20px;
    display: inline-block;
}


.keylabel {
    display: inline;
    margin-right: 20px;
    margin-left: 10px;
}

.programmeline {
    border-bottom: 1px solid #DDDBDB;
    opacity: 1;
    padding-bottom: 15px;
    padding-top: 15px;
    color: #262C7C;
    font-size: 14px;
    letter-spacing: 1.4px;
}

.clockimage {
    margin-right: 20px;
    padding-bottom: 3px;
    vertical-align: middle;
}

.programmelabel {
    font-weight: bold;
    margin-left: 20px;
    margin-right: 20px;
    display: inline;
}

.timeslot {
    width: 120px;
    display: inline-block;
}

.footerlogo {
    display: inline-block;
    margin-left: 20px;
}

.footerlogolast {
    display: inline-block;
    margin-bottom: 20px;
}

.adminheading {
    background-color: #304585;
    padding: 5px;
    padding-left: 20px;
    text-align: left;
    font-size: 20px;
    font-weight: normal;
    letter-spacing: 2.56px;
    color: white;
    text-transform: uppercase;
    opacity: 1;
    margin-bottom: 0;
    line-height: 40px;
}

.headingimage {
    margin-top: 5px;
    margin-right: 10px;
}

.admincontent {
    padding: 40px;
    font-size: 14px !important;
    text-align: left;
}

    .admincontent a {
        text-decoration: none;
        color: #1D327A;
        letter-spacing: 0;
        opacity: 1;
        text-align: left;
    }

        .admincontent a:hover {
            color: rgba(255, 65, 65, 1);
        }

.backbutton {
    float: right;
    padding-top: 5px;
}

.userphotobox {
    padding-top: 22px;
}

.userphoto {
    padding-top: 10px;
}

.smallphoto {
    z-index: 1;
    margin: auto;
    background: white;
    border: 1px solid white;
    -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.50);
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.50);
    -webkit-border-radius: 10px;
    border-radius: 10px;
    margin-bottom: 0px;
}

.userphotobox a {
    font-size: 14px !important;
    line-height: 15px;
}

.multipage {
    border: solid 1px #dedede;
    border-top: none;
    padding: 40px;
}

.multipage2 {
    border: solid 1px #dedede;
    border-top: none;
    padding: 40px;
    padding-top: 10px;
}

.copyright a {
    font-size: 10px;
}

.pageview {
    border: solid 1px #dedede;
    border-top: none;
    margin-bottom: 30px;
}

.lookupbutton {
    margin-left: 10px;
    vertical-align: middle;
}


.banner1 {
    background: url(../banner/1.jpg) no-repeat center center #000;
    height: 400px;
    background-size: contain;
}

.banner1inner {
    background: no-repeat padding-box;
    background-color: rgba(34,47,123, 0.8);
    border-radius: 10px;
    position: relative;
    top: 74px;
    left: 121px;
    width: 630px;
    height: 135px;
    -webkit-animation: 3s ease 0s normal forwards 1 fadein;
    animation: 3s ease 0s normal forwards 1 fadein;
    z-index: 100;
}

.banner1badgetext {
    background: no-repeat padding-box;
    position: relative;
    top: -60px;
    left: 138px;
    width: 600px;
    height: 135px;
    -webkit-animation: 3s ease 0s normal forwards 1 fadein2;
    animation: 3s ease 0s normal forwards 1 fadein2;
    z-index: 111112;
}

.banner2inner {
    background-color: blue;
    position: relative;
    top: 50px;
    left: calc(100% - 320px);
    width: 300px;
    height: 200px;
    -webkit-animation: 6s ease 0s normal forwards 1 fadein;
    animation: 6s ease 0s normal forwards 1 fadein;
    z-index: 111111;
}

.bannerheading {
    text-align: center;
    font-size: 24px;
    letter-spacing: 3px;
    color: #FFFFFF;
    opacity: 1 !important;
    margin-top: 20px;
}

.bannersubheading {
    text-align: center;
    font-size: 22px;
    letter-spacing: 4.4px;
    color: #FFFFFF;
    text-transform: uppercase;
}

.bannertext {
    margin-top: 10px;
    text-align: center;
    font: 13px;
    letter-spacing: 2.6px;
    color: #FFFFFF;
    text-transform: uppercase;
}

.formsection {
    margin-bottom: 40px;
}

.adminformsection {
    margin-bottom: 40px;
    background-color: #E4E4E4;
    padding: 20px;
    padding-top: 10px;
}

.repeaterdelete {
    padding-right: 5px;
    margin-right: 10px;
    border-right: solid 1px #dcdcdc;
}

.rcbEmptyMessage {
    color: #909090 !important;
}

.sidebar {
    margin-bottom: 40px;
    background-color: #dee7ff;
    padding: 20px;
    padding-top: 10px;
    padding-bottom: 10px;
    color: black;
    float: right;
    font-size: 12px;
    line-height: 20px;
    height: 100%;
    border-radius: 5px;
}

.statusimage {
    margin-right: 10px;
}

.logininfo {
    margin-bottom: 20px;
}

.myupload {
    text-align: left !important;
    padding-top: 6px;
}

.dropdownaddbutton {
    vertical-align: middle;
    margin-left: 3px;
    margin-right: 3px;
    height: 20px;
}

.adminsubheading {
    padding: 10px;
    padding-left: 20px;
    background-color: #68686b;
    font-size: 16px;
    text-align: left;
    color: white;
}

.templatesubheading {
    padding: 10px;
    padding-left: 20px;
    background-color: #6c9d1b;
    font-size: 16px;
    text-align: left;
    color: white;
}

.roadbutton {
    border-bottom: solid 4px #f6ca4f !important;
}

.railbutton {
    border-bottom: solid 4px #34cf58 !important;
}

.airbutton {
    border-bottom: solid 4px #3470cf !important;
}

.maritimebutton {
    border-bottom: solid 4px #9a33e1 !important;
}

.regionalbutton {
}

.continuancebutton {
}

.disastermodebutton {
    border-bottom: solid 4px #FFFFDAB9 !important;
}

.wabbutton {
    border-bottom: solid 4px #FF20B2AA !important;
}

.roadcolumn {
    background-color: #f6ca4f !important;
}

.railcolumn {
    background-color: #34cf58 !important;
}

.aircolumn {
    background-color: #3470cf !important;
}

.maritimecolumn {
    background-color: #9a33e1 !important;
}

.rauInvoiceDiv .ruButton {
    width: 120px !important;
}

.rauInvoiceDiv .RadUpload {
    width: 130px !important;
}

.rauCertificateDiv .ruButton {
    width: 140px !important;
}

.RadGrid_Bootstrap .rgFooter td {
    padding-right: 7px !important;
}

.pulseblackgreenbutton {
    -webkit-animation: pulse 600ms infinite alternate;
    animation: pulseblackgreen 600ms infinite alternate;
}

@-webkit-keyframes pulseblackgreen {
    0% {
        color: black;
    }

    100% {
        color: limegreen;
    }
}

@keyframes pulseblackgreen {
    0% {
        color: black;
    }

    100% {
        color: limegreen;
    }
}


.pulsenonegreenbutton {
    -webkit-animation: pulsenonegreen 700ms infinite alternate;
    animation: pulsenonegreen 700ms infinite alternate;
}

@-webkit-keyframes pulsenonegreen {
    0% {
        color: #f5f5f5;
    }

    100% {
        color: #ff3030;
    }
}

@keyframes pulsenonegreen {
    0% {
        color: #f5f5f5;
    }

    100% {
        color: #ff3030;
    }
}

.documentcontainer {
    background-color: white;
    margin-top: 20px;
    text-align: left;
}

.dropzone {
    margin: 40px;
    margin-top: 20px;
    border-width: 3px;
    border-style: dotted;
    border-color: #262C7C;
    padding: 30px;
    color: #3b3b3b;
    background-color: #f2f2f2;
    font-size: 14px;
    text-align: center;
}

    .dropzone .RadUpload .ruInputs {
        text-align: center !important;
    }

.documentupload .RadUpload {
    width: inherit !important;
    margin-left: 330px !important;
}

.marginbottom {
    margin-bottom: 5px;
}

.indicator {
    background-color: #304585;
    border-radius: 20px;
    padding: 15px;
    padding-bottom: 10px;
    margin-right: 10px;
    margin-top: 20px;
    font-size: 9px;
    color: white;
    display: inline-block;
    text-align: left;
}

.indicatorlabel {
    color: white;
}


.chartbox {
    margin-right: 10px;
    margin-bottom: 20px;
    margin-top: 20px;
    font-size: 9px;
    color: white;
    display: inline-block;
    text-align: left;
}


.bannerlogo {
    background-image: url(../Images/OGEFREM200glow.png);
    z-index: 9999999;
    position: relative;
    top: 0px;
    left: 700px;
    width: 220px;
    height: 230px;
    opacity: 1 !important;
    background-color: white;
    border-radius: 20px;
    background-position: center;
    background-repeat: no-repeat;
}

.subagentlogo {
    border: solid 1px #8A8E93;
    margin-right: 30px;
    border-radius: 10px;
}

.subagentdetails {
    font-size: 14px;
    line-height: 18px;
}

.byline1 {
    font-size: 28px;
    margin-top: 20px;
    margin-bottom: 20px;
    color: #4261ac;
}

.subagentheader {
    background-color: #efefef;
    text-align: center;
    margin-top: 5px;
    margin-bottom: 10px;
    padding: 10px;
}

.clientselect {
    font-size: 30px;
}

    .clientselect input {
        width: 30px;
        height: 30px;
    }

.important {
    color: rgba(255, 65, 65, 1);
    font-weight: bold;
    font-size: 15px;
}

.clientnotapproved {
    background-color: rgba(255, 65, 65, 1);
    padding: 10px;
    color: white;
}

.applicationstatus {
    background-color: white;
    border-radius: 5px;
    padding: 7px;
    font-size: 14px;
    margin: 3px;
}

.smalltext {
    font-size: 10px;
    margin-bottom: 5px;
}

.Chart100 {
    width: 100% !important;
}

.adminfooter {
    font-size: 12px;
    background: rgba(38, 38, 38, 1) 0% 0% no-repeat padding-box;
    color: white;
    opacity: 1;
    text-align: left;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-right: 20px;
}

.menupulsegreen {
    -webkit-animation: pulse 600ms infinite alternate;
    animation: pulseblackred 600ms infinite alternate;
}


.pulsered {
    -webkit-animation: pulse 600ms infinite alternate;
    animation: pulseblackred 600ms infinite alternate;
    margin: 10px;
}

@-webkit-keyframes pulseblackred {
    0% {
        color: black;
    }

    100% {
        color: red;
    }
}

@keyframes pulseblackred {
    0% {
        color: black;
    }

    100% {
        color: red;
    }
}

.pulsetabred {
    -webkit-animation: pulse 600ms infinite alternate;
    animation: pulseblackredtab 600ms infinite alternate;
}

@-webkit-keyframes pulseblackredtab {
    0% {
        background-color: none;
    }

    100% {
        color: red;
    }
}

@keyframes pulseblackredtab {
    0% {
        background-color: none;
    }

    100% {
        background-color: red;
    }
}

.pulsegreen {
    -webkit-animation: pulse 600ms infinite alternate;
    animation: pulseblackred 600ms infinite alternate;
    margin: 10px;
}

@-webkit-keyframes pulseblackgreen {
    0% {
        background-color: black;
    }

    100% {
        background-color: green;
    }
}

@keyframes pulseblackgreen {
    0% {
        background-color: black;
    }

    100% {
        background-color: green;
    }
}

@-webkit-keyframes pulsenonegreen {
    0% {
        background-color: #f5f5f5;
    }

    100% {
        background-color: #2ecc71;
    }
}

@keyframes pulsenonegreen {
    0% {
        background-color: #f5f5f5;
    }

    100% {
        background-color: #2ecc71;
    }
}

.invalidemail {
    color: rgba(255, 65, 65, 1) !important;
}

.padtop {
    padding-top: 8px;
}

.operatorcircle {
    margin-right: 5px;
    display: inline-block;
    background-color: #b73d6e;
    border-radius: 15px;
    width: 30px;
    color: white;
    height: 30px;
    text-align: center;
    vertical-align: middle;
    font-weight: bold;
    font-size: 14px;
    line-height: 30px;
}

.validatorcircle {
    margin-right: 5px;
    display: inline-block;
    background-color: #6f3db7;
    border-radius: 15px;
    width: 30px;
    color: white;
    height: 30px;
    text-align: center;
    vertical-align: middle;
    font-weight: bold;
    font-size: 14px;
    line-height: 30px;
}

.committercircle {
    display: inline-block;
    background-color: #3da8b7;
    border-radius: 15px;
    width: 30px;
    color: white;
    height: 30px;
    text-align: center;
    vertical-align: middle;
    font-weight: bold;
    font-size: 14px;
    line-height: 30px;
}

.newsthumbnail {
    z-index: 1;
    margin: auto;
    background: white;
    border: 1px solid white;
    -webkit-box-shadow: 0 1px 4px rgba(30, 28, 28, 0.50);
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.50);
    -webkit-border-radius: 10px;
    border-radius: 10px;
    margin-bottom: 0px;
    background-image: url(../Images/image.png);
    background-repeat: no-repeat;
    background-position: center;
    min-width: 200px;
    min-height: 150px;
    padding: 10px;
    display: inline-block;
}

.logothumbnail {
    z-index: 1;
    margin: auto;
    background: white;
    border: 1px solid white;
    -webkit-box-shadow: 0 1px 4px rgba(30, 28, 28, 0.50);
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.50);
    -webkit-border-radius: 10px;
    border-radius: 10px;
    margin-bottom: 0px;
    background-image: url(../Images/image.png);
    background-repeat: no-repeat;
    background-position: center;
    min-width: 200px;
    min-height: 150px;
    padding: 10px;
}

.thumbnail {
    z-index: 1;
    margin: auto;
    background: white;
    border: 1px solid white;
    -webkit-box-shadow: 0 1px 4px rgba(30, 28, 28, 0.50);
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.50);
    -webkit-border-radius: 10px;
    border-radius: 10px;
    margin-bottom: 0px;
    background-repeat: no-repeat;
    background-position: center;
    padding: 10px;
}

.newshero {
    z-index: 1;
    margin: auto;
    background: white;
    border: 1px solid white;
    -webkit-box-shadow: 0 1px 4px rgba(30, 28, 28, 0.50);
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.50);
    -webkit-border-radius: 10px;
    border-radius: 10px;
    margin-bottom: 0px;
    background-image: url(../Images/image.png);
    background-repeat: no-repeat;
    background-position: center;
    min-width: 500px;
    min-height: 300px;
    padding: 10px;
}


.articlelist {
}

    .articlelist a {
        color: rgba(38, 38, 38, 1);
    }

        .articlelist a:hover {
            color: rgba(38, 38, 38, 1);
        }

.newslisttitle {
    font-size: 18px;
}



hr {
    border-bottom-color: #8A8E93;
    border-width: 1px;
}

.checkedfilter {
    background-color: #304585;
    color: white;
}

.hideme {
    cursor: pointer;
}

.applicationwarning {
    border-radius: 2px;
    margin: 3px;
    background-color: #e63131;
    color: white;
    padding: 5px;
    padding-left: 10px;
    font-size: 12px;
}

.moreinfo {
    font-size: 12px;
    color: #e1e809 !important;
    text-decoration: underline;
    cursor: pointer;
}

.warningtooltip {
    text-align: left !important;
}

.searchbar {
}

.rsbPopup_Bootstrap .rsbListItem {
    padding: 0 !important;
    margin: 0 !important;
    border-bottom: solid 1px #cdcdce;
    padding-left: 10px !important;
    padding-right: 10px !important;
    padding-top: 5px !important;
    padding-bottom: 10px !important;
}

.rsbShowAll {
    display: none !important;
}

.infoicon {
    display: inline-block;
    vertical-align: middle;
}

.infoicon2 {
    display: inline-block;
    vertical-align: super;
}

.notebox {
    padding: 20px;
    border: solid 1px #1e3baa;
    background-color: #cfd9ff;
}

.freighttoolbar .RadToolBar_Bootstrap .rtbOuter {
    padding: 0px !important;
    border: none !important;
    background-color: white !important;
}

.freighttoolbar .RadToolBar .rtbOuter {
    padding: 0px !important;
    border: none !important;
    background-color: white !important;
}

.cf:before, .cf:after {
    content: "";
    display: table;
}

.cf:after {
    clear: both;
}

.cf {
    transform: scale(1);
    transform-origin: 0 0;
}

/*-------------------------------------*/

.form-wrapper {
    width: 550px;
    padding: 15px;
    margin: 50px auto 50px auto;
    background: #444;
    background: rgba(0,0,0,.2);
    -webkit-border-radius: 10px;
    border-radius: 10px;
    -webkit-box-shadow: 0 1px 1px rgba(0,0,0,.4) inset, 0 1px 0 rgba(255,255,255,.2);
    box-shadow: 0 1px 1px rgba(0,0,0,.4) inset, 0 1px 0 rgba(255,255,255,.2);
}

    .form-wrapper input {
        width: 410px;
        height: 20px;
        padding: 10px 5px;
        float: left;
        font-weight: bolder;
        border: 0;
        background: #eee;
        -webkit-border-radius: 3px 0 0 3px;
        border-radius: 3px 0 0 3px;
    }

        .form-wrapper input:focus {
            outline: 0;
            background: #fff;
            -webkit-box-shadow: 0 0 2px rgba(0,0,0,.8) inset;
            box-shadow: 0 0 2px rgba(0,0,0,.8) inset;
        }

        .form-wrapper input::-webkit-input-placeholder {
            color: #999;
            font-weight: normal;
            font-style: italic;
        }

        .form-wrapper input:-moz-placeholder {
            color: #999;
            font-weight: normal;
            font-style: italic;
        }

        .form-wrapper input:-ms-input-placeholder {
            color: #999;
            font-weight: normal;
            font-style: italic;
        }

    .form-wrapper button {
        overflow: visible;
        position: relative;
        float: right;
        border: 0;
        padding: 0;
        cursor: pointer;
        height: 40px;
        width: 130px;
        font-weight: bolder;
        color: #fff;
        text-transform: uppercase;
        background: #d83c3c;
        -webkit-border-radius: 0 3px 3px 0;
        border-radius: 0 3px 3px 0;
        text-shadow: 0 -1px 0 rgba(0, 0,0, .3);
    }

        .form-wrapper button:hover {
            background: #e54040;
        }

        .form-wrapper button:active,
        .form-wrapper button:focus {
            background: #c42f2f;
        }

        .form-wrapper button:before {
            content: '';
            position: absolute;
            border-width: 8px 8px 8px 0;
            border-style: solid solid solid none;
            border-color: transparent #d83c3c transparent;
            top: 12px;
            left: -6px;
        }

        .form-wrapper button:hover:before {
            border-right-color: #e54040;
        }

        .form-wrapper button:focus:before {
            border-right-color: #c42f2f;
        }

        .form-wrapper button::-moz-focus-inner {
            border: 0;
            padding: 0;
        }

.error-msg {
    margin: 50px auto 50px auto;
    padding: 10px;
    border-radius: 3px 3px 3px 3px;
    color: #D8000C;
    background-color: #FFBABA;
    text-align: center;
}

.approverejectpanel {
    margin: 0px auto 50px auto;
    padding: 10px;
    border-radius: 3px 3px 3px 3px;
    color: #D8000C;
    background-color: #FFBABA;
    text-align: center;
}

.testexternalapplicationbox {
    margin: 0px auto 10px auto;
    padding: 10px;
    border-radius: 3px 3px 3px 3px;
    color: black;
    background-color: #FF8040;
    text-align: center;
}

.duplicatewarning {
    padding: 10px;
    border-radius: 3px 3px 3px 3px;
    color: #ffffff;
    background-color: rgba(255, 65, 65, 1);
    text-align: center;
    margin-top: 20px;
    margin-bottom: 20px;
}


html,
body,
form {
    min-height: 100%; /*all except IE6*/
    margin: 0;
    padding: 0;
}

* html html,
* html body,
* html form {
    height: 100%; /*IE6 only*/
}

/*the following CSS rule takes care of expanding the RadAjaxLoadingPanel to occupy the
full width and height of the browser viewport*/

.MyModalPanel {
    position: absolute;
    z-index: 11000110;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    background-color: white;
}

.checkoutpage .RadListBox .rlbItem {
    padding: 0 !important;
    margin: 5px;
}

.apilabel {
    padding: 5px;
    border-radius: 3px 3px 3px 3px;
    color: rgb(0,0,0);
    background-color: #82e4c3;
    text-align: center;
}

.latestnews {
    float: right;
    display: inline;
}

.detailslabel {
    margin-top: 10px;
    display: block;
    font-size: 12px;
    max-width: 500px;
}

.rowfullwidth {
    width: 100%;
    float: left;
}

.rowhalfwidth {
    width: 50%;
    float: left;
}

.rowlabel {
    margin-bottom: 10px;
}

.rowfield {
    display: inline-block;
    vertical-align: top;
    word-wrap: hyphenate;
    font-weight: bold;
}


.searchcard {
    border-radius: 5px;
    box-shadow: 0 0 5px 1px #ddd;
    overflow: hidden;
}

    .searchcard a {
        text-decoration: none !important;
    }

.searchcardheader {
    background-color: white;
    padding: 8px;
    color: #000;
    font-size: 18px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    align-items: center;
    display: flex;
    font-weight: bold;
    border-bottom: solid 1px #d0d0d0;
    cursor: pointer;
}

    .searchcardheader:hover {
        background-color: #c2d4ff;
    }

.searchcardbody {
    background-color: #f9f9f9;
    border-color: gray;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    display: inline-block;
    width: 100%;
    padding: 10px;
}


.searchcardbodymatch {
    background-color: #feffe4;
    border-color: gray;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    display: inline-block;
    width: 100%;
    padding: 10px;
}

.searchcardfooter {
    display: inline-block;
    text-align: left;
    width: 100%;
    background-color: #CCCED2;
    border-top: solid 1px #bbaeae;
    padding: 3px;
    margin-right: 10px;
}

.clientcardheader {
    background-color: white;
    padding: 8px;
    color: #000;
    font-size: 18px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    align-items: center;
    display: flex;
    font-weight: bold;
    border-bottom: solid 1px #d0d0d0;
    cursor: pointer;
}

    .clientcardheader:hover {
        background-color: #c2d4ff;
    }

.clientcardbody {
    background-color: #f9f9f9;
    border-color: gray;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    display: inline-block;
    width: 100%;
}

.clientcardbodymatch {
    padding: 15px 15px 5px 15px;
    background-color: #abf7b1;
    border-color: gray;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    display: inline-block;
    width: 100%;
}

.clientcardfooter {
    display: inline-block;
    align-items: center;
    text-align: center;
    width: 100%;
}

.usercardheader {
    background-color: white;
    padding: 8px;
    color: #000;
    font-size: 18px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    align-items: center;
    display: flex;
    font-weight: bold;
    border-bottom: solid 1px #d0d0d0;
    cursor: pointer;
}

.usercardbody {
    padding: 15px 15px 5px 15px;
    background-color: white;
    border-color: gray;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    display: inline-block;
    width: 100%;
}

.usercardbodymatch {
    padding: 15px 15px 5px 15px;
    background-color: #abf7b1;
    border-color: gray;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    display: inline-block;
    width: 100%;
}

.usercardfooter {
    display: inline-block;
    align-items: center;
    text-align: center;
    width: 100%;
}

.clientaccountcardheader {
    background-color: white;
    padding: 8px;
    color: #000;
    font-size: 18px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    align-items: center;
    display: flex;
    font-weight: bold;
    border-bottom: solid 1px #d0d0d0;
    cursor: pointer;
}

.clientaccountcardbody {
    padding: 15px 15px 5px 15px;
    background-color: white;
    border-color: gray;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    display: inline-block;
    width: 100%;
}

.clientaccountcardbodymatch {
    padding: 15px 15px 5px 15px;
    background-color: #abf7b1;
    border-color: gray;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    display: inline-block;
    width: 100%;
}

.clientaccountcardfooter {
    display: inline-block;
    align-items: center;
    text-align: center;
    width: 100%;
}

.searchimage {
    vertical-align: middle;
    background-position: center;
    margin-top: 4px;
}

.searchgrid .RadGrid {
    padding: 5px !important;
    border: none !important;
}

.searchgrid .RadGrid_Bootstrap .rgRow > td, .searchgrid .RadGrid_Bootstrap .rgAltRow > td {
    border: none !important;
}

.searchdocumentlink {
    margin-left: 10px;
    margin-right: 10px;
}


.serverlistcontainer {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    grid-gap: 10px;
}

.serverblock {
    position: relative;
    text-align: center;
    float: left;
    margin-right: 50px;
}

.serverprocessstatus-indicator {
    width: 15px;
    height: 15px;
    border-radius: 50%;
    float: right;
    margin-left: 10px;
}

.green {
    background-color: green;
}

.red {
    background-color: red;
}


.serverblock-info {
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: rgba(255,255,255,0.8);
    padding: 10px;
}

.serverrow {
    display: flex;
    align-items: center;
    margin-bottom: 5px;
}

.serverlabel {
    font-weight: bold;
    margin-right: 10px;
}

.servervalue {
    font-size: 14px;
    color: #333;
}

.RadMenu {
}

.flagpanel {
    z-index: 9999999;
    position: relative;
    padding-top: 5px;
    display: block;
    text-align: center;
    padding-bottom: 5px;
    border-bottom: solid 1px #464646;
    background-color: #404040;
}

.warningbar {
    padding: 5px;
    margin-bottom: 10px;
    border-radius: 3px;
    background-color: rgba(255, 65, 65, 1);
    color: white;
}

    .warningbar a {
        color: #eedc14 !important;
    }

        .warningbar a:hover {
            color: #fee75b !important;
        }



.ActiveSwitch .RadButton_Bootstrap.k-switch-on .k-switch-container {
    color: #fff !important;
    background-color: #24a612 !important;
}

.OfflineSwitch .RadButton_Bootstrap.k-switch .k-switch-container {
    color: #fff !important;
    background-color: #e54040 !important;
}

.OnlineOfflineToolbar {
}

.articleheroimage {
    margin-top: 20px;
}

.agentlogo {
    display: inline-block;
    border-radius: 2px;
    box-shadow: 0 0 5px 1px #ddd;
    overflow: hidden;
    border: solid 1px #d0d0d0;
    background-color: white;
    padding: 3px;
}

.centered {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    text-align: center;
}

.parent {
    display: table;
    height: 100%;
    width: 100%;
    margin-bottom: 92px;
}

.child {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    width: 100%;
}

.panel {
    background: #fff;
    border: 1px solid #eaeaea;
    border-radius: 2px;
    padding: 20px;
    position: relative;
    animation-name: fadeInUp;
    -webkit-animation-name: fadeInUp;
    animation-duration: 1s;
    -webkit-animation-duration: 1s;
    animation-timing-function: ease;
    -webkit-animation-timing-function: ease;
    z-index: 500;
    color: #9d9d9d;
}

.panelfooter {
    background: #626262;
    border: 1px solid #eaeaea;
    border-top: none;
    border-bottom-left-radius: 2px;
    border-bottom-right-radius: 2px;
    padding: 20px;
    position: relative;
    color: #ebebeb;
    animation-name: fadeInUp;
    -webkit-animation-name: fadeInUp;
    animation-duration: 0.5s;
    -webkit-animation-duration: 0.5s;
    animation-timing-function: ease-in;
    -webkit-animation-timing-function: ease;
    z-index: 1;
}

    .panelfooter a:hover {
        color: #304585;
    }

.notloggedin {
    padding-top: 20px;
}

.loginlogo {
    max-width: 200px !important;
    width: 100% !important;
    height: auto !important;
}

@media (max-width: 600px) {
    .loginlogo {
        max-width: 75px !important;
    }
}

.RadTabStrip_Bootstrap {
    font-family: 'Roboto' !important;
}

.RadGrid_Bootstrap .rgMasterTable, .RadGrid_Bootstrap .rgDetailTable, .RadGrid_Bootstrap .rgGroupPanel table, .RadGrid_Bootstrap .rgCommandRow table, .RadGrid_Bootstrap .rgEditForm table, .RadGrid_Bootstrap .rgPager table {
    font: 14px/1.42857143 "Roboto" !important;
    font-weight: normal;
}

.RadGrid_Bootstrap .rgPagerCell {
    font-family: 'Roboto' !important;
}

.RadToolBar_Bootstrap {
    font-family: 'Roboto' !important;
}

.RadToolBarDropDown_Bootstrap {
    font-family: 'Roboto' !important;
}

.RadGrid_Bootstrap .rgMasterTable, .RadGrid_Bootstrap .rgDetailTable, .RadGrid_Bootstrap .rgGroupPanel table, .RadGrid_Bootstrap .rgCommandRow table, .RadGrid_Bootstrap .rgEditForm table, .RadGrid_Bootstrap .rgPager table {
    font-family: 'Roboto' !important;
}

.RadMenu_Bootstrap {
    font-family: 'Roboto' !important;
}

.RadButton_Bootstrap .rbDecorated {
    font-family: 'Roboto' !important;
}

.RadInput_Bootstrap .riTextBox, .RadInputMgr_Bootstrap {
    font-family: 'Roboto' !important;
}

.RadComboBox_Bootstrap {
    font-family: 'Roboto' !important;
}

.RadComboBoxDropDown_Bootstrap {
    font-family: 'Roboto' !important;
}

.RadNotification_Bootstrap {
    font-family: 'Roboto' !important;
}

.RadUpload_Bootstrap {
    font-family: 'Roboto' !important;
}

.RadButton {
    font-family: 'Roboto' !important;
}

.RadMenu_Bootstrap {
    font-family: 'Roboto' !important;
}

.responsiveimage1 {
    max-width: 500px !important;
    width: 100% !important;
    height: auto !important;
}

.responsiveimage2 {
    max-width: 700px !important;
    width: 100% !important;
    height: auto !important;
}

.responsiveimage3 {
    max-width: 456px !important;
    width: 100% !important;
    height: auto !important;
}

.RadLabel_Bootstrap {
    color: inherit !important;
}

.RadButton_Bootstrap {
    font-family: 'Roboto' !important;
}

.freighttoolbar .rtbUL {
    display: flex;
    flex-wrap: wrap;
}

.freighttoolbar .RadToolBar_Horizontal .rtbUL, .freighttoolbar .RadToolBar_Horizontal .rtbItem, .freighttoolbar .RadToolBar_Horizontal .rtbTemplate, .freighttoolbar .RadToolBar_Horizontal .rtbSeparator {
    display: flex !important;
}

    .freighttoolbar .RadToolBar_Horizontal .rtbItem:first-child {
        margin-left: 0 !important;
        margin-right: 5px !important;
        margin-bottom: 5px !important;
    }

.freighttoolbar .RadToolBar_Bootstrap_Horizontal .rtbItem + .rtbItem {
    margin-left: 0 !important;
    margin-right: 5px !important;
    margin-bottom: 5px !important;
}

.footeragentlogo {
    border-radius: 4px !important;
}

.footer .t-col {
    text-align: center !important;
}

.newslistthumbnail {
    z-index: 1;
    background: white;
    border: 1px solid white;
    -webkit-box-shadow: 0 1px 4px rgba(30, 28, 28, 0.20);
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.20);
    -webkit-border-radius: 4px;
    border-radius: 4px;
    padding: 10px;
    margin-right: 10px;
}

.k-breadcrumb .k-breadcrumb-container {
    font-family: inherit !important;
}

.dismissbutton {
    padding: 0 !important;
    font-size: 12px;
}

.freighttoolbar .RadToolBarDropDown_Bootstrap .rtbWrap, .RadToolBarDropDown_Bootstrap .rtbTemplate {
    padding: 0 !important;
}

.amendmentheading {
    border-radius: 2px;
    margin: 3px;
    background-color: #ff8484;
    color: black;
    padding: 5px;
    padding-left: 10px;
    font-size: 16px;
}

.amendmenttooltip {
    margin-left: 3px;
}

.insuranceheadericon {
    background-color: white;
    padding: 3px;
    margin-left: 10px;
    border-radius: 13px;
}

.balanceindicator {
    font-size: 18px;
    color: #1D327A;
}

.balanceage {
    display: block;
    font-size: 10px;
    margin-bottom: 3px;
}

.validamount {
    background-color: #4ab94a;
    color: white;
    border-radius: 5px;
    padding: 3px;
    display: block;
    text-align: right;
}

.invalidamount {
    background-color: rgba(255, 65, 65, 1);
    color: White;
    border-radius: 5px;
    padding: 3px;
    display: block;
    text-align: right;
}

.noamount {
    background-color: white;
    color: #000000;
    border-radius: 5px;
    padding: 3px;
    display: block;
    text-align: right;
}

.insurancecargopanel {
    display: inline;
}

.menuitemplate {
    white-space: normal !important;
    font-size: 10px;
    padding-top: 10px;
    border: solid 1px gray;
}

.menuitemtemplate a {
    text-decoration: none;
}

.menuitemtemplate:hover {
    background-color: #d0d0d0;
}

.menuitemtemplateimage {
    border-radius: 5px;
    margin-top: 5px;
}

.menuitemtemplateheading {
    font-size: 22px;
    margin-top: 4px;
    margin-bottom: 2px;
    color: #1D327A;
    text-decoration: none;
}

    .menuitemtemplateheading:hover {
        text-decoration: none;
        color: #1D327A;
    }

.menuitemtemplatetext {
    white-space: normal !important;
    font-size: 10px;
    color: rgba(38, 38, 38, 1);
    text-decoration: none;
    text-transform: uppercase;
}

    .menuitemtemplatetext:hover {
        text-decoration: none;
        color: rgba(38, 38, 38, 1) !important;
    }


.infobox {
    box-shadow: rgba(0,0,0,.05) 0 6px 24px 0,rgba(0,0,0,.08) 0 0 0 1px;
    padding: 16px;
    padding-top: 16px;
    padding-bottom: 16px;
    border-radius: 10px;
    margin-left: 20px;
    margin-right: 20px;
    margin-bottom: 20px;
    text-align: left;
    font-size: 13px;
    line-height: 16px;
    padding-top: 3px;
    padding-bottom: 3px;
    background-image: url(../Images/information32.png);
    background-position: top left;
    background-repeat: no-repeat;
    background-position-x: 10px;
    background-position-y: 12px;
    padding-left: 50px;
}

.infobox2 {
    box-shadow: rgba(0,0,0,.05) 0 6px 24px 0,rgba(0,0,0,.08) 0 0 0 1px;
    padding: 16px;
    padding-top: 16px;
    padding-bottom: 16px;
    border-radius: 10px;
    margin-bottom: 20px;
    text-align: left;
    font-size: 13px;
    line-height: 16px;
    padding-top: 3px;
    padding-bottom: 3px;
    background-image: url(../Images/information32.png);
    background-position: top left;
    background-repeat: no-repeat;
    background-position-x: 10px;
    background-position-y: 12px;
    padding-left: 50px;
    margin-left: 20px;
    margin-right: 20px;
}

.video-grid h2 {
    line-height: inherit;
    line-height: 22px;
    font-size: 17px;
}


.video-grid a {
    text-decoration: none;
    color: inherit;
}


.smallbanner {
    color: white; /* Set text color */
    text-align: center;
    display: inline-block;
    margin: auto;
    box-shadow: rgba(0,0,0,.05) 0 6px 24px 0,rgba(0,0,0,.08) 0 0 0 1px;
}

.headercontainer {
}

.headerlogocontainer {
    display: contents;
}

.logincontainer {
    display: inline;
    width: 200px;
}

.video-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 20px;
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
}

.video-item {
    transition: transform 0.3s ease;
    overflow: auto;
    min-width: 200px;
    cursor: pointer;
}

    .video-item img {
        width: 100%;
        height: auto;
        border-top-left-radius: 10px;
        border-top-right-radius: 10px;
    }

    .video-item h2 {
        font-size: 1.2rem;
        margin: 10px;
    }

    .video-item p {
        font-size: 0.9rem;
        margin: 10px;
        text-align: left !important;
    }

    .video-item:hover {
        transform: scale(1.10);
    }

/* Media query for screens just below 1200px, 3 items */
@media (max-width: 1199px) {
    .video-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

/* Media query for tablets, 2 items */
@media (max-width: 992px) {
    .video-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* Media query for mobile devices, 1 item */
@media (max-width: 768px) {
    .video-grid {
        grid-template-columns: 1fr;
    }
}

.RadWindowOverlay {
    background-color: rgb(128, 128, 0.5); /* Adjust the last value for opacity */
}


.processcontainer {
    display: flex;
    justify-content: space-between;
    width: 100%;
}

.processblock {
    display: flex;
    align-items: center;
    border: 1px solid #ccc;
    border-radius: 5px;
    padding: 10px;
    width: 24%; /* Adjust this value if needed */
    box-sizing: border-box;
    background-color: #63C5DA;
}

    .processblock img {
        width: 32px;
        height: 32px;
        margin-right: 10px;
    }

.processblockvalue {
    margin-left: auto;
}

.activitychart {
    display: inline-block;
    border: 1px solid #ccc;
    border-radius: 2px;
    padding: 10px;
    margin: 10px;
}

.oldvalue {
    background-color: rgba(255, 65, 65, 1);
    color: White;
    border-radius: 5px;
    padding: 3px;
}

.amendmenttoolbar {
    padding: 0 !important;
    margin-bottom: 10px !important;
    border: none !important;
    z-index: 100 !important;
}

    .amendmenttoolbar .RadToolBar_Bootstrap {
        padding: 0px !important;
        border-width: 0 !important;
        margin-bottom: 10px !important;
        z-index: 100 !important;
    }

.rotator {
    max-width: 650px;
    max-height: 72px;
}

.topbanner {
    width: 100%;
    max-width: 600px;
    max-height: 66px;
    overflow: hidden;
    position: relative;
    display: inline-flex;
    margin-top: 10px;
    margin-bottom: 10px;
}

@media (max-width: 1000px) {
    .topbanner {
        display: none;
    }
}

.topbanner img {
    width: 100%;
    height: auto;
    max-height: 66px;
    display: inline;
}

.stats-bar {
    display: flex;
    justify-content: space-around;
    background-color: #444;
    padding: 15px 0;
    background: #232526; /* fallback for old browsers */
    background: -webkit-linear-gradient(to right, #414345, #232526); /* Chrome 10-25, Safari 5.1-6 */
    background: linear-gradient(to right, #414345, #232526); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
}

.stat {
    text-align: center;
    flex: 1;
    color: white;
    margin-bottom: 0;
    -webkit-animation-name: fadeInUp;
    animation-duration: 0.5s;
    -webkit-animation-duration: 0.5s;
    animation-timing-function: ease;
    -webkit-animation-timing-function: ease;
}

    .stat .heading {
        margin: 0;
        font-size: 16px;
        font-weight: bold;
        color: #ccc;
    }

    .stat .number {
        font-size: 24px;
        font-weight: bold;
        margin: 0 0;
        margin-bottom: 0;
    }

    .stat .sub {
        font-size: 12px;
        color: #aaa;
    }

    .stat .sub1 {
        font-size: 10px;
        color: #aaa;
        line-height: 10px;
        margin-bottom: 10px;
    }

.filter-button {
    background-color: #555; /* Darker button */
    color: white;
    border: none;
    padding: 10px 20px;
    font-size: 16px;
    cursor: pointer;
    margin-right: 20px;
}

.filter-panel {
    display: none;
    position: absolute;
    top: 70px;
    right: 10px;
    width: 300px;
    background-color: #444; /* Dark background for the filter panel */
    border: 1px solid #555; /* Darker border */
    padding: 20px;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.7); /* Softer shadow */
    color: white;
    border-radius: 10px;
    z-index: 5000;
}

    .filter-panel.active {
        display: block;
    }

    .filter-panel h3 {
        margin-top: 0;
        color: #ddd; /* Lighter heading text */
    }

    .filter-panel label {
        color: #ccc; /* Lighter label text */
    }

    .filter-panel input, .filter-panel select {
        width: 100%;
        padding: 8px;
        margin-top: 5px;
        margin-bottom: 15px;
        background-color: #555; /* Darker input background */
        color: white;
        border: 1px solid #666; /* Darker border for inputs */
        border-radius: 4px;
    }

    .filter-panel .button {
        background-color: #666; /* Darker button */
        color: white;
        padding: 10px;
        border: none;
        cursor: pointer;
        width: 100%;
        border-radius: 4px;
    }

        .filter-panel .button:hover {
            background-color: #777; /* Slightly lighter on hover */
        }

    .filter-panel label {
        color: #ccc; /* Lighter label text */
        font-size: 10px;
    }

.filter-container {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.label-container {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    color: #ccc;
    font-size: 12px;
    margin-right: 20px;
    margin-top: 10px;
}



.top-nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: #282828;
    padding: 10px 20px;
    box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.3);
}

.logo-container img {
    width: 80px;
    height: 80px;
    object-fit: contain;
}

.nav-menu {
    display: flex;
    align-items: center;
    margin-left: 20px; /* Space between logo and menu */
    margin-right: 20px; /* Space between menu and search box */
}

.radmenu {
    margin: 0;
    padding: 0;
}

.search-container {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-grow: 1;
    margin-left: 20px;
    margin-right: 20px;
    max-width: 500px;
    position: relative; /* Ensure the search container is relatively positioned */
}

.search-input {
    max-width: 500px;
    min-width: 100px;
    width: 100%;
    padding: 8px;
    border-radius: 4px;
    border: 1px solid #555;
    background-color: #444;
    color: #f0f0f0;
    outline: none;
    box-sizing: border-box;
}

.searchimage {
    position: absolute;
    right: 27px; /* Align the icon to the right inside the search container */
    cursor: pointer;
    z-index: 1;
    height: 24px;
    width: 24px;
    top: -2px;
}

.user-profile {
    display: flex;
    align-items: center;
    margin-left: auto; /* Pushes the user-profile to the right */
}

.profile-picture {
    border-radius: 50%;
    margin-right: 5px;
    margin-left: 10px;
}

.user-info {
    text-align: left;
    color: #f5f5f5;
    min-width: 400px;
}



.user-name {
    font-weight: bold;
    color: #f5f5f5;
    font-size: 12px;
    line-height: 15px;
    margin-top: 5px;
    text-decoration: none;
}

    .user-name:hover {
        color: #1a4c84;
    }

.profilelink:hover {
    color: #235e78;
}





.user-role {
    font-size: 0.6em;
    color: #aaa;
    display: block;
    margin-top: 3px;
    text-decoration: none;
}



.logout-btn {
    padding: 8px 12px;
    background-color: #e74c3c;
    color: #f0f0f0;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    transition: background-color 0.3s;
    margin-right: 20px;
    text-decoration: none;
}

    .logout-btn a {
        text-decoration: none;
    }

    .logout-btn:hover {
        background-color: #c0392b;
    }

/* Responsive Design */
@media (max-width: 768px) {
    .search-container {
        margin-left: 20px;
        margin-right: 20px;
    }
}

.nav-menu .RadMenu_Bootstrap .rmRootGroup .rmRootLink {
    color: #e9e9e9 !important;
}

    .nav-menu .RadMenu_Bootstrap .rmRootGroup .rmRootLink:hover {
        color: #000000 !important;
    }

.nav-menu .RadMenu_Bootstrap .rmRootGroup {
    background-color: transparent !important;
}

.nav-menu .rmLink .rmRootLink .rmExpanded {
    color: black !important;
}

.nav-menu .RadMenu_Bootstrap .rmExpanded .rmRootLink {
    background-color: #444 !important;
}

.nav-menu .riSingle {
    display: inherit !important;
}

.operatorvalidatorstats {
    margin-right: 20px;
}

.ovstat {
    padding: 4px;
    margin-left: 5px;
    background-color: #4b4b4b;
    color: white;
    display: inline-block;
    border-radius: 3px;
    font-size: 11px;
}

.ovstatlabel {
    display: block;
    font-size: 18px;
}


/* Dark Mode Footer Styles */
footer {
    color: #ffffff;
    padding: 0;
    font-family: Arial, sans-serif;
}

.footer-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
    padding: 0;
}

.footer-left, .footer-right {
    flex: 0 0 80px;
}

.footer-center {
    text-align: center;
    flex-grow: 1;
    font-size: 11px;
}

.footer-logo-left, .footer-logo-right {
    width: 80px;
    height: auto;
}

.footer-logo-right {
    transition: all 0.3s ease-in-out;
    animation: pulse 20s infinite;
}

    .footer-logo-right:hover {
        filter: brightness(1.2);
        transform: scale(1.1);
        box-shadow: 0 0 20px rgba(255, 0, 0, 0.8);
        background: linear-gradient(45deg, #ff007f, #ff4d4d);
        border-radius: 10%;
        padding: 5px;
    }

@keyframes pulse {
    0%, 100% {
        transform: scale(1);
        box-shadow: 0 0 10px rgba(255, 0, 0, 0.5);
    }

    50% {
        transform: scale(1.1);
        box-shadow: 0 0 20px rgba(255, 0, 0, 0.8);
    }
}

.footer-center p {
    margin: 5px 0;
}

.footer-center a {
    color: #6d8ec5;
    text-decoration: none;
    margin: 0 5px;
}

    .footer-center a:hover {
        color: #707CA9;
    }

.RadGrid .rgFilterRow > td {
    text-align: center !important;
}

.payfastlogo {
    max-width: 80px;
    margin-right: 20px;
    vertical-align: middle;
}

.mastercardlogo {
    max-width: 80px;
    vertical-align: middle;
}

.visalogo {
    max-width: 80px;
    vertical-align: middle;
}

.RadComboBox .rcbActionButton {
    height: initial !important;
}

.formattedDisplay {
    padding: 5px;
    background-color: #f4f4f4;
    border: 1px solid #ddd;
    border-radius: 4px;
}

    .formattedDisplay b {
        font-size: 14px;
    }

#importerdetailscontainer {
    background-color: #f9f9f9;
    border-radius: 4px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    color: black;
}

#exporterdetailscontainer {
    background-color: #f9f9f9;
    border-radius: 4px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    color: black;
}

#poedetailscontainer {
    background-color: #f9f9f9;
    border-radius: 4px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    color: black;
}

#poidetailscontainer {
    background-color: #f9f9f9;
    border-radius: 4px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    color: black;
}

#transporterdetailscontainer {
    background-color: #f9f9f9;
    border-radius: 4px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    color: black;
}

#importerdetailsContainer div {
    margin-bottom: 0px;
}

#exporterdetailsContainer div {
    margin-bottom: 0px;
}

#poedetailscontainer div {
    margin-bottom: 0px;
}

#poidetailscontainer div {
    margin-bottom: 0px;
}

#transporterdetailscontainer div {
    margin-bottom: 0px;
}

#importerdetailsContainer strong, #exporterdetailsContainer strong, #poidetailscontainer strong, #poedetailscontainer strong, #transporterdetailscontainer strong {
    font-size: 14px;
}

#exporterdetailsContainer strong {
    font-size: 14px;
}

#poedetailscontainer strong {
    font-size: 14px;
}

#poidetailscontainer strong {
    font-size: 14px;
}

#transporterdetailscontainer strong {
    font-size: 14px;
}




.ailabel {
    border: 1px dotted #ffd800;
    border-radius: 4px;
    background: linear-gradient(45deg,#f0f0f0,#dcdcdc);
    background-position-x: 0%;
    background-position-y: 0%;
    background-repeat: repeat;
    background-image: linear-gradient(45deg, rgb(240, 240, 240), rgb(220, 220, 220));
    background-size: auto;
    background-image: url('../images/aibrain.png');
    background-position: 2px 3px;
    background-repeat: no-repeat;
    background-size: 20px 20px;
    padding: 0px;
    padding-right: 0px;
    padding-left: 0px;
    padding-left: 23px;
    font-size: 11px;
    color: #000;
    display: inline-block;
    box-shadow: 2px 2px 5px rgba(0,0,0,.2);
    box-sizing: border-box;
    margin-bottom: 5px;
    padding-right: 5px;
}

.aipanel {
    border: 1px dotted #ffd800;
    border-radius: 4px;
    background: linear-gradient(45deg,#f0f0f0,#dcdcdc);
    background-position-x: 0%;
    background-position-y: 0%;
    background-repeat: repeat;
    background-image: linear-gradient(45deg, rgb(240, 240, 240), rgb(220, 220, 220));
    background-size: auto;
    background-image: url('../images/aibrain.png');
    background-position: 2px 3px;
    background-repeat: no-repeat;
    background-size: 20px 20px;
    padding: 0px;
    padding-right: 0px;
    padding-left: 0px;
    padding-left: 23px;
    font-size: 11px;
    color: #000;
    display: inline-block;
    box-shadow: 2px 2px 5px rgba(0,0,0,.2);
    box-sizing: border-box;
    margin-bottom: 5px;
    padding-right: 5px;
}

.warningbox {
    margin: 20px;
    padding: 10px;
    box-shadow: 2px 2px 5px rgba(0,0,0,.2);
    background-color: #f2f2f2;
    border-radius: 4px;
    color: #000;
    text-align: center;
    display: inline-block;
    max-width: 500px;
    font-size: 15px;
}

.ailabel2 {
    border: 1px dotted #ffd800;
    border-radius: 4px;
    background: linear-gradient(45deg,#f0f0f0,#dcdcdc);
    background-position-x: 0%;
    background-position-y: 0%;
    background-repeat: repeat;
    background-image: linear-gradient(45deg, rgb(240, 240, 240), rgb(220, 220, 220));
    background-size: auto;
    background-image: url('../images/aibrain.png');
    background-position: 2px 3px;
    background-repeat: no-repeat;
    background-size: 20px 20px;
    padding: 0px;
    padding-right: 0px;
    padding-left: 0px;
    padding-left: 23px;
    font-size: 11px;
    color: #000;
    display: block;
    box-shadow: 2px 2px 5px rgba(0,0,0,.2);
    box-sizing: border-box;
    margin-bottom: 5px;
    padding-right: 0px;
}

.menuouter {
    position: sticky;
    top: 0;
    z-index: 9999; /* high enough to sit above banners etc. */
    background-color: white; /* or your preferred colour */
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); /* subtle shadow for elevation */
}

    .menuouter .RadMenu {
        text-align: center !important;
        word-wrap: normal !important;
    }

        .menuouter .RadMenu .rmItem {
            float: none !important;
            text-align: left !important;
        }

    .menuouter .RadMenu_Bootstrap .rmRootGroup {
        border-radius: 0px !important;
        background-color: #f0f0f0 !important;
    }

.innerflagpanel2 {
    max-width: 1200px;
}


.logincontainer2 {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
}


    .logincontainer2 a {
        font-size: 10px !important;
    }

.topbar {
    z-index: 9999999;
    border-bottom: solid 1px #464646;
    background-color: #404040;
}


.toplogos {
    float: left;
    display: inline-flex;
    text-align: left;
    margin-left: 15px;
    margin-top: 5px;
    margin-bottom: 5px;
}

.toplogoscompany {
    font-size: 25px;
    font-weight: bold;
    color: white;
    margin-left: 7px;
}

.toplogosslogan {
    font-size: 18px;
    color: #a2a2a2;
    margin-left: 7px;
    line-height: 15px;
}

.full-width-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #000;
    color: white;
    padding: 10px 20px;
}


.header-box {
    flex: 1 1 300px; /* flexible, but won't shrink smaller than 300px */
    box-sizing: border-box;
    padding: 10px;
    margin: 5px;
    text-align: left;
}

    .header-box.middle-box {
        flex-grow: 1;
        min-width: 0; /* Prevent overflow weirdness */
    }


@media (max-width: 650px) {
    .header-box {
        text-align: center;
    }
}

.header-box a {
    color: #c8daf0;
    text-decoration: none;
}

    .header-box a:hover {
        color: #8fb7e8
    }

.footerinner {
    padding: 20px;
}

.footer a {
    color: #c8daf0;
    text-decoration: none;
}

    .footer a:hover {
        color: #8fb7e8
    }


.copyright3 {
    text-align: center;
    color: white;
    text-transform: uppercase;
    font-size: 7px !important;
    display: block;
}

    .copyright3 a {
        color: #c8daf0;
        text-decoration: none;
        font-size: 10px
    }

        .copyright3 a:hover {
            color: #8fb7e8
        }


.content1 {
    max-width: 1200px;
    text-align: left;
    display: inline-flex;
    background-color: gray;
}

.newh1 {
    text-transform: uppercase;
    line-height: 1.2;
    text-align: center;
    font-size: 32px;
    font-weight: 700;
    color: #2c3e50;
    margin-bottom: 10px;
}

.contentcontainer2 {
    text-align: center;
}

/* Max-width, centered container with left-aligned content */
.content-max {
    display: flex;
    justify-content: center; /* center the inner-content block */
}

.inner-content {
    max-width: 1200px;
    width: 100%;
    text-align: left;
    background-color: #fff;
    padding: 30px;
    box-sizing: border-box;
    background: linear-gradient(to bottom, #ededed 0%,#cccccc 0%,#ffffff 3%,#ffffff 21%,#ffffff 61%,#ffffff 91%,#ffffff 91%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

/* Full-width section */
.content-full {
    width: 100%;
    background-color: #ddd;
    padding: 20px;
    box-sizing: border-box;
    text-align: center;
}

.topbanner2 {
    width: 100%;
    max-width: 600px;
    max-height: 66px;
    overflow: hidden;
    position: relative;
    display: inline-flex;
    margin-top: 10px;
    margin-bottom: 10px;
}

@media (max-width: 1000px) {
    .topbanner2 {
        display: none;
    }
}

.topbanner2 img {
    width: 100%;
    height: auto;
    max-height: 66px;
    display: inline;
}

.topbannercontainer {
    padding-top: 20px;
    padding-bottom: 20px;
}

.slogan {
    text-transform: uppercase;
    color: #7f8c8d;
    margin-bottom: 30px;
}

.newh2 {
    font-size: 1.5em;
    margin-bottom: 20px;
    margin-top: 20px;
    color: #90a6b9;
}

.transportimage {
    width: 150px;
    height: auto;
    margin: 10px;
    border-radius: 8px;
    transition: transform 0.3s ease;
}

    .transportimage:hover {
        transform: scale(1.05);
    }

p {
    font-size: 16px;
    color: #444;
    margin-bottom: 15px;
}


a.cta-button {
    display: inline-block;
    background-color: #24476d;
    color: white;
    padding: 12px 25px;
    border-radius: 4px;
    text-decoration: none;
    font-weight: bold;
    margin: 10px;
    transition: background-color 0.3s ease;
}

    a.cta-button:hover {
        background-color: #0056b3;
    }

.ai-application-section {
    padding: 60px 20px;
    background-color: #f4f7fa;
}

.ai-content-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    max-width: 1200px;
    margin: 0 auto;
    gap: 30px;
}

.ai-text-content {
    flex: 1 1 500px;
    padding: 20px;
}

.ai-heading {
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 20px;
    color: #2c3e50;
}

.ai-description {
    font-size: 16px;
    color: #555;
    line-height: 1.6;
}

.ai-image-content {
    flex: 1 1 400px;
    padding: 20px;
    text-align: center;
}

    .ai-image-content img {
        max-width: 400px;
        height: auto;
        border-radius: 8px;
        box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    }

.about-transcom-section {
    padding: 60px 20px;
    background-color: #ffffff;
}

.ai-content-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    max-width: 1200px;
    margin: 0 auto;
    gap: 40px;
}

.ai-text-content {
    flex: 1 1 500px;
    padding: 20px;
}

.ai-heading {
    font-family: 'Segoe UI', sans-serif;
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 20px;
    color: #1f3f5b;
}

.slogan {
    font-size: 18px;
    color: #7f8c8d;
    margin-bottom: 20px;
    text-align: left;
}

.ai-subheading {
    font-size: 20px;
    font-weight: 600;
    margin-top: 30px;
    margin-bottom: 10px;
    color: #2c3e50;
}

.ai-description {
    font-size: 16px;
    color: #555;
    margin-bottom: 20px;
    line-height: 1.6;
}

.ai-list {
    padding-left: 20px;
    margin-bottom: 20px;
}

    .ai-list li {
        margin-bottom: 10px;
        line-height: 1.6;
    }

.cta-inline {
    font-weight: bold;
    color: #007bff;
    text-decoration: none;
}

    .cta-inline:hover {
        text-decoration: underline;
    }

.ai-image-content {
    flex: 1 1 500px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 15px;
    padding: 20px;
}

.transportimage {
    width: 200px;
    height: auto;
    border-radius: 8px;
    box-shadow: 0 1px 6px rgba(0,0,0,0.1);
    transition: transform 0.3s ease;
}

    .transportimage:hover {
        transform: scale(1.05);
    }

.hero-banner-section {
    background: linear-gradient(to bottom, #f4f7fa 0%, #ffffff 100%);
}


.hero-slider-container {
    width: 100%;
    position: relative;
    height: auto;
    aspect-ratio: 3 / 1; /* Responsive height */
}

.hero-slides {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

    .hero-slides img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

@media (max-width: 768px) {
    .banner1inner,
    .banner1badgetext {
        left: 10px !important;
        width: 90% !important;
    }

    .bannertext,
    .bannersubheading,
    .bannerheading {
        font-size: 16px !important;
    }
}

.cost-calculator-section {
    padding: 60px 20px;
    background: linear-gradient(to right, #eaf2f8, #f4f7fa); /* Clean blue-grey tones */
}

.cost-content-wrapper {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    max-width: 1200px;
    margin: 0 auto;
    gap: 30px;
}

.cost-text-content {
    flex: 1 1 500px;
    padding: 20px;
    text-align: left;
}

.cost-heading {
    font-size: 28px;
    font-weight: 700;
    color: #2c3e50;
    margin-bottom: 20px;
}

.cost-description {
    font-size: 16px;
    color: #444;
    line-height: 1.6;
    margin-bottom: 20px;
}

.cost-list {
    padding-left: 20px;
    list-style-type: disc;
}

    .cost-list li {
        margin-bottom: 10px;
        color: #333;
        line-height: 1.6;
    }

.cost-image-content {
    flex: 1 1 400px;
    padding: 20px;
    text-align: center;
}

    .cost-image-content img {
        max-width: 400px;
        height: auto;
        border-radius: 8px;
        box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    }


.transcom-intro-section {
    padding: 60px 20px;
    background: linear-gradient(to bottom right, #e9eef2, #f8fbfd);
}

    .transcom-intro-section .ai-content-wrapper {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
        max-width: 1200px;
        margin: 0 auto;
        gap: 30px;
    }

    .transcom-intro-section .ai-text-content {
        flex: 1 1 500px;
        padding: 20px;
    }

    .transcom-intro-section .ai-image-content {
        flex: 1 1 400px;
        padding: 20px;
        text-align: center;
    }

        .transcom-intro-section .ai-image-content img {
            max-width: 400px;
            height: auto;
            border-radius: 8px;
            box-shadow: 0 2px 10px rgba(0,0,0,0.1);
        }

    .transcom-intro-section .ai-heading {
        font-size: 28px;
        font-weight: 700;
        color: #2c3e50;
        margin-bottom: 10px;
    }

    .transcom-intro-section .slogan {
        font-size: 18px;
        color: #7f8c8d;
        margin-bottom: 20px;
    }

    .transcom-intro-section .ai-subheading {
        font-size: 20px;
        font-weight: 600;
        margin-top: 30px;
        margin-bottom: 10px;
        color: #2c3e50;
    }

    .transcom-intro-section .ai-description {
        font-size: 16px;
        color: #555;
        margin-bottom: 20px;
        line-height: 1.6;
    }

    .transcom-intro-section .ai-list {
        padding-left: 20px;
        margin-bottom: 20px;
    }

        .transcom-intro-section .ai-list li {
            margin-bottom: 10px;
            line-height: 1.6;
        }

    .transcom-intro-section .cta-inline {
        font-weight: bold;
        color: #007bff;
        text-decoration: none;
    }

        .transcom-intro-section .cta-inline:hover {
            text-decoration: underline;
        }


section {
    position: relative;
}



/* Optional: add some subtle transitions */
section {
    transition: background-position 0.3s ease;
}

.reveal {
    opacity: 0;
    transform: translateY(60px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

    .reveal.active {
        opacity: 1;
        transform: translateY(0);
    }

.reveal-left {
    transform: translateX(-60px);
}

.reveal-right {
    transform: translateX(60px);
}

/* Animation keyframes */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeInLeft {
    from {
        opacity: 0;
        transform: translateX(-40px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes fadeInRight {
    from {
        opacity: 0;
        transform: translateX(40px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* Apply when elements enter viewport */
.fade-in-up,
.fade-in-left,
.fade-in-right {
    opacity: 0;
    transition: opacity 0.3s ease-out;
}

    .fade-in-up.visible {
        animation: fadeInUp 0.8s ease forwards;
    }

    .fade-in-left.visible {
        animation: fadeInLeft 0.8s ease forwards;
    }

    .fade-in-right.visible {
        animation: fadeInRight 0.8s ease forwards;
    }

.enhanced-banner {
    position: relative;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    transition: transform 0.3s ease;
    max-width: 600px;
    margin: 0 auto;
}

    .enhanced-banner:hover {
        transform: scale(1.02);
        box-shadow: 0 8px 24px rgba(0,0,0,0.2);
    }

.banner-link {
    display: block;
    position: relative;
}

.banner-image {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 10px;
    transition: transform 0.3s ease, filter 0.3s ease;
}

.enhanced-banner:hover .banner-image {
    transform: scale(1.05);
    filter: brightness(1.05);
}

/* Optional badge */
.banner-badge {
    position: absolute;
    top: 10px;
    left: 10px;
    background-color: #1D327A;
    color: white;
    padding: 5px 10px;
    font-size: 12px;
    text-transform: uppercase;
    border-radius: 4px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

/* === Enhanced Header Styling === */
.enhanced-header {
    background: linear-gradient(90deg, #0D1B2A 0%, #1B263B 100%);
    color: #fff;
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.6);
    position: relative;
    z-index: 999;
    animation: fadeDown 0.6s ease-out;
}

@keyframes fadeDown {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.header-box {
    display: flex;
    align-items: center;
}

.left-box {
    gap: 20px;
}

.logo-link img {
    border-radius: 8px;
    transition: transform 0.3s ease;
}

.logo-link:hover img {
    transform: scale(1.05);
}

.logo-text-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.toplogoscompany {
    font-size: 24px;
    font-weight: 700;
    letter-spacing: 1.2px;
    color: #ffffff;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.7);
    margin-top: -10px;
}

.toplogosslogan {
    font-size: 12px;
    text-transform: uppercase;
    color: #cbd5e1;
    font-weight: 300;
    letter-spacing: 0.5px;
}





.logo-glow {
    filter: drop-shadow(0 0 1px white) drop-shadow(0 0 5px white);
    transition: filter 0.3s ease-in-out;
}

    /* Optional: add a hover effect if you want to make it shine a bit more on hover */
    .logo-glow:hover {
        filter: drop-shadow(0 0 3px white) drop-shadow(0 0 10px white);
    }

.header-box.left-box {
    flex: 0 0 auto; /* Don’t grow, don’t shrink */
    display: flex;
    align-items: center;
    gap: 20px;
}

.logo-link {
    display: flex;
    align-items: center;
}

.logo-text-container {
    display: flex;
    flex-direction: column;
    justify-content: center; /* Ensures both lines are centered as a block */
    line-height: 1.2;
}

.toplogoscompany {
    font-weight: bold;
    color: white;
}

.toplogosslogan {
    font-size: 15px;
    color: #ddd;
}

.loggedin-wrapper {
    display: flex;
    align-items: center;
    gap: 10px;
    justify-content: flex-start; /* left-align contents inside */
    width: fit-content;
    max-width: 300px;
}

.photo-container {
    display: flex;
    align-items: center;
}

.smallphoto {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    object-fit: cover;
    box-shadow: 0 0 8px rgba(255,255,255,0.7);
    transition: box-shadow 0.3s ease;
    margin-bottom: 25px;
}

    .smallphoto:hover {
        box-shadow: 0 0 12px rgba(0, 150, 255, 0.8);
    }

.user-info {
    display: flex;
    flex-direction: column;
    justify-content: center; /* <-- Center text block properly */
}

.user-name {
    font-weight: bold;
    font-size: 13px;
    color: white;
}

.user-links {
    font-size: 12px;
    margin-top: 2px;
}

.language-switcher {
    margin-top: 5px;
    display: flex;
    gap: 5px;
}

    .language-switcher img {
        width: 20px;
        height: 14px;
        cursor: pointer;
        transition: transform 0.3s ease, filter 0.3s ease;
    }

        .language-switcher img:hover {
            transform: scale(1.1);
            filter: brightness(1.2);
        }

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(-5px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.hero-banner-section {
    background: linear-gradient(135deg, #f0f4f8 0%, #e4ebf1 100%);
    position: relative;
    padding: 40px 0;
}

.hero-banner-wrapper {
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
}

.hero-slider-container {
    position: relative;
}

.hero-slides img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 12px;
}


.cta-link {
    display: inline-block;
    color: #0056b3;
    text-decoration: none;
    font-weight: bold;
    position: relative;
    transition: all 0.3s ease;
    border-radius: 4px;
}

    .cta-link::after {
        content: '';
        position: absolute;
        width: 100%;
        transform: scaleX(0);
        height: 2px;
        bottom: 0;
        left: 0;
        background-color: #0056b3;
        transform-origin: bottom right;
        transition: transform 0.3s ease-out;
    }

    .cta-link:hover {
        color: #003366;
        transform: scale(1.05);
    }

        .cta-link:hover::after {
            transform: scaleX(1);
            transform-origin: bottom left;
        }

    .cta-link:active {
        transform: scale(0.95);
    }

.news-section {
    padding: 40px 40px;
    background: linear-gradient(to right, #f7f9fc, #eaf1f9);
    text-align: center;
    padding-bottom: 60px;
}

.news-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 30px;
    max-width: 1200px;
    margin: 0 auto;
}

.news-card {
    background: #ffffff;
    border-radius: 10px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    overflow: hidden;
    width: 100%;
    max-width: 350px;
    transition: transform 0.3s ease;
    text-align: left;
}

    .news-card:hover {
        transform: translateY(-5px);
    }

/* Animate News Cards */
.news-card {
    opacity: 0;
    transform: translateY(50px) scale(0.95);
    animation: floatIn 0.8s ease-out forwards;
}

    .news-card:nth-child(1) {
        animation-delay: 0.3s;
    }

    .news-card:nth-child(2) {
        animation-delay: 0.5s;
    }

    .news-card:nth-child(3) {
        animation-delay: 0.7s;
    }

/* Keyframes */
@keyframes fadeInDown {
    0% {
        opacity: 0;
        transform: translateY(-30px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes floatIn {
    0% {
        opacity: 0;
        transform: translateY(50px) scale(0.95);
    }

    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.news-thumb img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    display: block;
}

.news-content {
    padding: 20px;
}

.news-title {
    font-size: 1.25rem;
    margin-bottom: 10px;
    color: #2c3e50;
}

.news-description {
    font-size: 0.95rem;
    color: #444;
    margin-bottom: 15px;
    line-height: 1.5;
    text-align: left;
}

.news-readmore {
    font-weight: 600;
    font-size: 0.95rem;
    color: #0077cc;
    text-decoration: none;
    position: relative;
    display: inline-block;
    transition: all 0.3s ease;
}

    .news-readmore::after {
        content: '';
        display: block;
        width: 0%;
        height: 2px;
        background: #0077cc;
        transition: width 0.3s ease;
        position: absolute;
        left: 0;
        bottom: -2px;
    }

    .news-readmore:hover {
        color: #005a99;
    }

        .news-readmore:hover::after {
            width: 100%;
        }

    .news-readmore:active {
        transform: scale(0.96);
    }


/* Animation Keyframes */
@keyframes slideFadeIn {
    0% {
        opacity: 0;
        transform: translateY(30px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Initial State */
.news-card {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

    /* When visible */
    .news-card.animate-in {
        opacity: 1;
        transform: translateY(0);
    }

.news-headline {
    font-size: 1.25rem;
    font-weight: 700;
    color: #2c3e50;
    margin-bottom: 10px;
}

/* News Title Animation */
.news-title-wrapper {
    text-align: center;
    margin-bottom: 30px;
    padding-top: 10px;
    animation: fadeInDown 1s ease forwards;
    opacity: 0;
}

.news-title-text {
    font-size: 2rem;
    font-weight: 700;
    color: #444;
    position: relative;
    display: inline-block;
    transform: scale(1);
    transition: transform 0.3s ease-in-out;
}

    .news-title-text:hover {
        transform: scale(1.05);
    }

    .news-title-text::after {
        content: "";
        display: block;
        height: 4px;
        width: 60px;
        margin: 8px auto 0;
        background: linear-gradient(90deg, #0077b6, #00b4d8);
        border-radius: 2px;
    }

/* Initial state */
.news-card, .news-title-wrapper {
    opacity: 0;
    transform: translateY(50px);
    transition: all 0.6s ease-out;
}

/* Animate-in trigger */
.animate-in {
    opacity: 1 !important;
    transform: translateY(0) !important;
}

/* Card hover effect */
.news-card:hover {
    transform: translateY(-5px) scale(1.02);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/* Read more hover */
.news-readmore {
    display: inline-block;
    color: #0077b6;
    font-weight: 600;
    position: relative;
    transition: color 0.3s ease;
}

    .news-readmore::after {
        content: "";
        position: absolute;
        bottom: -3px;
        left: 0;
        width: 0%;
        height: 2px;
        background-color: #0077b6;
        transition: width 0.3s ease;
    }

    .news-readmore:hover {
        color: #023e8a;
    }

        .news-readmore:hover::after {
            width: 100%;
        }

.news-thumbnail-img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 180px;
    object-fit: cover;
    border-radius: 8px 8px 0 0;
}

.news-thumb {
    width: 100%;
    overflow: hidden;
    border-radius: 8px 8px 0 0;
}

.news-img-wrapper {
    width: 100%;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

.news-thumbnail-img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    display: block;
    border-radius: 8px 8px 0 0;
}

.articletitle {
    font-size: 20px;
}

.hero-banner-section {
    position: relative;
    max-height: 450px;
    overflow: hidden;
}

.hero-swiper {
    width: 100%;
    height: 100%;
}

.swiper-slide {
    position: relative;
    height: 450px;
}

.hero-background-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.hero-slide-gradient {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom, rgba(12, 74, 110, 0.3), rgba(0, 0, 0, 0.6));
    z-index: 1;
}

.hero-slide-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    text-align: center;
    color: #fff;
    max-width: 90%;
    animation: fadeInHero 1.2s ease-out both;
}

@keyframes fadeInHero {
    from {
        opacity: 0;
        transform: translate(-50%, -60%);
    }

    to {
        opacity: 1;
        transform: translate(-50%, -50%);
    }
}

.hero-slide-title {
    font-size: 2.5rem;
    font-weight: 700;
    text-shadow: 1px 2px 6px rgba(0,0,0,0.7);
    margin-bottom: 10px;
}

.hero-slide-subtitle {
    font-size: 1.2rem;
    text-shadow: 0 1px 3px rgba(0,0,0,0.5);
    margin-bottom: 20px;
}

.hero-slide-btn {
    display: inline-block;
    padding: 10px 24px;
    background-color: #fff;
    color: #0c4a6e;
    border-radius: 20px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
}

    .hero-slide-btn:hover {
        background-color: #0c4a6e;
        color: #fff;
        box-shadow: 0 5px 20px rgba(0, 0, 0, 0.2);
    }

/* Container */
.th-hero-banner {
    max-height: 450px;
    position: relative;
    overflow: hidden;
    z-index: 1;
}

/* Swiper Container */
.th-swiper-container {
    width: 100%;
    height: 100%;
    position: relative;
}

/* Slide Image */
.th-hero-slide-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    animation: th-fade-in 1.5s ease-in-out;
}

/* Gradient overlay */
.th-hero-banner::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to top, rgba(255, 255, 255, 0.85), rgba(255, 255, 255, 0.3));
    z-index: 2;
    pointer-events: none;
}

/* Arrows */
.th-swiper-btn {
    color: #444;
    width: 40px;
    height: 40px;
    background: rgba(255,255,255,0.8);
    border-radius: 50%;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
    transition: all 0.3s ease;
    z-index: 3;
}

    .th-swiper-btn:hover {
        background: #0077cc;
        color: #fff;
    }

/* Pagination Dots */
.th-swiper-pagination .swiper-pagination-bullet {
    background-color: #333;
    opacity: 0.6;
    transition: all 0.3s ease;
}

.th-swiper-pagination .swiper-pagination-bullet-active {
    background-color: #0077cc;
    transform: scale(1.2);
    opacity: 1;
}

/* Fade-in Animation */
@keyframes th-fade-in {
    from {
        opacity: 0;
        transform: scale(1.02);
    }

    to {
        opacity: 1;
        transform: scale(1);
    }
}
/* === OGEFREM Unique Hero Styles === */
:root {
    --og-clr-bg-dark: #0a1c2f;
    --og-clr-accent: #1e74ff;
    --og-clr-accent-light: #5aa1ff;
    --og-clr-grey: #e4e8ec;
    --og-font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
    --og-header-h: 160px; /* fixed header height offset */
}

.og-hero {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: calc(100vh - var(--og-header-h));
    padding: calc(-11rem + var(--og-header-h)) 1rem 4rem;
    color: var(--og-clr-grey);
    background: linear-gradient(rgba(10,28,47,0.6), rgba(10,28,47,0.9)), url('/images/background.jpg') center/cover no-repeat;
    overflow: hidden;
    font-family: var(--og-font-family);
    box-sizing: border-box;
}

/* ===== Complex Animated Shapes ===== */
.og-shapes {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
}

.og-shape {
    position: absolute;
    width: 400px;
    height: 400px;
    background: linear-gradient(135deg, var(--og-clr-accent) 0%, var(--og-clr-accent-light) 100%);
    opacity: 0.35;
    mix-blend-mode: screen;
    filter: blur(40px);
    animation: ogFloat 30s linear infinite, ogMorph 12s ease-in-out infinite alternate;
}

    /* different start positions */
    .og-shape:nth-child(1) {
        top: -10%;
        left: -10%;
        animation-delay: -2s;
    }

    .og-shape:nth-child(2) {
        top: 20%;
        right: -15%;
        animation-delay: -6s;
    }

    .og-shape:nth-child(3) {
        bottom: -15%;
        left: 20%;
        animation-delay: -10s;
    }

    .og-shape:nth-child(4) {
        top: 60%;
        right: 5%;
        animation-delay: -14s;
    }

    .og-shape:nth-child(5) {
        bottom: 10%;
        left: -15%;
        animation-delay: -18s;
    }

/* float across viewport */
@keyframes ogFloat {
    0% {
        transform: translate3d(0,0,0) scale(1) rotate(0deg);
    }

    50% {
        transform: translate3d(80px,-60px,0) scale(1.15) rotate(90deg);
    }

    100% {
        transform: translate3d(0,0,0) scale(1) rotate(180deg);
    }
}

/* morph clip-path polygon */
@keyframes ogMorph {
    0% {
        clip-path: polygon(50% 0%, 100% 25%, 80% 100%, 20% 100%, 0% 25%);
    }

    50% {
        clip-path: polygon(60% 0%, 100% 40%, 70% 100%, 30% 90%, 0% 40%);
    }

    100% {
        clip-path: polygon(50% 10%, 90% 20%, 100% 90%, 10% 100%, 0% 30%);
    }
}

/* ===== Content ===== */
.og-hero__content {
    position: relative;
    z-index: 1;
    text-align: center;
    max-width: 820px;
    width: 100%;
}

.og-hero__logo {
    max-width: 200px;
    width: 100%;
    height: auto;
    margin: 2rem auto 1rem;
    filter: drop-shadow(0 0 6px rgba(0, 0, 0, 0.4)) drop-shadow(0 0 12px rgba(89, 167, 230, 0.6)) drop-shadow(0 0 24px rgba(89, 167, 230, 0.3));
}

.og-hero__title {
    font-size: clamp(2rem, 5vw, 3.5rem);
    font-weight: 700;
    margin-bottom: 1rem;
    color: #ffffff;
    letter-spacing: 0.5px;
    text-align: center;
}

.og-hero__subtitle {
    font-size: clamp(1.25rem, 3vw, 1.5rem);
    font-weight: 400;
    margin-bottom: 2.25rem;
    color: var(--og-clr-grey);
}

/* ===== Buttons ===== */
.og-hero__cta {
    display: flex;
    justify-content: center;
    gap: 1rem;
    flex-wrap: wrap;
    margin-bottom: 2.5rem;
}

.og-btn {
    position: relative;
    display: inline-block;
    padding: 0.9rem 2.4rem;
    border-radius: 40px;
    font-size: 1.05rem;
    font-weight: 600;
    text-decoration: none;
    overflow: hidden;
    transition: transform 0.25s ease;
    will-change: transform;
    color: #ffffff;
}

    .og-btn::before {
        content: "";
        position: absolute;
        inset: 0;
        border-radius: inherit;
        background: linear-gradient(135deg, var(--og-clr-accent) 0%, var(--og-clr-accent-light) 100%);
        z-index: -2;
    }

    .og-btn::after {
        content: "";
        position: absolute;
        top: 0;
        left: -75%;
        height: 100%;
        width: 50%;
        background: rgba(255,255,255,0.3);
        transform: skewX(-25deg);
        transition: left 0.6s cubic-bezier(0.4,0,0.2,1);
        z-index: -1;
    }

    .og-btn:hover {
        transform: translateY(-3px) scale(1.05);
        color: #f0f0f0;
    }

        .og-btn:hover::after {
            left: 125%;
        }

.og-btn--secondary::before {
    background: transparent;
    border: 2px solid var(--og-clr-accent);
}

.og-btn--secondary:hover {
    color: var(--og-clr-accent);
}

/* Responsive tweaks */
@media (max-width: 600px) {
    .og-hero__cta {
        flex-direction: column;
    }

    .og-btn {
        width: 80%;
    }
}

.user-friendly-section {
    background: linear-gradient(135deg, #dee7eefc 0%, #eef5f8 100%);
    padding: 60px 20px;
}

    .user-friendly-section .ai-content-wrapper {
        max-width: 1200px;
        margin: 0 auto;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 40px;
    }

    .user-friendly-section .ai-image-content img {
        max-width: 400px;
        height: auto;
        border-radius: 12px;
        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.07);
    }

    .user-friendly-section .ai-heading {
        font-size: 2rem;
        margin-bottom: 10px;
        color: #1f3f5b;
    }

    .user-friendly-section .slogan {
        font-size: 1.1rem;
        font-weight: 500;
        margin-bottom: 20px;
        color: #40657d;
    }

    .user-friendly-section .ai-list {
        list-style-type: disc;
        padding-left: 20px;
        color: #333;
        font-size: 1rem;
        line-height: 1.6;
    }

.balance-panel {
    display: flex;
    align-items: center;
    background: rgba(255, 255, 255, 0.05);
    padding: 6px;
    border-radius: 8px;
    box-shadow: 0 1px 5px rgba(0, 0, 0, 0.15);
    backdrop-filter: blur(5px);
    border: 1px solid rgba(255, 255, 255, 0.08);
    font-size: 11px;
}

.balance-box {
    display: inline-block;
    padding: 4px 10px;
    background: rgba(255, 255, 255, 0.08);
    border-radius: 5px;
    color: #fff;
    font-size: 12px;
    min-width: 80px;
    line-height: 1.2;
}

    .balance-box div:first-child {
        font-weight: 500;
        color: #ccc;
        font-size: 10px;
    }

.balance-amount {
    font-size: 15px;
    font-weight: bold;
    color: white;
    margin-top: 1px;
}

.balance-refresh {
    width: 16px;
    height: 16px;
    cursor: pointer;
    filter: brightness(1.2);
    transition: transform 0.3s ease;
    margin-left: 0px;
}

    .balance-refresh:hover {
        transform: rotate(180deg) scale(1.1);
    }



.balance-panel-wrapper {
    display: flex;
    align-items: center;
}

.header-box.right-box {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 20px;
    flex: 1;
    padding-right: 20px;
    flex-wrap: nowrap;
}


.balance-panel-wrapper {
    display: flex;
    align-items: left;
    margin-right: 10px; /* optional tweak */
}

.balance-panel {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
}
/* Balance Boxes */
.balance-box {
    background: linear-gradient(135deg, #1a8a34, #4fd066); /* or red variant if needed */
    padding: 6px 12px;
    font-size: 12px;
    color: white;
    border-radius: 6px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.balance-amount {
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
}

.balance-refresh {
    height: 20px;
    width: 20px;
    margin-left: 6px;
    cursor: pointer;
    transition: transform 0.3s ease;
}

    .balance-refresh:hover {
        transform: rotate(90deg);
    }

.balance-positive {
    background: rgba(0, 128, 0, 0.15);
    border: 1px solid rgba(0, 255, 128, 0.3);
    border-radius: 6px;
    padding: 4px;
    box-shadow: inset 0 0 5px rgba(0, 255, 128, 0.1);
}

.balance-negative {
    background: rgba(255, 0, 0, 0.12);
    border: 1px solid rgba(255, 64, 64, 0.25);
    border-radius: 6px;
    padding: 4px;
    box-shadow: inset 0 0 5px rgba(255, 0, 0, 0.1);
}

.info-section {
    padding: 60px 0;
    background: linear-gradient(to bottom, #f4f8fb, #e9f2f9);
}

.info-wrapper {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 0 20px;
}

.info-image-content {
    flex: 1 1 400px;
    text-align: center;
}

    .info-image-content img {
        max-width: 100%;
        height: auto;
        border-radius: 10px;
    }

.info-text-content {
    flex: 1 1 600px;
    padding: 20px;
    text-align: left;
}

.info-heading {
    font-size: 32px;
    font-weight: bold;
    color: #2b2b2b;
    margin-bottom: 10px;
}

.info-subheading {
    font-size: 18px;
    color: #444;
    margin-bottom: 20px;
}

.info-description {
    font-size: 16px;
    color: #555;
    margin-bottom: 20px;
}

.info-feature-title {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 10px;
    color: #333;
}

.info-list {
    list-style: disc inside;
    margin-bottom: 20px;
    color: #444;
}

.cta-link {
    font-weight: 600;
    text-decoration: none !important;
    transition: color 0.3s ease, text-decoration 0.3s ease;
}

    .cta-link:hover {
        color: #0056b3;
        text-decoration: underline;
    }

@keyframes slideFadeInRight {
    0% {
        opacity: 0;
        transform: translateX(30px);
    }

    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

/* Parent container to align buttons to the right */
.login-container {
    display: flex;
    justify-content: flex-end; /* align right */
    align-items: center;
    gap: 12px;
    padding-right: 20px;
    flex-wrap: wrap;
}

.login-button, .signup-button {
    background: #ffffff;
    color: #222;
    font-weight: bold;
    border: 2px solid #007c9e;
    border-radius: 5px;
    padding: 6px 14px;
    cursor: pointer;
    transition: all 0.3s ease;
    animation: fadeInRight 0.6s ease forwards;
}

    .login-button:hover, .signup-button:hover {
        background-color: #007c9e;
        color: #fff;
        transform: translateY(-2px);
        box-shadow: 0 4px 8px rgba(0,0,0,0.2);
    }

/* Stagger the load animations */
.login-button {
    animation-delay: 0.2s;
}

.signup-button {
    animation-delay: 0.4s;
}

    /* Hover effect */
    .login-button:hover,
    .signup-button:hover {
        background-color: #007bbf;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 91, 143, 0.3);
    }

    /* Active/click effect */
    .login-button:active,
    .signup-button:active {
        transform: scale(0.97);
        box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
    }

/* Slide in animation */
@keyframes slideFadeInRight {
    0% {
        opacity: 0;
        transform: translateX(40px);
    }

    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

.calculator-section {
    padding: 60px 20px;
    background: linear-gradient(to right, #f9f9f9, #e9f2f5);
}

.section-content-wrapper {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 40px;
    max-width: 1200px;
    margin: 0 auto;
}

.section-image-content {
    flex: 1 1 400px;
    text-align: center;
}

.section-image {
    max-width: 400px;
    height: auto;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}

.section-text-content {
    flex: 1 1 500px;
    text-align: left;
}

.section-heading {
    font-family: 'Segoe UI', sans-serif;
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 20px;
    color: #1f3f5b;
}

.section-description {
    font-family: 'Segoe UI', sans-serif;
    font-size: 16px;
    color: #444;
    line-height: 1.7;
    margin-bottom: 20px;
}

.section-list {
    list-style: disc;
    padding-left: 20px;
    margin-bottom: 20px;
}

    .section-list li {
        font-family: 'Segoe UI', sans-serif;
        font-size: 15px;
        margin-bottom: 10px;
        color: #444;
    }

.cta-link {
    transition: all 0.3s ease;
}

    .cta-link:hover {
        border-color: #006699;
    }


/* Scoped wrapper for top right buttons */
.transcom-auth-buttons {
    display: flex;
    gap: 12px;
    justify-content: flex-end;
    align-items: center;
    padding-right: 15px;
}

/* Login button style */
.transcom-btn-login {
    font-size: 14px;
    font-weight: 600;
    padding: 8px 18px;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    background-color: #007acc;
    color: #fff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    text-transform: uppercase;
    transition: all 0.3s ease;
}

    .transcom-btn-login:hover {
        background-color: #005fa3;
        transform: translateY(-2px);
    }

/* Signup button style */
.transcom-btn-signup {
    font-size: 14px;
    font-weight: 600;
    padding: 8px 18px;
    border-radius: 6px;
    cursor: pointer;
    background-color: #ffffff;
    color: #007acc;
    border: 2px solid #007acc;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    text-transform: uppercase;
    transition: all 0.3s ease;
}

    .transcom-btn-signup:hover {
        background-color: #e6f4ff;
        transform: translateY(-2px);
    }

.faq-section {
    background: linear-gradient(to bottom right, #f9fbfe, #f0f2f3);
}

.faq-wrapper {
    max-width: 900px;
    margin: 0 auto;
    padding: 40px;
    animation: fadeIn 0.8s ease-in;
}

.faq-heading {
    font-size: 2.5em;
    font-weight: 700;
    text-align: center;
    color: #333;
    margin-bottom: 10px;
}

.faq-subheading {
    text-align: center;
    font-size: 1.2em;
    color: #777;
    margin-bottom: 30px;
}

.faq-item {
    margin-bottom: 20px;
    border-radius: 10px;
    border: 1px solid #e0e0e0;
    overflow: hidden;
    transition: box-shadow 0.3s ease;
}

    .faq-item.open {
        box-shadow: 0 0 0 2px #aecede;
    }

.faq-question {
    width: 100%;
    background: #f9f9f9;
    border: none;
    padding: 15px 20px;
    font-size: 1.1em;
    font-weight: bold;
    text-align: left;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    color: #333;
    transition: background 0.3s ease;
}

    .faq-question:hover {
        background: #eef4f9;
    }

.faq-answer {
    max-height: 0;
    overflow: hidden;
    background: #ffffff;
    transition: max-height 0.5s ease-in-out;
}

.faq-item.open .faq-answer {
    max-height: 500px;
    padding: 15px 20px;
}

.faq-answer-inner {
    font-size: 1em;
    color: #555;
    line-height: 1.6;
}

.faq-toggle {
    font-size: 0.9em;
    transition: transform 0.3s;
    color: #666;
}

/* Animations */
@keyframes fadeIn {
    0% {
        opacity: 0;
        transform: translateY(20px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

.faq-image-container {
    text-align: center;
    margin-bottom: 20px;
}

.faq-image {
    max-width: 300px;
    width: 100%;
    height: auto;
    display: inline-block;
    filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.1));
    border-radius: 12px;
}

.faq-heading {
    color: #2a3e52; /* deep blue */
}

.faq-subheading {
    color: #5c738a;
}

.tcom-videos-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 40px 20px;
}

.tcom-videos-breadcrumb {
    margin-bottom: 30px;
}

.tcom-videos-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-bottom: 30px;
}


.tcom-videos-lang {
    margin-bottom: 10px;
}

.tcom-videos-title {
    font-size: 2.4rem;
    font-weight: 700;
    color: #2a3e52;
    margin-top: 10px;
}

.tcom-videos-description {
    font-size: 1.1rem;
    color: #4a5d73;
    margin-bottom: 30px;
}

.tcom-videos-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
}

.tcom-video-item {
    background: #ffffff;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.07);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    cursor: pointer;
}

    .tcom-video-item:hover {
        transform: translateY(-5px);
        box-shadow: 0 6px 20px rgba(0, 0, 0, 0.12);
    }

    .tcom-video-item img {
        width: 100%;
        border-radius: 8px;
        margin-bottom: 15px;
        object-fit: cover;
    }

    .tcom-video-item h2 {
        font-size: 1.2rem;
        color: #1d3557;
        margin: 0 0 10px 0;
    }

    .tcom-video-item p {
        font-size: 0.95rem;
        color: #5a6b81;
        line-height: 1.4;
    }

.tcom-videos-header-image {
    display: flex;
    justify-content: center;
    margin-bottom: 20px;
}

.tcom-videos-hero-image {
    max-width: 300px;
    width: 100%;
    height: auto;
    display: block;
    border-radius: 16px;
    filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.1));
    transition: transform 0.3s ease;
}

.ogefrem2025-wrapper {
    margin: 0;
    padding: 0;
}

.ogefrem2025-section {
    width: 100%;
    background: linear-gradient(to bottom, #f8f9fc, #f1f3f6);
    padding: 60px 0;
}

.ogefrem2025-content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 30px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}

.two-col-layout {
    flex-direction: row;
}

.ogefrem2025-image-col,
.ogefrem2025-text-col {
    flex: 1 1 50%;
}

.ogefrem2025-image {
    width: 100%;
    max-width: 100%;
    display: block;
    border-radius: 12px;
}

.ogefrem2025-shadow-only {
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.1);
}

.max400 {
    max-width: 400px;
    margin: 0 auto;
}

.contactlogo {
    max-width: 400px;
    height: auto;
    margin-left: 80px; /* ensure it's not pushing itself left */
}

.ogefrem2025-main-title {
    font-size: 2rem;
    font-weight: 700;
    font-family: 'Segoe UI', 'Roboto', sans-serif;
    color: #123555;
    margin-bottom: 10px;
    text-transform: uppercase;
    text-align: left;
}

.ogefrem2025-subtitle {
    font-size: 1.1rem;
    font-weight: 400;
    font-family: 'Segoe UI', 'Roboto', sans-serif;
    color: #375e97;
    margin-bottom: 25px;
    text-transform: uppercase;
    text-align: left;
}

.ogefrem2025-paragraphs {
    font-family: 'Segoe UI', 'Roboto', sans-serif;
    font-size: 1rem;
    color: #2e445c;
    line-height: 1.7;
    margin-bottom: 30px;
    text-align: left;
}

    .ogefrem2025-paragraphs p {
        margin-bottom: 15px;
    }

.ogefrem2025-list {
    padding-left: 20px;
    margin-top: 10px;
    margin-bottom: 20px;
    text-align: left;
}

    .ogefrem2025-list li {
        font-family: 'Segoe UI', 'Roboto', sans-serif;
        font-size: 1rem;
        color: #1a2b40;
        margin-bottom: 10px;
        line-height: 1.6;
    }

.cta-link {
    color: #007bff;
    text-decoration: underline;
    font-weight: 600;
}

/* Mobile */
@media screen and (max-width: 900px) {
    .ogefrem2025-content {
        flex-direction: column;
        text-align: center;
    }

    .ogefrem2025-image-col,
    .ogefrem2025-text-col {
        flex: 1 1 100%;
        text-align: center;
    }

    .ogefrem2025-main-title,
    .ogefrem2025-subtitle,
    .ogefrem2025-paragraphs,
    .ogefrem2025-list {
        text-align: center;
    }
}

.news2025-listview-wrapper {
    max-width: 1200px;
    margin: 0 auto;
    padding: 60px 20px;
    background: linear-gradient(to bottom, #f8f9fc, #f1f3f6);
}

.news2025-listview {
    width: 100%;
}

.news2025-listview-vertical {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.news2025-article-tile-full {
    display: block;
    text-decoration: none;
    color: inherit;
    border-radius: 12px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.05);
    transition: box-shadow 0.2s ease;
}

    .news2025-article-tile-full:hover {
        box-shadow: 0 8px 22px rgba(0, 0, 0, 0.1);
    }

.news2025-article-tile-box-full {
    display: flex;
    gap: 20px;
    align-items: flex-start;
    padding: 20px;
}

.news2025-tile-img-wrapper {
    flex: 0 0 200px;
    width: 200px;
    height: 150px;
    background-color: #f0f0f0; /* fallback background */
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.news2025-tile-img-full {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    display: block;
}


.news2025-tile-content-full {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.news2025-tile-badge {
    align-self: flex-start;
}

.news2025-tile-title {
    font-size: 1.2rem;
    font-weight: 600;
    color: #1b3c65;
}

.news2025-tile-meta {
    font-size: 0.85rem;
    color: #7a7a7a;
}

.news2025-tile-summary {
    font-size: 0.95rem;
    color: #333;
    line-height: 1.6;
}

/* Mobile */
@media screen and (max-width: 768px) {
    .news2025-article-tile-box-full {
        flex-direction: column;
        align-items: stretch;
    }

    .news2025-tile-img-wrapper {
        width: 100%;
        height: 200px;
    }
}

.news2025-article-tile-box-full {
    display: flex;
    gap: 20px;
    align-items: flex-start;
    padding: 20px;
    text-align: left; /* ← Ensures text is left-aligned */
}

.news2025-tile-content-full {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 10px;
    text-align: left; /* ← Left-aligns text inside this block */
}

.news2025-tile-title,
.news2025-tile-meta,
.news2025-tile-summary {
    text-align: left; /* ← Force alignment inside each element */
}

.news2025-article-tile-full {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.5s ease;
}

    .news2025-article-tile-full.visible {
        opacity: 1;
        transform: translateY(0);
    }

.news2025-tile-img-full {
    transition: transform 0.3s ease;
}

.news2025-tile-img-wrapper:hover .news2025-tile-img-full {
    transform: scale(1.05);
}

.news2025-section-full-bg {
    width: 100%;
    background: linear-gradient(to bottom, #f8f9fc, #f1f3f6); /* full-page background */
    padding: 60px 20px;
}

.news2025-listview-wrapper {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0; /* we already applied outer padding */
}

@keyframes slideInLeft {
    from {
        opacity: 0;
        transform: translateX(-50px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes slideInRight {
    from {
        opacity: 0;
        transform: translateX(50px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.scroll-animate-left {
    animation: slideInLeft 1s ease forwards;
    opacity: 0;
}

.scroll-animate-right {
    animation: slideInRight 1s ease forwards;
    opacity: 0;
}

.calculator-section {
    background: linear-gradient(135deg, #f7fafd, #e2e8f0);
    margin: 0;
    border: none;
    padding-top: 40px;
    padding-bottom: 40px;
}

.ai-application-section {
    background: linear-gradient(225deg, #f0f4fa, #d5dde9);
    margin: 0;
    border: none;
    padding-top: 40px;
    padding-bottom: 40px;
}

.user-friendly-section {
    background: linear-gradient(145deg, #f9fbfd, #dee5f1);
    margin: 0;
    border: none;
    padding-top: 40px;
    padding-bottom: 40px;
}

.news-section {
    background: linear-gradient(205deg, #f3f7fc, #d9e1ef);
    margin: 0;
    border: none;
    padding-top: 40px;
    padding-bottom: 40px;
}

.og-hero {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    border-bottom: none !important;
    box-shadow: none !important;
}

.user-friendly-section {
    margin-top: 0 !important;
    border-top: none !important;
}

.article-section {
    padding: 40px 20px 80px;
    background: linear-gradient(145deg, #f8fbfd, #e9f0f5);
    font-family: 'Segoe UI', sans-serif;
    color: #2c3e50;
}

.article-container {
    max-width: 900px;
    margin: 0 auto;
    line-height: 1.75;
    background: #ffffff;
    border-radius: 12px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.07);
    padding: 30px 40px 60px;
}

.article-header-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
}

.article-page-title {
    font-size: 1.6rem;
    font-weight: 700;
    margin: 0;
    color: #1f3f5b;
}

.article-header {
    text-align: left;
    margin-bottom: 40px;
}

.article-title {
    font-size: 2.8rem;
    font-weight: 800;
    color: #1f3f5b;
    margin-bottom: 10px;
}

.article-meta {
    font-size: 0.95rem;
    color: #6c757d;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 30px;
}

.meta-divider {
    margin: 0 8px;
    color: #ccc;
}

.hero-image-wrapper {
    text-align: center;
    margin-top: 20px;
    margin-bottom: 40px;
}

.articleheroimage {
    max-width: 100%;
    height: auto;
    border-radius: 12px;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.06);
}

.article-body {
    font-size: 1.1rem;
    color: #343a40;
}

    .article-body p {
        margin-bottom: 1.5em;
    }

    .article-body h2,
    .article-body h3 {
        margin-top: 2em;
        font-weight: 600;
        color: #1f3f5b;
    }

.article-footer {
    margin-top: 60px;
    text-align: left;
}

.back-button {
    display: inline-block;
    font-weight: 600;
    color: #007bff;
    text-decoration: none;
    border: none;
    background: transparent;
    padding: 0;
    margin: 0;
    border-bottom: 2px solid transparent;
    transition: all 0.3s ease;
}

    .back-button:hover {
        color: #0056b3;
        border-bottom: 2px solid #0056b3;
        transform: translateX(-4px);
    }

.article-body {
    font-family: 'Segoe UI', sans-serif !important;
    font-size: 1.1rem !important;
    line-height: 1.7 !important;
    color: #343a40 !important;
    text-align: left !important;
    word-wrap: break-word;
}

    .article-body h1,
    .article-body h2,
    .article-body h3,
    .article-body h4,
    .article-body h5,
    .article-body h6 {
        font-family: 'Segoe UI', sans-serif !important;
        font-weight: 600 !important;
        color: #1f3f5b !important;
        margin-top: 2rem;
        margin-bottom: 1rem;
        text-align: left !important;
    }

    .article-body p,
    .article-body li {
        margin-bottom: 1.2em;
        font-size: 1.05rem;
        color: #333 !important;
    }

    .article-body ul,
    .article-body ol {
        padding-left: 2rem;
        margin-bottom: 1.5em;
    }

    .article-body img {
        max-width: 100% !important;
        height: auto !important;
        display: block;
        margin: 20px auto;
        border-radius: 8px;
        box-shadow: 0 4px 12px rgba(0,0,0,0.05);
    }

    .article-body table {
        width: 100% !important;
        border-collapse: collapse;
        margin: 1.5em 0;
        font-size: 0.95rem;
    }

    .article-body th,
    .article-body td {
        border: 1px
    }

    .article-body font,
    .article-body [style],
    .article-body [align] {
        all: unset !important;
        font-family: inherit !important;
        color: inherit !important;
    }

.article-body {
    font-family: 'Segoe UI', sans-serif !important;
    font-size: 1.1rem;
    line-height: 1.75;
    color: #343a40;
    text-align: left;
    word-wrap: break-word;
}

    .article-body h1,
    .article-body h2,
    .article-body h3,
    .article-body h4,
    .article-body h5,
    .article-body h6 {
        font-family: 'Segoe UI', sans-serif;
        font-weight: 600;
        color: #1f3f5b;
        margin-top: 2rem;
        margin-bottom: 1rem;
        line-height: 1.3;
    }

    .article-body p {
        margin-bottom: 1.25em;
        font-size: 1.05rem;
        color: #333;
    }

    .article-body ul,
    .article-body ol {
        padding-left: 2rem;
        margin-bottom: 1.5em;
    }

    .article-body li {
        margin-bottom: 0.75em;
        line-height: 1.6;
    }

    .article-body img {
        max-width: 100%;
        height: auto;
        display: block;
        margin: 20px auto;
        border-radius: 8px;
        box-shadow: 0 4px 12px rgba(0,0,0,0.05);
    }

    .article-body table {
        width: 100%;
        border-collapse: collapse;
        margin: 1.5em 0;
        font-size: 0.95rem;
    }

    .article-body th,
    .article-body td {
        border: 1px solid #ccc;
        padding: 10px;
        text-align: left;
    }

    .article-body blockquote {
        border-left: 4px solid #007bff;
        padding-left: 15px;
        color: #555;
        margin: 1.5em 0;
        font-style: italic;
    }

.publications-banner {
    position: relative;
    width: 100%;
    height: auto;
    max-height: 420px;
    overflow: hidden;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

.publications-banner-img {
    width: 100%;
    height: auto;
    object-fit: cover;
    display: block;
    max-height: 420px;
}

.publications-banner-text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    color: white;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.5);
}

    .publications-banner-text h1 {
        font-size: 2.8rem;
        font-weight: 800;
        margin-bottom: 10px;
    }

    .publications-banner-text p {
        font-size: 1.2rem;
        font-weight: 400;
    }

.publications-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0px 20px;
}

.publications-intro {
    background: #f9fafb;
    border-left: 5px solid #007bff;
    padding: 20px;
    font-size: 1.05rem;
    margin-bottom: 40px;
    color: #333;
    line-height: 1.6;
}

.publications-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
}

.publication-card {
    background: #ffffff;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
    transition: transform 0.3s ease;
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
}

    .publication-card:hover {
        transform: translateY(-5px);
        text-decoration: none;
    }

    .publication-card img {
        height: 200px;
        object-fit: cover;
        width: 100%;
        display: block;
    }

    .publication-card h2 {
        font-size: 1.2rem;
        font-weight: 700;
        color: #1f3f5b;
        margin: 15px;
    }

    .publication-card p {
        font-size: 0.95rem;
        color: #555;
        margin: 0 15px 20px;
        line-height: 1.6;
    }

/* Grid improved for 4 columns */
.publications-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 24px;
    margin-top: 30px;
    animation: fadein 0.8s ease-in;
}

/* Improved card styling */
.publication-card {
    background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
    opacity: 0;
    animation: slideUpFadeIn 0.6s ease forwards;
}

    .publication-card:hover {
        transform: translateY(-6px);
        box-shadow: 0 16px 40px rgba(0, 0, 0, 0.12);
    }

    /* Uniform thumbnail */
    .publication-card img {
        height: 180px;
        object-fit: cover;
        width: 100%;
        display: block;
    }

    /* Title styling */
    .publication-card h2 {
        font-size: 1.1rem;
        font-weight: 700;
        color: #1a2d40;
        margin: 15px 15px 10px;
        text-align: center;
    }

    /* Description styling */
    .publication-card p {
        font-size: 0.95rem;
        color: #555;
        margin: 0 15px 20px;
        line-height: 1.5;
    }

/* Entry animation */
@keyframes slideUpFadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Grid fadein animation */
@keyframes fadein {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes fadeUp {
    from {
        opacity: 0;
        transform: translateY(40px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeLeft {
    from {
        opacity: 0;
        transform: translateX(-40px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes fadeRight {
    from {
        opacity: 0;
        transform: translateX(40px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.contactus2025-section-wrapper {
    padding: 60px 20px;
    background: linear-gradient(135deg, #f9fafc 0%, #eef3f7 100%);
    border-bottom: 1px solid #dde3ea;
}

.contactus2025-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.contactus2025-agent-heading {
    font-size: 1.8rem;
    margin: 40px 0 30px;
    color: #1a2b3c;
    text-align: left;
}

.contactus2025-agent-card,
.contactus2025-agent-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.contactus2025-agent-row {
    display: flex;
    align-items: flex-start;
    gap: 30px;
    background: #ffffff;
    border-radius: 12px;
    padding: 25px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.contactus2025-agent-logo {
    width: 150px;
    min-width: 150px;
    height: 150px;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 6px 14px rgba(0, 0, 0, 0.1);
    background: white;
    display: flex;
    align-items: center;
    justify-content: center;
}

    .contactus2025-agent-logo img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

.contactus2025-agent-details {
    flex: 1;
    font-size: 1rem;
    color: #2a2a2a;
    line-height: 1.6;
}

    .contactus2025-agent-details b {
        display: block;
        font-size: 1.1rem;
        margin-bottom: 10px;
        color: #1a2b3c;
    }

    .contactus2025-agent-details a {
        text-decoration: none;
        color: #0056b3;
    }

.contactus2025-map-fullwidth {
    width: 100%;
    padding: 0;
    margin: 0;
    background: #f4f6f9;
    border-top: 1px solid #dde3ea;
    border-bottom: 1px solid #dde3ea;
}

.contactus2025-map-frame {
    width: 100%;
    height: 400px;
    display: block;
    border: none;
    margin: 0;
    padding: 0;
    line-height: 0;
}

.contactus2025-agent-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
    margin-top: 30px;
}

.contactus2025-agent-card {
    background: #ffffff;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 6px 14px rgba(0, 0, 0, 0.06);
    padding: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    transition: transform 0.3s ease;
}

    .contactus2025-agent-card:hover {
        transform: translateY(-4px);
    }

    .contactus2025-agent-card img {
        max-width: 100%;
        max-height: 120px;
        object-fit: contain;
        border-radius: 0;
        margin-bottom: 15px;
        background: transparent;
        box-shadow: none;
    }

    .contactus2025-agent-card b {
        font-size: 1.1rem;
        color: #1a2b3c;
        margin-bottom: 8px;
    }

    .contactus2025-agent-card .details {
        font-size: 0.95rem;
        color: #444;
        line-height: 1.5;
    }

/* overall section style */
.calc2025-section {
    background: linear-gradient(135deg,#f5f7fa 0%,#e9eef4 100%);
}

.calc2025-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px 20px;
    text-align: left;
    padding-bottom: 20px;
}
/* headings */
.calc2025-title {
    font-family: 'Open Sans',sans-serif;
    font-size: 2.5rem;
    text-align: center;
    margin: 0;
}
/* tables */
.calc2025-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 1.5rem;
}

    .calc2025-table td {
        padding: 8px 12px;
        vertical-align: middle;
        font-family: 'Open Sans',sans-serif;
        font-size: 1rem;
    }
/* buttons */
.calc2025-btn {
    margin-right: 1rem;
    padding: 0.6rem 1.4rem;
    font-size: 1rem;
}


/* CSS‐only scroll animations */
@keyframes fadeInLeft {
    from {
        opacity: 0;
        transform: translateX(-30px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes fadeInRight {
    from {
        opacity: 0;
        transform: translateX(30px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.fade-in-left {
    animation: fadeInLeft 0.8s ease-out both;
}

.fade-in-right {
    animation: fadeInRight 0.8s ease-out both;
}

/* remove any leftover Telerik borders */
.RadPageLayout {
    border: none !important;
}
/* ---- Calculator Page Heading ---- */
.calc2025-heading-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 40px 20px;
    text-align: center;
    padding-bottom: 0;
}

.calc2025-heading-image {
    display: block;
    margin: 0 auto 20px;
    max-width: 200px;
    width: 100%;
    height: auto;
}

.calc2025-heading-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 2.75rem;
    font-weight: 700;
    text-transform: uppercase;
    margin: 0;
    color: #333;
}
/* ---- Calculator Header: Two-column ---- */
.calc2025-heading-section {
    padding: 20px 20px;
}

.calc2025-heading-container.two-col {
    display: flex;
    align-items: center;
    max-width: 1200px;
    margin: 0 auto;
    gap: 40px;
    flex-wrap: wrap;
}

.calc2025-image-col {
    flex: 0 0 200px;
}

    .calc2025-image-col .faq-image {
        display: block;
        max-width: 100%;
        height: auto;
    }

.calc2025-text-col {
    flex: 1;
    text-align: left;
}


.calc2025-infobox {
    background-color: #f5f5f5;
    border-left: 4px solid #007acc;
    padding: 20px;
    margin-top: 20px;
    border-radius: 4px;
}

    .calc2025-infobox p {
        margin: 0;
        font-size: 1rem;
        color: #555;
    }

/* stack to single column on small */
@media (max-width: 768px) {
    .calc2025-heading-container.two-col {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .calc2025-text-col {
        text-align: center;
    }
}

/* ---- Calculator Header: Gradient + Fade-in Animation ---- */
.calc2025-heading-section {
    /* angled gradient: light bluish-grey tones */
    background: linear-gradient(135deg, #fafbfc 0%, #f2f4f6 100%);
}

.fade-in-left {
    opacity: 0;
    transform: translateX(-30px);
    animation: fadeInLeft 0.8s ease-out forwards;
}

@keyframes fadeInLeft {
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* two-col flex container */
.calc2025-heading-container {
    display: flex;
    align-items: center;
    justify-content: center; /* keeps the pair centered as a whole */
    max-width: 1200px; /* match your other pages’ container width */
    margin: 0 auto;
    padding: 20px 20px; /* adjust as desired */
}

    /* image column stays its natural size */
    .calc2025-heading-container .faq-image-container {
        flex: 0 0 auto;
        margin-right: 30px;
    }




/* make sure your fade-in-right still applies */
.fade-in-right {
    animation: fadeInRight 0.6s ease forwards;
}

/* Four-column header for From/To/Attention/Date */
.calc2025-header-table {
    width: 100%;
    margin-bottom: 2rem;
    table-layout: fixed;
    border-collapse: collapse;
}

    .calc2025-header-table td {
        vertical-align: top;
        text-align: left;
        padding: 1rem;
        color: #333;
        background: #fafafa; /* subtle background */
        border-radius: 4px;
        /* optional: give a very light shadow to separate from rest */
        box-shadow: 0 1px 3px rgba(0,0,0,0.05);
    }

        .calc2025-header-table td + td {
            margin-left: 1rem;
        }

        /* make the label stand out */
        .calc2025-header-table td strong {
            display: block;
            margin-bottom: 0.25rem;
            font-size: 0.95rem;
            font-weight: 600;
        }


/* Container + grid */
.calc2025-info-section {
    background: linear-gradient(to bottom right, #f9fbfe, #f0f2f3);
    
}

.calc2025-info-grid {
    display: grid;
    gap: 1rem; /* space between cards */
    /* auto‐flow horizontally, but wrap when needed */
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    margin-bottom: 2rem;
}

.calc2025-info-card {
    background-color: #fff;
    border: 1px solid #3b76cc; /* thin blue border */
    border-radius: 4px;
    padding: 1rem;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 100px;
    opacity: 0; /* start invisible for fade‐in */
    transform: translateY(10px); /* slight lift on entry */
    animation: cardFadeIn 0.4s ease‐out forwards;
}

.calc2025-info-label {
    font-size: 0.9rem;
    font-weight: 500;
    color: #3b76cc;
    margin-bottom: 0.5rem;
}

.calc2025-info-value {
    font-size: 1.1rem;
    font-weight: 600;
    color: #333;
}

/* ------------------------------------------------------------------
   Currency & Transport Section
   ------------------------------------------------------------------ */
.calc2025-transport-section {
    background: linear-gradient(145deg, #f9fbfd, #dee5f1);
    padding: 2rem 1rem;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
    margin-bottom: 2rem;
    transition: transform 0.6s ease, opacity 0.6s ease;
}

.calc2025-transport-container {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
    max-width: 1200px;
    margin: 0 auto;
}

.calc2025-transport-field {
    flex: 1 1 300px;
    display: flex;
    flex-direction: column;
}

.calc2025-transport-label {
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
    color: #333;
    text-align: left;
}

.calc2025-transport-select .rcbInput {
    border-radius: 4px !important;
    border: 1px solid #ccc !important;
    padding: 0.4rem 0.6rem !important;
    transition: border-color 0.3s ease;
}

    .calc2025-transport-select .rcbInput:focus {
        border-color: #7aaefc !important;
    }

.calc2025-transport-radio-group {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.calc2025-transport-radios input[type="radio"] + label {
    margin-right: 0.5rem;
    cursor: pointer;
}

.calc2025-transport-radios input[type="radio"] {
    margin-right: 0.3rem;
}

.calc2025-transport-asterisk {
    color: #d9534f;
    margin-right: 0.3rem;
}

@media (max-width: 600px) {
    .calc2025-transport-container {
        flex-direction: column;
    }
}




    .calc2025-info-card:hover {
        transform: translateY(-4px);
        box-shadow: 0 8px 16px rgba(0,0,0,0.1);
    }


/* ================ Transport Box ================ */
.calc2025-transport-box {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    padding-bottom: 0;
}

.calc2025-transport-header {
    display: flex;
    align-items: center;
}

.calc2025-transport-label {
    font-weight: 600;
    margin-right: 6px;
}

.calc2025-transport-asterisk {
    color: #d00;
    font-size: 1em;
}

.calc2025-transport-radios {
    display: flex !important;
    gap: 20px;
}

/* Sub-option container */
.calc2025-suboption {
    border: 3px solid #2b5685;
    border-radius: 8px;
    background-color: #f9fbfd;
    padding: 20px;
    margin-top: 20px;
}

/* Header flex for label + validator */
.calc2025-suboption-header {
    display: flex;
    align-items: center;
}

/* Your new label style */
.calc2025-suboption-label {
    font-weight: bold;
    margin-right: 5px;
}

/* Ensure the “*” sits snug beside the label */
.calc2025-suboption-header .calc2025-transport-asterisk {
    margin: 0;
    margin-left: 5px;
}

/* Tighten space between label and radios */
.calc2025-transport-radios {
    margin-top: 10px;
}

/* Left-align the callout note */
.calc2025-note {
    display: block;
    text-align: left;
    margin-top: 15px;
    padding: 10px 15px;
    background-color: #eef5fc;
    border-left: 4px solid #2b5685;
    font-size: 0.9rem;
    color: #333;
}

.calc2025-suboption-description {
    margin: 10px 0;
    font-size: 0.95rem;
    color: #333;
    text-align: left;
}

/* container for all sub-options */
.calc2025-suboptions {
    margin-top: 2rem;
}

/* each sub-option panel */
.calc2025-suboption {
    border: 2px solid #d1d5db;
    border-radius: 6px;
    padding: 1rem 1.5rem;
    margin-bottom: 1.5rem;
    background: #f9fafb;
}

/* header row inside a sub-option */
.calc2025-suboption-header {
    margin-bottom: 0.75rem;
}

/* label in header */
.calc2025-suboption-label {
    font-weight: 600;
    font-size: 1.1rem;
    color: #111827;
}

/* group of simple .field items laid out */
.calc2025-field-group {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem 2rem;
    margin-bottom: 1rem;
}

/* single field row */
.calc2025-field {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
    flex: 1 1 300px;
}

/* label in a field */
.calc2025-field-label {
    font-weight: 500;
    color: #374151;
}

/* inputs (numeric, combo) all share this */
.calc2025-field-input {
    flex: 1;
    max-width: 200px;
}

/* repeater grid overrides */
.calc2025-containers-grid .calc2025-field {
    flex-wrap: wrap;
}

/* asterisk styling */
.calc2025-transport-asterisk {
    color: #dc2626;
    margin-left: 0.25rem;
}

/* note text (no change here) */
.calc2025-note {
    display: block;
    margin-top: 0.5rem;
    font-size: 0.875rem;
    color: #6b7280;
}
/* Sub-option wrapper */
.calc2025-suboption {
    border: 1px solid #ccc;
    border-radius: 4px;
    padding: 1rem;
    margin-top: 1.5rem;
    background: #fafafa;
}

/* Header/title */
.calc2025-suboption-header {
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
}

.calc2025-suboption-label {
    display: inline-block;
}

/* Containers grid */
.calc2025-containers-grid,
.calc2025-freight-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem 2rem;
}

/* Generic field styling */
.calc2025-field {
    flex: 1 1 280px;
    display: flex;
    flex-direction: column;
}

.calc2025-field-label {
    margin-bottom: 0.25rem;
    font-weight: 500;
}

.calc2025-field-input-group {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.calc2025-field-input {
    flex: 1;
}

/* Asterisk validator */
.calc2025-field-asterisk {
    color: #d00;
    margin-left: 0.25rem;
}

.calc2025-suboption {
    border: 1px solid #ccc;
    border-radius: 4px;
    padding: 1rem;
    margin-top: 1.5rem;
    background: #fafafa;
}

.calc2025-suboption-header {
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
}

.calc2025-suboption-label {
    display: inline-block;
}

.calc2025-containers-grid,
.calc2025-freight-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem 2rem;
}

.calc2025-field {
    flex: 1 1 280px;
    display: flex;
    flex-direction: column;
}

.calc2025-field-label {
    margin-bottom: 0.25rem;
    font-weight: 500;
}

.calc2025-field-input-group {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.calc2025-field-input {
    flex: 1;
}

.calc2025-field-asterisk {
    color: #d00;
    margin-left: 0.25rem;
}

.calc2025-freight-wrapper {
    max-width: 1200px;
    padding: 10px 0;
}

.calc2025-row {
    display: flex;
    align-items: flex-start;
}

.calc2025-label-row {
    display: flex;
    align-items: center;
    gap: 4px;
    margin-bottom: 4px;
}

.calc2025-field-tight {
    display: flex;
    flex-direction: column;
    margin-bottom: 12px;
}

.calc2025-field-label {
    font-size: 14px;
    font-weight: 500;
    color: #1f1f1f;
}

.calc2025-field-asterisk {
    color: red;
    font-size: 14px;
    line-height: 1;
}

.calc2025-field-input {
    font-size: 14px;
}

.calc2025-freightcost-row {
    display: flex;
    align-items: center;
    gap: 10px;
}

.calc2025-freight-wrapper {
    max-width: 1200px;
    padding: 10px 0;
}

.calc2025-row {
    display: flex;
    align-items: flex-start;
}

.calc2025-label-row {
    display: flex;
    align-items: center;
    gap: 4px;
    margin-bottom: 4px;
}

.calc2025-field-tight {
    display: flex;
    flex-direction: column;
    margin-bottom: 12px;
}

.calc2025-field-label {
    font-size: 14px;
    font-weight: 500;
    color: #1f1f1f;
}

.calc2025-field-asterisk {
    color: red;
    font-size: 14px;
    line-height: 1;
}

.calc2025-field-input {
    font-size: 14px;
}

.calc2025-freightcost-row {
    display: flex;
    align-items: center;
    gap: 10px;
}



.calc2025-btn {
    font-size: 16px;
    font-weight: 600;
    padding: 12px 28px;
    border: none;
    border-radius: 6px;
    color: #fff;
    background: linear-gradient(135deg, #007bff, #0d6efd);
    box-shadow: 0 4px 12px rgba(13, 110, 253, 0.25);
    transition: all 0.3s ease;
    cursor: pointer;
}

    .calc2025-btn:hover:not(.disabled) {
        background: linear-gradient(135deg, #0056b3, #0b5ed7);
        box-shadow: 0 6px 16px rgba(13, 110, 253, 0.35);
        transform: translateY(-1px);
    }

    .calc2025-btn:active:not(.disabled) {
        transform: translateY(1px);
        box-shadow: 0 2px 6px rgba(13, 110, 253, 0.2);
    }

    .calc2025-btn.disabled {
        background: #c0c0c0;
        cursor: not-allowed;
        pointer-events: none;
        box-shadow: none;
    }

    .calc2025-btn.reset {
        background: #6c757d;
        box-shadow: 0 4px 12px rgba(108, 117, 125, 0.25);
    }

        .calc2025-btn.reset:hover {
            background: #5a6268;
            box-shadow: 0 6px 16px rgba(108, 117, 125, 0.35);
        }

    .calc2025-btn.disabled {
        opacity: 0.5;
        cursor: not-allowed;
        pointer-events: none;
    }

/* style for disabled button */
.calc2025-btn.disabled {
    opacity: 0.5;
    cursor: default;
}

/* style for enabled button */
.calc2025-btn {
    background-color: #007bff;
    color: white;
    border: none;
    padding: 0.6em 1.2em;
    font-size: 1em;
    border-radius: 4px;
    transition: background-color 0.2s ease-out, transform 0.1s ease-in;
}

    .calc2025-btn:not(.disabled):hover {
        background-color: #0056b3;
        cursor: pointer;
    }

    .calc2025-btn:not(.disabled):active {
        transform: scale(0.98);
    }

/* Make the outer wrapper exactly 1200 px wide and centered */
.calc2025-container {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
}

/* Force the repeater’s grid to span 100% of that 1200 px area */
.calc2025-containers-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    width: 100%;
    box-sizing: border-box;
}

    /* Let each “field” inside the containers grid expand to fill available width */
    .calc2025-containers-grid .calc2025-field {
        flex: 1 1 0;
        min-width: 0; /* Prevent overflow */
    }

/* If you want exactly three columns per row, for example:
.calc2025-containers-grid .calc2025-field {
  flex: 1 1 calc(33.333% - 20px);
}
*/
/* Ensure this entire info‐section is centered and capped at 1200px */
.calc2025-info-section {
    width: 100%;
}

    .calc2025-info-section > .calc2025-info-grid,
    .calc2025-info-section > .calc2025-info-grid .calc2025-info-card {
        box-sizing: border-box;
        max-width: 1200px;
        width: 100%;
        margin: 0 auto;
    }

/* Now force the containers grid inside panContainers to span 100% of that 1200px */
.calc2025-containers-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    box-sizing: border-box;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

    /* Let each container‐field expand equally to fill the row */
    .calc2025-containers-grid .calc2025-field {
        flex: 1 1 calc(33.333% - 20px); /* three per row; adjust as needed */
        min-width: 200px; /* prevent them from becoming too narrow */
        box-sizing: border-box;
    }

/* If you want four per row: */
/*
.calc2025-containers-grid .calc2025-field {
  flex: 1 1 calc(25% - 20px);
}
*/
/*=================================================================================
  1) Create a “1200px max‐width + centered” wrapper for panEstimateParameters
=================================================================================*/
#<%= panEstimateParameters.ClientID % > {
    /* 100% width up to 1200px, then center */
    max-width: 1200px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
    padding: 0; /* remove any default padding */
}

    /*=================================================================================
  2) Ensure every .calc2025-suboption inside that panel is 100% wide of its parent
=================================================================================*/
    #<%= panEstimateParameters.ClientID % > .calc2025-suboption {
        width: 100%;
        box-sizing: border-box;
        /* Optional styling to match your other sections (background, border, etc.) */
        background: #ffffff; /* white background */
        border: 1px solid #e0e0e0; /* light gray border */
        border-radius: 8px; /* match your other box corners */
        padding: 20px; /* feel free to adjust padding */
        margin-bottom: 20px; /* space between sub‐options */
    }

        /*=================================================================================
  3) If you have multiple calc2025-suboption blocks in a row,
     you can force them to stack vertically (each full width).
=================================================================================*/
        #<%= panEstimateParameters.ClientID % > .calc2025-suboption + .calc2025-suboption {
            margin-top: 0; /* no extra gap above, since margin‐bottom on previous handles spacing */
        }

    /*=================================================================================
  4) Example: specific “Transport type” box styling (padding, background gradient, etc.)
     – adjust to taste to match your other “cards.”
=================================================================================*/
    #<%= panEstimateParameters.ClientID % > .calc2025-suboption-header {
        font-size: 1.125rem;
        font-weight: 600;
        color: #222222;
        margin-bottom: 12px;
    }

    #<%= panEstimateParameters.ClientID % > .calc2025-transport-radios {
        margin-left: 16px; /* ensure radios sit nicely under the header */
    }
/*--------------------------------------------------------------------------------
  Ensure each .calc2025-suboption itself is a 1200px-wide centered box
--------------------------------------------------------------------------------*/
.calc2025-suboption {
    /* Full width up to 1200px, then center */
    width: 100%;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    /* Match your existing box styling (background, border, padding, etc.) */
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    box-sizing: border-box;
    padding: 20px;
    /* If you want consistent spacing between suboptions: */
    margin-bottom: 20px; /* adjust as needed */
}

    /*--------------------------------------------------------------------------------
  If your “suboption” contains child elements (labels, inputs, etc.), ensure they
  fill the available width rather than shrink to content.
--------------------------------------------------------------------------------*/
    .calc2025-suboption * {
        box-sizing: border-box;
    }

/*--------------------------------------------------------------------------------
  If you have a wrapping container that provides a full-width background gradient,
  leave it alone. We’re only constraining the white “suboption” boxes themselves.
--------------------------------------------------------------------------------*/

.calc2025-info-card:nth-child(1) {
    animation-delay: 0.05s;
}

.calc2025-info-card:nth-child(2) {
    animation-delay: 0.15s;
}

.calc2025-info-card:nth-child(3) {
    animation-delay: 0.25s;
}

.calc2025-info-card:nth-child(4) {
    animation-delay: 0.35s;
}

.calc2025-info-card:nth-child(5) {
    animation-delay: 0.45s;
}

/* -------------------------------------------------------------------
   5) ONCE VISIBLE (PREVENT RE‐ANIMATION ON RESIZE/PARTIAL POSTBACK)
   -------------------------------------------------------------------
   After the card’s animation completes, we leave it at full opacity. If
   you use partial postbacks or dynamic injection, the “forwards” fill
   mode ensures it doesn’t reset back to opacity:0.
*/

/* 4. Fade‐in/slide‐up keyframes */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* 7. On hover (optional) */
.calc2025-info-card:hover {
    border-color: #0056b3;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
    transition: all 0.2s ease;
}
/* ---------------------------------------------
   1) GRID CONTAINER: wrap cards, min‐width 150px
   --------------------------------------------- */
.calc2025-info-grid {
    display: grid;
    gap: 1rem; /* space between cards */
    /* Make as many 150px-wide cards as will fit, then wrap */
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    margin-bottom: 2rem;
}

/* ---------------------------------------------
   2) INDIVIDUAL CARD STYLES
   --------------------------------------------- */
.calc2025-info-card {
    background-color: #ffffff;
    border: 1px solid #3b76cc; /* thin blue border */
    border-radius: 4px;
    padding: 1rem;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 100px;
    /* start invisible and shifted down for fade-in */
    opacity: 0;
    transform: translateY(10px);
    animation: cardFadeIn 0.4s ease-out forwards;
}

/* Label (smaller, blue) */
.calc2025-info-label {
    font-size: 0.9rem;
    font-weight: 500;
    color: #3b76cc;
    margin-bottom: 0.5rem;
}

/* Value (larger, dark) */
.calc2025-info-value {
    font-size: 1.1rem;
    font-weight: 600;
    color: #333333;
}

/* ---------------------------------------------
   3) FADE-IN KEYFRAMES
   --------------------------------------------- */
@keyframes cardFadeIn {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ---------------------------------------------
   4) STAGGERED DELAYS (cascade effect)
   --------------------------------------------- */
.calc2025-info-card:nth-child(1) {
    animation-delay: 0.05s;
}

.calc2025-info-card:nth-child(2) {
    animation-delay: 0.15s;
}

.calc2025-info-card:nth-child(3) {
    animation-delay: 0.25s;
}

.calc2025-info-card:nth-child(4) {
    animation-delay: 0.35s;
}

.calc2025-info-card:nth-child(5) {
    animation-delay: 0.45s;
}
/* Ensure the header wrapper can position its contents in one line */
.calc2025-suboption-header {
    display: flex;
    align-items: center;
}

/* Style the label itself (already exists in your CSS) */
.calc2025-suboption-label {
    font-size: 1rem;
    font-weight: 500;
    color: #333333;
    /* no change needed here, just an example */
}

/* The validator “*” */
.calc2025-error {
    color: #e00; /* red color (adjust if needed) */
    font-weight: bold;
    margin-left: 0px; /* exactly 20px to the right of the label */
    font-size: 1rem; /* match the label’s size */
    line-height: 1; /* vertically center with the label text */
}


/* ensure the backdrop is beneath the modal content but above everything else */
.modal-backdrop {
    z-index: 1040 !important;
}

/* make the modal itself float over your nav */
#estimateModal {
    z-index: 1050; /* higher than your menu’s z-index */
}

    /* if you need it full-screen-flex centering, fallback: */
    #estimateModal.modal {
        
        align-items: center;
        justify-content: center;
    }


.calc2025-info-modern {
    padding: 1.5rem;
    background: #f9f9f9;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.06);
}

.calc2025-info-grid-modern {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1rem;
    max-width: 1160px;
    margin: 0 auto; /* center it */
}

.calc2025-info-card-modern {
    background: #fff;
    border: 1px solid #e1e1e1;
    border-radius: 6px;
    padding: 1rem;
    transition: box-shadow 0.3s ease, transform 0.3s ease;
    opacity: 0;
    transform: translateY(20px);
    animation: fadeUp 0.6s forwards;
}

    .calc2025-info-card-modern:nth-child(1) {
        animation-delay: 0s;
    }

    .calc2025-info-card-modern:nth-child(2) {
        animation-delay: 0.1s;
    }

    .calc2025-info-card-modern:nth-child(3) {
        animation-delay: 0.2s;
    }

    .calc2025-info-card-modern:nth-child(4) {
        animation-delay: 0.3s;
    }

    .calc2025-info-card-modern:nth-child(5) {
        animation-delay: 0.4s;
    }

    .calc2025-info-card-modern:hover {
        box-shadow: 0 6px 15px rgba(0, 0, 0, 0.1);
        transform: translateY(-5px);
    }

    .calc2025-info-card-modern label {
        display: block;
        font-size: 0.85rem;
        color: #555;
        margin-bottom: 0.5rem;
        font-weight: 600;
        text-transform: uppercase;
    }

    .calc2025-info-card-modern div {
        font-size: 1rem;
        color: #222;
    }

@keyframes fadeUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}


.calc2025-total-modern {
    max-width: 600px;
    margin: 2rem auto;
    padding: 1.5rem 2rem;
    background: linear-gradient(135deg, #004d7a, #00bf72);
    color: #fff;
    border-radius: 8px;
    text-align: center;
    box-shadow: 0 8px 16px rgba(0,0,0,0.2);
}

.calc2025-total-label {
    font-size: 1.2rem;
    letter-spacing: 1px;
    margin-bottom: 0.5rem;
    font-weight: 500;
}

.calc2025-total-value-box {
    background: rgba(255,255,255,0.1);
    padding: 0.75rem 1rem;
    border-radius: 4px;
    display: inline-block;
}

.calc2025-total-value-text {
    font-size: 1.8rem;
    font-weight: bold;
    color: #fff;
}
