body {
    color: #fff;
    background: #283894;
    font-weight: 400;
    line-height: 1.5;
    text-rendering: geometricPrecision
}

html,
body {
    height: 100%;
    width: 100%;
    font-size: 16px;
    -moz-appearance: none;
    -webkit-appearance: none;
    font-family: Rabie, Arial, sans-serif
}

::placeholder {
    color: #8a8a8a;
    font-size: 16px
}

@media (prefers-reduced-motion: no-preference) {
    :root {
        scroll-behavior: smooth
    }
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: Rabie, Arial, sans-serif;
    margin-top: 0;
    margin-bottom: .5rem;
    font-weight: 700;
    line-height: 1.4
}

@media (min-width: 1200px) {

    .h1,
    h1 {
        font-size: 2.5rem
    }
}

.h2,
h2 {
    font-size: calc(1.325rem + .9vw)
}

@media (min-width: 1200px) {

    .h2,
    h2 {
        font-size: 2rem
    }
}

.h3,
h3 {
    font-size: calc(1.3rem + .6vw)
}

@media (min-width: 1200px) {

    .h3,
    h3 {
        font-size: 1.75rem
    }
}

.h4,
h4 {
    font-size: calc(1.275rem + .3vw)
}

@media (min-width: 1200px) {

    .h4,
    h4 {
        font-size: 1.5rem
    }
}

.h5,
h5 {
    font-size: 1.25rem
}

.h6,
h6 {
    font-size: 1rem
}

.h1 {
    font-size: 36px
}

.h2 {
    font-size: 24px
}

.h3 {
    font-size: 18px
}

@media (min-width: 992px) {
    .h3 {
        font-size: 20px
    }
}

.h4 {
    font-size: 16px
}

.text-sm {
    font-size: 14px;
    font-weight: 350
}

.text-xs {
    font-size: 12px;
    font-weight: 350
}

a {
    outline: none;
    display: inline-block;
    color: #283894;
    text-decoration: underline
}

a:hover {
    color: #283894
}

a:focus {
    color: #283894;
    outline: unset;
    box-shadow: 0 0 0 3px #283894
}

a:visited,
a:visited:hover,
a:visited i,
a:visited .fa-external-link {
    color: #283894
}

i {
    margin: 0 8px;
    text-shadow: none
}

p {
    margin-top: 0;
    margin-bottom: 1.3rem;
    font-size: 12px
}

dl,
ol,
ul,
ul ul {
    margin-top: 0;
    margin-bottom: 16px;
    padding-left: 16px;
    padding-right: 16px
}

dl li,
ol li,
ul li,
ul ul li {
    margin-bottom: 8px
}

ul {
    list-style-type: disc
}

hr {
    border-color: #a2a5ac;
    margin: 1.5rem 0
}

::-moz-selection {
    color: #fff;
    background: #000
}

::selection {
    color: #fff;
    background: #000
}

@media (max-width: 767px) {
    .logo-wrapper ul li:nth-child(1) svg {
        width: 90px
    }

    .logo-wrapper ul li:nth-child(3) svg {
        width: 70px
    }

    .logo-wrapper .gap-4 {
        gap: 12px !important
    }
}

.checkbox label {
    text-align: left;
    margin-left: 16px
}

label {
    text-align: left
}

.form-control {
    margin-bottom: 24px;
    box-sizing: border-box;
    background: #fff;
    align-items: center;
    padding: 0 16px;
    gap: 10px;
    color: #273894;
    height: 48px;
    border: 1.5px solid #2b2b2b;
    border-radius: 4px
}

.form-check-input {
    width: 1.5em;
    height: 1.5em
}

.hero-text h1 {
    color: #fff;
    line-height: 1.6
}

@media (min-width: 768px) {
    .hero-text h1 {
        width: 400px
    }

    .footer-images img {
        width: auto !important
    }
}

@media (min-width: 1400px) {
    .hero-text h1 {
        line-height: 1.3
    }
}

.hero-text h1 span {
    background: #fff;
    color: #283894;
    padding: 8px 4px
}

