.blue { font-family: Inter, Arial, sans-serif; --paper: #f5f5f0; --ink: #173e90; --muted: #647089; background: rgb(245, 245, 240); }
.blue h1, .blue h2, .blue h3 { font-weight: 450; letter-spacing: -0.06em; }
.blue .demo-bar { background: rgb(20, 46, 96); }
.blue .site-header { background: rgba(245, 245, 240, 0.96); color: rgb(22, 58, 140); border-color: rgba(23, 62, 144, 0.1); }
.blue .desktop-nav { color: rgb(73, 100, 143); }
.blue .desktop-nav a:hover { color: rgb(23, 63, 229); }
.blue .wordmark > span, .blue .wordmark i { color: rgb(23, 63, 229); }
.blue .nav-actions > .button { background: rgb(23, 63, 229); color: white; }
.blue .nav-actions > .button:hover { background: rgb(16, 50, 193); color: white; }
.blue .mobile-menu { color: rgb(255, 255, 255); }
.blue-hero.motion-edition { background: rgb(245, 245, 240); color: rgb(23, 62, 144); padding: 40px 0px 0px; overflow: visible !important; }
.blue-hero-top .eyebrow { color: rgb(98, 117, 149); font-size: 10px; }
.motion-lab-link { font-size: 10px; letter-spacing: 0px; color: rgb(98, 117, 149); min-height: 40px; display: flex; align-items: flex-start; }
.blue-editorial-grid { display: grid; grid-template-columns: 1.55fr 0.7fr; gap: 95px; align-items: end; padding-bottom: 65px; }
.motion-edition h1 { font-size: clamp(56px, 6.5vw, 100px); font-weight: 450; letter-spacing: -0.065em; line-height: 1.04; margin: 40px 0px 0px; }
.motion-edition h1 em { color: rgb(108, 134, 175); }
.blue-editorial-aside { padding-bottom: 6px; }
.editorial-mark { font-size: 82px; display: block; line-height: 1; font-weight: 300; margin-bottom: 25px; color: rgb(23, 63, 229); }
.blue-editorial-aside > p { font-size: 13px; line-height: 1.85; color: rgb(98, 117, 149); max-width: 300px; margin-bottom: 28px; }
.blue-editorial-aside .button { font-size: 12px; min-height: 52px; padding-inline: 20px; gap: 25px; white-space: nowrap; }
.blue-editorial-aside .text-link { font-size: 10px; margin-top: 12px; border: 0px; min-height: 44px; }
.editorial-proof { border-top: 1px solid rgba(23, 62, 144, 0.157); margin-top: 22px; padding-top: 20px; font-size: 9px; color: rgb(117, 136, 165); display: flex; flex-wrap: wrap; gap: 8px 18px; line-height: 1.7; }
.motion-stage { height: 170vh; position: relative; --aperture: 23%; --sculpture-scale: 1; --sculpture-turn: -20deg; --corner-opacity: .15; }
.motion-stage-sticky { height: calc(-82px + 100svh); min-height: 560px; position: sticky; top: 82px; overflow: hidden; isolation: isolate; background: rgb(245, 245, 240); }
.motion-disc { position: absolute; inset: 0px; background: rgb(23, 69, 216); clip-path: circle(var(--aperture) at 50% 50%); overflow: hidden; z-index: 1; will-change: clip-path; }
.sculpture-wrap { position: absolute; inset: 0px; display: grid; place-items: center; transform: scale(var(--sculpture-scale)) rotate(var(--sculpture-turn)); will-change: transform; }
.payment-sculpture { width: min(62vw, 700px); height: auto; transform: scaleY(var(--scroll-stretch,1)); animation: 12s ease-in-out 0s infinite normal none running sculpture-breathe; }
.stage-corner { position: absolute; left: 45px; right: 45px; display: flex; justify-content: space-between; gap: 25px; color: rgb(213, 227, 255); font-size: 10px; letter-spacing: 0.08em; line-height: 1.7; opacity: var(--corner-opacity); z-index: 2; }
.stage-corner-top { top: 35px; }
.stage-corner-bottom { bottom: 35px; font-size: 10px; font-weight: 400; letter-spacing: 0px; }
.stage-corner-bottom > span:last-child { font-size: 8px; letter-spacing: 0.12em; }
.stage-currencies { position: absolute; top: 50%; left: 5%; right: 5%; display: flex; justify-content: space-between; align-items: center; font-size: clamp(70px, 10vw, 155px); letter-spacing: -0.08em; line-height: 1; color: rgb(184, 206, 255); transform: translateY(-50%); font-weight: 400; z-index: 0; }
.stage-currencies > span:nth-child(2) { font-size: 70px; opacity: 0; }
.stage-side-label { position: absolute; bottom: 28px; left: 45px; right: 45px; text-align: center; font-size: 8px; letter-spacing: 0.15em; color: rgb(131, 153, 191); z-index: 0; }
.motion-edition .payment-board { background: rgb(245, 245, 240); border: 0px; box-shadow: none; transform: none; margin: 0px; border-radius: 0px; padding: 40px 0px; }
.motion-edition .board-label { color: rgb(107, 127, 157); }
.motion-edition .route-visual { padding-block: 40px; }
.motion-edition .board-footer { border-color: rgba(23, 62, 144, 0.157); }
.motion-edition .route-symbol { background: rgb(225, 232, 245); }
.motion-edition .route-hub { border-radius: 50%; font-size: 34px; }
.motion-edition .country-pills button.active { background: rgb(220, 230, 255); }
.blue .calculator-section { padding-top: 110px; background: rgb(245, 245, 240); }
.blue .section-intro h2 { font-weight: 450; }
.blue .calculator-panel { background: rgb(253, 253, 249); box-shadow: none; border-radius: 20px; padding: 40px; border-color: rgba(182, 195, 213, 0.267); }
.blue input:not([type="checkbox"]):not([type="radio"]), .blue select { background: rgb(243, 245, 246); border-color: rgba(197, 207, 221, 0.5); border-radius: 8px; }
.blue .button { border-radius: 30px; }
.blue .process-section { background: rgb(16, 44, 103); color: rgb(224, 234, 255); padding-top: 100px; }
.blue .process-section .eyebrow, .blue .process-section .section-heading > p { color: rgb(148, 173, 216); }
.blue .process-section h2 { color: rgb(224, 234, 255); }
.blue .step-button { color: rgb(129, 157, 200); border-color: rgba(117, 146, 190, 0.267); }
.blue .step-button.active, .blue .step-button.active .step-number, .blue .step-button.active .step-arrow { color: rgb(234, 241, 255); }
.blue .step-label small { color: rgb(141, 169, 208); }
.blue .step-explanation > p, .blue .step-explanation > span, .blue .process-footnote { color: rgb(145, 173, 216); }
.blue .step-explanation .text-link { color: rgb(220, 233, 255); }
.blue .chat-window { border-radius: 18px; box-shadow: none; background: rgb(231, 236, 245); }
.blue .chat-bubble { background: rgb(220, 229, 247); border-radius: 12px 12px 12px 0px; }
.blue .chat-avatar { border-radius: 50%; }
.blue .chat-document { border-radius: 12px; }
.blue .chat-composer { border-radius: 30px; }
.blue .numbers { position: relative; overflow: hidden; padding-top: 150px; padding-bottom: 150px; background: rgb(23, 63, 229); }
.blue .numbers > .container { position: relative; z-index: 2; }
.number-field { position: absolute; inset: 0px; display: flex; align-items: flex-end; justify-content: space-around; gap: 8px; opacity: 0.2; pointer-events: none; padding: 35px 0px; overflow: hidden; }
.number-field i { height: var(--line-height); flex: 1 1 0%; background: rgb(187, 208, 255); min-width: 1px; max-width: 2px; transform-origin: center bottom; transform: scaleY(0.1); opacity: 0; }
.blue .number-item { border: 0px; padding-left: 30px; }
.blue .number-item strong { font-size: clamp(90px, 9vw, 150px); font-weight: 450; }
.blue .documents-section { background: rgb(245, 245, 240); }
.blue .document-grid { gap: 0px; border-top: 1px solid rgb(201, 209, 223); border-bottom: 1px solid rgb(201, 209, 223); }
.blue .document-card { border-width: 0px 1px 0px 0px; border-style: none solid none none; border-color: currentcolor rgb(201, 209, 223) currentcolor currentcolor; border-image: none; border-radius: 0px; background: transparent; padding: 30px; box-shadow: none; position: relative; overflow: hidden; }
.blue .document-card:last-child { border-right: 0px; }
.blue .document-card:hover { transform: none; box-shadow: none; }
.blue .document-sheet { border-radius: 5px; box-shadow: rgba(22, 60, 126, 0.047) 6px 10px 20px; }
.blue .document-description { font-size: 12px; }
.blue .document-card > small { border: 0px; padding-left: 0px; letter-spacing: 0.02em; }
.blue .document-top svg { stroke-width: 1; }
.blue .audience-section { background: rgb(230, 235, 242); }
.blue .audience-art { border-radius: 50% 50% 8px 8px; height: 430px; transition: border-radius 0.6s; }
.blue .audience-panel:has(#audience-art-number:first-child) .audience-art:hover { border-radius: 8px 50% 50% 8px; }
.blue .audience-tabs button { font-size: 12px; }
.blue .audience-art-line { border-color: rgb(165, 189, 255); animation: 18s linear 0s infinite normal none running orbit-drift; }
.blue .geography-section { background: rgb(16, 44, 103); }
.blue .geo-country-card { border-radius: 16px; background: rgba(22, 57, 119, 0.93); box-shadow: rgba(0, 16, 43, 0.145) 0px 25px 70px; }
.blue .geo-lines { color: rgb(125, 157, 218); }
.blue .faq-section { background: rgb(245, 245, 240); }
.blue .faq-plus { background: transparent; border: 1px solid rgb(184, 199, 221); border-radius: 50%; width: 38px; height: 38px; }
.blue .faq-list details p { animation: 0.4s ease 0s 1 normal none running faq-enter; }
.blue .contact-section { background: rgb(245, 245, 240); color: rgb(23, 62, 144); }
.blue .contact-layout > div > p, .blue .contact-links > span { color: rgb(109, 131, 163); }
.blue .contact-layout h2 em { color: rgb(108, 134, 175); }
.blue .contact-form-panel { background: rgb(255, 255, 255); border-radius: 20px; border-color: rgb(210, 218, 230); padding: 40px; }
.blue .site-footer { background: rgb(16, 44, 103); }
.blue .site-footer .wordmark, .blue .site-footer .wordmark > span, .blue .site-footer .wordmark i { color: rgb(226, 234, 255); }
.word-mask { display: inline-block; vertical-align: top; overflow: hidden; line-height: inherit; padding-bottom: 0.12em; margin-bottom: -0.12em; }
.motion-word { display: inline-block; transform: translateY(110%) rotate(3deg); opacity: 0; transition: transform .85s cubic-bezier(.2,.7,.15,1) var(--word-delay),opacity .6s var(--word-delay); transform-origin: 0px 100%; }
.words-visible .motion-word { transform: translateY(0px) rotate(0deg); opacity: 1; }
.motion-progress { position: fixed; top: 0px; left: 0px; right: 0px; height: 2px; z-index: 60; pointer-events: none; }
.motion-progress > span { height: 100%; display: block; background: rgb(117, 167, 255); transform-origin: left center; transform: scaleX(0); }
.chapter-nav { position: fixed; z-index: 19; right: 12px; top: 50%; transform: translateY(-50%); display: flex; flex-direction: column; gap: 2px; mix-blend-mode: difference; color: rgb(184, 208, 255); }
.chapter-nav a { display: flex; align-items: center; justify-content: flex-end; gap: 8px; height: 26px; min-width: 34px; }
.chapter-nav a span { font-size: 7px; opacity: 0; transition: opacity 0.2s; }
.chapter-nav i { height: 4px; width: 4px; border: 1px solid; border-radius: 50%; transition: transform 0.2s; }
.chapter-nav .active i { background: currentcolor; transform: scale(1.6); }
.chapter-nav .active span, .chapter-nav a:hover span { opacity: 1; }
.magnetic { translate: var(--mag-x,0px) var(--mag-y,0px); transition: translate 0.2s, background 0.2s, transform 0.2s !important; }
.pointer-surface { position: relative; isolation: isolate; }
.pointer-surface::after { content: ""; pointer-events: none; position: absolute; inset: 0px; z-index: -1; background: radial-gradient(230px circle at var(--pointer-x,50%) var(--pointer-y,50%),#7fa6ff22,transparent 75%); opacity: 0; transition: opacity 0.4s; }
.pointer-surface.pointer-active::after { opacity: 1; }
.blue .document-card.pointer-surface::after { z-index: 0; }
.blue .document-card > * { position: relative; z-index: 1; }
.motion-bridge { height: 210vh; background: rgb(245, 245, 240); position: relative; --bridge-aperture: 12%; --bridge-shift: 18vw; --bridge-copy: 0; }
.motion-bridge-sticky { position: sticky; top: 82px; height: calc(-82px + 100svh); min-height: 600px; overflow: hidden; }
.bridge-base { position: absolute; inset: 0px; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; overflow: hidden; }
.bridge-base > .eyebrow { position: absolute; top: 45px; color: rgb(116, 137, 173); font-size: 9px; }
.bridge-base h2 { display: flex; justify-content: space-between; width: calc(100% - 100px); font-size: clamp(45px, 5.8vw, 90px); font-weight: 450; color: rgb(23, 62, 144); gap: 22vw; }
.bridge-base h2 > span:first-child { transform: translateX(calc(-1 * var(--bridge-shift))); }
.bridge-base h2 > span:last-child { transform: translateX(var(--bridge-shift)); }
.bridge-small-disc { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); font-size: 80px; color: rgb(237, 243, 255); z-index: 3; pointer-events: none; opacity: calc(1 - var(--bridge-copy)); }
.bridge-reveal { position: absolute; inset: 0px; clip-path: circle(var(--bridge-aperture) at 50% 50%); background: rgb(23, 63, 229); color: rgb(255, 255, 255); display: grid; place-items: center; will-change: clip-path; }
.bridge-reveal-inner { text-align: center; padding: 40px; opacity: var(--bridge-copy); }
.bridge-reveal-inner .eyebrow { font-size: 9px; color: rgb(169, 193, 255); margin-bottom: 30px; }
.bridge-reveal-inner > p { font-size: clamp(36px, 4.9vw, 74px); line-height: 1.13; letter-spacing: -0.05em; margin-bottom: 40px; }
.bridge-reveal-inner .button { font-size: 12px; }
.blue .section-heading h2 { line-height: 1.13; }
.motion-reduced .motion-word { transform: none; opacity: 1; }
.motion-reduced .payment-sculpture { animation: auto ease 0s 1 normal none running none; }
.motion-reduced .motion-stage { height: auto; }
.motion-reduced .motion-stage-sticky { position: relative; top: auto; }
.motion-reduced .motion-disc { clip-path: none; }
.motion-reduced .motion-bridge { height: auto; }
.motion-reduced .motion-bridge-sticky { position: relative; top: auto; }
.motion-reduced .bridge-reveal { clip-path: none; }
.motion-reduced .bridge-reveal-inner { opacity: 1; }
.motion-reduced .bridge-base { display: none; }
@keyframes sculpture-breathe {
  0%, 100% { transform: translateY(8px) rotate(-4deg); }
  50% { transform: translateY(-8px) rotate(4deg); }
}
@keyframes orbit-drift {
  100% { rotate: 360deg; }
}
@keyframes field-rise {
  0% { transform: scaleY(0.1); opacity: 0; }
  100% { transform: scaleY(1); opacity: 1; }
}
@keyframes faq-enter {
  0% { opacity: 0.2; transform: translateY(8px); }
  100% { opacity: 1; transform: none; }
}
@media (min-width: 1025px) and (prefers-reduced-motion: no-preference) {
  .blue.motion-ready #process .container { position: relative; min-height: 310vh; }
  .blue.motion-ready #process .process-layout { position: sticky; top: 112px; align-items: start; padding-bottom: 55px; }
  .blue.motion-ready #process .process-footnote { position: absolute; bottom: 0px; left: 0px; max-width: 600px; }
  .blue.motion-ready #process .step-list { position: relative; }
  .blue.motion-ready #process .step-list::after { content: ""; width: 2px; height: 100%; position: absolute; left: -16px; top: 0px; background: rgb(168, 198, 255); transform: scaleY(var(--process-progress,0)); transform-origin: center top; }
  .blue.motion-ready .chat-window { max-width: 430px; padding: 20px; }
  .blue.motion-ready .chat-date { margin: 16px 0px; }
  .blue.motion-ready .chat-bubble { padding: 18px; }
  .blue.motion-ready .chat-document { margin-bottom: 18px; }
  .blue.motion-ready .step-button { padding: 21px 0px; }
  .blue.motion-ready .step-explanation { margin-top: 20px; }
}
@media (max-width: 1200px) {
  .blue-editorial-grid { gap: 60px; grid-template-columns: 1.4fr 0.8fr; }
  .motion-edition h1 { font-size: 7.1vw; }
  .blue-editorial-aside > p { font-size: 12px; }
  .editorial-mark { font-size: 65px; }
  .blue .document-card { padding: 24px; }
  .blue .contact-form-panel, .blue .calculator-panel { padding: 32px; }
  .blue .audience-art { height: 380px; }
  .bridge-base h2 { gap: 15vw; }
  .chapter-nav { right: 7px; }
}
@media (max-width: 1024px) {
  .blue-editorial-grid { gap: 40px; grid-template-columns: 1.3fr 0.8fr; padding-bottom: 50px; }
  .motion-edition h1 { font-size: 7.2vw; }
  .blue-editorial-aside > p { font-size: 11px; }
  .editorial-mark { font-size: 50px; margin-bottom: 15px; }
  .blue-editorial-aside .button { font-size: 10px; gap: 16px; min-height: 48px; padding-inline: 16px; }
  .blue-editorial-aside .text-link { font-size: 9px; }
  .editorial-proof { font-size: 8px; margin-top: 15px; padding-top: 15px; gap: 6px 12px; }
  .motion-stage { height: 140vh; }
  .motion-stage-sticky { min-height: 500px; }
  .stage-corner { left: 28px; right: 28px; font-size: 9px; }
  .payment-sculpture { width: 70vw; }
  .chapter-nav { display: none; }
  .blue .numbers { padding: 100px 0px; }
  .blue .number-item strong { font-size: 85px; }
  .blue .document-card { padding: 20px; }
  .blue .document-description { font-size: 11px; }
  .blue .audience-art { height: 340px; }
  .motion-bridge { height: 170vh; }
  .motion-bridge-sticky { min-height: 530px; }
  .bridge-base h2 { font-size: 6vw; width: calc(100% - 60px); gap: 20vw; }
  .bridge-reveal-inner > p { font-size: 50px; }
}
@media (max-width: 700px) {
  .blue-hero.motion-edition { padding-top: 28px; }
  .blue-hero-top { display: flex; gap: 20px; }
  .blue-hero-top .eyebrow { font-size: 7px; max-width: 180px; }
  .motion-lab-link { font-size: 8px; white-space: nowrap; min-height: 40px; }
  .blue-editorial-grid { display: block; padding-bottom: 38px; }
  .motion-edition h1 { font-size: clamp(42px, 10.7vw, 72px); line-height: 1.08; margin: 26px 0px 28px; }
  .blue-editorial-aside > p { font-size: 13px; line-height: 1.8; max-width: 390px; margin-bottom: 24px; }
  .editorial-mark { display: none; }
  .blue-editorial-aside .button { font-size: 12px; min-height: 52px; padding-inline: 20px; gap: 25px; }
  .blue-editorial-aside .text-link { font-size: 10px; display: inline-flex; margin-left: 10px; }
  .editorial-proof { font-size: 8px; gap: 10px 20px; margin-top: 22px; padding-top: 17px; }
  .motion-stage { height: 125vh; }
  .motion-stage-sticky { top: 72px; height: calc(-72px + 100svh); min-height: 460px; }
  .payment-sculpture { width: 95vw; max-width: none; }
  .stage-currencies { font-size: 17vw; left: 6%; right: 6%; }
  .stage-currencies > span:nth-child(2) { display: none; }
  .stage-corner { left: 20px; right: 20px; font-size: 7px; letter-spacing: 0.04em; line-height: 1.8; }
  .stage-corner-top { top: 25px; }
  .stage-corner-bottom { bottom: 30px; font-size: 8px; }
  .stage-corner-bottom > span:last-child { font-size: 6px; }
  .stage-side-label { left: 20px; right: 20px; bottom: 25px; font-size: 6px; }
  .motion-edition .payment-board { margin: 0px; padding: 30px 0px; }
  .motion-edition .route-visual { padding: 28px 0px; }
  .blue .calculator-section { padding-top: 60px; }
  .blue .calculator-panel { padding: 25px 20px; border-radius: 16px; }
  .blue .process-section { padding-top: 60px; }
  .blue .step-button.active .step-number { background: rgb(225, 235, 255); border-color: rgb(225, 235, 255); color: rgb(16, 44, 103) !important; }
  .blue .step-number { border-color: rgba(144, 173, 209, 0.3); color: rgb(145, 173, 216); }
  .blue .step-list { border-color: rgba(144, 173, 209, 0.3); }
  .blue .step-label strong { font-size: 10px; }
  .blue .step-explanation > p { font-size: 12px; }
  .blue .chat-window { box-shadow: none; }
  .blue .numbers { padding: 70px 0px; }
  .blue .number-item { padding-left: 0px; }
  .blue .number-item strong { font-size: 80px; }
  .number-field { gap: 4px; opacity: 0.12; padding: 15px 0px; }
  .blue .document-grid { gap: 0px; grid-template-columns: 1fr 1fr; }
  .blue .document-card { border-radius: 0px; padding: 22px 16px; border-bottom: 1px solid rgb(201, 209, 223); }
  .blue .document-card:nth-child(2) { border-right: 0px; }
  .blue .document-card:nth-child(3), .blue .document-card:nth-child(4) { border-bottom: 0px; }
  .blue .document-card > strong { font-size: 20px; }
  .blue .document-description { font-size: 11px; }
  .blue .audience-art { height: 240px; border-radius: 110px 110px 8px 8px; }
  .blue .audience-big-number { top: -30px; }
  .blue .audience-art-line { width: 450px; height: 180px; top: 0px; }
  .blue .audience-tabs button { font-size: 11px; }
  .blue .audience-copy h3 { font-size: 34px; }
  .blue .faq-plus { width: 30px; height: 30px; }
  .motion-bridge { height: auto; }
  .motion-bridge-sticky { position: relative; top: 0px; height: 580px; min-height: 0px; }
  .bridge-base { display: none; }
  .bridge-reveal { clip-path: none; }
  .bridge-reveal-inner { opacity: 1; padding: 35px 20px; }
  .bridge-reveal-inner > p { font-size: clamp(35px, 8.5vw, 55px); line-height: 1.17; margin-bottom: 35px; }
  .bridge-reveal-inner .eyebrow { font-size: 7px; margin-bottom: 28px; }
  .bridge-reveal-inner .button { font-size: 12px; }
  .blue .contact-form-panel { padding: 26px 20px; border-radius: 16px; }
  .blue .contact-layout h2 { font-size: 40px; }
  .blue .contact-layout h2 em { color: rgb(108, 134, 175); }
  .blue .contact-layout > div > p { color: rgb(109, 131, 163); }
  .blue .footer-top p { color: rgb(169, 191, 223); }
}
@media (max-width: 370px) {
  .blue-editorial-aside .text-link { margin-left: 0px; display: flex; max-width: 210px; }
  .motion-edition h1 { font-size: 40px; }
  .editorial-proof { gap: 6px 12px; font-size: 7px; }
  .stage-corner { font-size: 6px; }
  .blue .document-card { padding: 20px 12px; }
  .blue .audience-tabs button { font-size: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .motion-word { transform: none; opacity: 1; }
  .motion-stage { height: auto; }
  .motion-stage-sticky { position: relative; top: auto; }
  .motion-disc, .bridge-reveal { clip-path: none; }
  .motion-bridge { height: auto; }
  .motion-bridge-sticky { position: relative; top: auto; }
  .bridge-reveal-inner { opacity: 1; }
  .bridge-base { display: none; }
  .payment-sculpture { animation: auto ease 0s 1 normal none running none; }
  .magnetic { translate: none; }
  .number-field i { animation: auto ease 0s 1 normal none running none; }
  .word-mask { overflow: visible; }
}
.blue .section-intro > p, .blue .audience-copy > p, .blue .geo-layout > div > p, .blue .contact-layout > div > p { font-size: 16px; }
.blue .blue-editorial-aside > p { font-size: 15px; }
.blue .faq-list details p { font-size: 15px; }
.blue .faq-list summary { font-size: 17px; }
@media (max-width: 960px) {
  .blue .blue-editorial-aside > p { font-size: 13px; }
}
@media (max-width: 700px) {
  .blue .blue-editorial-aside > p, .blue .section-intro > p, .blue .audience-copy > p, .blue .geo-layout > div > p, .blue .contact-layout > div > p, .blue .faq-list details p { font-size: 16px; }
  .blue .faq-list summary { font-size: 16px; }
}
.numbers.is-field-visible .number-field i { animation: field-rise 1.4s var(--line-delay) both; }
@media (prefers-reduced-motion: reduce) {
  .number-field i { transform: scaleY(1); opacity: 1; }
  .numbers.is-field-visible .number-field i { animation: auto ease 0s 1 normal none running none; }
}
.hero-reference-video { position: absolute; inset: 0px; width: 100%; height: 100%; object-fit: cover; opacity: 0; z-index: 1; pointer-events: none; transition: opacity 0.6s; background: rgb(23, 63, 229); }
.video-ready .hero-reference-video { opacity: 1; }
.video-ready .sculpture-wrap, .video-ready .stage-currencies { opacity: 0; }
.hero-video-toggle { position: absolute; right: 35px; bottom: 85px; z-index: 4; min-height: 44px; padding: 11px 17px; border: 1px solid rgba(255, 255, 255, 0.44); background: rgba(16, 44, 103, 0.863); color: rgb(255, 255, 255); border-radius: 25px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; font-size: 11px; backdrop-filter: blur(8px); }
.hero-video-status { position: absolute; left: 35px; right: 35px; bottom: 85px; z-index: 4; font-size: 10px; text-align: center; color: rgb(255, 255, 255); background: rgba(16, 44, 103, 0.863); padding: 10px 14px; border-radius: 6px; }
.motion-reduced .hero-reference-video, .motion-reduced .hero-video-toggle, .motion-reduced .hero-video-status { display: none; }
.motion-reduced .sculpture-wrap, .motion-reduced .stage-currencies { opacity: 1; }
@media (max-width: 700px) {
  .hero-video-toggle { right: 20px; bottom: 80px; font-size: 10px; }
  .hero-video-status { left: 20px; right: 20px; bottom: 80px; font-size: 9px; }
  .hero-reference-video { object-fit: cover; }
}
@media (prefers-reduced-motion: reduce) {
  .hero-reference-video, .hero-video-toggle, .hero-video-status { display: none; }
  .video-ready .sculpture-wrap, .video-ready .stage-currencies { opacity: 1; }
}
.blue .motion-stage { height: auto; --sculpture-scale: 1; --sculpture-turn: 0deg; --corner-opacity: 1; }
.blue .motion-stage-sticky { position: relative; top: auto; width: 100%; height: auto; min-height: 0px; aspect-ratio: 16 / 9; max-height: 860px; background: rgb(23, 63, 229); }
.blue .motion-disc { clip-path: none; will-change: auto; }
.blue .motion-stage .stage-corner, .blue .motion-stage .stage-side-label, .blue .motion-stage .stage-currencies { display: none; }
.blue .motion-stage .sculpture-wrap { transform: none; will-change: auto; }
.blue .motion-stage .payment-sculpture { animation: auto ease 0s 1 normal none running none; }
.blue .motion-stage .hero-reference-video { object-fit: cover; }
.blue .editorial-mark, .audience-art-symbol, .step-arrow, .payment-arrow, .round-arrow { display: none; }
@media (max-width: 700px) {
  .blue .motion-stage-sticky { aspect-ratio: 4 / 3; min-height: 0px; max-height: none; }
  .blue .motion-stage .hero-reference-video { object-fit: cover; }
}
.blue { --page-gutter: 70px; }
.blue .container { width: calc(100% - var(--page-gutter) - var(--page-gutter)); max-width: none; margin-inline: auto; }
.blue .demo-bar, .blue .mobile-menu { padding-inline: var(--page-gutter); }
@media (max-width: 1024px) {
  .blue { --page-gutter: 40px; }
}
@media (max-width: 960px) {
  .blue { --page-gutter: 32px; }
}
@media (max-width: 767px), (max-width: 825px) and (orientation: landscape) {
  .blue { --page-gutter: 23px; }
}
.blue .nav-inner { height: 79px; gap: 24px; }
.blue .desktop-nav { font-size: 16px; font-weight: 600; gap: 24px; }
.blue .desktop-nav a { padding-block: 12px; }
.blue .nav-actions { gap: 18px; }
.blue .nav-actions .nav-contact { font-size: 14px; font-weight: 500; }
.blue .nav-roll-link { perspective: 500px; }
.blue .nav-roll-frame { height: 22px; display: block; overflow: hidden; }
.blue .nav-roll-track { position: relative; display: block; height: 22px; transform-style: preserve-3d; transition: transform 0.27s ease-out; }
.blue .nav-roll-front, .blue .nav-roll-back { position: absolute; inset: 0px; display: flex; align-items: center; white-space: nowrap; backface-visibility: hidden; }
.blue .nav-roll-front { position: relative; transform: translateZ(11px); }
.blue .nav-roll-back { transform: rotateX(-90deg) translateZ(-11px); }
.blue .gpg-dot-button { --dot-size: 8px; --dot-left: 24px; --dot-open: 31px; --dot-open-left: 8px; --pill-bg: #173fe5; --pill-fg: #fff; --pill-inset: 0px; position: relative; isolation: isolate; border: 0px; border-radius: 90px; height: 47px; min-height: 47px; padding: 0px 32px 0px 48px; overflow: visible; background: transparent !important; color: var(--pill-fg) !important; box-shadow: none !important; transform: none !important; }
.blue .gpg-dot-button::before { content: ""; position: absolute; inset: var(--pill-inset) 0; z-index: -1; border-radius: inherit; background: var(--pill-bg); transition: transform 0.95s cubic-bezier(0.22, 1, 0.36, 1), background-color 0.95s; }
.blue .gpg-dot-button::after { content: ""; position: absolute; left: var(--dot-left); top: 50%; width: var(--dot-size); height: var(--dot-size); border-radius: 50%; background: var(--pill-fg); transform: translateY(-50%); transition: width 0.45s ease-out, height 0.45s ease-out, left 0.45s ease-out; pointer-events: none; }
.blue .gpg-dot-button, .blue .nav-actions .nav-calc > span { font-size: 16px; line-height: 1.4; font-weight: 600; }
.blue .gpg-dot-button > span { position: relative; z-index: 1; }
.blue .gpg-dot-button:focus-visible::after { width: var(--dot-open); height: var(--dot-open); left: var(--dot-open-left); }
@media (hover: hover) and (pointer: fine) {
  .blue .nav-roll-link:hover .nav-roll-track { transform: rotateX(90deg); }
  .blue .gpg-dot-button:hover::before { transform: scale(0.98, 0.93); }
  .blue .gpg-dot-button:hover::after { width: var(--dot-open); height: var(--dot-open); left: var(--dot-open-left); }
}
.blue .nav-roll-link:focus-visible .nav-roll-track { transform: rotateX(90deg); }
@media (min-width: 1851px) {
  .blue .nav-inner { height: 98px; }
  .blue .desktop-nav { font-size: 22px; gap: 32px; }
  .blue .nav-roll-frame, .blue .nav-roll-track { height: 28px; }
  .blue .nav-roll-front { transform: translateZ(14px); }
  .blue .nav-roll-back { transform: rotateX(-90deg) translateZ(-14px); }
  .blue .gpg-dot-button { --dot-size: 11px; --dot-left: 32px; --dot-open: 49px; height: 65px; min-height: 65px; padding: 0px 48px 0px 67px; }
  .blue .gpg-dot-button, .blue .nav-actions .nav-calc > span { font-size: 22px; }
  .blue .nav-actions .nav-contact { font-size: 18px; }
  .blue .nav-contact svg { width: 25px; height: 25px; }
}
@media (max-width: 1440px) and (min-width: 1361px) {
  .blue .desktop-nav { gap: 16px; }
  .blue .nav-inner { gap: 20px; }
  .blue .nav-actions { gap: 12px; }
  .blue .nav-actions .nav-contact { font-size: 12px; }
}
@media (max-width: 960px) {
  .blue .gpg-dot-button { --dot-size: 6px; --dot-left: 18px; --dot-open: 25px; --dot-open-left: 6px; --pill-inset: 3px; height: 44px; min-height: 44px; padding: 0px 22px 0px 40px; }
  .blue .gpg-dot-button, .blue .nav-actions .nav-calc > span { font-size: 14px; }
  .blue .mobile-menu .nav-roll-frame, .blue .mobile-menu .nav-roll-track { height: 36px; }
  .blue .mobile-menu .nav-roll-front { transform: translateZ(18px); }
  .blue .mobile-menu .nav-roll-back { transform: rotateX(-90deg) translateZ(-18px); }
  .blue .mobile-menu a { font-size: 28px; font-weight: 400; line-height: 1.3; }
}
@media (max-width: 767px), (max-width: 825px) and (orientation: landscape) {
  .blue .nav-inner { height: 60px; }
}
@media (max-width: 700px) {
  .blue .nav-inner { gap: 8px; }
  .blue .nav-inner .wordmark { font-size: 18px; }
  .blue .nav-actions { gap: 0px; }
  .blue .nav-actions .nav-calc { padding-inline: 12px; margin-right: 2px; }
  .blue .nav-actions .nav-calc::after { display: none; }
  .blue .nav-actions .nav-calc > span { font-size: 14px; }
  .blue .blue-editorial .gpg-dot-button { padding: 0px 22px 0px 40px; font-size: 14px; }
  .blue .mobile-menu a { font-size: 28px; }
}
@media (max-width: 370px) {
  .blue .nav-inner { gap: 6px; }
  .blue .nav-inner .wordmark { font-size: 17px; }
  .blue .nav-actions .nav-calc { padding-inline: 10px; margin-right: 0px; }
  .blue .nav-actions .nav-calc > span { font-size: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .blue .nav-roll-track, .blue .gpg-dot-button::before, .blue .gpg-dot-button::after { transition: none; }
  .blue .nav-roll-link:hover .nav-roll-track, .blue .nav-roll-link:focus-visible .nav-roll-track { transform: none; }
}
@media (min-width: 1851px) {
  .blue .nav-inner { height: 86px; }
  .blue .desktop-nav { font-size: 18px; gap: 28px; }
  .blue .gpg-dot-button { --dot-size: 9px; --dot-left: 27px; --dot-open: 38px; height: 54px; min-height: 54px; padding: 0px 36px 0px 55px; }
  .blue .gpg-dot-button, .blue .nav-actions .nav-calc > span { font-size: 18px; }
  .blue .nav-actions .nav-contact { font-size: 16px; }
  .blue .nav-contact svg { width: 22px; height: 22px; }
}
.blue .blue-editorial-aside > p { font-size: 18px; line-height: 1.7; max-width: 360px; }
.blue .blue-editorial .gpg-dot-button::before { transform: none !important; }
@media (min-width: 1851px) {
  .blue .blue-editorial-aside > p { font-size: 20px; max-width: 410px; }
}
@media (max-width: 700px) {
  .blue .blue-editorial-aside > p { font-size: 17px; line-height: 1.7; max-width: 390px; }
}
.blue .site-header a { transition: color 0.2s, background-color 0.2s; transform: none !important; translate: none !important; }
.blue .site-header .desktop-nav a:hover { color: rgb(75, 112, 204); }
.blue .site-header .nav-contact { opacity: 1; transition: color 0.2s; }
.blue .site-header .nav-contact:hover { color: rgb(75, 112, 204); opacity: 1; }
.blue .site-header .nav-calc { transition: background-color 0.2s; background: rgb(23, 63, 229) !important; color: rgb(255, 255, 255) !important; transform: none !important; box-shadow: none !important; }
.blue .site-header .nav-calc:hover { background: rgb(49, 88, 235) !important; }
.blue .site-header .nav-calc::before, .blue .site-header .nav-calc::after { display: none; }
.blue .mobile-menu a:hover { color: rgb(191, 208, 255); }
.blue .site-header .nav-calc { padding-inline: 24px; }
@media (min-width: 1851px) {
  .blue .site-header .nav-calc { padding-inline: 30px; }
}
@media (max-width: 700px) {
  .blue .site-header .nav-calc { padding-inline: 12px; }
}
@media (max-width: 370px) {
  .blue .site-header .nav-calc { padding-inline: 10px; }
}
/* Leave room for glyph overhangs and descenders inside word-reveal masks.
   Compensating margins preserve the original line wrapping and spacing. */
body.blue .word-mask{padding:.12em .16em .22em .08em;margin:-.12em -.16em -.22em -.08em}
body.blue .blue-editorial-grid>*,body.blue #geography .geo-layout>div:first-child{min-width:0}

/* FAQ height and opacity are coordinated by the exclusive accordion controller. */
body.blue #faq details p{animation:none}
body.blue #faq details .faq-plus svg{transform:rotate(0deg);transition:transform .42s cubic-bezier(.22,1,.36,1)}
body.blue #faq details.faq-expanded .faq-plus svg{transform:rotate(45deg)}
@media(prefers-reduced-motion:reduce){body.blue #faq details .faq-plus svg{transition:none}}

@media(max-width:700px){body.blue .motion-edition h1{font-size:clamp(34px,9.8vw,68px)}}
