:root {
  --navy: #14136B;
  --navy-body: #34327F;
  --navy-muted: #6C6AA6;
  --lav: #8486B8;
  --paper: #F3F4F8;
  --white: #FFFFFF;
  --line: rgba(20, 19, 107, .16);
  --cyan: #2CCBE6;
  --sky: #63BBFB;
  --sky-top: #4EA7F4;
  --on-navy: #F3F4F8;
  --on-navy-soft: #A9ABDD;
  --serif: "Instrument Serif", "Times New Roman", Georgia, serif;
  --mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
  --sans: "Inter Tight", -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --fs-display: clamp(64px, 8.2vw, 122px);
  --fs-h1: clamp(46px, 6.4vw, 92px);
  --fs-h2: clamp(38px, 4.8vw, 64px);
  --fs-h3: clamp(24px, 2.1vw, 30px);
  --fs-num: clamp(56px, 6vw, 88px);
  --fs-lead: clamp(18px, 1.45vw, 21px);
  --fs-body: 17px;
  --fs-small: 15px;
  --fs-note: 13px;
  --fs-label: 12px;
  --s-1: 4px;
  --s-2: 8px;
  --s-3: 12px;
  --s-4: 16px;
  --s-5: 24px;
  --s-6: 32px;
  --s-7: 48px;
  --s-8: 64px;
  --s-block: clamp(40px, 5vw, 64px);
  --s-section: clamp(88px, 10vw, 136px);
  --pad: clamp(20px, 4vw, 40px);
  --gutter: clamp(16px, 2vw, 24px);
  --hdr: 68px;
  --ease: cubic-bezier(.16, 1, .3, 1);
}
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: calc(var(--hdr) + 12px); }
body { margin: 0; background: var(--paper); color: var(--navy); font-family: var(--sans); font-size: var(--fs-body); line-height: 1.6; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; overflow-x: clip; }
body.no-scroll { overflow: hidden; }
img { display: block; max-width: 100%; height: auto; }
picture { display: block; }
h1, h2, h3, p, ul, ol, figure { margin: 0; }
ul, ol { padding: 0; list-style: none; }
a { color: inherit; }
strong { font-weight: 600; color: var(--navy); }
:focus-visible { outline: 2px solid var(--navy); outline-offset: 3px; border-radius: 6px; }
.mono { font-family: var(--mono); }
.nowrap { white-space: nowrap; }
.skip { position: absolute; left: 12px; top: -80px; z-index: 100; padding: 10px 14px; border-radius: 8px; background: var(--navy); color: var(--white); font-family: var(--mono); font-size: var(--fs-note); text-decoration: none; }
.skip:focus { top: calc(12px + env(safe-area-inset-top, 0px)); }
.wrap { width: 100%; max-width: calc(1200px + 2 * var(--pad)); margin-inline: auto; padding-left: max(var(--pad), env(safe-area-inset-left, 0px)); padding-right: max(var(--pad), env(safe-area-inset-right, 0px)); }
.grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--gutter); }
.grid > * { grid-column: 1 / -1; min-width: 0; }
.h1, .h2, .h3, .hero__title { font-family: var(--serif); font-weight: 400; text-wrap: balance; }
.h1 { font-size: var(--fs-h1); line-height: .95; letter-spacing: -.03em; }
.h2 { font-size: var(--fs-h2); line-height: 1; letter-spacing: -.028em; }
.h3 { font-size: var(--fs-h3); line-height: 1.08; letter-spacing: -.015em; }
.h1 .soft, .h2 .soft { color: var(--lav); }
.h1 em, .h2 em, .hero__title em { font-style: italic; }
.lead { max-width: 36em; margin-top: var(--s-5); font-size: var(--fs-lead); line-height: 1.5; color: var(--navy-body); text-wrap: pretty; }
.note { font-family: var(--mono); font-size: var(--fs-note); line-height: 1.6; }
.dash { content: "";display: inline-block; flex: none; width: 26px; height: 3px; border-radius: 2px; background: var(--cyan); }
.chip { width: fit-content; padding: 4px 9px; border: 1px solid currentColor; border-radius: 4px; font-family: var(--mono); font-size: var(--fs-label); line-height: 1.4; }
.section__head { margin-bottom: var(--s-block); }
.ctas { display: flex; flex-wrap: wrap; gap: var(--s-3); margin-top: var(--s-6); }
.btn { --bh: 48px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: var(--bh); padding: 0 20px; border: 1px solid var(--navy); border-radius: 10px; font-family: var(--mono); font-size: 12.5px; font-weight: 500; letter-spacing: .06em; line-height: 1.2; text-transform: uppercase; text-decoration: none; white-space: nowrap; transition: background .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease); }
.btn span { transition: transform .3s var(--ease); }
.btn:hover span { transform: translateX(3px); }
.btn--lg { --bh: 56px; padding: 0 26px; font-size: 13px; }
.btn--sm { --bh: 40px; padding: 0 14px; font-size: 12px; }
.btn--primary { background: var(--navy); color: var(--white); }
.btn--primary:hover { background: #24238A; border-color: #24238A; }
.btn--secondary { background: var(--white); color: var(--navy); }
.btn--secondary:hover { background: var(--navy); color: var(--white); }
.btn--glass { background: rgba(255, 255, 255, .42); color: var(--navy); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
.btn--glass:hover { background: rgba(255, 255, 255, .7); }
.link { font-family: var(--mono); font-size: var(--fs-label); font-weight: 500; letter-spacing: .08em; text-transform: uppercase; text-decoration: none; background: linear-gradient(currentColor, currentColor) 0 100% / 0 1px no-repeat; transition: background-size .3s var(--ease); }
.link:hover { background-size: 100% 1px; }
.hdr { position: fixed; top: 0; left: 0; right: 0; z-index: 50; padding-top: env(safe-area-inset-top, 0px); transition: background .35s var(--ease), box-shadow .35s var(--ease); }
.hdr.is-solid { background: rgba(243, 244, 248, .86); -webkit-backdrop-filter: saturate(160%) blur(16px); backdrop-filter: saturate(160%) blur(16px); box-shadow: 0 1px 0 var(--line); }
.hdr__bar { display: flex; align-items: center; gap: 28px; height: var(--hdr); }
.hdr__brand { margin-right: auto; }
.hdr__brand img { width: auto; height: 22px; }
.hdr__nav { display: flex; gap: 26px; font-family: var(--mono); font-size: var(--fs-label); font-weight: 500; letter-spacing: .08em; text-transform: uppercase; }
.hdr__nav a { text-decoration: none; padding: 6px 0; background: linear-gradient(var(--navy), var(--navy)) 0 100% / 0 1px no-repeat; transition: background-size .3s var(--ease); }
.hdr__nav a:hover { background-size: 100% 1px; }
.hdr__menu { display: none; position: relative; width: 44px; height: 44px; margin-right: -10px; border: 0; background: transparent; cursor: pointer; color: var(--navy); }
.hdr__menu span { position: absolute; left: 11px; right: 11px; height: 1.5px; background: currentColor; transition: transform .3s var(--ease), top .3s var(--ease); }
.hdr__menu span:first-child { top: 17px; }
.hdr__menu span:last-child { top: 25px; }
.hdr.is-open .hdr__menu span:first-child { top: 21px; transform: rotate(45deg); }
.hdr.is-open .hdr__menu span:last-child { top: 21px; transform: rotate(-45deg); }
.menu { display: none; }
.hero { position: relative; display: flex; align-items: flex-start; min-height: clamp(660px, 100svh, 1040px); overflow: hidden; background: var(--sky); }
.hero > .hero__media { position: absolute; inset: 0; --ar: 1.7699; --px: .18; --py: .58; }
.scene--hero .scene__stage { transform-origin: 30% 60%; animation: hero-in 2.4s var(--ease) both; }
@keyframes hero-in { from { transform: scale(1.06); } to { transform: none; } }
.hero__inner { position: relative; z-index: 1; width: 100%; padding-top: calc(var(--hdr) + env(safe-area-inset-top, 0px) + clamp(28px, 6vh, 88px)); padding-bottom: 140px; }
.hero__title { font-size: var(--fs-display); line-height: .88; letter-spacing: -.035em; }
.hero__lead { max-width: 30em; color: var(--navy); }
.hero__note { max-width: 34em; margin-top: var(--s-4); color: var(--navy); }
.sheet { position: relative; z-index: 2; margin-top: -56px; border-radius: 40px 40px 0 0; background: var(--paper); }
.section { padding-block: var(--s-section); }
.section + .section { padding-top: 0; }
.intro { text-align: center; }
.intro__title .soft { display: block; }
.intro__lead { margin-inline: auto; }
.pillars { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--gutter); margin-top: var(--s-block); text-align: left; }
.pillars li { display: flex; flex-direction: column; gap: var(--s-3); padding-top: var(--s-4); border-top: 1px solid var(--navy); font-size: var(--fs-small); line-height: 1.5; }
.pillars__num { margin-top: var(--s-2); font-family: var(--serif); font-size: clamp(52px, 5vw, 76px); line-height: .95; letter-spacing: -.03em; font-variant-numeric: tabular-nums; }
.pillars__src { margin-top: var(--s-5); text-align: left; color: var(--navy-muted); }
.pillars__src .link { margin-left: var(--s-2); color: var(--navy); white-space: nowrap; }
.genesis .grid { row-gap: var(--s-block); align-items: start; }
.stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s-3); margin-top: var(--s-6); }
.stat { display: flex; flex-direction: column; min-height: 216px; padding: var(--s-4); border: 1px solid var(--navy); border-radius: 18px; background: var(--white); }
.stat__num { margin-top: auto; padding-top: var(--s-5); font-family: var(--serif); font-size: var(--fs-num); line-height: .95; letter-spacing: -.03em; font-variant-numeric: tabular-nums; }
.stat__note { margin-top: var(--s-2); font-size: 14px; color: var(--navy-muted); }
.plan { margin-top: var(--s-5); padding: var(--s-5); border-radius: 18px; background: rgba(20, 19, 107, .06); }
.steps li { display: grid; grid-template-columns: 36px minmax(0, 1fr); gap: var(--s-3); padding: var(--s-3) 0; border-top: 1px solid var(--line); font-size: var(--fs-small); line-height: 1.5; color: var(--navy-body); }
.steps li:first-child { border-top: 0; padding-top: 0; }
.steps__n { font-family: var(--mono); font-size: var(--fs-label); font-weight: 500; line-height: 1.9; color: var(--navy-muted); }
.plan .ctas { margin-top: var(--s-5); }
.genesis__figure { border-radius: 28px; aspect-ratio: 4 / 5; --py: .6; }
.cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--gutter); }
.card { display: flex; flex-direction: column; gap: var(--s-4); padding: 20px; border: 1px solid var(--navy); border-radius: 18px; }
.card__scene { aspect-ratio: 4 / 3; margin: -12px -12px var(--s-1); border-radius: 11px; }
.card .h3 { margin-top: var(--s-1); }
.card p { font-size: var(--fs-small); line-height: 1.55; color: var(--navy-body); }
.sources { --gpad: clamp(28px, 5vw, 64px); padding: var(--gpad); border-radius: 32px; background: radial-gradient(70% 90% at 88% 0%, rgba(255, 255, 255, .5), rgba(255, 255, 255, 0) 60%), linear-gradient(135deg, #9BCCF9 0%, #C8C3F1 52%, #F6D2D9 100%); }
.sources .lead { color: var(--navy); }
.sources__list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--gutter); margin-top: var(--s-block); }
.source { display: flex; flex-direction: column; gap: var(--s-3); min-height: 210px; padding: 20px; border: 1px solid var(--navy); border-radius: 18px; background: rgba(255, 255, 255, .72); }
.source .h3 { margin-top: auto; padding-top: var(--s-5); }
.source p { font-size: var(--fs-small); line-height: 1.5; color: var(--navy-body); }
.navy-block { --gpad: clamp(36px, 6vw, 80px); position: relative; overflow: hidden; padding: var(--gpad); border-radius: 32px; background: var(--navy); color: var(--on-navy); }
.gov-scene { aspect-ratio: 2.1; margin: calc(-1 * var(--gpad)) calc(-1 * var(--gpad)) 0; --px: .62; --py: .25; }
.gov-scene::after { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(20, 19, 107, 0) 52%, rgba(20, 19, 107, .7) 82%, var(--navy) 100%); }
.gov__body { position: relative; z-index: 1; margin-top: -1.2em; }
.navy-block .h2 .soft { color: var(--on-navy-soft); }
.gov { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--gutter); margin-top: var(--s-block); }
.gov li { padding-top: var(--s-4); border-top: 1px solid rgba(243, 244, 248, .28); }
.gov p { margin-top: var(--s-2); font-size: var(--fs-small); color: var(--on-navy-soft); }
.gov__note { display: flex; align-items: center; gap: 14px; margin-top: var(--s-7); }
.contact { position: relative; overflow: hidden; border-radius: 40px 40px 0 0; background: var(--sky); }
.contact > .contact__media { position: absolute; inset: 0; --px: .45; }
.contact__inner { position: relative; z-index: 1; padding-top: clamp(80px, 11vw, 150px); padding-bottom: clamp(220px, 26vw, 380px); }
.contact__title { max-width: 9em; }
.contact__text { max-width: 26em; color: var(--navy); }
.contact__mail { display: inline-block; margin-top: var(--s-5); font-family: var(--serif); font-size: clamp(30px, 3.4vw, 44px); line-height: 1.1; text-decoration: none; background: linear-gradient(var(--navy), var(--navy)) 0 100% / 100% 1px no-repeat; }
.contact__mail:hover { background-size: 0 1px; transition: background-size .4s var(--ease); }
.foot { position: relative; z-index: 3; margin-top: -40px; padding: clamp(64px, 8vw, 96px) 0 calc(48px + env(safe-area-inset-bottom, 0px)); border-radius: 40px 40px 0 0; background: var(--navy); color: var(--on-navy); }
.foot__grid { row-gap: var(--s-7); }
.foot__brand img { width: auto; height: 24px; }
.foot__brand p { margin-top: var(--s-5); line-height: 1.7; color: var(--on-navy-soft); }
.foot__brand a { color: var(--on-navy); }
.foot__nav { display: grid; gap: var(--s-3); align-content: start; justify-items: start; }
.foot__legal { display: grid; gap: var(--s-3); font-size: var(--fs-note); line-height: 1.6; color: var(--on-navy-soft); }
.foot__legal .note { font-size: var(--fs-label); color: var(--on-navy); }
@media (min-width: 900px) {
  .hero__copy { grid-column: 7 / -1; }
  .intro__title { grid-column: 2 / 12; }
  .intro__lead { grid-column: 3 / 11; }
  .genesis__text { grid-column: 1 / 7; }
  .genesis .genesis__figure { grid-column: 8 / -1; position: sticky; top: calc(var(--hdr) + var(--s-5)); }
  .section__head { grid-column: 1 / 10; }
  .gov__head { grid-column: 1 / 11; }
  .sources__head { grid-column: 1 / 10; }
  .contact__copy { grid-column: 1 / 8; }
}
@media (min-width: 1100px) {
  .contact__copy { grid-column: 1 / 7; }
  .foot__brand { grid-column: 1 / 5; }
  .foot__nav { grid-column: 5 / 8; }
  .foot__legal { grid-column: 8 / -1; }
}
.scene { position: relative; overflow: hidden; container-type: size; isolation: isolate; background: var(--sky); }
.scene__stage { --w: max(100cqw, 100cqh * var(--ar)); --h: max(100cqh, 100cqw / var(--ar)); position: absolute; left: calc((100cqw - var(--w)) * var(--px, .5)); top: calc((100cqh - var(--h)) * var(--py, .5)); width: var(--w); height: var(--h); }
.scene__stage img { position: absolute; max-width: none; }
.scene__img { inset: 0; width: 100%; height: 100%; }
.scene--bull { --ar: .7483; }
.scene--fed, .scene--nasdaq, .scene--wallstreet, .scene--nyse { --ar: 1.3364; }
.scene--ecb, .scene--borsa { --ar: 1.7708; }
.gov-scene { background: var(--navy); }
.scene__video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity .9s var(--ease); pointer-events: none; }
.scene.has-video .scene__video { opacity: 1; }
.scene.has-video .fx:not(.fx-ticker):not(.fx-win) { visibility: hidden; transition: visibility 0s linear .9s; }
.fx { position: absolute; pointer-events: none; }
.scene .fx, .scene .fx * { animation-play-state: paused; }
.scene.is-live .fx, .scene.is-live .fx * { animation-play-state: running; }
@keyframes fx-bob {
  0% { translate: 0 0; animation-timing-function: cubic-bezier(.61, 1, .88, 1); }
  25% { translate: 0 calc(var(--h) * var(--amp) * -1); animation-timing-function: cubic-bezier(.37, 0, .63, 1); }
  75% { translate: 0 calc(var(--h) * var(--amp)); animation-timing-function: cubic-bezier(.12, 0, .39, 0); }
  100% { translate: 0 0; }
}
@keyframes fx-tilt {
  0% { rotate: 0deg; animation-timing-function: cubic-bezier(.61, 1, .88, 1); }
  25% { rotate: calc(var(--rot) * -1); animation-timing-function: cubic-bezier(.37, 0, .63, 1); }
  75% { rotate: var(--rot); animation-timing-function: cubic-bezier(.12, 0, .39, 0); }
  100% { rotate: 0deg; }
}
@keyframes fx-hover { 0%, 100% { transform: translate3d(0, 0, 0); } 25% { transform: translate3d(0, calc(var(--h) * var(--amp) * -1), 0); } 75% { transform: translate3d(0, calc(var(--h) * var(--amp)), 0); } }
.fx-cut { height: auto; --amp: .014; --rot: 2.5deg; will-change: translate, rotate; animation: fx-bob var(--d, 7s) linear infinite, fx-tilt calc(var(--d, 7s) * 1.7) linear infinite; }
.fx-piece { left: var(--x); top: var(--y); width: var(--pw); height: auto; animation: fx-hover 16s ease-in-out infinite; }
.scene.is-live .fx-cut, .scene.is-live .fx-piece { animation-delay: var(--dl, 0s); }
.scene--bull .cut-1 { left: 32.33%; top: 28.189%; width: 10.909%; --d: 7.2s; }
.scene--bull .cut-2 { left: 54.886%; top: 34.184%; width: 10.795%; --d: 8.4s; --dl: -3s; }
.scene--bull .cut-3 { left: 10.17%; top: 41.071%; width: 12.386%; --d: 9s; --dl: -5.5s; }
.scene--bull .cut-4 { left: 65.114%; top: 42.985%; width: 9.659%; --d: 7.8s; --dl: -1.5s; }
.scene--bull .cut-5 { left: 12.102%; top: 52.551%; width: 9.886%; --d: 8.8s; --dl: -7s; }
.scene--bull .cut-6 { left: 62.955%; top: 57.27%; width: 11.364%; --d: 7.5s; --dl: -4.2s; }
.scene--nyse .fx-cut { --amp: .02; --rot: 1.5deg; }
.scene--nyse .cut-1 { left: 24.235%; top: 26.534%; width: 7.908%; --d: 8s; --dl: -2s; }
.scene--nyse .cut-2 { left: 19.005%; top: 38.352%; width: 6.633%; --d: 9.2s; --dl: -6s; }
.scene--nyse .cut-3 { left: 24.83%; top: 44.545%; width: 6.463%; --d: 8.6s; --dl: -3.4s; }
.piece-pediment { --x: 4.265%; --y: 8.268%; --pw: 32.647%; --amp: .0055; }
.piece-lintel { --x: 5.11%; --y: 24.154%; --pw: 6.25%; --amp: .0045; --dl: -.9s; }
.piece-beam { --x: 11.14%; --y: 21.419%; --pw: 16.949%; --amp: .0045; --dl: -.7s; }
.piece-block { --x: 28.199%; --y: 28.06%; --pw: 7.279%; --amp: .0045; --dl: -1.1s; }
.piece-col1 { --x: 5.257%; --y: 29.883%; --pw: 6.029%; --amp: .004; --dl: -1.8s; }
.piece-col2 { --x: 11.324%; --y: 27.409%; --pw: 6.434%; --amp: .004; --dl: -1.5s; }
.piece-col3 { --x: 16.728%; --y: 29.297%; --pw: 5.993%; --amp: .004; --dl: -2s; }
.piece-col4 { --x: 23.493%; --y: 31.901%; --pw: 5.11%; --amp: .004; --dl: -1.6s; }
.piece-col5 { --x: 29.816%; --y: 33.789%; --pw: 5.515%; --amp: .004; --dl: -2.2s; }
.fx-glow { aspect-ratio: 1; translate: -50% -50%; border-radius: 50%; background: radial-gradient(closest-side, rgba(255, 250, 232, .9), rgba(255, 228, 214, .38) 46%, rgba(255, 228, 214, 0)); mix-blend-mode: screen; animation: fx-breathe 7s ease-in-out infinite alternate; }
@keyframes fx-breathe { from { opacity: .4; transform: scale(.9); } to { opacity: .95; transform: scale(1.08); } }
.fx-ripple, .fx-drift { overflow: hidden; -webkit-mask-image: linear-gradient(180deg, transparent, #000 22%, #000 80%, transparent); mask-image: linear-gradient(180deg, transparent, #000 22%, #000 80%, transparent); }
.fx-ripple { opacity: .7; }
.fx-ripple img { animation: fx-ripple var(--d, 5s) ease-in-out infinite alternate; }
@keyframes fx-ripple { from { transform: translate3d(-.45%, .12%, 0); } to { transform: translate3d(.45%, -.12%, 0); } }
.fx-drift { opacity: .8; -webkit-mask-image: linear-gradient(180deg, transparent, #000 30%, #000 85%, transparent); mask-image: linear-gradient(180deg, transparent, #000 30%, #000 85%, transparent); }
.fx-drift img { animation: fx-drift var(--d, 18s) ease-in-out infinite alternate; }
@keyframes fx-drift { from { transform: translate3d(calc(var(--dir, 1) * -1.4%), 0, 0); } to { transform: translate3d(calc(var(--dir, 1) * 1.4%), 0, 0); } }
.fx-dot { width: calc(var(--w) * var(--s, .006)); aspect-ratio: 1; translate: -50% -50%; border-radius: 50%; background: radial-gradient(closest-side, #fff, rgba(255, 255, 255, .7) 40%, rgba(255, 255, 255, 0)); opacity: 0; animation: fx-twinkle var(--d, 3s) ease-in-out var(--dl, 0s) infinite; }
@keyframes fx-twinkle { 0%, 100% { opacity: 0; transform: scale(.3); } 50% { opacity: 1; transform: scale(1); } }
.fx-star { width: calc(var(--w) * .034); aspect-ratio: 1; translate: -50% -50%; opacity: 0; background: radial-gradient(closest-side, #fff, rgba(255, 255, 255, .85) 14%, rgba(255, 255, 255, 0) 42%), linear-gradient(90deg, rgba(255, 255, 255, 0), #fff 50%, rgba(255, 255, 255, 0)) center / 100% 7% no-repeat, linear-gradient(0deg, rgba(255, 255, 255, 0), #fff 50%, rgba(255, 255, 255, 0)) center / 7% 100% no-repeat; animation: fx-spark var(--d, 8s) ease-in-out var(--dl, 0s) infinite; }
@keyframes fx-spark { 0%, 72%, 100% { opacity: 0; transform: scale(.2) rotate(0deg); } 84% { opacity: 1; transform: scale(1) rotate(45deg); } }
.fx-win { width: calc(var(--w) * .0055); aspect-ratio: 1.6; translate: -50% -50%; border-radius: 1px; background: #FFDDAF; box-shadow: 0 0 calc(var(--w) * .006) calc(var(--w) * .002) rgba(255, 206, 150, .55); opacity: 0; animation: fx-win var(--d, 12s) ease-in-out var(--dl, 0s) infinite; }
@keyframes fx-win { 0%, 100% { opacity: 0; } 12%, 62% { opacity: .95; } 74% { opacity: 0; } }
.fx-streak { width: calc(var(--w) * .07); height: calc(var(--w) * .0018); translate: -50% -50%; border-radius: 2px; background: linear-gradient(90deg, rgba(255, 244, 230, 0), rgba(255, 244, 230, .95), rgba(255, 244, 230, 0)); opacity: 0; animation: fx-streak var(--d, 12s) ease-in-out var(--dl, 0s) infinite; }
@keyframes fx-streak { 0% { opacity: 0; transform: translate3d(0, 0, 0); } 15%, 80% { opacity: .9; } 100% { opacity: 0; transform: translate3d(calc(var(--w) * var(--tx)), calc(var(--h) * var(--ty)), 0); } }
.fx-ticker { display: flex; align-items: center; overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 24%, #000 76%, transparent); mask-image: linear-gradient(90deg, transparent, #000 24%, #000 76%, transparent); }
.fx-ticker__run { flex: none; white-space: nowrap; font-family: var(--mono); font-size: calc(var(--w) * .021); font-weight: 500; letter-spacing: .06em; text-transform: uppercase; color: var(--navy); opacity: .72; animation: fx-ticker 22s linear infinite; }
@keyframes fx-ticker { to { transform: translate3d(-50%, 0, 0); } }
.js .rv { opacity: 0; transform: translate3d(0, 22px, 0); transition: opacity .9s var(--ease), transform 1.1s var(--ease); }
.js .rv.is-in { opacity: 1; transform: none; }
@media (max-width: 1099px) {
  .cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .foot__brand { grid-column: 1 / 7; }
  .foot__nav { grid-column: 7 / -1; }
  .contact > .contact__media { --px: .3; }
}
@media (max-width: 899px) {
  .hdr__nav { display: none; }
  .hdr__menu { display: block; }
  .hdr__bar { gap: 10px; }
  .menu { display: block; visibility: hidden; position: absolute; left: 0; right: 0; top: 100%; max-height: 0; overflow: hidden; background: var(--paper); transition: max-height .45s var(--ease), visibility 0s linear .45s; }
  .hdr.is-open .menu { visibility: visible; max-height: 100svh; box-shadow: 0 1px 0 var(--line); transition: max-height .45s var(--ease), visibility 0s; }
  .menu__nav { display: grid; padding-top: 8px; padding-bottom: 28px; }
  .menu__nav a { padding: 12px 0; border-bottom: 1px solid var(--line); font-family: var(--serif); font-size: 34px; line-height: 1.1; text-decoration: none; }
  .genesis__figure { aspect-ratio: 4 / 3; order: -1; --py: .6; }
  .hero { display: flex; flex-direction: column; min-height: 0; background: linear-gradient(180deg, var(--sky-top) 0%, var(--sky) 100%); }
  .hero__inner { order: 1; padding-top: calc(var(--hdr) + env(safe-area-inset-top, 0px) + 28px); padding-bottom: 0; }
  .hero__title { font-size: clamp(60px, 18vw, 92px); }
  .hero > .hero__media { position: relative; inset: auto; order: 2; align-self: stretch; aspect-ratio: 3 / 4; margin-top: -8%; --ar: .75; --px: .5; --py: 0; -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 24%); mask-image: linear-gradient(180deg, transparent 0%, #000 24%); }
  .piece-pediment { --x: 10.069%; --pw: 77.083%; }
  .piece-lintel { --x: 12.066%; --pw: 14.757%; }
  .piece-beam { --x: 26.302%; --pw: 40.017%; }
  .piece-block { --x: 66.58%; --pw: 17.188%; }
  .piece-col1 { --x: 12.413%; --pw: 14.236%; }
  .piece-col2 { --x: 26.736%; --pw: 15.191%; }
  .piece-col3 { --x: 39.497%; --pw: 14.149%; }
  .piece-col4 { --x: 55.469%; --pw: 12.066%; }
  .piece-col5 { --x: 70.399%; --pw: 13.021%; }
  .scene--hero .scene__video { object-position: 0 0; }
  .gov, .pillars { grid-template-columns: minmax(0, 1fr); }
  .intro { text-align: left; }
  .intro__lead { margin-inline: 0; }
}
@media (max-width: 759px) {
  :root { --hdr: 60px; --fs-body: 16px; }
  .hero .ctas .btn { flex: 1 1 auto; }
  .btn--glass { background: rgba(255, 255, 255, .55); -webkit-backdrop-filter: none; backdrop-filter: none; }
  .btn--lg { --bh: 52px; }
  .sheet { margin-top: -40px; border-radius: 28px 28px 0 0; }
  .hdr__cta { --bh: 38px; padding: 0 12px; font-size: 11.5px; }
  .stats { gap: 10px; }
  .stat { min-height: 176px; padding: 14px; }
  .stat .chip { font-size: 11px; }
  .stat__num { font-size: clamp(44px, 13vw, 60px); }
  .plan { padding: var(--s-4); }
  .plan .btn { width: 100%; }
  .cards, .sources__list { grid-template-columns: minmax(0, 1fr); }
  .source { min-height: 0; }
  .sources { border-radius: 24px; }
  .navy-block { border-radius: 24px; }
  .contact { border-radius: 28px 28px 0 0; background: linear-gradient(180deg, var(--sky-top) 0%, var(--sky) 100%); }
  .contact > .contact__media { top: auto; height: 62%; --px: .62; -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 34%); mask-image: linear-gradient(180deg, transparent 0%, #000 34%); }
  .contact__inner { padding-bottom: 380px; }
  .gov-scene { aspect-ratio: 4 / 3; --px: .88; }
  .foot { border-radius: 28px 28px 0 0; }
  .foot__brand, .foot__nav { grid-column: 1 / -1; }
}
@media (max-width: 380px) {
  .hdr__brand img { height: 19px; }
  .stats { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .scene--hero .scene__stage, .fx { animation: none; }
  .js .rv { opacity: 1; transform: none; transition: none; }
  .menu, .hdr.is-open .menu { transition: none; }
}