.video-wrapper {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    width: auto;
    overflow: hidden;
    background: #1f1f1f;
    border-radius: 4px;
    margin-bottom: 60px;
    margin-top: 80px
}

@media (max-width: 767px) {
    .video-wrapper {
        margin-bottom: 60px;
        margin-top: 0
    }
}

.our-story,
.font-icon,
.the-alphabets {
    background: #273894;
    color: #fff;
    padding: 60px 0
}

.our-story .story-title,
.font-icon .story-title,
.the-alphabets .story-title {
    justify-content: space-between;
    align-items: center;
    padding-bottom: 12px;
    border-bottom: 1px solid #fff;
    font-size: 18px
}

.our-story .story-title .fw-bold,
.font-icon .story-title .fw-bold,
.the-alphabets .story-title .fw-bold {
    font-size: 27px
}

.font-icon {
    background-color: #273894;
    color: #fff
}

.font-icon .story-title {
    border-bottom: 1px solid #fff
}

.font-icon .pat-grid {
    display: flex;
    gap: 12px
}

@media (max-width: 480px) {
    .font-icon .pat-grid {
        flex-wrap: wrap-reverse
    }
}

.keyboard {
    gap: 4px;
    grid-auto-flow: dense;
    display: grid;
    direction: ltr;
    grid-template-columns: repeat(10, minmax(0, 1fr))
}

@media (max-width: 991px) {
    .keyboard {
        grid-template-columns: repeat(5, minmax(0, 1fr))
    }
}

.keyboard__key {
    height: 132px;
    text-align: center;
    line-height: 100px;
    font-size: 30px;
    border-radius: 0;
    border: 1px solid #fff;
    background: transparent
}

.keyboard__key .key-ar {
    display: flex;
    justify-content: center;
    margin: 16px 0 0
}

.keyboard__key .key-en {
    display: flex;
    justify-content: flex-start;
    margin: 12px 0 0;
    line-height: normal;
    padding: 12px
}

@media (max-width: 991px) {
    .keyboard__key.blank {
        display: none
    }
}

.display-word {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 152px;
    color: #f5f5f5
}

@media (min-width: 992px) {
    .display-word {
        padding-left: 0
    }
}


input {
    color: var(--fg)
}

form,
input {
    width: 100%
}

.hero-text h1 {
    background: #fff;
    color: #273894;
    border-radius: 8px;
    padding: 4px
}

.font-icon p,
.hero-text p {
    text-align: justify
}

@media (prefers-color-scheme: dark) {
    :root {
        --bg: #2e3138;
        --bgT: #2e313800;
        --fg: #e3e4e8;
        --inputBg: #17181c
    }
}

.text-controls {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 30px;
    position: absolute;
    bottom: 40px;
    left: 24px;
    right: 24px
}

@media (max-width: 660px) {
    .text-controls {
        flex-direction: column-reverse;
        align-items: center
    }
}

.action-buttons {
    display: flex;
    gap: 20px
}

.text-controls .text-info {
    color: #fff !important;
    font-size: 14px;

    @media (max-width: 660px) {
        width: 100%;
        text-align: center;
        margin: 20px 0 00
    }
}

.text-controls .text-info span {
    color: #868686
}

.text-controls .btn-outline-dark {
    border: none;
    color: #757575
}

.btn-outline-light:hover path {
    fill: #333
}

.display-word .select-alphabet {
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center
}

.display-word .select-alphabet img {
    border: 1px solid white;
    width: auto;
    height: 400px;
}

@media(max-width: 767px) {
    .display-word .select-alphabet img {
        width: 100%;
        height: auto
    }
}

.fontinput-preview {
    font-family: Kuwait;
    min-height: 400px;
    border: 1px solid #fff;
    width: 100%;
    background: #fff;
    font-size: 40px;
    border-radius: 4px;
    color: #273894;
    padding: 40px 20px 98px
}

@media (max-width: 660px) {
    .fontinput-preview {
        min-height: 600px
    }
}

