@charset "utf-8";

*,
*::before,
*::after {
  box-sizing: border-box;
}

* {
  margin: 0;
}

html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
  scroll-behavior: smooth;
}

:is(ul, ol)[class] {
  list-style: '';
  margin: 0;
  padding: 0;
}

button,
input,
label {
  line-height: 1.1;
}

a[class] {
  text-decoration: none;
}

a:not([class]) {
  color: #3666cb;
  text-decoration: none;
  text-decoration-skip-ink: auto;
}

img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
}

img {
  height: auto;
}

svg {
  width: 1.5rem;
  height: 1.5rem;
  flex-shrink: 0;
  fill: none;
}

input,
button,
textarea,
select {
  font-family: inherit;
}

button:not(disabled) {
  cursor: pointer;
}

p {
  line-height: 2;
}

a,
button {
  -webkit-tap-highlight-color: transparent;
}

iframe,
iframe:focus {
  outline: none;
}

table {
  border-collapse: collapse;
}

td,
math,
time[datetime*=':'] {
  font-variant-numeric: tabular-nums lining-nums;
}

:root {
  --clr-neutral-100: #fff;
  --clr-neutral-800: #62748e;
  --clr-neutral-900: #000;
  --clr-text-default: #45556c;
  --color-bg-dark: #0f172a;
  --clr-gray-100: #90a1b9;
  --clr-sec-bg: #f3f6f9;

  --clr-primary: #0062b8;
  --clr-secondary: #ffffff1a;
  --clr-tertiary: #004887;
  --clr-blue-100: #f0f9ff;
  --clr-blue-200: #1a6db2;
  --clr-blue-border-100: #2f8ddc;
  --clr-blue-border-200: #b8e6fe;
  --clr-border: #e2e8f0;

  --clr-cyan: #53eafd;
  --clr-cyan-100: #c0edff;
  --clr-cyan-200: #e0f2fe;
  --clr-yellow: #ffd000;
  --clr-purple: #9810fa;
  --clr-orange: #FD5900;

  --clr-error: #FF383C;

  --font-primary: 'Noto Sans Myanmar', sans-serif;
  --font-secondary: 'Inter', sans-serif;
}

