@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--red:#d9152e;--ink:#171717;--paper:#f5f3ef;--line:#bcbab6;--font: 'Space Grotesk',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit}button,a,summary{outline-offset:4px}::selection{background:#171717;color:#fff}.skip{position:absolute;left:12px;top:-80px;background:#fff;padding:12px;z-index:30}.skip:focus{top:12px}.site-header{height:72px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 2.4%;background:var(--paper);border-bottom:1px solid var(--ink);gap:20px}.wordmark{text-decoration:none;font:700 1.45rem/1 var(--font);letter-spacing:-.08em}.mark{font-size:.42em;vertical-align:top;margin-left:.35em;color:var(--red)}nav{display:flex;gap:2.1rem}nav a,.header-cta{font-size:.82rem;font-weight:700;text-decoration:none}.header-cta{justify-self:end;border:1px solid var(--ink);padding:12px 16px;min-width:120px;display:flex;justify-content:space-between;gap:22px}.header-cta:hover,.header-cta:focus-visible{background:var(--ink);color:#fff}.hero{background:var(--red);color:#fff;min-height:min(850px,calc(100svh - 72px));padding:24px 2.4% 20px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.hero-meta,.hero-footer,.section-head,.kicker,.eyebrow,.card-top,.card-foot,.price-card>span,.price-facts span,.final-cta>span,.final-cta small,footer{font-family:var(--font);font-size:.75rem;font-weight:700;letter-spacing:.025em}.hero-meta,.hero-footer,.section-head{display:flex;justify-content:space-between;gap:20px}.hero-footer a{text-decoration:none}.hero-center{padding:7vh 0 5vh}.eyebrow{margin:0 0 20px}.assemble{margin:0;display:flex;justify-content:space-between;align-items:center;font:700 clamp(4rem,13.5vw,15rem)/.75 var(--font);letter-spacing:-.115em;white-space:nowrap;transform:translateX(-.018em);padding-right:.06em}.assemble span{display:inline-block;transform:translate(var(--dx,0),var(--dy,0)) rotate(var(--rot,0));opacity:0;transition:transform 1.15s cubic-bezier(.16,1,.3,1),opacity .6s}.is-ready .assemble span{transform:translate(0,0) rotate(0);opacity:1}.assemble span:nth-child(1){--dx:-70px;--dy:-60px;--rot:-12deg}.assemble span:nth-child(2){--dx:30px;--dy:80px;--rot:12deg;transition-delay:.08s}.assemble span:nth-child(3){--dx:-25px;--dy:-95px;--rot:-10deg;transition-delay:.16s}.assemble span:nth-child(4){--dx:55px;--dy:100px;--rot:12deg;transition-delay:.24s}.assemble span:nth-child(5){--dx:-75px;--dy:60px;--rot:-20deg;transition-delay:.32s}.assemble span:nth-child(6){--dx:65px;--dy:-80px;--rot:16deg;transition-delay:.4s}.assemble span:nth-child(7){--dx:-40px;--dy:90px;--rot:-13deg;transition-delay:.48s}.assemble span:nth-child(8){--dx:80px;--dy:-60px;--rot:11deg;transition-delay:.56s}.hero-line{height:2px;background:#fff;transform:scaleX(0);transform-origin:left;transition:transform 1s .7s}.is-ready .hero-line{transform:scaleX(1)}.hero-bottom{display:flex;align-items:end;justify-content:space-between;gap:30px;padding-top:28px}.hero-bottom p{font:500 clamp(1.3rem,2.4vw,2.6rem)/1.13 var(--font);max-width:670px;letter-spacing:-.045em;margin:0}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:19px 21px;min-width:220px;text-decoration:none;font:700 .9rem var(--font);transition:transform .2s,background .2s,color .2s}.button:hover{transform:translateY(-4px)}.button-white{background:#fff;color:var(--ink)}.button-dark{background:var(--ink);color:#fff}.hero-footer{padding-top:40px}.section{padding:30px 2.4% 110px}.section-head{border-top:1px solid currentColor;padding-top:12px;margin-bottom:95px}.display{font:600 clamp(3.7rem,8.5vw,10rem)/.92 var(--font);letter-spacing:-.085em;margin:0}.display em,.exchange h2 em,.final-cta em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.075em}.problem{min-height:710px}.problem-grid{display:grid;grid-template-columns:1.65fr .55fr;gap:6vw;align-items:end}.side-copy{max-width:340px;font-size:1.15rem;line-height:1.45}.side-copy p{margin:0 0 20px}.rhythm{background:#e5e1da}.rhythm .display{margin-bottom:85px}.rhythm-grid{display:grid;grid-template-columns:1fr 90px 1fr;align-items:stretch}.day-card{background:var(--red);color:#fff;min-height:440px;padding:20px;display:flex;flex-direction:column}.day-card.dark{background:var(--ink)}.card-top,.card-foot{display:flex;justify-content:space-between;border-top:1px solid currentColor;padding-top:12px}.day-card h3{font:700 clamp(3rem,7vw,8rem)/.9 var(--font);letter-spacing:-.09em;margin:auto 0 28px}.day-card h3 span{font-weight:400}.day-card p{font-size:1.15rem;line-height:1.35;max-width:380px;margin:0 0 42px}.card-foot{margin-top:auto}.rhythm-connector{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;color:var(--red);font:700 .7rem/1.3 var(--font);text-align:center}.connector-line{width:1px;height:80px;background:var(--red)}.rhythm-note{text-align:right;margin:22px 0 0;font-size:.93rem}.exchange{background:var(--ink);color:#f7f5f0}.exchange-grid{display:grid;grid-template-columns:1fr 1fr;gap:7vw}.kicker{color:#ff5d69}.exchange h2{font:600 clamp(3rem,5vw,6rem)/.95 var(--font);letter-spacing:-.07em;max-width:660px;margin:32px 0 85px}.exchange ul{padding:0;margin:0;list-style:none}.exchange li{font-size:1.15rem;line-height:1.35;padding:17px 0;border-top:1px solid #666}.exchange li:before{content:'↗';color:#ff5d69;margin-right:20px}.goals{background:var(--red);color:#fff}.goals .display{margin-bottom:90px}.goal-list{border-top:1px solid #fff}.goal-list div{border-bottom:1px solid #fff;padding:16px 0;display:flex;align-items:baseline;gap:9vw;font:500 clamp(1.9rem,4.7vw,5rem)/1 var(--font);letter-spacing:-.055em}.goal-list span{font:700 .8rem var(--font);letter-spacing:0}.goal-note{font-size:1.12rem;max-width:500px;margin:55px 0 0 auto;line-height:1.4}.journey .display{margin-bottom:110px}.journey-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink)}.journey-grid article{padding:18px 24px 65px 0;border-right:1px solid var(--ink);min-height:310px}.journey-grid article+article{padding-left:24px}.journey-grid article:last-child{border-right:0}.journey-grid article>span{font:700 .8rem var(--font)}.journey-grid h3{font:600 clamp(2rem,3vw,3.5rem)/1 var(--font);letter-spacing:-.06em;margin:70px 0 20px}.journey-grid p,.journey-end{font-size:1.05rem;line-height:1.45;max-width:310px}.journey-end{max-width:580px;margin:50px 0 0 auto}.pricing{background:#e8e5df}.pricing-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:6vw}.pricing-grid>div:first-child>p{max-width:340px;font-size:1.3rem;line-height:1.4;margin-top:45px}.price-card{background:#fff;padding:28px;align-self:start}.amount{font:600 clamp(5rem,9vw,10rem)/1 var(--font);letter-spacing:-.1em;margin:45px 0 0}.amount>span{font-size:.28em;vertical-align:top;letter-spacing:-.03em;margin-right:8px}.amount small{font-size:.18em;letter-spacing:-.02em;white-space:nowrap}.price-card>p{font-size:1.05rem;margin:7px 0 45px}.price-facts{border-top:1px solid var(--ink);margin-bottom:30px}.price-facts div{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #bbb;padding:15px 0}.price-facts strong{font-size:.95rem;text-align:right}.price-card .button{width:100%}.placeholder{display:block;color:#6d6d6d;margin-top:12px;font-size:.78rem}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:5vw}.faq-items{border-top:1px solid var(--ink)}details{border-bottom:1px solid var(--ink)}summary{list-style:none;cursor:pointer;padding:22px 36px 22px 0;font:600 1.23rem/1.25 var(--font);position:relative}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:0;top:19px;font-size:1.55rem;font-weight:400}details[open] summary:after{content:'−'}details p{max-width:560px;line-height:1.5;font-size:1rem;margin:0 28px 25px 0}.final-cta{background:var(--red);color:#fff;padding:28px 2.4% 35px}.final-cta h2{font:700 clamp(4rem,12.5vw,15rem)/.85 var(--font);letter-spacing:-.1em;margin:90px 0 60px}.final-cta>div{display:flex;justify-content:space-between;align-items:end;gap:40px;border-top:1px solid #fff;padding:28px 0 90px}.final-cta p{font-size:1.25rem;line-height:1.3;max-width:400px;margin:0}footer{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:30px 2.4%;background:#171717;color:#fff}footer a{text-decoration:none}footer .mark{color:#ff4960}.reveal{opacity:0;transform:translateY(36px);transition:opacity .7s,transform .8s cubic-bezier(.16,1,.3,1)}.reveal.visible{opacity:1;transform:none}
@media(max-width:800px){.site-header{height:65px;grid-template-columns:1fr auto;padding:0 4%}.site-header nav{display:none}.hero{min-height:650px;padding:20px 4%}.hero-meta span:last-child{display:none}.hero-center{padding:100px 0 60px}.assemble{font-size:13.4vw}.hero-bottom{display:block}.hero-bottom p{margin-bottom:35px}.section{padding:24px 4% 80px}.section-head{margin-bottom:65px}.section-head span:last-child{display:none}.problem{min-height:auto}.problem-grid,.exchange-grid,.pricing-grid,.faq-grid{grid-template-columns:1fr;gap:40px}.side-copy{margin-left:auto}.rhythm-grid{grid-template-columns:1fr}.rhythm-connector{height:75px;flex-direction:row}.connector-line{height:1px;width:20%}.day-card{min-height:390px}.day-card h3{font-size:15vw}.rhythm-note{text-align:left}.journey-grid{grid-template-columns:1fr}.journey-grid article,.journey-grid article+article{border-right:0;border-bottom:1px solid var(--ink);padding:20px 0;min-height:200px}.journey-grid h3{margin:35px 0 10px}.pricing-grid>div:first-child>p{margin:28px 0 0}.final-cta h2{margin:75px 0}.final-cta>div{display:block}.final-cta p{margin-bottom:30px}footer span{display:none}}@media(max-width:480px){.header-cta{min-width:auto;padding:10px 12px}.hero{min-height:610px}.hero-footer span{display:none}.hero-footer a{margin-left:auto}.hero-bottom p{font-size:1.35rem}.display{font-size:clamp(3.2rem,13vw,5rem)}.exchange h2{margin-bottom:40px}.goal-list div{font-size:1.55rem;gap:25px}.price-card{padding:20px}.amount{font-size:6rem}.price-facts div{display:block}.price-facts strong{display:block;text-align:left;margin-top:5px}.final-cta h2{font-size:13vw}.button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.assemble span{transform:none;opacity:1}.hero-line{transform:none}.reveal{opacity:1;transform:none}}