input#flexCheckDefault {
    float: unset;
    margin: unset;
    margin-left: 15px
}

.form-check.checkbox {
    display: flex
}

label.form-check-label {
    text-align: right
}

.the-alphabets .story-title {
    margin-bottom: 100px
}

.the-alphabets {
    color: #000;
    padding: 0
}

.tab-container {
    border: 1px solid #f5f5f5;
    padding: 0;
    margin-top: 60px
}

.nav-tabs {
    display: inline-flex;
    width: 100%;
    overflow-x: auto;
    border: none;
    border-bottom: 1px solid #f5f5f5;
    -ms-overflow-style: none;
    overflow: -moz-scrollbars-none;
    padding: 32px
}

@media (max-width: 767px) {
    .nav-tabs {
        padding: 24px 16px;
        flex-wrap: nowrap;
        overflow-x: auto
    }

    .nav-tabs li {
        position: relative
    }

    .nav-tabs li:before {
        content: "";
        border-bottom: 1px solid #414141;
        width: calc(100% + 48px);
        position: absolute;
        bottom: 0;
        z-index: -1
    }
}

.nav-tabs .nav-item {
    margin: 0 0 0 48px
}

@media (max-width: 767px) {
    .nav-tabs .nav-item {
        margin-right: 0;
        white-space: nowrap
    }
}

.carousel-item .card-img {
    text-align: center;
    background-color: #000
}

.nav-tabs .nav-link {
    color: #000;
    text-align: right;
    font-size: 13px
}

.nav-tabs .nav-link span {
    display: block;
    font-weight: 300
}

.nav-tabs .nav-link:focus,
.nav-tabs .nav-link:hover {
    border: none;
    color: #fff;
    padding: 12px 0
}

.nav-tabs .nav-link {
    padding: 12px 0;
    border: none
}

.nav-tabs .nav-item.show .nav-link,
.nav-tabs .nav-link.active {
    background: transparent;
    border: none;
    text-align: right;
    border-bottom: 2px solid #283894;
    font-size: 30px;
    color: #fff;
    padding: 0
}

input#phone {
    text-align: right
}

.nav-tabs>li>a {
    border: none;
    color: #666
}

.nav-tabs>li.active>a,
.nav-tabs>li>a:hover {
    border: none;
    color: #4285f4 !important;
    background: transparent
}

.nav-tabs>li>a:after {
    content: "";
    background: #4285f4;
    height: 2px;
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 1px;
    transition: all .25s ease 0s;
    transform: scale(0)
}

.nav-tabs>li.active>a:after,
.nav-tabs>li:hover>a:after {
    transform: scale(1)
}

.tab-nav>li>a:after {
    background: #21527d none repeat scroll 0% 0%;
    color: #fff
}

.tab-pane {
    padding: 15px 0
}

.tab-content {
    padding: 20px
}

.nav-tabs::-webkit-scrollbar {
    display: none
}

.btn {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 10px 12px;
    box-shadow: 0 1px 2px #0000000d;
    border-radius: 2px;
    gap: 10px;
    font-size: 12px
}

.btn:visited:hover {
    color: #283894
}

.btn-light {
    color: #283894;
    border-radius: 6px;
    background: #fff;
    gap: 0
}

.btn-light:hover {
    color: #fff;
    border-color: #283894;
    background-color: #283894
}

.btn-light:focus,
.btn-light:active,
.btn-light:active:focus,
.btn-light:active:hover,
.btn-light:active.focus,
.btn-light.active:hover,
.btn-light.active:focus,
.btn-light.active.focus {
    color: #000;
    border-color: #283894;
    background-color: #283894
}

.btn-link {
    color: #283894;
    border-color: #fff;
    background-color: #fff;
    text-decoration: underline
}

.btn-link:hover,
.btn-link:focus,
.btn-link:active,
.btn-link:active:focus {
    color: #283894;
    border-color: #fff;
    background-color: #fff;
    box-shadow: none;
    text-decoration: none
}