body {
  line-height: 1.5;
  color: var(--clr-neutral-900);
  font-family: var(--font-primary);
  font-size: var(--fs-14);
  font-weight: 400;
  background-color: var(--clr-neutral-100);
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

html[lang="en-US"] body {
  font-family: var(--font-secondary);
  font-size: var(--fs-14);
}

html[lang="my-MM"] .lang-btn:not(.active) {
  font-family: var(--font-secondary);
}

html[lang="en-US"] .lang-btn:not(.active) {
  font-family: var(--font-primary);
}

body.is-hamburger-open {
  overflow: hidden;
}

.mm {
  font-family: var(--font-primary);
}

.en {
  font-family: var(--font-secondary);
}

/* Colors */
.bg-white {
  background-color: var(--clr-neutral-100);
}

.clr-white {
  color: var(--clr-neutral-100);
}

.bg-primary {
  background-color: var(--clr-primary);
}

.clr-primary {
  color: var(--clr-primary);
}

.clr-secondary {
  color: var(--clr-secondary);
}

.clr-cyan {
  color: var(--clr-cyan);
}

.border-cyan-100 {
  border: 1px solid var(--clr-cyan-100);
}

.bg-blue-100 {
  background-color: var(--clr-blue-100);
}

.clr-text-default {
  color: var(--clr-text-default);
}

.text-black {
  color: var(--clr-neutral-900);
}

.rounded-10 {
  border-radius: 10px;
}

.rounded-20 {
  border-radius: 20px;
}

.rounded-full {
  border-radius: 100vw;
}

.box-shadow {
  box-shadow: 0 0 4px var(--clr-blue-border-100);
}

textarea {
  width: 31.25rem;
  padding: 0.625rem;
}

.site-wrapper {
  display: flex;
  flex-direction: column;
}

/* Button styles */
.btn {
  display: inline-flex;
  max-width: 100%;
  padding: var(--space-10) var(--space-20);
  border: 0.5px solid transparent;
  border-radius: 100vw;
  box-shadow: 0 0 6px var(--clr-blue-border-100);
  color: var(--clr-neutral-100);
  font-weight: 700;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: 0.5s background-color, 0.5s border-color, 0.5s color;
  column-gap: var(--space-10);
  text-wrap: nowrap;
}

.btn-primary {
  background-color: var(--clr-primary);
}

.btn .arw {
  flex-shrink: 0;
}

@media (hover: hover) {

  :is(.nav-link):is(:hover,
    :focus-visible,
    :active) {
    border-radius: 100vw;
    color: var(--clr-neutral-100);
    background-color: var(--clr-secondary);
  }

  :is(.btn):is(:hover, :focus-visible, :active) {
    border: 0.5px solid var(--clr-primary);
  }

  .btn:not(.disabled):is(:hover, :focus-visible, :active) .arw svg {
    fill: var(--clr-primary);
    animation: arrow-move-right .5s;
  }
}

.search-clear-btn {
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  color: #94a3b8;
  transition: all 0.2s ease;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}

.search-clear-btn:hover,
.search-clear-btn:active {
  color: var(--clr-primary);
  transform: scale(1.15);
}

/* Layout */
.sec-wrap {
  --max-width: 1200px;
  --padding: var(--space-80);

  width: min(var(--max-width), 100% - var(--padding));
  margin-inline: auto;
}

.sec-wrap.wrap-1120 {
  --max-width: 1120px;
  --padding: var(--space-40);
}

.sec-padding {
  padding-block: var(--space-40) var(--space-60);
}

/* Section Title */
.sec-ttl {
  color: var(--clr-secondary);
  font-size: var(--fs-24);
  font-weight: 700;
}

/* Keyframes */
@keyframes arrow-move-right {
  0% {
    transform: translateX(0);
    opacity: 1;
  }

  40% {
    transform: translateX(10px);
    opacity: 0;
  }

  50% {
    transform: translateX(-10px);
    opacity: 0;
  }

  100% {
    transform: translateX(0);
    opacity: 1;
  }
}

/* Main Header */
.main-header {
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  color: var(--clr-neutral-100);
  z-index: 9999;
  border-bottom: 1px solid var(--clr-blue-border-100);
  background-color: var(--clr-primary);
  padding-block: var(--space-10);
  padding-inline: min(80px, 5.556vw);
  transition: transform 0.7s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.6s ease;
}

.main-header.is-hidden {
  transform: translateY(-100%);
  pointer-events: none;
}

.header-nav-wrap {
  display: flex;
  padding: 0.625rem 1.25rem;
  border: 1px solid var(--clr-blue-border-100);
  border-radius: 100vw;
  align-items: center;
  justify-content: center;
  background-color: var(--clr-secondary);
}

.header-nav .header-nav-list {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-10);
}

.header-nav-item .header-nav-link {
  display: inline-block;
  padding: 0.3125rem 1.25rem;
  border-radius: 100vw;
  color: var(--clr-neutral-100);
  font-size: var(--fs-14);
  font-weight: 700;
  text-decoration: none;
  transition: all 0.3s ease;
}

.header-nav-item.active .header-nav-link {
  border-radius: 100vw;
  color: var(--clr-primary);
  background-color: var(--clr-neutral-100);
}

.header-container {
  column-gap: min(80px, 4.167vw);
  text-wrap: nowrap;
}

/* Language Switcher */
.lang-switcher {
  height: 2.5rem;
  line-height: 1.6;
  padding: 0.3125rem;
  border: 1px solid var(--clr-blue-border-100);
  border-radius: 100vw;
  background-color: var(--clr-secondary);
  gap: .1875rem;
}

.lang-btn {
  display: inline-flex;
  padding: 0.3125rem 0.625rem;
  border-radius: 100vw;
  color: var(--clr-neutral-100);
  font-size: var(--fs-12);
  font-weight: 600;
  text-decoration: none;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
}

.lang-btn.active {
  color: var(--clr-primary);
  font-weight: 700;
  background-color: var(--clr-neutral-100);
}

.header-contact-btn {
  height: 2.5rem;
  line-height: 1.6;
  padding: 0.3125rem 1.25rem;
  border: 1px solid var(--clr-blue-border-100);
  border-radius: 100vw;
  color: var(--clr-neutral-100);
  font-size: var(--fs-14);
  font-weight: 700;
  text-decoration: none;
  background-color: var(--clr-secondary);
  transition: background-color 0.3s ease;
}

.header-contact-btn svg {
  width: 1rem;
  height: 1rem;
  fill: var(--clr-neutral-100);
}

