@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&family=Playfair:ital,opsz,wght@0,5..1200,300..900;1,5..1200,300..900&display=swap');
@media (prefers-reduced-motion: no-preference) {
    :root {
        scroll-behavior: unset;
    }
}
:root {
    --primary-color: #030A22;
    --primary-blue: #78DBFF;
    --color-black: #000000;
    --color-white: #ffffff;
    --gray-1: #EFEFEF;
    --red: #FF0000;
    --dark-red: #AF0101;
    --dark-gray: #232323;
    --light-gray: #A6A9AA;
    --body-bg: #ffffff;
    --body-color: #ffffff;
    --gray-darker: #222222;
    --gray-dark: #333333;
    --gray: #555555;
    --gray-light: #777777;
    --gray-lighter: #eeeeee;
    --theme-secondary: #cccccc;
    --min-width: 375px;
    --max-width: 1368px;
    --weight-light: 300;
    --weight-normal: 400;
    --weight-medium: 500;
    --weight-bold: 700;
}

/* === Reset Styles === */
.container {
    --bs-gutter-x: 48px;
}
.row {
    --bs-gutter-x: 48px;
}
body {
    font-family: "DM Sans", sans-serif;
    font-weight: 400;
    font-size: 16px;
    color: var(--color-black);
    line-height: 24px;
    width: 100%;
    background: rgba(182, 222, 237, 1);
    background: -moz-linear-gradient(left, rgba(182,222,237,1) 0%, rgba(178,255,193,1) 100%);
    background: -webkit-gradient(left top, right top, color-stop(0%, rgba(182,222,237,1)), color-stop(100%, rgba(178,255,193,1)));
    background: -webkit-linear-gradient(left, rgba(182, 222, 237, 1) 0%, rgba(178, 255, 193, 1) 100%);
    background: -o-linear-gradient(left, rgba(182,222,237,1) 0%, rgba(178,255,193,1) 100%);
    background: -ms-linear-gradient(left, rgba(182,222,237,1) 0%, rgba(178,255,193,1) 100%);
    background: linear-gradient(to right, rgba(182, 222, 237, 1) 0%, rgba(178, 255, 193, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b6deed', endColorstr='#b2ffc1', GradientType=1 );
}
.ns-reset *, .ns-reset *::before, .ns-reset *::after { box-sizing: border-box; }
section {float: left;padding: 70px 0;width: 100%;}
section.ns-reset{ border: 0; font-family: var(--font-body); font-weight: var(--weight-normal); } 
.ns-reset ul, .ns-reset ol { margin: 0; padding: 0; list-style: none; }
.ns-reset a { color: inherit; text-decoration: none; }
.ns-reset button, 
.ns-reset input, 
.ns-reset textarea, 
.ns-reset select { font: inherit; margin: 0; border: none; background-color: transparent; -webkit-appearance: none; -moz-appearance: none; appearance: none; }
.ns-reset button:focus, 
.ns-reset input:focus, 
.ns-reset textarea:focus, 
.ns-reset select:focus { outline: none; }
.ns-reset img, 
.ns-reset svg, 
.ns-reset video, 
.ns-reset canvas { max-width: 100%; height: auto; display: block; }
.ns-reset input::placeholder,
.ns-reset textarea::placeholder { color: rgba(255, 255, 255, 0.5); }
.ns-reset table { border-collapse: collapse; border-spacing: 0; }
.ns-reset input, 
.ns-reset button, 
.ns-reset textarea, 
.ns-reset select { font: inherit; }
.ns-reset .svg { pointer-events: none; }
.ns-reset strong, 
.ns-reset b { font-weight: var(--weight-bold); font-family: var(--font-bold); }
.ns-reset sub, 
.ns-reset sup { font-size: 75%; }
.ns-reset sup { top: -6px; }
.ns-reset a { background: linear-gradient(currentColor 0 0) 0 100%/var(--underline-width, 0%) 1px no-repeat; color: #000000; display: inline; outline: none; text-decoration: none;transition: 0.3s ease-out;}
.ns-reset a:hover { --underline-width: 100%; }
.ns-reset p { margin-bottom: 32px; }
.ns-reset p:last-child { margin-bottom: 0;  }
.ns-reset .container { margin-left: auto; margin-right: auto; width: 100%; padding-left: 24px; padding-right: 24px; box-sizing: border-box; }
@media(min-width: 576px) {
    .ns-reset .container { max-width: 540px; }
}
@media(min-width: 768px) {
    .ns-reset .container { max-width: 720px; }
}
@media(min-width: 992px) {
    .ns-reset .container { max-width: 960px; }
}
@media(min-width: 1200px) {
    .ns-reset .container { max-width: 1180px; }
}
@media(min-width: 1400px) {
    .ns-reset .container { max-width: 1368px; }
}
@media (max-width: 767.98px) {
    .ns-reset .container {  padding-left: 16px; padding-right: 16px; }
}
.ns-reset .row{ display: flex; flex-wrap: wrap; }

.ns-reset .display {font-family: "Playfair", serif; line-height: 1.08; letter-spacing: -0.01em; font-size: 46px;margin: 0 0 60px 0; }
@media (min-width: 375px) {
    .ns-reset .display { font-size: calc(46px + 34 * ((100vw - 375px) / 825)); }
}
@media (min-width: 1200px) {
    .ns-reset .display { font-size: 80px; }
}

.ns-reset h1,
.ns-reset .h1 {font-weight: var(--weight-normal);font-family: "Playfair", serif;font-size: 42px;line-height: 1.15;letter-spacing: 0;margin: 0 0 48px 0;}
@media (min-width: 375px) {
    .ns-reset h1, 
    .ns-reset .h1 {font-size: calc(42px + 8 * ((100vw - 375px) / 993));}
}
@media (min-width: 1200px) {
    .ns-reset h1, 
    .ns-reset .h1 {font-size: 68px;}
}

.ns-reset h2,
.ns-reset .h2 {font-family: "Playfair", serif;font-size: 38px;line-height: 1.15;letter-spacing: 0;margin:0 0 32px 0;}
@media (min-width: 375px) {
    .ns-reset h2,
    .ns-reset .h2 {font-size: calc(38px + 4 * ((100vw - 375px) / 993));}
}
@media (min-width: 1200px) {
    .ns-reset h2,
    .ns-reset .h2 {font-size: 58px;}
}

.ns-reset h3,
.ns-reset .h3 {font-family: "Playfair", serif;font-size: 28px;line-height: 1.1;letter-spacing: -0.01em;text-transform: inherit;margin:0 0 32px 0;}
@media (min-width: 375px) {
    .ns-reset h3,
    .ns-reset .h3 {font-size: calc(28px + 4 * ((100vw - 375px) / 993));}
}
@media (min-width: 1200px) {
    .ns-reset h3,
    .ns-reset .h3 {font-size: 40px;}
}

.ns-reset h4,
.ns-reset .h4 {font-family: "Playfair", serif;font-size: 24px;line-height: 1.15;letter-spacing: -0.015em;margin:0 0 20px 0;}
@media (min-width: 375px) {
    .ns-reset h4,
    .ns-reset .h4 {font-size: calc(24px + 2 * ((100vw - 375px) / 993));}
}
@media (min-width: 1200px) {
    .ns-reset h4,
    .ns-reset .h4 {font-size: 36px;}
}

.ns-reset h5,
.ns-reset .h5 {font-family: "DM Sans", sans-serif;font-size: 22px;line-height: 1.2;letter-spacing: -0.01em;margin:0 0 20px 0;}
@media (min-width: 375px) {
    .ns-reset h5,
    .ns-reset .h5 {font-size: calc(22px + 2 * ((100vw - 375px) / 993));}
}
@media (min-width: 1200px) {
    .ns-reset h5,
    .ns-reset .h5 {font-size: 28px;}
}

.ns-reset h6,
.ns-reset .h6 {font-family: "DM Sans", sans-serif;font-size: 20px;line-height: 1.2;letter-spacing: -0.015em;text-transform: uppercase;margin:0 0 24px 0;}
.ns-reset .text-20 { font-size: 20px; line-height: 30px; }
.ns-reset .text-18 { font-size: 18px; line-height: 1.5; }
.ns-reset .text-16 { font-size: 16px; line-height: 24px; }
.ns-reset .text-14 { font-size: 14px; line-height: 21px;}
.ns-reset .text-12 { font-size: 12px; line-height: 18px;}

/* === Utility Classes === */
.ns-reset .div-img { background-position: top center; background-repeat: no-repeat; background-size: cover; }
.ns-reset .bg-black { background : var(--color-black); }
.ns-reset .text-white { color: var(--color-white); }

/* === Ordered / Unordered List === */
.ns-reset ul { margin: 0 0 48px; padding: 0; }
.ns-reset ul li { list-style: none; margin: 0 0 10px 0; padding: 0 0 0 22px; position: relative; word-wrap: break-word; }
.ns-reset ul li::before { content: ""; position: absolute; left: 5px; top: 10px; height: 6px; width: 6px; border-radius: 100%; background: #0B0E1D; }
.ns-reset ul ol { margin: 12px 0 0; }
.ns-reset ul ul {margin: 12px 0 0;}
.ns-reset ul ul li {margin: 0 0 12px;}
.ns-reset ul.list-unstyled li {margin: 0 0 13px 0;padding: 0;position: relative;}
.ns-reset ul.list-unstyled li::before {content: normal;}
.ns-reset ol {margin: 0 0 40px;padding: 0;list-style: none;counter-reset: av-counter;}
.ns-reset ol li {counter-increment: av-counter;margin: 0 0 12px;padding: 0 0 0 22px;position: relative;}
.ns-reset ol li::before {background: transparent;content: counter(av-counter) ".";counter-increment: none;display: inline-block;font-size: inherit;line-height: inherit;position: absolute;left: 0;top: 0;height: auto;width: 21px;text-align: center;font-weight: var(--weight-normal);font-family: var(--font-normal);}
.ns-reset ol ol { margin: 12px 0 0; }
.ns-reset ol ol li { margin: 0 0 12px 0; }
.ns-reset ol ul { counter-reset: av-counter; margin: 12px 0 0; }
.ns-reset ol ul li { margin: 0 0 12px 0; }
.ns-reset ol ul li::before { background: var(--color-black); content: ""; left: 8px; top: 9px; height: 6px; width: 6px; }
.ns-reset .text-white ul li::before { background-color: var(--color-white); }
.ns-reset .text-white ol li::before { background: none; color: #ffffff; }