.btn-link:hover:visited,
.btn-link:focus:visited,
.btn-link:active:visited,
.btn-link:active:focus:visited {
    color: #994be1
}

.btn-link:hover:visited:hover,
.btn-link:focus:visited:hover,
.btn-link:active:visited:hover,
.btn-link:active:focus:visited:hover {
    color: #994be1
}

.btn-link[disabled] {
    opacity: .65;
    box-shadow: none;
    cursor: not-allowed;
    border-color: #fff;
    background-color: #fff
}

.btn-link[disabled]:hover,
.btn-link[disabled]:focus,
.btn-link[disabled]:active,
.btn-link[disabled]:active:focus {
    border-color: #fff;
    background-color: #fff;
    box-shadow: none;
    outline: none;
    text-decoration: underline
}

.btn-default:visited,
.btn-default:visited i {
    color: #283894
}

.btn-default[disabled] {
    opacity: .65;
    box-shadow: none;
    cursor: not-allowed;
    border-color: #000;
    background-color: #fff
}

.btn-default[disabled]:hover,
.btn-default[disabled]:focus,
.btn-default[disabled]:active,
.btn-default[disabled]:active:focus {
    border-color: #000;
    background-color: #fff;
    box-shadow: none;
    outline: none
}

.btn-primary,
.btn-info {
    color: #283894;
    border-color: #fff;
    background-color: #fff;
    border-width: 1px
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary:active:focus,
.btn-primary:active:hover,
.btn-primary:active.focus,
.btn-primary.active:hover,
.btn-primary.active:focus,
.btn-primary.active.focus,
.btn-info:hover,
.btn-info:focus,
.btn-info:active,
.btn-info:active:focus,
.btn-info:active:hover,
.btn-info:active.focus,
.btn-info.active:hover,
.btn-info.active:focus,
.btn-info.active.focus {
    color: #000;
    border-color: #fff;
    background-color: #fff
}

.btn-primary:hover:visited,
.btn-primary:focus:visited,
.btn-primary:active:visited,
.btn-primary:active:focus:visited,
.btn-primary:active:hover:visited,
.btn-primary:active.focus:visited,
.btn-primary.active:hover:visited,
.btn-primary.active:focus:visited,
.btn-primary.active.focus:visited,
.btn-info:hover:visited,
.btn-info:focus:visited,
.btn-info:active:visited,
.btn-info:active:focus:visited,
.btn-info:active:hover:visited,
.btn-info:active.focus:visited,
.btn-info.active:hover:visited,
.btn-info.active:focus:visited,
.btn-info.active.focus:visited {
    color: #000
}

.btn-primary:hover:visited:hover,
.btn-primary:focus:visited:hover,
.btn-primary:active:visited:hover,
.btn-primary:active:focus:visited:hover,
.btn-primary:active:hover:visited:hover,
.btn-primary:active.focus:visited:hover,
.btn-primary.active:hover:visited:hover,
.btn-primary.active:focus:visited:hover,
.btn-primary.active.focus:visited:hover,
.btn-info:hover:visited:hover,
.btn-info:focus:visited:hover,
.btn-info:active:visited:hover,
.btn-info:active:focus:visited:hover,
.btn-info:active:hover:visited:hover,
.btn-info:active.focus:visited:hover,
.btn-info.active:hover:visited:hover,
.btn-info.active:focus:visited:hover,
.btn-info.active.focus:visited:hover {
    color: #000
}

.btn-primary:focus,
.btn-primary:active,
.btn-primary:active:focus,
.btn-info:focus,
.btn-info:active,
.btn-info:active:focus {
    box-shadow: 0 0 0 3px #00a7d7;
    outline: none
}

.btn-primary:visited,
.btn-info:visited,
.btn-primary:visited i,
.btn-info:visited i,
.btn-primary:visited:hover,
.btn-info:visited:hover {
    color: #fff
}

.btn-primary[disabled],
.btn-info[disabled] {
    color: #fff;
    opacity: 1;
    box-shadow: none;
    cursor: not-allowed;
    border-color: #404b52;
    background-color: #404b52
}

.btn-primary[disabled]:hover,
.btn-info[disabled]:hover {
    color: #fff;
    border-color: #404b52;
    background-color: #404b52;
    box-shadow: none;
    outline: none
}

.btn-primary i,
.btn-info i {
    color: #fff
}

.btn-outline-secondary {
    border: 1px solid black;
    color: #000
}

.btn-outline-secondary:hover {
    background: #000;
    color: fff;
    border: 1px solid black
}

.btn-outline-secondary:hover svg path {
    fill: #fff
}

.btn-outline-light:hover {
    background: #fff;
    color: #000
}

.btn-outline-light:hover svg path {
    fill: #000
}

header .vr {
    background-color: gray;
    width: 2px;
    height: 87px
}

@media (max-width: 767px) {
    header .vr {
        height: 40px
    }
}

header .logo-wrapper ul {
    list-style: none
}

.skip-to-content {
    background: #000;
    color: #fff;
    height: auto;
    width: 100%
}

.skip-to-content .container {
    text-align: center;
    padding: 16px
}

.skip-to-content .container span {
    padding: 6px 12px;
    border: 1px dotted #fff
}

@media (max-width: 767px) {
    .footer-links {
        font-size: 14px
    }
}

.nav ul {
    list-style: none;
    display: flex;
    padding: 0
}

.nav ul li {
    padding: 0 16px 0 0
}

@media (max-width: 767px) {
    .nav ul li {
        padding: 0 16px 0 0
    }
}

@media (min-width: 1920px) {
    .container {
        max-width: 1640px
    }
}

@media (min-width: 1200px) {
    .container {
        max-width: 98%
    }
}

@media (min-width: 1200px) {
    .px-xl-7 {
        padding-right: 5rem !important;
        padding-left: 5rem !important
    }
}

.downloadModal h1 {
    font-size: 2rem
}

.downloadModal .modal-content {
    background: #273894
}

@media (max-width: 767px) {
    .downloadModal .modal-content>.row {
        flex-direction: column
    }
}

@media (max-width: 767px) {
    .downloadModal .modal-content>.row .col {
        flex-direction: column-reverse
    }
}

.downloadModal .modal-body {
    background: #273894
}

.modal-backdrop {
    background-color: #0006;
    backdrop-filter: blur(40px)
}

.btn-close {
    position: absolute;
    z-index: 1;
    margin: 20px;
    width: 40px;
    border-radius: 0;
    height: 40px;
    background-color: #fff
}

.form-check-input:checked {
    background-color: #283894;
    border-color: #283894
}

.sc-wall {
    margin-left: calc(var(--bs-gutter-x) * -.5);
    margin-right: calc(var(--bs-gutter-x) * -.5)
}

@media (min-width: 992px) {
    .sc-wall {
        margin-left: -3rem;
        margin-right: -3rem
    }

    .tab-pane .owl-carousel .owl-stage {
        display: flex;
        align-items: center;
        transform: none !important;
        width: 100% !important;
        justify-content: center
    }
}

@media (max-width: 991px) {
    .tab-pane .owl-carousel .owl-item {
        display: flex;
        justify-content: center
    }
}

.tab-content {
    position: relative
}

.tab-content .sm-patt {
    position: absolute;
    left: 40px;
    top: -85px
}

@media (max-width: 991px) {
    .tab-content .sm-patt {
        display: none
    }
}

.perspective-left {
    transform: perspective(1500px) rotateY(15deg);
    transition: transform 1s ease 0s
}

.perspective-left:hover {
    transform: perspective(3000px) rotateY(5deg)
}

.Fristss {
    overflow: hidden;
    margin-left: -3rem;
    margin-right: -3rem;
    margin-top: 90px;
    margin-bottom: 90px
}

@media (max-width: 767px) {
    .Fristss {
        margin-left: calc(var(--bs-gutter-x) * -.5);
        margin-right: calc(var(--bs-gutter-x) * -.5)
    }
}

.text-yellow {
    color: #283894
}

.cot100 {
    font-size: 100px
}

.cot100 span {
    font-size: 70px
}

@media (max-width: 767px) {
    .cot100 {
        font-size: 28px
    }

    .cot100 span {
        font-size: 18px
    }

    .our-story .g-5,
    .our-story .gy-5 {
        --bs-gutter-y: 1rem
    }
}

.expand {
    background: s;
    animation: moveCursor2 .5s forwards;
    border: 1px solid #000
}

@media (max-width: 1024px) {
    .cursor {
        display: none
    }
}

@keyframes moveCursor1 {
    0% {
        transform: scale(1)
    }

    to {
        transform: scale(.8)
    }
}

@keyframes moveCursor2 {
    0% {
        transform: scale(1)
    }

    50% {
        transform: scale(1.3)
    }

    to {
        transform: scale(1);
        opacity: 0
    }
}

.rotate {
    animation: rotation 30s
}

.linear {
    animation-timing-function: linear
}

.infinite {
    animation-iteration-count: infinite
}

@keyframes rotation {
    0% {
        transform: rotate(0)
    }

    to {
        transform: rotate(359deg)
    }
}

@media (min-width: 768px) {
    html:lang(en) .hero-text h1 {
        width: 422px
    }
}

html:lang(en) .nav-tabs .nav-link {
    text-align: left
}

html:lang(en) .big-title,
.big-titles,
.big-titlesw {
    right: auto;
    left: -40vw
}

html:lang(en) .nav-tabs .nav-item {
    margin: 0 48px 0 0
}

html:lang(en) .story-title.gap-5 {
    gap: 13px !important
}

html:lang(en) .tab-content .sm-patt {
    position: absolute;
    right: 40px;
    left: auto;
    top: -85px;
    transform: scaleX(-1) !important
}

.keyboard__key {
    cursor: pointer;
    line-height: normal !important
}

.keyboard__key .key-ar {
    font-size: 24px;
    font-family: Kuwait
}

.keyboard__key .key-en {
    text-transform: uppercase
}

.keyboard__key:hover {
    background-color: #ffcc005c
}

#downloadMessage {
    margin-top: 15px;
    color: #fff;
    display: none
}

