/* ERA website design system */
:root {
  --ink: #0A1B28; --ink-2: #10283A; --ink-3: #14303F;
  --amber: #F8A504; --amber-2: #FDC41E; --amber-deep: #B36F00; --amber-soft: #FFF3D6;
  --blue: #16293A; --blue-deep: #2E4A66; --ice: #EDF0F2; --ice-2: #E3E7EA;
  --paper: #FFFFFF; --cream: #F7F9FA; --line: #E3EBF0;
  --body-c: #3D5266; --muted: #66798B; --faint: #93A5B4;
  --on-dark: #B9CAD6; --on-dark-2: #7F97A8;
  --r: 24px; --r-sm: 14px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; overflow-x: clip; }
body { margin: 0; background: var(--paper); color: var(--body-c); overflow-x: clip;
  font-family: 'DM Sans', 'Helvetica Neue', Arial, sans-serif; font-size: 17px; line-height: 1.65; -webkit-font-smoothing: antialiased;
  font-variant-numeric: lining-nums; font-feature-settings: "lnum" 1; }
h1, h2, h3, h4 { font-family: 'Young Serif', Georgia, 'Times New Roman', serif; color: var(--ink); margin: 0; font-weight: 400; letter-spacing: -0.01em; }
a { color: var(--blue); text-decoration: none; } a:hover { color: var(--blue-deep); }
img { max-width: 100%; }
.page { max-width: 1512px; margin: 0 auto; background: var(--paper); overflow: visible; }
/* Full-bleed backgrounds keep the content column centred while colour reaches the viewport edges. */
.page > .utilbar,
.page > .section,
.page > .footer { position: relative; isolation: isolate; }
.page > .topnav { position: sticky; top: 0; isolation: isolate; z-index: 1000; }
.page > .utilbar::before,
.page > .topnav::before,
.page > .section::before,
.page > .footer::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  background: inherit;
  pointer-events: none;
}
.page > .utilbar::before { box-shadow: inset 0 -1px 0 rgba(255,255,255,0.07); }
.section { padding: 100px 120px; }
.section-cream { background: var(--cream); }
.section-ice { background: linear-gradient(180deg, var(--ice) 0%, #F0F2F4 100%); }
.section-dark { background: linear-gradient(165deg, var(--ink) 0%, var(--ink-3) 100%); }
.section-dark h1, .section-dark h2, .section-dark h3 { color: #FFFFFF; }
.section-dark p { color: var(--on-dark); }

/* Section labels */
.marker.marker-no-prefix::before { content: none; }

.marker { font-family: 'IBM Plex Mono', 'Courier New', monospace; font-size: 13px; font-weight: 600;
  letter-spacing: 0.12em; color: var(--amber-deep); text-transform: uppercase; margin-bottom: 18px; display: flex; align-items: center; gap: 10px; }
.marker::before { content: "//"; color: var(--amber); letter-spacing: 0; }
.section-dark .marker { color: var(--amber-2); }

.h1 { font-size: 62px; line-height: 1.06; margin-bottom: 24px; text-wrap: balance; }
.h2 { font-size: 44px; line-height: 1.12; margin-bottom: 16px; text-wrap: balance; }
.h3 { font-size: 21px; line-height: 1.3; font-family: 'DM Sans', sans-serif; font-weight: 700; color: var(--ink); }
.lede { font-size: 18.5px; line-height: 1.65; max-width: 700px; }
.section-dark .lede { color: var(--on-dark); }
.small { font-size: 14px; color: var(--muted); }

/* Pill buttons and arrow links */
.pill { display: inline-flex; align-items: center; gap: 12px; font-weight: 700; font-size: 16px;
  padding: 8px 8px 8px 28px; border-radius: 999px; font-family: 'DM Sans', sans-serif; }
.pill .arr { width: 42px; height: 42px; border-radius: 999px; display: flex; align-items: center; justify-content: center; }
.pill-amber { background: linear-gradient(135deg, var(--amber), var(--amber-2)); color: #1A1200 !important; box-shadow: 0 6px 22px rgba(248, 165, 4, 0.38); }
.pill-amber .arr { background: rgba(10, 27, 40, 0.9); }
.pill-ghost { border: 1.5px solid var(--line); color: var(--ink) !important; background: var(--paper); }
.pill-ghost .arr { background: var(--ice); }
.pill-ghost-dark { border: 1.5px solid rgba(255,255,255,0.25); color: #FFFFFF !important; background: transparent; }
.pill-ghost-dark .arr { background: rgba(255,255,255,0.12); }
.link-arrow { display: inline-flex; align-items: center; gap: 10px; font-weight: 700; color: var(--ink) !important; }
.link-arrow .arr { width: 34px; height: 34px; border-radius: 999px; background: var(--ice); display: flex; align-items: center; justify-content: center; transition: transform .2s; }
.link-arrow:hover .arr { transform: translateX(4px); }

/* Cards */
.rcard { background: var(--paper); border: 1px solid var(--line); border-radius: var(--r); padding: 34px 30px; transition: transform .25s, box-shadow .25s; }
.rcard:hover { transform: translateY(-6px); box-shadow: 0 24px 50px rgba(10, 27, 40, 0.10); }
.rcard h3 { margin-bottom: 10px; }
.rcard p { font-size: 15px; line-height: 1.6; color: var(--muted); margin: 0; }
.rcard-cream { background: var(--cream); border-color: transparent; }
.icon-dot { width: 58px; height: 58px; border-radius: 999px; background: var(--ice); display: flex; align-items: center; justify-content: center; margin-bottom: 20px; }
.stat-float { background: var(--paper); border-radius: 18px; box-shadow: 0 24px 60px rgba(10, 27, 40, 0.16); padding: 20px 24px; }

/* Large statistics and process numbers */
.bignum { font-family: 'Young Serif', Georgia, serif; font-size: 64px; line-height: 1; color: var(--ink); }
.bignum sup { font-size: 30px; color: var(--amber-deep); }
.step-num { font-family: 'Young Serif', Georgia, serif; font-size: 88px; line-height: 1; color: transparent; -webkit-text-stroke: 1.5px var(--ice-2); }
.rcard:hover .step-num { -webkit-text-stroke: 1.5px var(--amber); }

.grid2 { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 26px; }
.grid3 { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 26px; }
.grid4 { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 24px; }
.grid5 { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: 20px; }
.split { display: grid; grid-template-columns: 1.05fr 0.95fr; gap: 80px; align-items: center; }

.chip { display: inline-block; background: var(--ice); color: var(--blue-deep); font-size: 13.5px; font-weight: 600; padding: 7px 15px; border-radius: 999px; transition: background .18s ease, color .18s ease; }
.chip-dark { background: rgba(255,255,255,0.08); border: 1px solid rgba(255,255,255,0.15); color: #D9E5ED; }
.chip-amber { background: var(--amber-soft); color: var(--amber-deep); }
.chip:hover { background: var(--blue) !important; color: #FFFFFF !important; }
.mono-tag { font-family: 'IBM Plex Mono', 'Courier New', monospace; font-size: 11.5px; font-weight: 600; letter-spacing: 0.08em; }

.faq-item { background: var(--paper); border: 1px solid var(--line); border-radius: var(--r-sm); padding: 26px 30px; }
.faq-item .q { font-weight: 700; font-family: 'DM Sans', sans-serif; font-size: 17px; color: var(--ink); margin-bottom: 10px; }
.faq-item .a { font-size: 15px; line-height: 1.65; color: var(--body-c); }

/* Pre-header and primary navigation */
.utilbar { background: var(--ink); color: #8FA5B5; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 4px 14px; padding: 10px 120px; font-size: 13px; }
.topnav { background: var(--ink); display: flex; justify-content: space-between; align-items: center; padding: 18px 120px; z-index: 100; }
.nav-links { display: flex; gap: 36px; align-items: center; font-size: 15.5px; font-weight: 500; }
.nav-links > a { color: #C9D8E2; padding-bottom: 3px; border-bottom: 2px solid transparent; }
.nav-links > a:hover { color: #FFFFFF; }
.nav-home-link { display: inline-flex; align-items: center; justify-content: center; line-height: 1; }
.nav-home-link svg { display: block; }
.nav-active { color: #FFFFFF !important; font-weight: 700; border-bottom: 2px solid var(--amber) !important; }
.nav-parent { position: relative; }
.nav-label { display: flex; align-items: center; gap: 6px; color: #C9D8E2; cursor: default; padding-bottom: 3px; border-bottom: 2px solid transparent; }
.nav-parent:hover .nav-label, .nav-parent:focus-within .nav-label { color: #FFFFFF; }
.nav-dropdown { position: absolute; top: 100%; left: -18px; padding-top: 16px; display: none; }
.nav-parent:hover .nav-dropdown, .nav-parent:focus-within .nav-dropdown { display: block; }
.nav-dropdown-panel { background: var(--paper); border-radius: 16px; box-shadow: 0 24px 60px rgba(5, 15, 25, 0.35); padding: 12px; min-width: 300px; display: flex; flex-direction: column; gap: 2px; }
.nav-dropdown-panel a { display: block; padding: 11px 16px; border-radius: 10px; color: var(--body-c); font-size: 14.5px; font-weight: 500; }
.nav-dropdown-panel a:hover { background: var(--ice); color: var(--ink); }
.nav-dropdown-panel .dd-sep { height: 1px; background: var(--line); margin: 6px 10px; }
.btn-nav { display: inline-flex; align-items: center; gap: 10px; background: linear-gradient(135deg, var(--amber), var(--amber-2)); color: #1A1200 !important; font-weight: 700; font-size: 15px; padding: 6px 6px 6px 22px; border-radius: 999px; }
.btn-nav .arr { width: 36px; height: 36px; border-radius: 999px; background: rgba(10,27,40,0.9); display: flex; align-items: center; justify-content: center; }
.nav-toggle-box { display: none; }
.nav-burger { display: none; cursor: pointer; padding: 6px; }

/* Site-wide light communication sections */
.light-theme-page .section-dark { background: #DFEEFA; }
.light-theme-page .section-dark h1,
.light-theme-page .section-dark h2,
.light-theme-page .section-dark h3,
.light-theme-page .section-dark strong,
.light-theme-page .section-dark .theme-light-emphasis { color: var(--ink) !important; }
.light-theme-page .section-dark p,
.light-theme-page .section-dark span,
.light-theme-page .section-dark div { color: var(--body-c) !important; }
.light-theme-page .section-dark .marker,
.light-theme-page .section-dark .mono-tag { color: #244B8B !important; }
.light-theme-page .section-dark a:not(.pill-amber):not(.pill-ghost-dark) { color: #244B8B !important; }
.light-theme-page .section-dark .chip-dark {
  color: #244B8B !important;
  background: rgba(36,75,139,0.08);
  border-color: rgba(36,75,139,0.22);
}
.light-theme-page .section-dark .editorial-dark-list > div {
  color: var(--body-c) !important;
  background: rgba(36,75,139,0.08);
  border-color: rgba(36,75,139,0.22);
}
.light-theme-page .section-dark .pill-ghost-dark,
.light-theme-page .theme-light-panel .pill-ghost-dark {
  color: #244B8B !important;
  border-color: rgba(36,75,139,0.35);
}
.light-theme-page .section-dark .pill-ghost-dark .arr,
.light-theme-page .theme-light-panel .pill-ghost-dark .arr { background: #244B8B; }
.light-theme-page .theme-light-panel {
  background: #DFEEFA !important;
  border-color: #DFEEFA !important;
  color: var(--ink) !important;
}
.light-theme-page .theme-light-panel h1,
.light-theme-page .theme-light-panel h2,
.light-theme-page .theme-light-panel h3,
.light-theme-page .theme-light-panel p,
.light-theme-page .theme-light-panel span,
.light-theme-page .theme-light-panel div { color: var(--ink) !important; }
.light-theme-page .theme-light-panel .mono-tag,
.light-theme-page .theme-light-panel .link-arrow { color: #244B8B !important; }
.light-theme-page .theme-essential-card .cps-body > div > div:last-child { color: var(--body-c) !important; }
/* User-selected v6 dark exceptions */
.light-theme-page .section-dark.keep-dark-v6 {
  background: linear-gradient(165deg, var(--ink) 0%, var(--ink-3) 100%);
}
.light-theme-page .section-dark.keep-dark-v6 h1,
.light-theme-page .section-dark.keep-dark-v6 h2,
.light-theme-page .section-dark.keep-dark-v6 h3,
.light-theme-page .section-dark.keep-dark-v6 strong { color: #FFFFFF !important; }
.light-theme-page .section-dark.keep-dark-v6 p { color: var(--on-dark) !important; }
.light-theme-page .section-dark.keep-dark-v6 .marker { color: var(--amber-2) !important; }
.light-theme-page .section-dark.keep-dark-v6 .about-stats > div > div:first-child { color: #FDC41E !important; }
.light-theme-page .section-dark.keep-dark-v6 .about-stats > div p { color: #B8C9D5 !important; }
.light-theme-page .section-dark.keep-dark-v6 .mono-tag { color: #7F97A8 !important; }
.light-theme-page .section-dark.keep-dark-v6 .chip {
  color: #2E4A66 !important;
  background: var(--ice);
}

/* Navigation switches to hamburger earlier, without moving other responsive breakpoints. */
@media (max-width: 1225px) {
  .nav-burger { display: flex; align-items: center; }
  .nav-links { display: none; position: absolute; top: 100%; left: 0; right: 0; max-height: calc(100vh - 170px); overflow-y: auto; overscroll-behavior-y: contain; -webkit-overflow-scrolling: touch; background: var(--ink); flex-direction: column; align-items: stretch; gap: 0; padding: 10px 40px 24px; box-shadow: 0 24px 50px rgba(0,0,0,0.4); }
  .nav-toggle-box:checked ~ .nav-links { display: flex; }
  .nav-links > a, .nav-label { padding: 13px 0; border-bottom: 1px solid rgba(255,255,255,0.08); }
  .nav-active { border-bottom: 1px solid rgba(255,255,255,0.08) !important; }
  .nav-dropdown { position: static; display: block; padding: 0; }
  .nav-dropdown-panel { background: transparent; box-shadow: none; padding: 0 0 8px 16px; min-width: 0; }
  .nav-dropdown-panel a { color: #A9BCCA; }
  .btn-nav { margin-top: 14px; justify-content: center; }
}

@media (max-width: 1140px) {
  .section { padding: 72px 40px; } .utilbar, .topnav { padding-left: 40px; padding-right: 40px; }
  .grid3, .grid4, .grid5 { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .split { grid-template-columns: 1fr !important; gap: 44px; }
  .h1 { font-size: 44px; } .h2 { font-size: 34px; } .bignum { font-size: 48px; } .step-num { font-size: 64px; }
}
@media (max-width: 640px) {
  .section { padding: 56px 22px; } .utilbar, .topnav { padding-left: 22px; padding-right: 22px; } .nav-links { padding: 8px 22px 20px; }
  .grid2, .grid3, .grid4, .grid5 { grid-template-columns: 1fr; }
}
.hero-marker {
  white-space: nowrap;
  font-size: clamp(6px, 1vw, 12px);
  letter-spacing: clamp(0.03em, 0.12vw, 0.12em);
  gap: 0;
}
.hero-marker::before { display: none; }

/* Centred icons in selected card groups */
.center-card-icon > .icon-dot,
.center-card-icons .rcard > .icon-dot,
.center-module-icons .rcard > .icon-dot {
  margin-left: auto;
  margin-right: auto;
}
.center-module-icons .core-card-v6 > div:first-child {
  position: relative;
  justify-content: center !important;
  min-height: 58px;
}
.center-module-icons .core-card-v6 > div:first-child > .icon-dot {
  margin: 0 auto;
}
.center-module-icons .core-card-v6 > div:first-child > .mono-tag {
  position: absolute;
  top: 0;
  right: 0;
}

.center-tagged-icons .rcard > div:first-child {
  position: relative;
  justify-content: center !important;
  min-height: 58px;
}
.center-tagged-icons .rcard > div:first-child > .icon-dot { margin: 0 auto; }
.center-tagged-icons .rcard > div:first-child > .mono-tag {
  position: absolute;
  top: 0;
  right: 0;
}
.center-bare-icons .rcard > svg {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.contact-card-stack .rcard { text-align: center; }
.contact-card-stack .rcard > .icon-dot {
  margin-left: auto;
  margin-right: auto;
}
.contact-card-stack .link-arrow {
  width: max-content;
  margin-left: auto;
  margin-right: auto;
}

.center-card-content .rcard { text-align: center; }
.center-card-content .rcard > p { justify-content: center; }

/* Accessible chip hover text throughout v7 */
.light-theme-page .chip:hover,
.light-theme-page .section-dark .chip:hover {
  color: #EDF2F6 !important;
}

/* Integrations: dark background only behind the platform-card band */
.integrations-platform-band {
  position: relative;
  isolation: isolate;
  margin-top: 64px;
  padding-top: 52px;
}
.integrations-platform-band::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: -88px;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  background: linear-gradient(165deg, var(--ink) 0%, var(--ink-3) 100%);
}
.light-theme-page .section-dark .integrations-platform-band .rcard {
  background: rgba(255,255,255,0.05) !important;
  border-color: rgba(255,255,255,0.14) !important;
}
.light-theme-page .section-dark .integrations-platform-band .rcard h3 {
  color: #FFFFFF !important;
}
.light-theme-page .section-dark .integrations-platform-band .rcard p {
  color: #B9CAD6 !important;
}
.integration-scale-card h3 { color: #FFFFFF !important; }
.integration-scale-card p { color: #B9CAD6 !important; }

/* Solution hero module chips */
.light-theme-page .section-dark .solution-hero-chips a.chip:hover {
  color: #EDF2F6 !important;
}

/* Home hero visual placeholder */
.hero-visual-placeholder {
  min-height: 477px;
  border: 2px dashed #91AFC6;
  border-radius: 24px;
  background: rgba(255,255,255,0.42);
  display: grid;
  place-items: center;
  color: #244B8B;
  overflow: hidden;
}
.hero-placeholder-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  color: #244B8B !important;
}
.hero-placeholder-content span {
  color: #244B8B !important;
  font-family: 'IBM Plex Mono', monospace;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.15em;
}
.hero-visual-image {
  position: relative;
  border: 0;
  background: #152A3A;
}
.hero-visual-image > img,
.hero-visual-image > picture > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: 68% center;
}
@media (max-width: 900px) {
  .hero-visual-placeholder { min-height: 650px; }
  .hero-visual-image > img,
.hero-visual-image > picture > img { object-position: 66% center; }
}

/* Centred final demo call-to-action */
.final-demo-cta .marker { justify-content: center; }
.final-demo-cta .h2,
.final-demo-cta .lede { margin-left: auto !important; margin-right: auto !important; text-align: center; }
.final-demo-actions { justify-content: center; }

/* Home: complete workforce-management communication block */
.home-workforce-overview {
  padding-top: 96px;
  padding-bottom: 96px;
}
.home-workforce-title {
  max-width: 1080px;
  margin-bottom: 22px;
}
.home-workforce-intro {
  max-width: 940px;
  margin: 0;
}
.home-audience-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  margin-top: 48px;
  align-items: stretch;
}
.home-audience-card {
  min-height: 100%;
  padding: 32px;
  border: 1px solid rgba(255,255,255,0.14);
  border-radius: 20px;
  background: linear-gradient(145deg, rgba(255,255,255,0.075), rgba(255,255,255,0.025));
}
.home-audience-card .icon-dot {
  background: rgba(253,196,30,0.12);
  margin: 0 auto 22px;
}
.home-audience-card .h3 {
  color: #FFFFFF !important;
  margin-bottom: 12px;
}
.home-audience-card p {
  color: #B9CAD6 !important;
  margin: 0;
  line-height: 1.7;
}
@media (max-width: 900px) {
  .home-audience-grid { grid-template-columns: 1fr; }
  .home-workforce-overview { padding-top: 76px; padding-bottom: 76px; }
}
@media (max-width: 640px) {
  .home-workforce-overview { padding-top: 64px; padding-bottom: 64px; }
  .home-audience-card { padding: 26px 24px; }
}

/* Home metric count-up animation */
.home-metric-value {
  opacity: 1;
  transform: translateY(0);
}
.home-metric-value.is-ready {
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 420ms ease, transform 520ms cubic-bezier(.22, 1, .36, 1);
}
.home-metric-value.is-ready.is-visible {
  opacity: 1;
  transform: translateY(0);
}
@media (prefers-reduced-motion: reduce) {
  .home-metric-value,
  .home-metric-value.is-ready {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* Footer */
.footer { background: var(--ink); color: var(--on-dark); }
.footer-cols { display: grid; grid-template-columns: 1.3fr 1fr 0.9fr 0.78fr 1.1fr; gap: 32px; padding: 64px 120px; }
.footer a { color: var(--on-dark); } .footer a:hover { color: #FFFFFF; }
.footer .mono-tag { color: #6E8798; letter-spacing: 0.1em; }
.footer-base { display: flex; justify-content: space-between; align-items: center; gap: 18px; padding: 26px 120px; border-top: 1px solid rgba(255,255,255,0.08); font-size: 13px; color: #6E8798; flex-wrap: wrap; }
@media (max-width: 1140px) { .footer-cols, .footer-base { padding-left: 40px; padding-right: 40px; } .footer-cols { grid-template-columns: 1fr 1fr; } }
@media (max-width: 640px) { .footer-cols, .footer-base { padding-left: 22px; padding-right: 22px; } .footer-cols { grid-template-columns: 1fr; } }

/* CTA arrow interactions for pointer and touch devices */
.pill .arr svg, .link-arrow .arr svg, .btn-nav .arr svg { transition: transform .22s ease, opacity .15s ease; }
.pill .arr, .btn-nav .arr, .link-arrow .arr { transition: transform .22s ease, box-shadow .22s ease, background .22s ease; }
@media (hover: hover) {
  .pill:hover .arr svg, .link-arrow:hover .arr svg, .btn-nav:hover .arr svg { transform: rotate(-45deg); }
  .pill:hover .arr, .btn-nav:hover .arr, .link-arrow:hover .arr {
    box-shadow: inset 0 2px 2px rgba(255,255,255,0.35), inset 0 -3px 6px rgba(0,0,0,0.30), 0 6px 14px rgba(10,27,40,0.35);
  }
  .pill:hover .arr, .btn-nav:hover .arr { transform: scale(1.12); }
  .link-arrow:hover .arr { transform: translateX(4px) scale(1.1); }
  .pill-ghost:hover .arr { background: var(--ice-2); }
  .pill-ghost-dark:hover .arr { background: rgba(255,255,255,0.2); }
}
@media (hover: none) {
  .pill:active .arr svg, .link-arrow:active .arr svg, .btn-nav:active .arr svg { opacity: 0; }
}

/* Responsive image treatments */
.photo { display: block; overflow: hidden; border-radius: 28px; background: var(--ice-2); }
.photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.photo-land { aspect-ratio: 16/10; }
.photo-tall { aspect-ratio: 3/4; }
.photo-band { aspect-ratio: 21/9; border-radius: 40px; }
@media (max-width: 640px) { .photo-band { aspect-ratio: 16/10; border-radius: 24px; } .photo { border-radius: 22px; } }

/* Wide text-and-image card */
.card-photo-split { border-radius: 40px; overflow: hidden; display: grid; grid-template-columns: 1.15fr 0.85fr; align-items: stretch; }
.card-photo-split .cps-body { padding: 48px 56px; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 16px; }
.card-photo-split .cps-media { padding: 16px; display: flex; }
.card-photo-split .cps-media .photo { width: 100%; border-radius: 28px; min-height: 240px; }
@media (max-width: 1140px) {
  .card-photo-split { grid-template-columns: 1fr; border-radius: 28px; }
  .card-photo-split .cps-body { padding: 36px 32px; }
}

/* Legal pages */
.legal { max-width: 860px; font-size: 15.5px; }
.legal h2 { font-family: 'Young Serif', Georgia, serif; font-weight: 400; font-size: 30px; color: var(--ink); margin: 46px 0 14px; }
.legal h3 { font-family: 'Young Serif', Georgia, serif; font-weight: 400; font-size: 23px; color: var(--ink); margin: 40px 0 12px; }
.legal h4 { font-size: 16.5px; color: var(--ink); margin: 28px 0 8px; }
.legal p { margin: 0 0 14px; }
.legal ul, .legal ol { margin: 0 0 14px; padding-left: 22px; }
.legal a { font-weight: 600; }
.legal .tbl-wrap { overflow-x: auto; margin: 18px 0; border: 1px solid var(--line); border-radius: 14px; }
.legal table { border-collapse: collapse; width: 100%; font-size: 13.5px; min-width: 560px; }
.legal td, .legal th { border-bottom: 1px solid var(--line); padding: 10px 14px; text-align: left; vertical-align: top; }
.legal tr:last-child td { border-bottom: none; }

/* About page statistics and FAQ */
.about-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.about-stats > div { min-height: 168px; padding: 25px; border: 1px solid rgba(255,255,255,0.13); border-radius: 18px; background: linear-gradient(145deg, rgba(255,255,255,0.075), rgba(255,255,255,0.025)); display: flex; flex-direction: column; justify-content: space-between; }
.about-stats > div > div:first-child { font-size: clamp(34px, 4vw, 54px) !important; line-height: 1.05 !important; overflow-wrap: anywhere; }
.about-stats > div p { color: #B8C9D5 !important; }
.about-faq-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px; align-items: stretch; }
.about-faq-grid .faq-item { height: 100%; }
@media (max-width: 900px) { .about-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .about-stats, .about-faq-grid { grid-template-columns: 1fr; } .about-stats > div { min-height: 0; } }
