/* About page mobile navigation replaces the floating Back to Main Page CTA. */
.about-page{min-height:100vh;background:linear-gradient(145deg,#f1f9ff 0%,#f5f5ff 58%,#fff5fb 100%);color:#243452}
.about-topbar{position:relative;z-index:1;padding:14px max(18px,calc((100% - 960px)/2));background:rgba(255,255,255,.86);backdrop-filter:blur(12px)}
.about-back-link{display:inline-flex;align-items:center;gap:8px;padding:10px 13px;border:1px solid #dbe5f5;border-radius:999px;color:#24416f;text-decoration:none;font-size:13px;font-weight:800;background:#fff}
.about-back-link span{font-size:20px;line-height:1}
.about-page-main{width:min(920px,calc(100% - 36px));margin:0 auto;padding:30px 0 44px}
.about-page-heading{text-align:center;margin:0 auto 22px;max-width:680px}
.about-page-heading .section-kicker{color:#2b67d8;font-size:12px;font-weight:800;letter-spacing:.16em}
.about-page-heading h1{margin:8px 0;color:#172749;font:800 clamp(27px,4vw,38px)/1.15 Manrope,Arial,sans-serif;letter-spacing:-1px}
.about-page-heading p{margin:0;color:#5b6c87;font-size:15px;line-height:1.6}
.about-page-purpose{margin:0 0 16px}
.about-page-profile{margin:0 0 16px;padding:22px;gap:17px}
.about-page-profile .about-description,.about-page-profile .independent-note{font-size:14px;line-height:1.7}
.about-page-profile .independent-note{padding:10px 12px}
.about-page-values{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}
.about-value-card{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;padding:20px;border:1px solid rgba(125,163,229,.32);border-radius:20px;background:linear-gradient(140deg,#fff,#f6f9ff);box-shadow:0 8px 22px rgba(58,102,170,.06)}
.about-value-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:13px;background:#e6f1ff;color:#1761d3;font-size:25px;font-weight:800}
.about-value-card h2{margin:3px 0 8px;color:#172749;font:800 17px/1.3 Manrope,Arial,sans-serif}
.about-value-card p,.about-value-card li{color:#586984;font-size:13px;line-height:1.65}
.about-value-card p{margin:0}.about-value-card ul{margin:0;padding-left:18px}
.about-established{display:flex;align-items:center;justify-content:center;gap:10px;margin:22px 0;color:#225ac2;font:800 14px/1.5 Manrope,Arial,sans-serif;text-align:center}
.about-established span{font-size:20px}
.about-home-cta{display:flex;align-items:center;justify-content:center;gap:12px;max-width:320px;margin:0 auto;padding:14px 18px;border-radius:12px;background:linear-gradient(100deg,#1688f4,#3155ed);box-shadow:0 8px 18px rgba(49,94,234,.2);color:#fff;text-decoration:none;font-weight:800}
.about-page-footer{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;padding:20px 16px;border-top:1px solid #dce5f4;background:rgba(255,255,255,.8);font-size:12px}
.about-page-footer a{color:#34557f;text-decoration:none}.about-page-footer span{color:#7a879c}
@media(max-width:600px){.about-topbar{padding:11px 14px}.about-back-link{padding:9px 10px;font-size:12px}.about-page-main{width:calc(100% - 28px);padding:23px 0 32px}.about-page-heading{margin-bottom:17px}.about-page-heading p{font-size:13px}.about-page-purpose{padding:20px 17px;border-radius:19px}.about-page-purpose .purpose-card h2{font-size:25px}.about-page-purpose .purpose-card>p{font-size:14px;line-height:1.65}.about-page-profile{grid-template-columns:58px minmax(0,1fr);padding:15px 13px;gap:11px;border-radius:17px}.about-page-profile>img{width:58px;height:58px;border-radius:16px}.about-page-profile .about-brand-title{font-size:18px!important}.about-page-profile .about-description,.about-page-profile .independent-note{font-size:12.5px;line-height:1.55}.about-page-values{grid-template-columns:1fr;gap:12px}.about-value-card{padding:16px;border-radius:17px}.about-value-card p,.about-value-card li{font-size:13px}.about-established{font-size:13px}.about-page-footer{gap:12px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.about-page-cta{transition:none}.about-page-cta:hover{transform:none}}

/* include the complete Please Read / Terms card on the About page. */
.about-page-main > .about-terms-section{display:block;width:100%;max-width:none;margin:22px 0 20px;padding:0}
.about-page-main > .about-terms-section .terms-card{padding:22px;border-radius:20px}
.about-page-main > .about-terms-section .terms-card h2{margin:8px 0 10px}
.about-page-main > .about-terms-section .terms-intro{margin:0 0 12px}
@media(max-width:600px){.about-page-main > .about-terms-section{margin:18px 0 16px}.about-page-main > .about-terms-section .terms-card{padding:17px 15px}.about-page-main > .about-terms-section .terms-card p{font-size:14px;line-height:1.65}}


/* clean About header and add a persistent floating return button. */
.about-topbar .about-back-link { display: none !important; }
.about-home-cta { display: none !important; }
.about-floating-home {
  position: fixed;
  left: 50%;
  bottom: calc(18px + env(safe-area-inset-bottom));
  transform: translateX(-50%);
  z-index: 1000;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  width: max-content;
  max-width: calc(100vw - 32px);
  padding: 12px 20px;
  border: 1px solid rgba(255,255,255,.42);
  border-radius: 999px;
  background: linear-gradient(110deg,#1688f4,#3155ed);
  box-shadow: 0 8px 24px rgba(37,87,210,.3);
  color: #fff;
  text-decoration: none;
  font: 800 14px/1.2 Manrope,Arial,sans-serif;
  -webkit-tap-highlight-color: transparent;
}
.about-floating-home span[aria-hidden="true"] { font-size: 20px; line-height: .9; }
.about-page { padding-bottom: calc(64px + env(safe-area-inset-bottom)); }
@media (min-width: 761px) {
  .about-floating-home { bottom: 24px; }
  .about-page { padding-bottom: 100px; }
}
@media (prefers-reduced-motion: no-preference) {
  .about-floating-home { transition: transform .18s ease, box-shadow .18s ease; }
  .about-floating-home:hover { transform: translateX(-50%) translateY(-2px); box-shadow: 0 11px 28px rgba(37,87,210,.34); }
}


/* compact About page section spacing; descriptions use 2px bottom margin. */
.about-page-main > section,
.about-page-main > .about-page-purpose,
.about-page-main > .about-card,
.about-page-main > .about-value-card,
.about-page-main > .about-terms-section {
  margin-top: 12px;
  margin-bottom: 12px;
}
.about-page-main .about-page-heading { margin-bottom: 12px; }
.about-page-main .about-page-purpose > p,
.about-page-main .about-card p,
.about-page-main .about-value-card p,
.about-page-main .about-terms-section .terms-intro,
.about-page-main .about-terms-section .terms-card p {
  margin-bottom: 2px;
}
.about-page-main .about-page-purpose > p + p,
.about-page-main .about-card p + p { margin-top: 6px; }
.about-page-main .about-page-purpose,
.about-page-main .about-card,
.about-page-main .about-value-card {
  padding-top: 18px;
  padding-bottom: 18px;
}
.about-page-main > .about-terms-section { margin-top: 12px; margin-bottom: 12px; }
@media (max-width: 600px) {
  .about-page-main { padding-top: 18px; padding-bottom: 24px; }
  .about-page-main > section,
  .about-page-main > .about-page-purpose,
  .about-page-main > .about-card,
  .about-page-main > .about-value-card,
  .about-page-main > .about-terms-section {
    margin-top: 8px;
    margin-bottom: 8px;
  }
  .about-page-main .about-page-heading { margin-bottom: 8px; }
  .about-page-main .about-page-purpose,
  .about-page-main .about-card,
  .about-page-main .about-value-card { padding-top: 15px; padding-bottom: 15px; }
}


/* remove the excess gradient gap after the About footer on mobile. */
@media (max-width: 600px) {
  body.about-page {
    padding-bottom: 0 !important;
  }
  body.about-page .about-established {
    margin-top: 12px !important;
    margin-bottom: 8px !important;
  }
}


/* consistent compact spacing across the About page on mobile. */
@media (max-width: 600px) {
  body.about-page .about-page-main {
    width: calc(100% - 28px) !important;
    padding-top: 8px !important;
  }
  body.about-page .about-page-main > *,
  body.about-page .about-page-main > section,
  body.about-page .about-page-main > .about-page-purpose,
  body.about-page .about-page-main > .about-page-profile,
  body.about-page .about-page-main > .about-page-values,
  body.about-page .about-page-main > .about-terms-section {
    margin-top: 2px !important;
    margin-bottom: 2px !important;
  }
  body.about-page .about-page-main .about-page-heading {
    margin-top: 0 !important;
    margin-bottom: 2px !important;
  }
  body.about-page .about-page-main .about-page-purpose,
  body.about-page .about-page-main .about-page-profile,
  body.about-page .about-page-main .about-value-card,
  body.about-page .about-page-main > .about-terms-section .terms-card {
    padding: 12px !important;
    border-radius: 14px !important;
  }
  body.about-page .about-page-main .about-page-values {
    gap: 2px !important;
  }
  body.about-page .about-page-main .about-page-profile {
    column-gap: 10px !important;
    row-gap: 2px !important;
  }
  body.about-page .about-page-main .about-page-profile .about-description,
  body.about-page .about-page-main .about-page-profile .independent-note,
  body.about-page .about-page-main .about-page-purpose .purpose-card > p,
  body.about-page .about-page-main .about-value-card p,
  body.about-page .about-page-main .about-value-card li,
  body.about-page .about-page-main .about-terms-section .terms-intro,
  body.about-page .about-page-main .about-terms-section .terms-card p {
    margin-bottom: 2px !important;
  }
  body.about-page .about-page-main .about-value-card h2,
  body.about-page .about-page-main .about-terms-section .terms-card h2 {
    margin-top: 2px !important;
    margin-bottom: 4px !important;
  }
  body.about-page .about-page-main .about-terms-section {
    padding: 0 !important;
  }
  body.about-page .about-page-main .about-terms-section .terms-card {
    padding: 12px !important;
  }
  body.about-page .about-page-main .about-established {
    margin-top: 2px !important;
    margin-bottom: 2px !important;
  }
  body.about-page .about-page-footer {
    gap: 8px 12px !important;
    padding: 10px 12px !important;
  }
}


/* lift Mission, Values, and Please Read; enforce 2px vertical gaps. */
@media (max-width: 600px) {
  body.about-page .about-page-main > .about-page-purpose,
  body.about-page .about-page-main > .about-page-profile,
  body.about-page .about-page-main > .about-page-values,
  body.about-page .about-page-main > .about-terms-section,
  body.about-page .about-page-main > .about-established {
    margin-top: 2px !important;
    margin-bottom: 2px !important;
  }
  body.about-page .about-page-main {
    padding-top: 2px !important;
  }
  body.about-page .about-page-main > .about-page-values {
    gap: 2px !important;
  }
  body.about-page .about-page-main > .about-page-values .about-value-card {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  body.about-page .about-page-main > .about-terms-section {
    padding: 0 !important;
  }
  body.about-page .about-page-main > .about-terms-section .terms-card {
    margin: 0 !important;
    padding: 12px !important;
  }
  body.about-page .about-page-main > .about-terms-section .terms-intro,
  body.about-page .about-page-main > .about-terms-section .terms-card p {
    margin-top: 2px !important;
    margin-bottom: 2px !important;
  }
  body.about-page .about-page-main > .about-established {
    margin-top: 2px !important;
    margin-bottom: 0 !important;
  }
  body.about-page .about-page-footer {
    margin-top: 0 !important;
  }
}


/* set About page section-to-section spacing to 2px and lift content upward. */
@media (max-width: 600px) {
  body.about-page .about-page-main > .about-page-heading {
    margin-top: 0 !important;
    margin-bottom: 2px !important;
  }
  body.about-page .about-page-main > .about-page-values > .about-value-card {
    margin: 0 !important;
  }
  body.about-page .about-page-main > .about-terms-section > .terms-card {
    margin: 0 !important;
  }
  body.about-page .about-page-main > .about-established {
    margin-bottom: 2px !important;
  }
}


/* reduce excess vertical padding INSIDE every About-page card on mobile. */
@media (max-width: 600px) {
  body.about-page .about-page-main .about-page-purpose,
  body.about-page .about-page-main .about-page-profile,
  body.about-page .about-page-main .about-value-card,
  body.about-page .about-page-main > .about-terms-section .terms-card,
  body.about-page .about-page-main .terms-security {
    padding-top: 2px !important;
    padding-bottom: 2px !important;
  }
  body.about-page .about-page-main .about-page-purpose,
  body.about-page .about-page-main .about-page-profile,
  body.about-page .about-page-main .about-value-card,
  body.about-page .about-page-main > .about-terms-section .terms-card {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
  body.about-page .about-page-main .about-page-purpose h2,
  body.about-page .about-page-main .about-page-profile h2,
  body.about-page .about-page-main .about-value-card h2,
  body.about-page .about-page-main > .about-terms-section .terms-card h2,
  body.about-page .about-page-main .terms-security h3 {
    margin-top: 2px !important;
    margin-bottom: 2px !important;
  }
  body.about-page .about-page-main .about-page-purpose > p,
  body.about-page .about-page-main .about-page-profile p,
  body.about-page .about-page-main .about-value-card p,
  body.about-page .about-page-main .about-value-card li,
  body.about-page .about-page-main > .about-terms-section .terms-card p,
  body.about-page .about-page-main .terms-security p {
    margin-top: 2px !important;
    margin-bottom: 2px !important;
  }
  body.about-page .about-page-main .purpose-signoff {
    margin-top: 2px !important;
    padding-top: 2px !important;
    padding-bottom: 0 !important;
  }
  body.about-page .about-page-main .about-page-profile {
    align-items: start;
  }
}


/* keep the footer clear of the fixed mobile bottom navigation. */
@media (max-width: 600px) {
  body.about-page .about-page-main {
    padding-bottom: 2px !important;
  }
  body.about-page .about-page-footer {
    margin-top: 2px !important;
    margin-bottom: 0 !important;
    padding: 10px 12px !important;
  }
  body.about-page .about-floating-home {
    bottom: calc(18px + env(safe-area-inset-bottom)) !important;
  }
  /* Reserve room for the fixed bottom navigation after the footer links. */
  body.about-page .about-page-footer {
    padding-bottom: 72px !important;
  }
}


/* homepage-matched bottom navigation on About page; only visible on mobile. */
body.about-page .about-floating-home { display:none !important; }
body.about-page { padding-bottom:0; }
body.about-page .mobile-bottom-nav { display:none; }
@media screen and (max-width:700px) {
  html body.about-page { padding-bottom:calc(84px + env(safe-area-inset-bottom,0px)) !important; }
  html body.about-page .mobile-bottom-nav {
    -webkit-touch-callout:none; -webkit-user-select:none; user-select:none;
    position:fixed; left:0; right:0; bottom:0; z-index:2147482500;
    display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); align-items:end; gap:2px;
    box-sizing:border-box; width:100%; min-height:72px;
    padding:2px 8px calc(7px + env(safe-area-inset-bottom,0px));
    background:rgba(15,24,45,.97); border-top:1px solid rgba(174,198,255,.32);
    box-shadow:0 -8px 28px rgba(20,35,70,.18);
    -webkit-backdrop-filter:blur(16px); backdrop-filter:blur(16px);
  }
  html body.about-page .mobile-bottom-nav > .mobile-nav-item {
    min-width:0; min-height:58px; display:flex; flex-direction:column; align-items:center; justify-content:center;
    gap:4px; padding:3px 0; border:0; border-radius:12px; background:transparent; color:#e5edff;
    text-decoration:none; font:600 11px/1.1 "DM Sans",sans-serif; cursor:pointer; -webkit-tap-highlight-color:transparent; touch-action:manipulation;
  }
  html body.about-page .mobile-bottom-nav > .mobile-nav-item svg { display:block; width:24px; height:24px; flex:0 0 24px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
  html body.about-page .mobile-bottom-nav .mobile-nav-item.is-active { background:rgba(167,139,250,.12); color:#fff; }
  html body.about-page .mobile-bottom-nav .mobile-nav-stories { position:relative; gap:2px; color:#8eb5ff; }
  html body.about-page .mobile-bottom-nav .mobile-nav-story-avatar { position:relative; display:block; width:43px; min-width:43px; max-width:43px; height:43px; min-height:43px; max-height:43px; flex:0 0 43px; box-sizing:border-box; padding:3px; margin:0; border-radius:50%; background:conic-gradient(#ff3f91,#8b5cf6,#2778ff,#20d6c4,#ff3f91); box-shadow:0 0 12px rgba(87,100,255,.3); overflow:visible; }
  html body.about-page .mobile-bottom-nav .mobile-nav-story-avatar img { display:block; width:100%; height:100%; object-fit:cover; border:2px solid #101a31; border-radius:50%; pointer-events:none; }
  html body.about-page .mobile-bottom-nav .mobile-nav-story-count { position:absolute; top:-3px; right:-4px; min-width:17px; height:17px; padding:0 4px; display:grid; place-items:center; border:2px solid #10182b; border-radius:12px; background:#A855F7; color:#fff; font:700 10px/1 Arial,sans-serif; }
  html body.about-page .mobile-bottom-nav .mobile-nav-story-count[data-loading="true"] { opacity:.88; background:#A855F7; font-weight:600; }
  html body.about-page .mobile-bottom-nav .mobile-nav-story-count[data-loading="false"] { opacity:1; transition:opacity .16s ease, background-color .16s ease; }
  html body.about-page .mobile-bottom-nav .mobile-nav-item > span:not(.mobile-nav-story-avatar) { display:block; font-size:11px; line-height:1.15; white-space:nowrap; }
  html body.about-page .mobile-bottom-nav .mobile-nav-item svg.whatsapp-nav-icon { fill:currentColor; stroke:none; stroke-width:0; }
}
@media (prefers-reduced-motion:reduce) { html body.about-page .mobile-bottom-nav * { transition:none !important; animation:none !important; } }