.showonmobile {
    display: none
}

#downloadMessage a {
    color: #fff;
    text-decoration: underline
}

#loadingIndicator {
    margin-top: 15px;
    color: #fff;
    display: none
}

#errorMessage {
    margin-top: 15px;
    color: red;
    display: none
}

@media screen and (max-width: 620px) {

    html,
    body {
        overflow-x: hidden
    }

    body {
        position: relative
    }

    #desktopletter,
    #mobileletter {
        width: 90%
    }

    .display-word .select-alphabet {
        top: 109px
    }

    .showonmobile {
        display: block
    }

    .hideonmobile {
        display: none
    }
}

.mute-toggle-button {
    width: 50px;
    height: 50px;
    position: absolute;
    top: 10px;
    right: 10px;
    background: #00000080;
    border: none;
    border-radius: 50%;
    padding: 10px;
    cursor: pointer;
    outline: none;
    transition: background .3s ease, transform .3s ease;
    display: flex;
    align-items: center;
    justify-content: center
}

button#downloadBtn {
    background: #273894;
    border-radius: 4px
}

button#downloadBtn:hover {
    color: #fff
}

button#downloadBtn:hover path {
    fill: #fff
}

button#downloadBtn path {
    fill: #fff
}

button#resetButton {
    border: 1px solid #273894;
    color: #000
}

button#resetButton:hover {
    color: #fff
}

.mute-toggle-button:hover {
    background: #000000b3;
    transform: scale(1.1)
}

.mute-toggle-button img {
    width: 24px;
    height: 24px
}

@media (max-width: 600px) {
    .mute-toggle-button {
        width: 25px;
        height: 25px
    }

    .mute-toggle-button {
        padding: 8px
    }

    .mute-toggle-button img {
        width: 16px;
        height: 16px
    }
}