/* ==========================================================================   Core Setup   ========================================================================== */html {    scroll-behavior: smooth;}body {    font-family: 'Raleway', sans-serif;}/* ==========================================================================   Variables   ========================================================================== */:root {    /* Colors */    --color-dark: #1a1a1a;    --color-text: #333;    --color-gray: #666;    --color-light-gray: #444;    --color-blue: #0066cc;    --color-link: #5299d3;    --color-link-hover: #3a405a;        /* Spacing */    --space-xs: 0.625rem;   /* 10px */    --space-sm: 0.9375rem;  /* 15px */    --space-md: 1.25rem;    /* 20px */    --space-lg: 1.875rem;   /* 30px */    --space-xl: 2.5rem;     /* 40px */    --space-xxl: 3rem;      /* 48px */        /* Typography */    --text-sm: 0.7em;    --text-base: 1.1em;    --text-lg: 1.2em;    --text-xl: 1.5em;    --text-2xl: 1.6em;    --text-3xl: 2em;    --text-4xl: 2.5em;}/* ==========================================================================   Typography & Text Styles   ========================================================================== */h1 {    font-size: var(--text-2xl);    margin: 10px 0;    color: var(--color-text);    font-weight: 700;}.ns-section-text {    font-size: var(--text-base);    color: var(--color-light-gray);    margin-bottom: var(--space-md);}.ns-section-title {    font-size: var(--text-3xl);    margin: var(--space-xl) 0 var(--space-md);    color: var(--color-dark);}/* ==========================================================================   Layout Components   ========================================================================== *//* Section Layout */.ns-section {    margin-bottom: var(--space-xl);}/* Features Layout */.ns-features-list {    list-style: none;    padding: 0;}.ns-features-item {    margin-bottom: var(--space-xs);    padding-left: 1.5625rem;    position: relative;}.ns-features-item:before {    content: "•";    position: absolute;    left: 0;    color: var(--color-blue);}.ns-features-document,.ns-features-security {    padding: var(--space-lg);    border-radius: 0.5rem;    margin-bottom: var(--space-md);}/* Feature Tiles */.featureTile {    width: 100%;    text-align: left;    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;}.featureTile h3 {    font-size: var(--text-2xl);    margin: 10px 0;    color: var(--color-text);    font-weight: 700;}.featureTile p {    font-size: var(--text-lg);    color: var(--color-gray);}/* ==========================================================================   Navigation & Interactive Elements   ========================================================================== *//* Arrow Links */a.ns-link-container {    display: inline-flex;    align-items: center;    text-decoration: none;    margin-top: var(--space-lg);}.ns-link {    font-weight: 600;    letter-spacing: 0.1em;    color: var(--color-link);    margin-right: var(--space-sm);}.link-text {    height: 20px;    width: auto;    transition: transform 0.3s ease;}a.ns-link-container:hover .link-text {    transform: translateX(5px);}/* ==========================================================================   Parallax Components   ========================================================================== *//* Parallax Container */.parallax {    background-attachment: fixed;    background-position: center;    background-repeat: no-repeat;    background-size: cover;    padding: 0;    position: relative;    min-height: 400px;    width: 100%;}.parallax-content {    max-width: 1440px;    margin: 0 auto;    position: relative;    height: 100%;    min-height: inherit;}/* Text Box */.para-text-box {    position: absolute;    left: 0px;    top: 50%;    transform: translateY(-50%);    width: 45%;    max-width: 50%;    padding: var(--space-md);    background-color: rgba(58, 64, 90, 0.7);    backdrop-filter: blur(5px);    border-radius: 8px;    color: white;}.para-text-box h2 {    font-size: var(--text-3xl);    margin-bottom: var(--space-md);    color: white;}.para-text-box p {    font-size: var(--text-base);    margin-bottom: var(--space-md);    line-height: 1.6;    white-space: normal;}/* Parallax Links */.para-text-box p a,.para-text-box p a:link,.para-text-box p a:visited {    color: white !important;    text-decoration: underline;    display: inline;    white-space: normal;    background: none;}.para-text-box p a:hover {    opacity: 0.9;}/* ==========================================================================   Footer Components   ========================================================================== *//* Footer Grid */.ns-footer-grid {    display: grid;    grid-template-columns: 38% repeat(3, 1fr);    gap: 5px;    max-width: 1300px;    margin: 0 auto;    padding: 10px;}/* Footer Sections */.ns-footer-section {    padding: 10px;    border-radius: 8px;}.ns-footer-section--logo {    display: flex;    flex-direction: column;    align-items: center;    text-align: center;}.ns-footer-logo {    width: 33%;    height: auto;}.ns-footer-section h2 {    font-size: var(--text-sm);    font-weight: bold;    margin-bottom: var(--space-sm);}.ns-footer-section p {    font-size: var(--text-sm);    margin: var(--space-xs) 0;}/* Footer Lists */.ns-footer-list {    list-style-type: none;    padding: 0;    margin: 0;}.ns-footer-list-item {    font-size: var(--text-sm);    margin-bottom: var(--space-xs);}.ns-footer-list-item a {    color: var(--color-text);    text-decoration: none;    transition: color 0.3s ease;}.ns-footer-list-item a:hover {    color: var(--color-link);}/* Social Links */.ns-social-links {    display: flex;    justify-content: center;    gap: 15px;    margin-top: 20px;}.ns-social-links img {    width: 20px;    height: auto;}/* ==========================================================================   Media Queries   ========================================================================== *//* Large Screens */@media (max-width: 1440px) {    .para-text-box {        left: 5%;    }}/* Medium-Large Screens */@media (max-width: 1024px) {    .ns-footer-grid {        grid-template-columns: repeat(2, 1fr);    }        .ns-footer-section--logo {        grid-column: 1 / -1;        order: -1;    }}/* Medium Screens */@media (max-width: 768px) {    /* Layout Changes */    .ns-solutions-grid {        grid-template-columns: 1fr;    }        .ns-features-grid {        display: flex;        flex-direction: column;        gap: 2rem;    }        .ns-features-image {        order: 1;        min-height: 200px;    }        .ns-features-content {        order: 2;        padding-right: 0;    }        /* Typography Changes */    .ns-hero-title {        font-size: var(--text-3xl);    }        .ns-section-title {        font-size: 1.8em;    }        /* Parallax Changes */    .parallax {        background-attachment: scroll;        background-position: center center;        min-height: 400px;    }        .para-text-box {        position: relative;        left: auto;        top: auto;        transform: none;        width: auto;        margin: var(--space-md) var(--space-sm);        padding: var(--space-md);        max-width: none;    }}/* Small Screens */@media (max-width: 640px) {    .ns-footer-grid {        grid-template-columns: 1fr;    }        .ns-footer-section--logo {        grid-column: 1;        order: -1;    }}