/* Interactive typography and the small goal-to-progress diagram */
.assemble-trigger{appearance:none;border:0;background:none;color:inherit;padding:0;margin:0;width:100%;display:flex;justify-content:space-between;align-items:center;font:inherit;letter-spacing:inherit;line-height:inherit;text-align:left;cursor:pointer;touch-action:manipulation}
.assemble-trigger:focus-visible,.final-trigger:focus-visible{outline:2px solid currentColor;outline-offset:12px}
.is-ready .assemble-trigger.is-hovered span{transform:translate(var(--mx,0px),var(--my,0px)) rotate(var(--mr,0deg));transition-duration:.28s;transition-delay:0s}
.hero-instruction{opacity:.75}
.red-emphasis{color:var(--red)}
.final-trigger{appearance:none;border:0;background:none;color:inherit;padding:0;margin:0;display:block;width:100%;font:inherit;letter-spacing:inherit;line-height:inherit;text-align:left;cursor:pointer;touch-action:manipulation}
.final-trigger>span{display:block;width:max-content;max-width:100%;transition:transform .55s cubic-bezier(.16,1,.3,1),color .35s}
.final-trigger:hover>span:first-child,.final-trigger:focus-visible>span:first-child{transform:translateX(1.5vw)}
.final-trigger:hover>span:last-child,.final-trigger:focus-visible>span:last-child{transform:translateX(3vw)}
.final-trigger:hover em,.final-trigger:focus-visible em{color:var(--ink)}
.final-cta.pulse .final-trigger>span:first-child{animation:step-in .75s both}
.final-cta.pulse .final-trigger>span:last-child{animation:step-in .75s .14s both}
.final-cta.pulse .final-trigger em{animation:ink-flash .9s .25s both}
.final-instruction{display:block;text-align:right;margin:-34px 0 36px;opacity:.8}
@keyframes step-in{0%{transform:translateX(-5vw);opacity:.35}70%{transform:translateX(1vw);opacity:1}100%{transform:translateX(0);opacity:1}}
@keyframes ink-flash{40%{color:var(--ink)}100%{color:#fff}}
@media(max-width:800px){.hero-instruction{display:none}.final-instruction{margin:-36px 0 35px}}
@media(prefers-reduced-motion:reduce){.final-cta.pulse .final-trigger>span,.final-cta.pulse .final-trigger em{animation:none}.is-ready .assemble-trigger.is-hovered span{transform:none}}

/* Mouse-responsive surfaces and focused hover states */
.hero,.goals{position:relative;isolation:isolate;--spot-x:50%;--spot-y:50%}
.hero::before,.goals::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:0;transition:opacity .4s ease;background:radial-gradient(circle 280px at var(--spot-x) var(--spot-y),rgba(255,255,255,.18),rgba(255,255,255,.045) 53%,transparent 80%)}
.hero.has-pointer::before,.goals.has-pointer::before{opacity:1}
.assemble-trigger span{text-shadow:0 5px 9px rgba(66,0,12,.18);transform-origin:50% 52%}
@keyframes letter-spin{0%{transform:translate(var(--mx,0px),var(--my,0px)) rotate(0deg) scale(1)}50%{transform:translate(var(--mx,0px),var(--my,0px)) rotate(185deg) scale(1.12)}100%{transform:translate(var(--mx,0px),var(--my,0px)) rotate(360deg) scale(1)}}
@media(hover:hover) and (pointer:fine){
  .is-ready .assemble-trigger.is-hovered span:hover{animation:letter-spin .72s cubic-bezier(.3,.1,.2,1) both}
  .day-card.reveal.visible{transition:opacity .7s,transform .32s cubic-bezier(.16,1,.3,1),box-shadow .32s}
  .day-card.reveal.visible:hover{transform:scale(1.035);position:relative;z-index:2;box-shadow:0 20px 38px rgba(23,23,23,.22)}
  .rhythm-connector span{display:inline-block;transition:transform .3s,color .3s;transform-origin:center}
  .rhythm-connector span:hover{transform:scale(1.2);color:var(--ink)}
  .journey-grid article{position:relative;transition:transform .32s cubic-bezier(.16,1,.3,1),background-color .3s,color .3s,box-shadow .3s,padding .3s}
  .journey-grid article:hover{transform:scale(1.035);z-index:2;background:var(--red);color:#fff;box-shadow:0 16px 30px rgba(23,23,23,.2);padding-left:24px}
}
@media(prefers-reduced-motion:reduce){.hero::before,.goals::before{display:none}.is-ready .assemble-trigger.is-hovered span:hover{animation:none}.day-card.reveal.visible:hover,.rhythm-connector span:hover,.journey-grid article:hover{transform:none;box-shadow:none}}


.goal-spin{display:inline-block;transform-origin:center;backface-visibility:visible}
@keyframes goal-word-spin{0%{transform:rotateY(0)}100%{transform:rotateY(360deg)}}
@media(hover:hover) and (pointer:fine){
  .day-card.reveal.visible{transition:opacity .7s,transform .32s cubic-bezier(.16,1,.3,1),box-shadow .32s,background-color .3s,color .3s}
  .day-card.reveal.visible:hover{background:var(--ink);color:#fff}
  .day-card.dark.reveal.visible:hover{background:var(--red);color:#fff}
  .goal-list div{transition:background-color .28s,color .28s,padding-left .28s}
  .goal-list div:hover{background:var(--paper);color:var(--red);padding-left:18px}
  .goal-spin:hover{animation:goal-word-spin .9s cubic-bezier(.35,0,.2,1) both}
}
@media(prefers-reduced-motion:reduce){.problem .goal-spin:hover{animation:none}.goal-list div:hover{padding-left:0}}

/* Sparse drifting stars; the text stays on a solid, high-contrast surface. */
.hero::after,.pricing::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(circle, currentColor 1px,transparent 1.6px),radial-gradient(circle,currentColor 1.1px,transparent 1.7px),radial-gradient(circle,currentColor .7px,transparent 1.3px);background-size:173px 197px,247px 239px,313px 271px;background-position:21px 31px,109px 143px,247px 67px;animation:star-drift 45s linear infinite}
.hero::after{color:#fff;opacity:.27}
.pricing{position:relative;isolation:isolate}
.pricing::before{color:var(--red);opacity:.22}
.pricing>.section-head,.pricing>.pricing-grid{position:relative;z-index:1}
@keyframes star-drift{to{background-position:194px 130px,232px 42px,107px 218px}}
.rhythm .display em,.pricing .display em{transition:color .25s ease}
@media(hover:hover) and (pointer:fine){
  .rhythm .display em:hover,.pricing .display em:hover{color:var(--red)}
  .exchange-grid>.reveal.visible{position:relative;transition:opacity .7s,transform .35s cubic-bezier(.16,1,.3,1),background-color .35s,box-shadow .35s}
  .exchange-grid>.reveal.visible:hover{transform:scale(1.035);z-index:2;background:#282828;box-shadow:0 0 0 14px #282828,0 18px 35px rgba(0,0,0,.25)}
}
@media(prefers-reduced-motion:reduce){.hero::after,.pricing::before{animation:none}.exchange-grid>.reveal.visible:hover{transform:none;box-shadow:none}}

/* Visible, slow galaxy layers in the three requested sections. */
.hero,.pricing,.final-cta{isolation:isolate;overflow:hidden}
.final-cta{position:relative}
.hero>* ,.pricing>* ,.final-cta>*{position:relative;z-index:2}
.hero::before,.pricing::before,.final-cta::before{content:"";position:absolute;inset:-16%;z-index:0;pointer-events:none;opacity:1;animation:nebula-drift 24s ease-in-out infinite alternate}
.hero::before{background:radial-gradient(circle 420px at var(--spot-x,55%) var(--spot-y,45%),rgba(255,225,229,.27),transparent 75%),radial-gradient(ellipse 45% 42% at 16% 75%,rgba(75,5,35,.38),transparent 80%),radial-gradient(ellipse 38% 52% at 83% 21%,rgba(255,150,170,.28),transparent 80%),radial-gradient(ellipse 30% 40% at 57% 100%,rgba(79,10,56,.3),transparent 80%)}
.pricing::before{background:radial-gradient(ellipse 38% 45% at 18% 35%,rgba(217,21,46,.16),transparent 80%),radial-gradient(ellipse 45% 48% at 78% 83%,rgba(100,30,60,.14),transparent 80%),radial-gradient(ellipse 30% 35% at 70% 8%,rgba(255,255,255,.5),transparent 80%)}
.final-cta::before{background:radial-gradient(ellipse 43% 52% at 16% 76%,rgba(78,4,40,.42),transparent 80%),radial-gradient(ellipse 43% 45% at 74% 17%,rgba(255,191,204,.3),transparent 80%),radial-gradient(ellipse 30% 45% at 85% 90%,rgba(92,13,55,.3),transparent 80%)}
.hero::after,.pricing::after,.final-cta::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background-image:radial-gradient(circle,currentColor 1.45px,transparent 2.2px),radial-gradient(circle,currentColor 1.05px,transparent 1.7px),radial-gradient(circle,currentColor 2px,transparent 2.8px);background-size:131px 151px,211px 193px,307px 283px;background-position:17px 29px,101px 117px,235px 58px;animation:star-drift 25s linear infinite}
.hero::after,.final-cta::after{color:#fff;opacity:.7}
.pricing::after{color:#a1283b;opacity:.42}
@keyframes nebula-drift{0%{transform:translate3d(-2%,1%,0) scale(1)}100%{transform:translate3d(2%,-2%,0) scale(1.08)}}
@media(prefers-reduced-motion:reduce){.hero::before,.hero::after,.pricing::before,.pricing::after,.final-cta::before,.final-cta::after{animation:none}}

/* Uneven star sizes and spacing add depth while each layer loops smoothly. */
.hero::after,.pricing::after,.final-cta::after{background-image:radial-gradient(circle,currentColor .65px,transparent 1.2px),radial-gradient(circle,currentColor 1.25px,transparent 2px),radial-gradient(circle,currentColor 2.15px,transparent 3px),radial-gradient(circle,currentColor 3.5px,transparent 4.5px);background-size:61px 79px,103px 139px,197px 173px,311px 269px;background-position:11px 19px,47px 83px,133px 41px,211px 143px;animation:star-drift 23s linear infinite}
@keyframes star-drift{to{background-position:72px 98px,150px 222px,330px 214px,522px 412px}}

/* Application form */
.application{display:grid;grid-template-columns:.82fr 1.18fr;gap:6vw;border-top:1px solid #fff;padding:38px 0 90px;scroll-margin-top:25px}
.application-intro{max-width:470px}.application-intro .kicker{color:#fff}.application-intro h3{font:600 clamp(2.8rem,4.8vw,5.8rem)/.98 var(--font);letter-spacing:-.07em;margin:28px 0 30px}.application-intro p{max-width:400px;font-size:1.08rem;line-height:1.45}
.application form{background:var(--paper);color:var(--ink);padding:30px;display:grid;gap:24px;align-self:start}
.application form label:not(.check){display:grid;gap:9px;font:700 .9rem var(--font)}
.application .form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.application input:not([type=checkbox]),.application textarea{width:100%;border:1px solid #797773;background:#fff;color:var(--ink);border-radius:0;padding:14px 15px;font:400 1rem/1.4 'DM Sans',Arial,sans-serif;min-height:50px;resize:vertical}
.application input:focus-visible,.application textarea:focus-visible{outline:2px solid var(--red);outline-offset:2px;border-color:var(--red)}
.application input::placeholder{color:#696969;opacity:1}.application .optional{font:700 .7rem var(--font);color:#666;margin-left:8px}
.application .check{display:flex;gap:12px;align-items:start;font-size:.96rem;line-height:1.4;cursor:pointer}.application .check input{width:20px;height:20px;flex:0 0 20px;accent-color:var(--red);margin:1px 0 0}.application .check strong{color:var(--red)}
.form-end{border-top:1px solid #999;padding-top:20px}.form-end p{font-size:.84rem;line-height:1.4;color:#4b4b4b;margin:0 0 22px}.form-end .button{border:0;width:100%;cursor:pointer}.form-end .button:hover{background:var(--red)}
.application .honey{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.thanks-page{background:var(--red);color:#fff;min-height:100svh;display:grid;place-items:center;padding:5vw}.thanks-page main{width:min(920px,100%)}.thanks-page .kicker{color:#fff}.thanks-page h1{font:700 clamp(3.7rem,10vw,9rem)/.9 var(--font);letter-spacing:-.085em;margin:55px 0 40px}.thanks-page h1 em{font:400 .92em Georgia,serif}.thanks-page p{font-size:1.25rem;max-width:500px;line-height:1.4;margin-bottom:35px}
@media(max-width:800px){.application{grid-template-columns:1fr;gap:30px;padding-bottom:70px}.application form{padding:24px}.application-intro h3{margin-bottom:15px}}
@media(max-width:520px){.application .form-row{grid-template-columns:1fr}.application form{padding:20px}}
@media(prefers-reduced-motion:reduce){.hero::after,.pricing::after,.final-cta::after{animation:none}}

/* Soft animated water waves behind the text. */
.hero::before,.hero::after,.pricing::before,.pricing::after,.final-cta::before,.final-cta::after{display:none}
.hero>.wave-field,.pricing>.wave-field,.final-cta>.wave-field{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none;opacity:.5}

/* The exchange panels and open FAQ rows give clear interaction feedback. */
.exchange-grid>.reveal{transition:opacity .7s,transform .35s cubic-bezier(.16,1,.3,1),background-color .35s,color .35s,box-shadow .35s}
@media(hover:hover) and (pointer:fine){
  .exchange-grid>.reveal.visible:first-child:hover{background:var(--red);color:#fff;box-shadow:0 0 0 14px var(--red),0 18px 35px rgba(0,0,0,.25)}
  .exchange-grid>.reveal.visible:last-child:hover{background:var(--paper);color:var(--ink);box-shadow:0 0 0 14px var(--paper),0 18px 35px rgba(0,0,0,.25)}
  .exchange-grid>.reveal.visible:last-child:hover .kicker{color:var(--red)}
}
.faq-items details{transition:background-color .25s,color .25s,padding .25s}
.faq-items details[open]{background:var(--red);color:#fff;padding-inline:16px;border-bottom-color:var(--red)}
.faq-items details[open] summary:focus-visible{outline:2px solid #fff;outline-offset:-3px}
.application form label:not(.check){display:block}
.application form label:not(.check) input,.application form label:not(.check) textarea{display:block;margin-top:9px}

/* Legal pages and footer */
footer{flex-wrap:wrap;row-gap:18px}
footer .footer-links{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
footer .footer-links a:hover{text-decoration:underline}
footer .copyright{font-size:.75rem;color:#d9d6d1}
.legal-page{background:var(--paper);color:var(--ink)}
.legal-header{padding:22px 3%;border-bottom:1px solid var(--ink);display:flex;justify-content:space-between;align-items:center;gap:20px}
.legal-header a{text-decoration:none}
.legal-main{max-width:920px;margin:0 auto;padding:70px 4% 120px}
.legal-main .legal-kicker{font:700 .8rem var(--font);color:var(--red)}
.legal-main h1{font:600 clamp(3.6rem,8vw,8rem)/.95 var(--font);letter-spacing:-.075em;margin:25px 0 35px}
.legal-main .legal-date{font-size:.9rem;color:#555;margin-bottom:65px}
.legal-main h2{font:600 clamp(1.7rem,3vw,2.7rem)/1.12 var(--font);letter-spacing:-.04em;margin:46px 0 15px}
.legal-main p,.legal-main li{font-size:1.05rem;line-height:1.65;max-width:780px}
.legal-main li{margin-bottom:8px}
.legal-main a{color:#a91027;text-underline-offset:3px}
.legal-main .legal-note{border-left:3px solid var(--red);padding-left:20px;margin:35px 0}
@media(max-width:800px){footer .footer-links{width:100%;justify-content:flex-start}footer .copyright{display:inline}.legal-main{padding-top:50px}}

/* A denser field moves exactly one pattern tile per loop, so its speed stays even. */
.hero::after,.pricing::after,.final-cta::after{background-image:radial-gradient(circle,currentColor 1.35px,transparent 2.1px),radial-gradient(circle,currentColor 1.05px,transparent 1.7px),radial-gradient(circle,currentColor 1.9px,transparent 2.8px);background-size:83px 97px,127px 113px,191px 173px;background-position:17px 29px,101px 117px,35px 58px;animation:star-drift 18s linear infinite}
.hero::after,.final-cta::after{opacity:.87}
.pricing::after{opacity:.57}
.hero::before,.pricing::before,.final-cta::before{animation:nebula-drift 32s linear infinite alternate}
@keyframes star-drift{to{background-position:100px 126px,228px 230px,226px 231px}}
@keyframes nebula-drift{from{transform:translate3d(-4%,2%,0) scale(1.02)}to{transform:translate3d(4%,-2%,0) scale(1.1)}}
@media(prefers-reduced-motion:reduce){.hero::before,.hero::after,.pricing::before,.pricing::after,.final-cta::before,.final-cta::after{animation:none}}