@media (hover: hover) {
  .header-contact-btn:hover {
    background-color: rgba(255, 255, 255, 0.2);
  }
}

/* Hamburger Button */
.hamburger-btn {
  display: inline-flex;
  width: 2.375rem;
  height: 2.375rem;
  padding: 0.375rem;
  border: 0.0625rem solid var(--clr-blue-border-100);
  border-radius: 8px;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  background-color: var(--clr-secondary);
  cursor: pointer;
  transition: background-color 0.3s ease, border-color 0.3s ease;
}

.hamburger-btn:hover {
  background-color: rgba(255, 255, 255, 0.2);
}

.hamburger-btn .bar {
  display: block;
  width: 1.25rem;
  height: 0.125rem;
  border-radius: 2px;
  background-color: var(--clr-neutral-100);
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease;
}

.hamburger-btn .bar-mid {
  margin-block: 0.25rem;
}

body.is-hamburger-open .hamburger-btn .bar-top,
.hamburger-btn[aria-expanded="true"] .bar-top {
  transform: translateY(0.375rem) rotate(45deg);
}

body.is-hamburger-open .hamburger-btn .bar-mid,
.hamburger-btn[aria-expanded="true"] .bar-mid {
  transform: scaleX(0);
  opacity: 0;
}

body.is-hamburger-open .hamburger-btn .bar-bottom,
.hamburger-btn[aria-expanded="true"] .bar-bottom {
  transform: translateY(-0.375rem) rotate(-45deg);
}

/* Hamburger Mobile Drawer Menu */
.hamburger-menu {
  position: fixed;
  top: 3.4375rem;
  left: 0;
  width: 100%;
  height: calc(100vh - 3.4375rem);
  visibility: hidden;
  transform: translateY(-0.625rem);
  z-index: 9998;
  background-color: var(--clr-tertiary);
  border-top: 0.0625rem solid rgba(255, 255, 255, 0.1);
  opacity: 0;
  transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1), transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), visibility 0.3s ease;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.hamburger-menu.is-open {
  visibility: visible;
  transform: translateY(0);
  opacity: 1;
}

.hamburger-menu-inner {
  margin: 0 auto;
  padding: 1.5rem 1.25rem 2.5rem 1.25rem;
}

.hamburger-lang-row {
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--clr-secondary);
}

.hamburger-lang-title {
  color: rgba(255, 255, 255, 0.85);
  font-weight: 500;
  letter-spacing: 0.01em;
}

.hamburger-menu-list {
  display: flex;
  flex-direction: column;
}

.hamburger-menu-item {
  border-bottom: 1px solid var(--clr-secondary);
}

.hamburger-menu-item .hamburger-menu-link {
  display: flex;
  width: 100%;
  padding: 0.875rem 1.25rem;
  color: var(--clr-neutral-100);
  font-size: var(--fs-14);
  font-weight: 600;
  text-decoration: none;
  align-items: center;
  justify-content: space-between;
  transition: all 0.3s ease;
}

.hamburger-menu-item.active .hamburger-menu-link,
.hamburger-menu-link.active {
  color: var(--clr-neutral-100);
  font-weight: 700;
  background-color: rgba(255, 255, 255, 0.12);
}

.hamburger-contact-wrap {
  margin-top: 1.875rem;
}

.hamburger-contact-btn {
  display: flex;
  width: 100%;
  padding: 0.9375rem 1.5rem;
  border-radius: 100vw;
  box-shadow: 0 0.375rem 1.25rem rgba(0, 0, 0, 0.2);
  color: var(--clr-primary);
  font-size: var(--fs-14);
  font-weight: 700;
  text-decoration: none;
  align-items: center;
  justify-content: center;
  gap: 0.625rem;
  background-color: var(--clr-neutral-100);
}

.hamburger-contact-btn svg {
  width: 1.25rem;
  height: 1.25rem;
  fill: var(--clr-primary);
}

/* Sub Main Visual */
.sub-mv {
  position: relative;
  overflow: hidden;
  padding-top: var(--space-40);
  padding-bottom: 0;
  color: var(--clr-neutral-100);
  text-align: center;
  background-color: var(--clr-primary);
}

.sub-mv-inner {
  position: relative;
  max-width: 54rem;
  padding-bottom: 2.5rem;
  z-index: 2;
  margin-inline: auto;
}

/* Breadcrumb Styles */
.sub-mv .breadcrumbs {
  display: flex;
  margin-bottom: 1rem;
  justify-content: center;
}

