@font-face {
  font-family: "Oswald";
  src: url("./../../fonts/Oswald-Light.woff") format("woff"),
       url("./../../fonts/Oswald-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Oswald";
  src: url("./../../fonts/Oswald-Regular.woff") format("woff"),
       url("./../../fonts/Oswald-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Oswald";
  src: url("./../../fonts/Oswald-Bold.woff") format("woff"),
       url("./../../fonts/Oswald-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Segoe UI";
  src: url("./../../fonts/Segoe UI.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Segoe UI";
  src: url("./../../fonts/Segoe UI Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Segoe UI";
  src: url("./../../fonts/segoe-ui-black.ttf") format("truetype");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

body { min-width: 300px; margin: 0; font-family: "Roboto", sans-serif; font-optical-sizing: auto; font-size: clamp(1.8rem, 1.7vw, 2rem); line-height: 1.6; background: #e7e7e7; }
main, footer { max-width: 1920px; width: 100%; margin-left: auto; margin-right: auto; background: #fff; }
footer { font-size: clamp(1.4rem, 1.33vw, 1.6rem);; }

.content, .content-3 { max-width: 1080px; width: 100%; margin-left: auto; margin-right: auto; padding-left: 20px; padding-right: 20px; }
.content-2 { max-width: 900px; width: 100%; margin-left: auto; margin-right: auto; padding-left: 20px; padding-right: 20px }

.hd-1 { font-weight: 600; letter-spacing: 2px; line-height: 1.4; font-size: clamp(2.8rem, 4.5vw,  5.4rem); }
.hd-2 { font-size: clamp(2.8rem, 4.5vw,  5.4rem); line-height: 1.2;  }
.hd-3 { font-size: clamp(2.4rem, 4.5vw, 5rem); line-height: 1.2; }
.hd-4 { font-size: clamp(2rem, 2vw, 3.2rem); line-height: 1.2; }
.hd-5 { font-size: clamp(1.9rem, 2vw, 2.4rem); line-height: 1.2; }

.hd-em-1 { font-size: 1.5em; }

.hero-section { position: relative; color: #fff; overflow-x: hidden; }
.hero-section::before { content: ""; position: absolute; inset: 0; background: url(../images/home/home-img-1.webp) left top -120px no-repeat; background-size: clamp(1200px, 108vw, 1345px) auto; left: 0; z-index: 0; width: 100%; height: 100%; z-index: 1; }

.hero-content { margin: 0 auto; padding-top: var(--lg); padding-bottom: 50px; position: relative; display: flex; max-width: 1300px; margin-left: auto; margin-right: auto; align-items: flex-end; justify-content: space-between; }
.hero-content:before { content: ''; position: absolute; width: 100%; height: 100%; top: 0; background: #e3ecf0; z-index: 0; border-bottom-left-radius: 16px; border-bottom-right-radius: 16px; }
.hero-content > div { position: relative; z-index: 1; }
.hero-content > div:first-child { padding-left: 30px; max-width: 580px; align-self: flex-start; }
.hero-content > div:last-child { padding-right: 30px; }

.hero-title { margin: 0; text-transform: uppercase; font-weight: 600; font-style: italic; letter-spacing: 2px; line-height: 1.4; font-size: clamp(2.6rem, 4.4vw, 4.8rem); text-shadow: 0 2px 16px rgba(0, 0, 0, 0.15); }

.hero-message { position: relative; margin-top: 20px; width: 112%; padding: 24px 20% 26px 36px; border-radius: 18px; background: rgba(9, 48, 82, 0.78); box-shadow: 0 15px 35px rgba(4, 19, 36, 0.34); }
.hero-message p { margin: 0; max-width: 640px; text-transform: none; font-size: clamp(2.2rem, 3.15vw, 3.42rem); line-height: 1.4; letter-spacing: 0.1px; }
.hero-product { position: absolute; max-width: 560px; right: -35%; bottom: -25%; }
.hero-arrow { position: absolute; top: -10px; right: 21.5%; width: 170px; }

.top-menu { position: relative; }
.top-menu a { transition: color 0.25s linear; }
.top-menu a:hover { color: #fff; }
.top-menu ul { list-style: none; display: flex; gap: 20px; align-items: center; line-height: 1; text-transform: uppercase;  margin: 0; padding: 0; }
.top-menu li { margin: 0; padding: 0; }
.top-menu ul li:not(:last-child) { content: ''; border-right: 2px solid #b4e3ff; padding-right: 20px; }
.menu-toggle { display: none; }

.row-1 { background: linear-gradient(165deg, #1d5994 35%, #2d72b8, #1d5994 65%); border-top-left-radius: 120px; border-bottom-left-radius: 120px; padding: 24px 20px 20px; text-transform: uppercase; line-height: 1; text-align: center; color: #fff; border-bottom: #093b8c solid 8px; border-top: #cee5ff solid 3px; position: relative; }
.row-1:before { content: ''; position: absolute; width: 100%; height: 100%; background: #1d5994; top: -3px; border-bottom: #093b8c solid 8px; border-top: #cee5ff solid 3px; right: -100%; }

.link-1 { color: #8ec5ff; text-decoration: none; }
.link-1:hover { text-decoration: underline; }

.link-2 { color: #b4e3ff;  }

.oswald { font-family: "Oswald", "Arial Narrow", Arial, sans-serif; }

.letter-spacing-1 { letter-spacing: 1px; }
.overflow-x-hidden { overflow-x: hidden; }
.uppercase { text-transform: uppercase; }

.max-w-800 { max-width: 800px; }
.w-full { width: 100%; }
.mx-auto { margin-left: auto; margin-right: auto; }

.logo-1 { padding: 20px 50px 20px 30px; margin-top: -20px; background: #fef9c2; right: -50px; position: relative; width: 125%; left: -17.8%; border-bottom: 1px solid #000; }
.logo-1:before { content: ""; display: block; width: 0; height: 0; bottom: -20px; right: 0; border-top: 0px solid transparent; border-bottom: 20px solid transparent; border-left: 20px solid #000; position: absolute; }

.box-1 { background: url(./../images/home/home-img-22.webp) center no-repeat; background-size: 100% 100%; padding: 30px 20px 35px; max-width: 550px; margin: 0 auto; }

.disclaimer { max-width: 500px; margin: 16px auto; font-size: clamp(1.6rem, 1.7vw, 1.8rem); }

.options-wrap { font-family: "Segoe UI", Arial, sans-serif; font-size: clamp(1.6rem, 1.5vw, 1.8rem); display: grid; align-items: flex-end; justify-content: space-between; gap: 30px; width: 100%; margin: 0 auto; max-width: 960px; grid-template-columns: repeat(2, 1fr); padding-right: 0.6%; }
.option { background: #fff; border: 1px solid #f5f5f5; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; border-radius: 10px; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); cursor: pointer; overflow: hidden; text-decoration: none; color: var(--text); }
.option-title { font-size: clamp(2.4rem, 4.5vw,  3.2rem); display: block; width: 100%; text-align: center; padding: 15px 10px; font-weight: 700; margin: 0; }
.option-body { padding: 24px; display: flex; flex-direction: column; align-items: center; width: 100%; }
.option-desc-1 { margin-top: 8px; margin-bottom: 8px; }
.option-img { width: 100%; max-width: 260px; margin-left: auto; margin-right: auto; margin-bottom: 16px; }
.option-img img { width: 100%; height: auto; }
.option-price { display: flex; align-items: center; justify-content: center; font-weight: bold; line-height: 1; margin-top: 2.5rem; margin-bottom: 2.5rem; gap: 1.25rem; }
.option-price-2 { display: flex; align-items: center; justify-content: center; gap: 0.25rem; line-height: 1; }

.option-1 .option-title { background: #b5e3ff; color: #003366; }
.option-2 { transform: scale(1.03); transform-origin: bottom; }
.option-2 .option-body { border: 3px solid #007ed5; border-top: 0; border-bottom-left-radius: 10px; border-bottom-right-radius: 10px; }
.option-2 .option-title { background: #007ed5; color: #ffffff; }

.price-hd { font-weight: 900; color: #003366; line-height: 1; font-size: clamp(3.2rem, 4.5vw,  4.2rem); text-align: center; }
.price-hd-2 { font-size: clamp(1.8rem, 4.5vw,  2.2rem); margin-top: 10px; display: block; text-align: center; }

.cta-btn { font-size: clamp(2.4rem, 4.5vw,  3.2rem); color: #fff; font-weight: bold; border-radius: 9999px; text-align: center; text-decoration: none; width: 100%; transition: transform 0.3s, color 0.3s; position: relative; z-index: 2; max-width: 400px; background: linear-gradient(to right, #ff9400, #fbad27); border: 4px solid #fff; box-shadow: inset 1px 1px 15px rgba(243, 143, 0, 0.5), 0 10px 12px -3px rgba(0, 0, 0, 0.1); padding-top: 15px; padding-bottom: 20px; margin: 10px 0 15px; line-height: 1; padding-left: 16px; padding-right: 16px; }
.cta-btn:hover, .cta-btn:focus { transform: translateY(-10px); }

.cta-pulse:hover:before, .cta-pulse:focus:before { opacity: 1; }
.cta-pulse:hover:after, .cta-pulse:focus:after { animation: none; display: none; }
.cta-pulse:before { content: ''; border-radius: 80px; min-width: calc(100% + 8px); min-height: calc(100% + 8px); border: 4px solid #ff9400; box-shadow: 0 0 60px rgba(251, 203, 176, 0.21); position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); opacity: 0; transition: opacity 0.2s linear; }
.cta-pulse:after { content: ''; width: 30px; height: 30px; border-radius: 100%; border: 5px solid #ff9400; position: absolute; z-index: -1; top: 50%; left: 50%; transform: translate(-50%, -50%); animation: ring 1.5s infinite; opacity: 0; pointer-events: none; }

.cc-icons { width: 100%; max-width: 225px; margin-left: auto; margin-right: auto; }

.flex-1 { display: flex; align-items: flex-end; }
.flex-1 > div:last-child { max-width: 600px; width: 100%; flex-shrink: 0; }

.flex-2 { display: flex; gap: 40px; align-items: center; }
.flex-2 > div:last-child { flex-shrink: 0; max-width: 600px; width: 100%; margin-right: -200px; }

.flex-3 { display: flex; gap: 40px; align-items: center; }
.flex-3 > div:first-child { flex-shrink: 0; max-width: 600px; width: 100%; margin-left: -200px; }

.flex-4  { display: flex; gap: 40px; align-items: center; justify-content: center; }
.flex-4 > div:first-child  { flex-shrink: 0; max-width: 460px; position: relative; padding-top: 20px; }
.flex-4 > div:last-child  { max-width: 500px; position: relative; z-index: 3; }
.flex-4 > div:first-child:before  { position: absolute; content: ''; width: 250%; height: 100%; right: 70px; bottom: 0; background: linear-gradient(to bottom, #bfdde9, #e4ecf0, #cde3ea); }

.flex-5  { display: flex; gap: 40px; align-items: center; justify-content: center; }
.flex-5 > div:first-child  { max-width: 530px; position: relative; z-index: 3; }
.flex-5 > div:last-child  { flex-shrink: 0; max-width: 382px; position: relative; padding-top: 20px; }
.flex-5 > div:last-child:before  { position: absolute; content: ''; width: 250%; height: 100%; left: 70px; bottom: 0; background: linear-gradient(to bottom, #bfdde9, #e4ecf0, #cde3ea); }

.bg-1 { background: url(./../images/home/home-img-6.webp) bottom center no-repeat; background-size: cover; }
.bg-2 { background-image: url(./../images/home/home-img-20.webp), radial-gradient(#1d5a9e, #2d72b7); background-position: top center, center;  background-size: 1920px auto, cover; background-repeat: no-repeat; }

.img-1 { max-width: 450px; width: 100%; }
.img-2 { max-width: clamp(350px, 36vw, 430px); margin-left: auto; margin-right: auto; position: relative; z-index: 1; padding-top: 180px; }
.img-3 { margin-left: auto; margin-right: auto; }
.img-4 { position: absolute; bottom: 0; max-width: 600px; width: 100%; left: 50%; transform: translateX(-55%); z-index: -1; }
.img-5 { max-width: 900px; margin-left: -400px; margin-bottom: -5%; position: relative; }
.img-5-mobile { display: none; }
.img-6 { position: absolute; left: 0; top: -43px; z-index: 1; }
.img-7 { position: absolute; top: 50%; left: -30%; transform: translateY(-50%); max-width: 500px; }
.img-8 { position: absolute; top: -15%; right: -40%; max-width: 130%; transform: scaleX(-1); pointer-events: none; }
.img-9 { display: block; margin-top: var(--xl-3); margin-left: 50px; }
.img-10 { position: absolute; top: 50%; transform: translateY(-50%); left: -25%; max-width: 600px; pointer-events: none; z-index: 0; }
.img-11 { position: absolute; bottom: -270px; right: 0; max-width: 250px; pointer-events: none; z-index: 0; }
.img-12 { position: absolute; top: -10px; right: 0; max-width: 180px; pointer-events: none; z-index: 0; transform: scaleX(-1); }
.img-13 { position: absolute; bottom: 25%; left: 0; max-width: 180px; pointer-events: none; z-index: 0; }
.img-14 { position: absolute; top: -8%; left: -40%; max-width: 130%; pointer-events: none; display: none; }

.media-logos { display: flex; gap: 10px; max-width: 140px; margin-top: var(--xl-2); }
.media-logos a { transition: transform 0.3s ease; }
.media-logos a:hover { transform: scale(1.1); }

.featured { display: flex; gap: 40px; font-weight: 500; font-style: italic; align-items: center; justify-content: space-between; color: #383838; max-width: 800px; margin: 0 auto; }
.featured-logos { display: flex; align-items: center; justify-content: space-around; flex-grow: 1; }

.charity { position: relative; background: url(./../images/home/home-img-19.webp) center no-repeat; background-size: cover; min-height: 680px; display: flex; align-items: center; justify-content: flex-start; padding: var(--xl); border: 8px solid #fff; border-radius: 16px; }
.charity > div { max-width: 500px; color: #fff; }

.padding-1 { padding-top: var(--xl); padding-bottom: var(--xl-2); }
.padding-2 { padding-top: 0; }

.z-0 { z-index: 0; }
.z-1 { z-index: 1; }
.z-2 { z-index: 2; }

.lh-1 { line-height: 1.2; }

.bt-1 { position: relative; display: inline-block; }
.bt-1:before { position: absolute; bottom: 3px; border-bottom: 3px solid #866007; content: ''; width: 100%; }

.text-white { color: #fff; }
.text-sky { color: #b4e2fe; }

.gradient-text-1 { background: linear-gradient(170deg, #205487 25%, #1f6fbf, #205487 75%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; color: transparent; }
.gradient-text-2 { background: linear-gradient(170deg, #866007 5%, #c7851a, #866007 95%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; color: transparent; }
.gradient-text-3 { background: linear-gradient(170deg, #c7851a 35%, #866007); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; color: transparent; }

.white {  color: #fff; }
.deep-navy { color: var(--deep-navy); }
.accent-red { color: var(--accent-red); }
.cyan { color: var(--accent-cyan); }
.gold { color: #ffd78e; }

.bg-white { background: #fff; }
.bg-yellow { background: #fef9c2; }
.bg-gray { background: #f3f3f7; }
.bg-gray-2 { background: #262626; }
.bg-gray-3 { background: #f7f7f7; }
.bg-sky { background: #e0f0f6; }

.inter-black { font-family: "Inter", sans-serif; font-optical-sizing: auto; font-weight: 900; font-style: normal; }

@media (max-width: 1700px) {
  .img-5 { max-width: 800px; margin-left: -200px; }
}
@media (max-width: 1540px) {
  .logo-1 { position: relative; width: calc(115% + 30px); right: 0; left: -15%; }
  .logo-1:before { display: none; }

  .img-6 { display: none; }
}

@media (max-width: 1480px) {
  .flex-2 > div:last-child { margin-right: 0; }
  .flex-3 > div:first-child { margin-left: 0; }
  .content-3 { max-width: 1300px; }
}

@media (max-width: 1365px) {
  .logo-1 { position: relative; width: calc(115% + 30px); right: 0; left: -15%; }
  .logo-1:before { display: none; }
  .img-5 { max-width: 690px; margin-left: -130px; }
}

@media (max-width: 1280px) {
  .flex-1 { flex-direction: column; align-items: center; }
  .flex-1 > div:first-child { display: none; }

  .row-1 { border-radius: 120px; }
  .row-1:before { display: none; }
  .img-5-mobile { display: block; max-width: 400px; width: 80%; margin: 0 auto -5%; }
  .box-1 { max-width: 500px; }

  .flex-2 { flex-direction: column; gap: 0px; }
  .flex-2 > div:last-child { max-width: 400px; }

  .flex-3 { flex-direction: column-reverse; gap: 0px; }
  .flex-3 > div:first-child { max-width: 400px; }

  .flex-4 { flex-direction: column; text-align: center; gap: 24px; }
  .flex-4 > div:first-child { max-width: 260px; }
  .flex-4 > div:first-child:before { width: 300%; }

  .flex-5 { flex-direction: column-reverse; text-align: center; gap: 24px; }
  .flex-5 > div:last-child { max-width: 260px; }
  .flex-5 > div:last-child:before { width: 300%; }

  .media-logos { margin: 30px auto; }

  .content-3 { max-width: 1080px; }

  .img-7 { max-width: 350px; }
  .img-11, .img-12, .img-13 { display: none; }
  .img-14 { display: block; }
}

@media (max-width: 1040px) {
  .top-menu ul { justify-content: center; }
  .hero-section:before { background: #003163 url(../images/home/home-img-1-b.webp) center no-repeat; background-size: 500px auto; }
  .hero-content { flex-direction: column; align-items: center; justify-content: center; gap: 10px; padding: 20px 15px 0; margin-bottom: 0; }
  .hero-content > div:first-child { padding-left: 0; align-self: center; }
  .hero-content > div:last-child { padding-right: 0; max-width: 100%; width: 100%; }

  .logo-1 { position: relative; max-width: calc(100% + 30px); width: calc(100% + 30px); right: 0; left: -15px; padding: 20px 30px 20px 20px; }

  .bg-1.mt-sm { margin-top: 0; }

  .img-1 { margin-left: auto; margin-right: auto; }
  .img-2 { padding-top: 0; max-width: 250px; }
  .img-4 { max-width: 420px; }

  .hd-1 { text-align: center; }
}

@media (max-width: 980px) {
  .options-wrap { display: flex; flex-direction: column; max-width: 500px; margin-top: 0; }
  .option { width: 100%; }
  .option-2 { transform: scale(1); }
  .option-img { max-width: 220px; }

  .padding-1 { padding-bottom: var(--xl); }
  .padding-2 { padding-top: var(--xl); }
  .disclaimer { margin-bottom: 0; }

  .featured { flex-direction: column; gap: 16px; padding: var(--lg) 0; }
  .featured-logos { gap: 16px; max-width: 500px; width: 100%; }
  .charity { min-height: 580px; }
  
  .img-9 { margin-left: 20px; max-width: 75px; }
  .img-10 { display: none; }
}

@media (max-width: 768px) {
  .top-menu { width: 100%; max-width: 360px; margin-left: auto; margin-right: auto; }
  .menu-toggle { display: flex; width: 100%; align-items: center; justify-content: space-between; cursor: pointer; text-transform: uppercase; letter-spacing: 1px; color: #b4e3ff; background: #113a58; border: 1px solid #b4e3ff; border-radius: 8px; padding: 12px 14px; font: inherit; line-height: 1; }
  .menu-toggle-bars { display: grid; gap: 3px; width: 18px; }
  .menu-toggle-bars span { display: block; width: 100%; height: 2px; border-radius: 999px; background: #b4e3ff; }
  .top-menu ul { display: none; margin-top: 10px; }
  .top-menu.is-open ul { position: absolute; width: 100%; display: flex; flex-direction: column; align-items: stretch; gap: 0; border: 1px solid #b4e3ff; border-radius: 8px; background: rgba(17, 58, 88, 0.96); overflow: hidden; }
  .top-menu ul li:not(:last-child) { border-right: 0; border-bottom: 1px solid rgba(180, 227, 255, 0.45); padding-right: 0; }
  .top-menu a { display: block; width: 100%; padding: 12px 14px; text-decoration: none; }
  .top-menu a:hover,
  .top-menu a:focus-visible { background: rgba(180, 227, 255, 0.16); outline: none; }
  .br-desktop { display: none; }

  .charity { min-height: 400px; text-align: center; justify-content: center; padding: 16px; }

  .featured-logos img { max-width: 50px; }

  .img-2 { max-width: 200px; }
  .img-4 { max-width: 320px; }
  .img-9 { margin: 30px auto 0; }

  .content, .content-2, .content-3 { padding-left: 16px; padding-right: 16px; }
}

@media (max-width: 580px) {
  .br-desktop-2 { display: none; }
}

@media (max-width: 420px) {
  .br-desktop-3 { display: none; }
}

@media (max-width: 360px) {
  .br-desktop-4 { display: none; }
}