/* ============================================
   SHARP SANS FONT FACES
   ============================================ */
   @font-face {
    font-family: 'Sharp Sans';
    src: url('../fonts/sharp-sans/Sharp Sans.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Sharp Sans';
    src: url('../fonts/sharp-sans/Sharp Sans Italic.otf') format('opentype');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Sharp Sans';
    src: url('../fonts/sharp-sans/Sharp Sans Thin.otf') format('opentype');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Sharp Sans';
    src: url('../fonts/sharp-sans/Sharp Sans Thin Italic.otf') format('opentype');
    font-weight: 100;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Sharp Sans';
    src: url('../fonts/sharp-sans/Sharp Sans Light.otf') format('opentype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Sharp Sans';
    src: url('../fonts/sharp-sans/Sharp Sans Light Italic.otf') format('opentype');
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Sharp Sans';
    src: url('../fonts/sharp-sans/Sharp Sans Medium.otf') format('opentype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Sharp Sans';
    src: url('../fonts/sharp-sans/Sharp Sans Medium Italic.otf') format('opentype');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Sharp Sans';
    src: url('../fonts/sharp-sans/SharpSansBold.otf') format('opentype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Sharp Sans';
    src: url('../fonts/sharp-sans/Sharp Sans Bold Italic.otf') format('opentype');
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Sharp Sans';
    src: url('../fonts/sharp-sans/Sharp Sans Semibold.otf') format('opentype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Sharp Sans';
    src: url('../fonts/sharp-sans/Sharp Sans Semibold Italic.otf') format('opentype');
    font-weight: 600;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Sharp Sans';
    src: url('../fonts/sharp-sans/Sharp Sans Extrabold.otf') format('opentype');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Sharp Sans';
    src: url('../fonts/sharp-sans/Sharp Sans ExtraBold Italic.otf') format('opentype');
    font-weight: 800;
    font-style: italic;
    font-display: swap;
}

/* Global Styles - Exact Figma Colors */
:root {
    --bg-primary: #00032C;
    --bg-secondary: #111030;
    --text-primary: #F4FAFF;
    --text-secondary: #D1D5DB;
    --text-dark: #111030;
    --primary-color: #1181D0;
    --accent-color: #9DCFF3;
    --secondary-bg: #0E0A84;
    --card-bg: rgba(17, 41, 84, 0.41);
    --border-color: rgba(37, 163, 255, 0.3);
    --gradient-start: rgba(105, 223, 202, 0.3);
    --gradient-end: rgba(0, 3, 44, 0);
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Sharp Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    background-color: var(--bg-primary);
    color: var(--text-primary);
    line-height: 1.6;
    overflow-x: hidden;
}

ul,
ol {
    margin-left: 0 !important;
}

.btn {
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Sharp Sans', sans-serif;
}

.btn-primary {
    background: hsla(207, 100%, 98%, 1);
    color: hsla(205, 85%, 44%, 1);
    border: none;
    min-height: 46px;
    font-size: 17px;
    line-height: 22px;
    letter-spacing: -0.18px;
    font-weight: 600;
    border-radius: 6px;
    padding: 12px 20px;
    cursor: pointer;
    transition: all 0.3s;
}

.btn-primary:hover {
    background: hsla(205, 85%, 44%, 1);
    color: var(--text-primary);
}

.btn-primary:disabled {
    background: hsla(205, 78%, 78%, 1);
    color: hsla(206, 82%, 37%, 1);
    cursor: not-allowed;
}

.white-header .btn-primary {
    background: hsla(205, 85%, 44%, 1);
    color: var(--text-primary);
}

.white-header .btn-primary:hover {
    background: hsla(206, 82%, 37%, 1);
    color: var(--text-primary);
}

.white-header .btn-primary:disabled {
    background: hsla(205, 78%, 78%, 1);
    color: var(--text-primary);
}

.btn-secondary {
    background: transparent;
    color: var(--text-primary);
    border: 1px solid hsla(205, 85%, 44%, 1);
    min-height: 46px;
    padding: 11px 20px;
    border-radius: 6px;
    font-size: 17px;
    font-weight: 600;
    line-height: 22px;
    letter-spacing: -0.18px;
    cursor: pointer;
    transition: all 0.3s;
}

.btn-secondary:hover {
    background: hsla(219, 66%, 20%, 1);
    color: var(--text-primary);
    border-color: hsla(205, 85%, 44%, 1);
}

.btn-secondary:disabled {
    color: hsla(206, 82%, 37%, 1);
    cursor: not-allowed;
}

.white-header .btn-secondary {
    color: hsla(205, 85%, 44%, 1);
}

.white-header .btn-secondary:hover {
    background: hsla(206, 100%, 95%, 1);
}

.white-header .btn-secondary:disabled {
    color: hsla(205, 78%, 78%, 1);
    border-color: hsla(205, 78%, 78%, 1);
    cursor: not-allowed;
}

.btn-tertiary {
    background-color: transparent;
    color: var(--text-primary);
    min-height: 46px;
    font-size: 17px;
    line-height: 22px;
    letter-spacing: -0.18px;
    font-weight: 600;
    border-radius: 6px;
    padding: 12px 20px;
    cursor: pointer;
    transition: all 0.3s;
}

.btn-tertiary:hover {
    background: hsla(219, 66%, 20%, 1);
}

.btn-tertiary:disabled {
    color: hsla(206, 82%, 37%, 1);
    cursor: not-allowed;
}

.white-header .btn-tertiary {
    background-color: hsla(0, 0%, 100%, 1);
    color: hsla(205, 85%, 44%, 1);
}

.white-header .btn-tertiary:hover {
    background-color: hsla(206, 100%, 95%, 1);
}

.white-header .btn-tertiary:disabled {
    color: hsla(205, 78%, 78%, 1);
}

.btn.lg {
    min-height: 46px;
    font-size: 17px;
    line-height: 22px;
    border-radius: 6px;
    letter-spacing: -0.18px;
}

.btn.md {
    min-height: 38px;
    font-size: 15px;
    line-height: 18px;
    border-radius: 6px;
    letter-spacing: -0.16px;
    padding: 10px 20px;
}

.btn.sm {
    min-height: 32px;
    font-size: 13px;
    line-height: 16px;
    border-radius: 4px;
    letter-spacing: -0.14px;
    padding: 8px 16px;
}

.btn-secondary.md {
    padding: 9px 20px;
}

.btn-secondary.sm {
    padding: 7px 20px;
}

.about-page-body,
.home-page-body {
    background-color: #010122;
}

.solutions-overview-page-body {
    background-color: #00032C;
}

.csr-page-body {
    background-color: #00032C;
}

.home-page-body .footer-bottom-info-bottom-inner-left .Body_S_reg,
.about-page-body .footer-bottom-info-bottom-inner-left .Body_S_reg,
.solutions-overview-page-body .footer-bottom-info-bottom-inner-left .Body_S_reg,
.csr-page-body .footer-bottom-info-bottom-inner-left .Body_S_reg {
    color: #F4FAFF;
}

.home-page-body .footer-bottom-info-bottom-inner-right .Body_S_reg,
.about-page-body .footer-bottom-info-bottom-inner-right .Body_S_reg,
.solutions-overview-page-body .footer-bottom-info-bottom-inner-right .Body_S_reg,
.csr-page-body .footer-bottom-info-bottom-inner-right .Body_S_reg {
    color: #F4FAFF;
}

.home-page-body .footer-bottom-info-bottom-inner-right svg path.stroke,
.about-page-body .footer-bottom-info-bottom-inner-right svg path.stroke,
.solutions-overview-page-body .footer-bottom-info-bottom-inner-right svg path.stroke,
.csr-page-body .footer-bottom-info-bottom-inner-right svg path.stroke {
    stroke: #F4FAFF;
}

.home-page-body .footer-bottom-info-bottom-inner-right svg path.fill,
.about-page-body .footer-bottom-info-bottom-inner-right svg path.fill,
.solutions-overview-page-body .footer-bottom-info-bottom-inner-right svg path.fill,
.csr-page-body .footer-bottom-info-bottom-inner-right svg path.fill {
    fill: #F4FAFF;
}

.careers-page-body,
.contact-us-page-body,
.services-page-body,
.case-studies-page-body {
    background-color: #fff;
}


/* White Header */
.white-header {
    color: #112954;
}

.white-header .navbar-nav-custom {
    background-color: #F4FAFF;
    border: 1px solid var(--blue-100, #E8F5FF)
}

.white-header .nav-link-custom {
    color: #114277;
}

.white-header .nav-link-custom:hover,
.white-header .nav-link-custom.active {
    background-color: #E8F5FF;
    color: #114277;
}

.white-header .search-box {
    background-color: #F4FAFF;
    color: #112954;
}

.white-header .search-box svg path,
.white-header .search-box svg circle {
    stroke: #112954;
}

.white-header .header-actions .btn-primary-header {
    background-color: #1181D0;
    color: #F4FAFF;
}

.white-header .header-section.scrolled {
    background-color: #fff;
}