.sub-mv .bread-list {
  display: flex;
  padding: 0;
  border: none;
  background: transparent;
  font-size: 0.8125rem;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.sub-mv .bread-list li {
  display: inline-flex;
  line-height: 1.7;
  align-items: center;
}

.sub-mv .bread-list a {
  display: inline-flex;
  line-height: 1.7;
  color: var(--clr-neutral-100);
  text-decoration: none;
  align-items: center;
  transition: color 0.2s ease;
}

.sub-mv .bread-list a:hover {
  color: var(--clr-cyan);
}

.sub-mv .bread-list svg {
  width: .875rem;
  height: .875rem;
  transform: translateY(0);
  fill: currentColor;
  flex-shrink: 0;
}

.sub-mv .bread-list .separator {
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.4);
  font-size: 0.75rem;
}

.sub-mv .bread-list li span {
  line-height: 1.7;
  padding: 0 1px;
  color: var(--clr-cyan);
  font-weight: 500;
}

.sub-mv .bread-list li.bread-current span {
  display: inline-block;
  max-width: 13.75rem;
  line-height: 1.7;
  overflow: hidden;
  color: var(--clr-cyan);
  font-weight: 600;
  vertical-align: middle;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.sub-mv-ttl {
  margin-bottom: .625rem;
  color: var(--clr-neutral-100);
  font-size: var(--fs-30);
  font-weight: 700;
}

.sub-mv-txt {
  color: var(--clr-blue-border-200);
}

.sub-mv-wave img {
  display: block;
  width: 100%;
  margin-bottom: -2px;
  transform: scale(1.01);
}

.grecaptcha-badge {
  visibility: hidden;
}

/* Pagination styles */
.posts-pagination .page-numbers {
  padding: 0.5rem var(--space-15);
  border: 1px solid var(--clr-blue-border-200);
  border-radius: 12px;
  color: var(--clr-primary);
  background-color: var(--clr-neutral-100);
  transition: opacity 0.3s ease-in;
  font-family: var(--font-secondary);
}

.posts-pagination a.page-numbers:hover {
  opacity: 0.6;
}

.posts-pagination svg {
  width: .75rem;
  height: .75rem;
}

.page-numbers.current {
  color: var(--clr-neutral-100);
  background-color: var(--clr-primary);
}

.prev.page-numbers,
.next.page-numbers {
  padding: 12px 13px;
}

/* Privacy Policy Page Styles */
.privacy-banner-box,
.privacy-main-card {
  padding: var(--space-40);
  box-shadow: 0px 0px 2px var(--clr-blue-border-100);
}

.privacy-banner-icon svg {
  width: 2.5rem;
  height: 2.5rem;
  color: var(--clr-primary);
  fill: var(--clr-primary);
}

.privacy-sec-icon svg {
  width: 1.25rem;
  height: 1.25rem;
  color: var(--clr-primary);
  fill: currentColor;
}

.privacy-check-icon svg {
  width: 1.25rem;
  height: 1.25rem;
  color: var(--clr-primary);
  fill: currentColor;
}

ul.privacy-bullet-list {
  margin-left: var(--space-20);
  list-style-type: disc;
}

.privacy-bullet-list li {
  line-height: 1.8;
}

.privacy-contact-btn {
  transition: all 0.3s ease;
}

.btn-primary-pill {
  border: 1px solid var(--clr-primary);
  color: var(--clr-neutral-100);
  background-color: var(--clr-primary);
}

.btn-primary-pill:hover {
  border-color: var(--clr-tertiary);
  color: var(--clr-neutral-100);
  background-color: var(--clr-tertiary);
}

.btn-secondary-pill {
  border: 1px solid var(--clr-cyan-100);
  color: var(--clr-primary);
  background-color: var(--clr-cyan-100);
}

.btn-secondary-pill:hover {
  border-color: var(--clr-primary);
  background-color: var(--clr-blue-100);
}

.btn-icon svg {
  width: 1rem;
  height: 1rem;
  fill: currentColor;
}

/* 404 Page Styles */
.error-404-card {
  max-width: 42.5rem;
}

.error-404-number {
  line-height: 1;
  text-shadow: 0 4px 12px rgba(0, 98, 184, 0.15);
}

.water-drop-badge {
  width: 3.75rem;
  height: 3.75rem;
  box-shadow: 0 8px 20px rgba(0, 98, 184, 0.25);
  background: linear-gradient(135deg, var(--clr-primary) 0%, var(--clr-blue-200) 100%);
}

.water-drop-badge-icon {
  width: 2rem;
  height: 2rem;
  color: var(--clr-cyan);
}

.water-drop-badge-icon svg {
  width: 2rem;
  height: 2rem;
  fill: currentColor;
}

/* Footer Styles */
.sec-footer {
  color: var(--clr-neutral-100);
}

.footer-wrap {
  display: flex;
  justify-content: flex-start;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: 0;
  border-bottom: 1px solid var(--clr-neutral-100);
}

.footer-col-1 {
  max-width: 400px;
  margin-right: 40px;
  flex: 0 0 400px;
}

.footer-col-2 {
  max-width: 450px;
  margin-right: 20px;
  flex: 0 0 450px;
}

.footer-col-3 {
  max-width: 240px;
  flex: 0 0 240px;
}

.footer-logo-img {
  max-width: 10.625rem;
  height: auto;
}

.footer-desc {
  line-height: 1.7;
}

.footer-tagline-pill {
  width: fit-content;
  padding: var(--space-10) var(--space-20);
  border: 1px solid var(--clr-blue-border-100);
  border-radius: 100vw;
  background-color: var(--clr-secondary);
}

.footer-social-list .social-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.footer-social-list .social-link:hover {
  transform: translateY(-0.125rem);
  opacity: 0.85;
}

.footer-social-list .social-link svg {
  width: 1.75rem;
  height: 1.75rem;
}

.contact-icon svg {
  width: 1.375rem;
  height: 1.375rem;
  color: var(--clr-neutral-100);
  fill: var(--clr-neutral-100);
}

.water-drop-icon svg {
  width: 1.125rem;
  height: 1.125rem;
}

.footer-nav-link {
  line-height: 1.4;
  transition: color 0.3s ease;
}

.footer-nav-link:hover {
  color: var(--clr-cyan);
}

.footer-bottom-border {
  width: 100%;
  border-top: 1px solid var(--clr-blue-border-100);
}

.footer-contact-item p {
  line-height: 1.5;
}

.contact-detail a,
.contact-detail span {
  text-wrap: nowrap;
}

.contact-detail a {
  pointer-events: none;
}

.contact-notice {
  line-height: 1.5;
  opacity: 0.9;
}

/* Mobile App Banner Section */
.sec-mobile-app {
  box-shadow: inset 0 16px 24px -12px rgba(0, 98, 184, 0.12);
  background: linear-gradient(to bottom, #C0EDFF 0%, #F4FCFF 25%, #FFFFFF 50%, #F4FCFF 75%, #C0EDFF 100%);
}

.sec-mobile-app-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.sec-mobile-app-content {
  max-width: 42rem;
  flex: 1;
  padding-block: var(--space-50);
}

.sec-mobile-app-badge-tag {
  display: inline-flex;
  width: fit-content;
  padding: 0.375rem 0.875rem;
  border: 1px solid rgba(0, 98, 184, 0.2);
  border-radius: 30px;
  background: rgba(0, 98, 184, 0.08);
  color: var(--clr-primary);
  font-size: var(--fs-12);
  font-weight: 600;
  align-items: center;
  gap: 0.5rem;
  letter-spacing: 0.02em;
}

.sec-mobile-app-ttl {
  line-height: 1.5;
  color: var(--clr-neutral-900);
  font-size: var(--fs-32);
  font-weight: 700;
  letter-spacing: -0.01em;
}

.sec-mobile-app-highlight {
  display: inline-block;
  background: linear-gradient(135deg, #0052a3 0%, #0099ff 100%);
  font-weight: 800;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.sec-mobile-app-desc {
  line-height: 1.8;
  color: var(--clr-txt-default);
  font-size: var(--fs-16);
}

.app-feature-pills {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.app-pill-item {
  display: inline-flex;
  line-height: 1.4;
  padding: 0.375rem 0.875rem;
  border-radius: 100vw;
  font-size: var(--fs-12);
  font-weight: 600;
  white-space: nowrap;
  align-items: center;
  gap: 0.5rem;
}

.app-pill-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.app-pill-icon svg {
  width: 1rem;
  height: 1rem;
}

.app-pill-item.pill-blue {
  border: 1px solid var(--clr-blue-border-100);
  color: var(--clr-primary);
  background-color: var(--clr-blue-100);
}

.app-pill-item.pill-blue .app-pill-icon {
  fill: var(--clr-primary);
}

.app-pill-item.pill-green {
  border: 1px solid #00b783;
  color: #006045;
  background-color: #ecfdf5;
}

.app-pill-item.pill-amber {
  border: 1px solid #fce26f;
  color: #773601;
  background-color: #fffae1;
}

.app-store-links {
  display: flex;
  align-items: center;
  gap: var(--space-15);
}

.app-store-link {
  display: inline-flex;
  border-radius: 8px;
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.3s ease;
}

.app-store-link img {
  max-width: 150px;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease, box-shadow 0.3s ease, filter 0.3s ease;
}

.app-store-link:hover img {
  transform: translateY(-3px);
}

.sec-mobile-app-media {
  display: flex;
  position: relative;
  max-width: 31.25rem;
  align-items: center;
  justify-content: flex-end;
  flex: 1;
}

.water-splash {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  z-index: 0;
  background: url('../img/common/water-splash.png') no-repeat center / contain;
  pointer-events: none;
  opacity: 0;
}

.app-mockup-img {
  position: relative;
  width: 100%;
  height: auto;
  z-index: 1;
  object-fit: contain;
  opacity: 1;
  will-change: transform, opacity;
}

.cmn-ttl .pill-badge {
  border: 1px solid var(--clr-blue-border-100);
  border-radius: 30px;
  background-color: var(--clr-neutral-100);
}

.btn-details,
.product-btn-order {
  display: inline-flex;
  min-height: 2.3125rem;
  padding: .3125rem .625rem;
  border-radius: 10px;
  font-size: .75rem;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  gap: .625rem;
}

.btn-details {
  border: 1px solid var(--clr-blue-border-100);
  color: var(--clr-primary);
  background-color: var(--clr-blue-100);
}

.btn-details svg {
  width: .75rem;
  height: .75rem;
}

@media (hover: hover) {

  .btn-details:hover,
  .product-btn-order:hover {
    opacity: 0.6;
  }
}

.sg-crd-ttl,
.sg-card-des {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
}

.sg-crd-ttl {
  line-height: 1.7;
  -webkit-line-clamp: 1;
}

.sg-card-des {
  -webkit-line-clamp: 2;
}

/* Rain-drop animation section */
section.rain-drop {
  background: linear-gradient(90deg, var(--clr-blue-border-100) 0%, var(--clr-primary) 100%);
}

.rain-drop #rain-canvas {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}


.card-wrapper .card {
  width: 100%;
  border: 1px solid rgba(255, 255, 255, 0.35);
  box-shadow:
    0px 0px 4px 0px rgba(0, 0, 0, 0.25),
    inset 1px 1px 2px 0px rgba(255, 255, 255, 0.40);
  background: rgba(255, 255, 255, 0.10);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}

.card-header .icon-box {
  display: flex;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 10px;
  background: linear-gradient(135deg, #2F8DDC 0%, #53EAFD 100%);
  align-items: center;
  justify-content: center;
}

.card-header .card-number {
  opacity: 0.7;
}

.card .card-subtitle {
  min-height: 1.125rem;
}

.card .divider {
  height: 0.0625rem;
  border: none;
  background: rgba(255, 255, 255, 0.50);
}

.card .feature-list {
  gap: 1rem;
}

.card-wrapper {
  position: relative;
}

.card-wrapper .arrow-connector {
  display: flex;
  position: absolute;
  top: 50%;
  right: -1.25rem;
  min-width: 2.5rem;
  height: 2.5rem;
  transform: translateY(-50%);
  z-index: 3;
  align-items: center;
  justify-content: center;
  animation: arrowFlow 2s ease-in-out infinite;
}

.card-wrapper:nth-child(2) .arrow-connector {
  animation-delay: 0.4s;
}

/* Arrow Connectors Horizontal Flow Animation */
@keyframes arrowFlow {

  0%,
  100% {
    transform: translateY(-50%) translateX(0);
    filter: drop-shadow(0 0 3px rgba(0, 210, 255, 0.4));
    opacity: 0.8;
  }

  50% {
    transform: translateY(-50%) translateX(8px);
    filter: drop-shadow(0 0 12px rgba(0, 210, 255, 0.95));
    opacity: 1;
  }
}

.card-wrapper .arrow-connector svg {
  width: 2.5rem;
  height: 2.5rem;
}

.btn-back-to-list svg {
  fill: var(--clr-neutral-100);
}

.back-to-list-wrap {
  display: flex;
  margin-top: var(--space-40);
  padding-top: var(--space-40);
  justify-content: flex-start;
  gap: var(--space-30);
}

.news-card .card-image-wrapper {
  width: 100%;
  overflow: hidden;
  border-top-left-radius: 1.25rem;
  border-top-right-radius: 1.25rem;
}

.card-image-wrapper .card-image {
  width: 100%;
  object-fit: cover;
  transition: all 0.2s ease;
}

.card-image-wrapper .card-image:hover {
  transform: scale(1.05);
}

.btn-back-to-list a .btn-arw-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.btn-back-to-list a:hover .btn-arw-icon {
  transform: translateX(-6px);
}

/* No Results Message */
.no-results-msg {
  width: 100%;
  margin-top: 2rem;
  padding: 3rem 1.5rem;
  border: 1px dashed rgba(47, 141, 220, 0.35);
  border-radius: 1rem;
  color: var(--clr-text-default);
  font-size: 1rem;
  font-weight: 500;
  text-align: center;
  background-color: var(--clr-neutral-100);
}

/* No Results UI Card */
.no-results-card {
  width: 100%;
  max-width: 42.5rem;
  margin: 2rem auto;
  box-shadow: 0 8px 24px rgba(0, 98, 184, 0.08);
  grid-column: 1 / -1;
}

.no-results-badge {
  width: 3.75rem;
  height: 3.75rem;
  box-shadow: 0 8px 20px rgba(0, 98, 184, 0.25);
  background: linear-gradient(135deg, var(--clr-primary) 0%, var(--clr-blue-200) 100%);
}

.no-results-badge-icon {
  width: 2rem;
  height: 2rem;
  color: var(--clr-cyan);
}

.no-results-badge-icon svg {
  width: 2rem;
  height: 2rem;
  stroke: var(--clr-neutral-100);
}

.no-results-title {
  color: var(--clr-neutral-900);
}

.no-results-desc {
  line-height: 1.6;
  color: var(--clr-text-default);
}

/* Floating Back to Top Button */
.back-to-top-btn.water-drop-shape-btn {
  position: fixed;
  right: 2.1875rem;
  bottom: 2.1875rem;
  width: 3.75rem;
  height: 4.375rem;
  visibility: hidden;
  border: none;
  transform: translateY(1.25rem) scale(0.9);
  background: transparent;
  z-index: 999;
  opacity: 0;
  transition: all 0.38s cubic-bezier(0.34, 1.56, 0.64, 1);
  outline: none;
}

.back-to-top-btn.water-drop-shape-btn.is-visible {
  visibility: visible;
  transform: translateY(0) scale(1);
  opacity: 1;
  animation: dropGentleFloat 1s ease-out infinite alternate;
}

@keyframes dropGentleFloat {
  0% {
    transform: translateY(0) scale(1);
  }

  100% {
    transform: translateY(-.5rem) scale(1);
  }
}

.back-to-top-btn.water-drop-shape-btn .drop-bg-svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: filter 0.35s ease, transform 0.35s ease;
}

.back-to-top-btn.water-drop-shape-btn .drop-bg-svg svg {
  width: 100%;
  height: 100%;
}

.back-to-top-btn.water-drop-shape-btn .straight-arrow-icon {
  position: relative;
  margin-top: 0.625rem;
  color: var(--clr-neutral-100);
  z-index: 2;
  transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.back-to-top-btn.water-drop-shape-btn .straight-arrow-icon svg {
  width: 1.625rem;
  height: 1.625rem;
  stroke: var(--clr-neutral-100);
  filter: drop-shadow(0 2px 5px rgba(0, 0, 0, 0.3));
}

/* Hover Animation & Glow Upgrade */
.back-to-top-btn.water-drop-shape-btn:hover {
  transform: translateY(-0.5rem) scale(1.12);
  animation-play-state: paused;
  filter: drop-shadow(0 0 4px var(--clr-blue-border-100));
}

.back-to-top-btn.water-drop-shape-btn:hover .straight-arrow-icon {
  transform: translateY(-0.25rem);
}

@media (max-width: 84.375rem) {
  .header-container {
    column-gap: 2.62vw;
  }

  .header-nav .header-nav-list {
    gap: 0.738vw;
  }

  .main-header {
    padding-block: 0.738vw;
    padding-inline: 2.62vw;
  }

  .header-nav-wrap {
    padding: 0.738vw 1.476vw;
  }

  .header-nav-item .header-nav-link {
    padding: 0.369vw 1.476vw;
    font-size: .75rem;
  }

  .header-contact-btn {
    padding: 0.369vw 1.476vw;
    font-size: .75rem;
  }
}

@media (max-width: 71.5625em) {
  .header-container {
    justify-content: space-between;
    column-gap: unset;
  }

  .header-nav .header-nav-list {
    gap: 0.873vw;
  }

  .main-header {
    padding-block: 0.873vw;
    padding-inline: 1.747vw;
  }

  .header-nav-wrap {
    padding: 0.873vw 1.747vw;
  }

  .header-nav-item .header-nav-link {
    padding: 0.437vw 1.747vw;
  }

  .header-contact-btn {
    padding: 0.437vw 1.747vw;
  }

  .footer-wrap {
    flex-wrap: wrap;
    gap: 30px;
  }

  .footer-col-1 {
    max-width: 100%;
    margin-right: 0;
    padding-bottom: 20px;
    flex: 1 1 100%;
    border-bottom: 1px solid var(--clr-neutral-100);
  }

  .footer-col-2 {
    max-width: calc(60% - 15px);
    margin-right: 0;
    flex: 0 0 calc(60% - 15px);
  }

  .footer-col-3 {
    max-width: calc(40% - 15px);
    margin-right: 0;
    flex: 0 0 calc(40% - 15px);
  }
}

@media (max-width: 64em) {
  .main-header {
    padding-inline: var(--space-20);
    padding-block: var(--space-10);
  }

  .header-container {
    gap: var(--space-40);
  }

  .sec-mobile-app-wrap {
    gap: var(--space-25);
  }

  .sec-mobile-app-ttl {
    font-size: var(--fs-28);
  }

  .cmn-ttl.column-center {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
}

@media (max-width: 48em) {

  input,
  textarea,
  select {
    font-size: 16px !important;
  }

  .sec-wrap {
    --max-width: 600px;
    --padding: 40px;
  }

  .sec-padding {
    padding-block: var(--space-40);
  }

  .header-right-actions {
    display: none;
  }

  .logo-link .logo-img {
    max-width: 6.875rem;
  }

  .sub-mv {
    padding-top: var(--space-25);
  }

  .sub-mv-inner {
    padding-bottom: 1.5rem;
  }

  .sub-mv-ttl {
    font-size: var(--fs-22);
  }

  .sec-mobile-app-wrap {
    text-align: center;
    flex-direction: column;
  }

  .sec-mobile-app-content {
    max-width: 100%;
    padding-bottom: 0;
    align-items: center;
    gap: 10px;
  }

  .app-store-link img {
    max-width: 8.125rem;
  }

  .sec-mobile-app-ttl {
    font-size: var(--fs-20);
  }

  .sec-mobile-app-desc {
    font-size: var(--fs-14);
  }

  .app-feature-pills {
    justify-content: center;
  }

  .app-store-links {
    justify-content: center;
  }

  .sec-mobile-app-media {
    max-width: 20rem;
    margin-top: var(--space-15);
    justify-content: center;
  }

  .privacy-main-card {
    padding: var(--space-20);
  }

  .privacy-contact-box {
    align-items: flex-start;
    flex-direction: column;
  }

  .contact-box-right {
    width: 100%;
    flex-wrap: wrap;
  }

  .privacy-contact-btn {
    justify-content: center;
    flex: 1;
  }

  .footer-col-2,
  .footer-col-3 {
    max-width: 100%;
    flex: 1 1 100%;
  }

  .footer-tagline-pill {
    width: 100%;
  }

  .footer-bottom {
    text-align: center;
    justify-content: center;
    flex-direction: column-reverse;
    gap: var(--space-15);
  }

  .footer-bottom ul {
    justify-content: center;
  }

  .contact-detail a {
    pointer-events: all;
  }

  .cmn-ttl .pill-badge {
    font-size: 12px;
  }

  .column-center .section-title {
    text-align: center;
  }

  .cmn-ttl h2 {
    font-size: 20px;
  }

  .back-to-top-btn.water-drop-shape-btn {
    right: 1.25rem;
    bottom: 1.25rem;
    width: 3rem;
    height: 3.75rem;
  }
}