@font-face{font-family:Fraunces;src:url('./assets/fonts/fraunces-latin-wght-normal.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:Plex;src:url('./assets/fonts/ibm-plex-sans-latin-400-normal.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Plex;src:url('./assets/fonts/ibm-plex-sans-latin-600-normal.woff2') format('woff2');font-style:normal;font-weight:600;font-display:swap}
:root{--cream:#f7f3ec;--ink:#1c1814;--plum:#5b2b54;--blossom:#e6d6e2;--line:#cdbfc7}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font:400 16px/1.55 Plex,Arial,sans-serif}
a{color:inherit;text-underline-offset:5px}
a:focus-visible{outline:3px solid var(--plum);outline-offset:4px}
.skip-link{position:absolute;top:-100px;left:16px;z-index:10;background:var(--plum);color:white;padding:8px 12px}
.skip-link:focus{top:12px}
.frame{width:min(1350px,calc(100% - 88px));margin-inline:auto}
.site-header{background:#fff;border-bottom:1px solid var(--line)}
.header-frame{height:74px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.wordmark{color:var(--plum);text-decoration:none;font:600 28px/1 Fraunces,Georgia,serif;letter-spacing:-.05em;white-space:nowrap}
nav{display:flex;align-items:center;gap:clamp(20px,3vw,42px);font-size:13px}
nav a{text-decoration:none}
nav a:hover{text-decoration:underline}
nav .nav-signup{background:var(--plum);color:#fff;padding:9px 13px;font-weight:600;white-space:nowrap}
nav .nav-signup:hover{background:#45213f;text-decoration:none}
.page-meta{display:flex;justify-content:space-between;gap:16px;padding-top:12px;border-top:1px solid currentColor;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;line-height:1.3}
h1,h2,h3,p{margin-top:0}
.opening{min-height:710px;display:flex;flex-direction:column;padding-top:37px;padding-bottom:53px}
.opening h1{max-width:1260px;margin:67px 0 43px;font:600 clamp(65px,7.4vw,112px)/.98 Plex,Arial,sans-serif;letter-spacing:-.075em}
.opening-foot{display:grid;grid-template-columns:1fr 300px;gap:11%;align-items:start;margin-top:auto;border-top:1px solid var(--line);padding-top:22px}
.opening-foot>p{max-width:750px;font-size:clamp(18px,2vw,25px);line-height:1.48;margin-bottom:0}
.opening-foot>div{padding-top:4px}
.action{display:inline-block;background:var(--plum);color:white;text-decoration:none;padding:15px 19px;font-size:13px;font-weight:600;white-space:nowrap}
.action:hover{background:#45213f}
.opening-foot>div p{font-size:12px;color:#5e535c;margin:12px 0 0}
.opening-foot .trial-link{display:inline-block;color:var(--plum);font-size:13px;font-weight:600;margin-top:16px}
.problem{background:var(--plum);color:white;padding:50px 0 84px}
.problem h2{max-width:1050px;margin:87px 0 30px;font:500 clamp(49px,6.7vw,92px)/1.03 Fraunces,Georgia,serif;letter-spacing:-.055em}
.problem-question{font-size:clamp(18px,2.1vw,26px);color:#e8d9e4;margin-bottom:79px}
.friction-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #b691ad}
.friction-grid article{padding:25px 37px 0 0}
.friction-grid article+article{border-left:1px solid #b691ad;padding-left:37px}
.friction-grid h3{font:600 clamp(26px,2.8vw,41px)/1.15 Plex,Arial,sans-serif;letter-spacing:-.045em;margin-bottom:15px}
.friction-grid p{max-width:340px;color:#e4d2df;font-size:14px;line-height:1.65}
.method{min-height:680px;padding-top:51px;padding-bottom:93px}
.method-lead{display:grid;grid-template-columns:1fr .36fr;gap:8%;align-items:end;margin:91px 0 90px}
.method h2{font:600 clamp(58px,6.2vw,90px)/1.03 Plex,Arial,sans-serif;letter-spacing:-.07em;max-width:870px;margin-bottom:0}
.method-lead p{font-size:17px;line-height:1.65;margin-bottom:7px}
.research-path{display:grid;grid-template-columns:repeat(4,1fr);border-top:2px solid var(--plum);border-bottom:1px solid var(--line)}
.research-path>div{min-height:124px;padding:18px 19px 22px 0}
.research-path>div+div{border-left:1px solid var(--line);padding-left:19px}
.research-path span{display:block;color:var(--plum);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:16px}
.research-path strong{display:block;font:500 clamp(21px,2.2vw,31px)/1.14 Fraunces,Georgia,serif;letter-spacing:-.035em}
.method-note{color:#5a4d55;font-size:13px;margin:15px 0 0}
.proof{background:var(--blossom);padding:51px 0 105px}
.proof-grid{display:grid;grid-template-columns:1fr .43fr;gap:8%;align-items:end;margin-top:97px}
.proof h2{max-width:880px;font:600 clamp(63px,7.1vw,103px)/.98 Plex,Arial,sans-serif;letter-spacing:-.07em;margin:0}
.proof-grid>div{padding-bottom:4px}
.proof-grid p{font-size:17px;line-height:1.6;margin-bottom:24px}
.proof-grid small{display:block;color:#584a54;font-size:12px;line-height:1.5;margin-top:14px}
.details{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-top:87px;padding-bottom:105px}
.details>div{border-top:1px solid var(--line);padding-top:23px}
.details h2{font:500 clamp(32px,3.4vw,48px)/1.12 Fraunces,Georgia,serif;letter-spacing:-.04em;max-width:440px;margin-bottom:20px}
.details p{max-width:450px;color:#574e54;font-size:14px;line-height:1.7}
.details a{color:var(--plum);font-size:14px;font-weight:600}
.details .access-note{font-size:12px;margin:12px 0 0}
.site-footer{border-top:1px solid var(--line);font-size:12px;color:#665a63}
.site-footer .frame{display:flex;justify-content:space-between;gap:20px;padding-top:27px;padding-bottom:34px}
.site-footer span:first-child{font:600 19px Fraunces,Georgia,serif;color:var(--plum)}
@media(max-width:950px){.frame{width:calc(100% - 48px)}.opening{min-height:0}.opening h1{font-size:clamp(60px,8vw,86px)}.opening-foot{grid-template-columns:1fr 240px;gap:5%}.method-lead,.proof-grid{gap:5%}}
@media(max-width:690px){.frame{width:calc(100% - 36px)}.header-frame{height:auto;display:block;padding-top:18px;padding-bottom:13px}.wordmark{display:block;margin-bottom:14px}nav{gap:12px 18px;flex-wrap:wrap}nav a:nth-child(-n+2){display:none}nav .nav-signup{margin-left:auto}.opening{padding-top:24px;padding-bottom:71px}.opening h1{font-size:clamp(49px,10.5vw,72px);letter-spacing:-.065em;margin:46px 0 46px}.opening-foot{display:block}.opening-foot>p{font-size:18px}.opening-foot>div{margin-top:25px}.problem{padding:38px 0 76px}.problem h2{font-size:clamp(45px,9vw,66px);margin-top:68px}.problem-question{margin-bottom:48px}.friction-grid{display:block}.friction-grid article,.friction-grid article+article{border-left:0;border-bottom:1px solid #b691ad;padding:23px 0 13px}.friction-grid h3{font-size:31px}.method{min-height:0;padding-top:39px;padding-bottom:75px}.method-lead{display:block;margin:65px 0 45px}.method h2{font-size:clamp(49px,9.3vw,72px)}.method-lead p{margin-top:30px;max-width:520px}.research-path{grid-template-columns:1fr 1fr}.research-path>div{min-height:125px;padding:16px 15px 18px 0}.research-path>div:nth-child(3){border-left:0;border-top:1px solid var(--line)}.research-path>div:nth-child(4){border-top:1px solid var(--line)}.research-path strong{font-size:24px}.proof{padding:38px 0 74px}.proof-grid{display:block;margin-top:68px}.proof h2{font-size:clamp(51px,10.2vw,72px)}.proof-grid>div{margin-top:35px;max-width:520px}.details{display:block;padding-top:70px;padding-bottom:73px}.details>div+div{margin-top:56px}.site-footer .frame{display:block}.site-footer span{display:block}.site-footer span+span{margin-top:9px}}
@media(max-width:410px){.page-meta{font-size:10px}.opening h1{font-size:46px}.research-path strong{font-size:21px}.action{width:100%;text-align:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.partner-proof{padding-bottom:96px}
.partner-logos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4%;align-items:center;padding-top:39px}
.partner-logos a{display:flex;align-items:center;min-height:112px;width:fit-content;max-width:100%}
.partner-logos img{display:block;max-width:100%;height:auto;object-fit:contain}
.partner-nscua img{width:340px;filter:brightness(.57)}
.partner-cuwla img{width:222px}
@media(max-width:690px){.partner-proof{padding-bottom:69px}.partner-logos{display:flex;flex-direction:column;align-items:flex-start;gap:18px;padding-top:26px}.partner-logos a{min-height:0}.partner-nscua img{width:min(100%,310px)}.partner-cuwla img{width:210px}}

@font-face{font-family:RunlineWordmark;src:url('./assets/fonts/runline-roboto-serif-latin-500.woff2') format('woff2');font-style:normal;font-weight:500;font-display:swap}
.partner-runline{gap:12px;text-decoration:none;color:#1a0d1e}
.partner-runline .runline-mark{display:block;width:29px;height:29px;flex:none;fill:#ff3d4c}
.partner-runline .runline-wordmark{font:500 31px/1 RunlineWordmark,Georgia,serif;letter-spacing:-.02em}
.partner-runline:hover .runline-wordmark{text-decoration:underline;text-underline-offset:5px}

.partner-frankenmuth img{width:260px}
.partner-controls{display:none}
@media(max-width:950px){.partner-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 6%}}
@media(max-width:690px){
  .partner-logos{display:flex;flex-direction:column;align-items:flex-start;gap:18px;padding-top:24px}
  .partner-frankenmuth img{width:min(100%,260px)}
  .partner-carousel.is-ready .partner-logos{height:128px;justify-content:center;gap:0;padding-top:12px}
  .partner-carousel.is-ready .partner-logos a{min-height:110px;max-width:100%}
  .partner-carousel.is-ready .partner-logos a[hidden]{display:none!important}
  .partner-carousel.is-ready .partner-controls{display:flex;align-items:center;gap:10px;margin-top:10px}
  .partner-controls button{border:1px solid var(--line);background:transparent;color:var(--plum);min-width:38px;min-height:38px;font:600 14px Plex,Arial,sans-serif;cursor:pointer}
  .partner-controls button:hover,.partner-controls button:focus-visible{border-color:var(--plum);outline:2px solid var(--plum);outline-offset:2px}
  .partner-controls .partner-pause{padding:0 12px;font-size:12px}
  .partner-controls button[hidden]{display:none!important}
  .partner-count{font-size:11px;font-weight:600;letter-spacing:.08em;color:var(--plum);margin-right:auto}
  .partner-logos.partner-enter a:not([hidden]){animation:partner-enter .35s ease both}
}
@keyframes partner-enter{from{opacity:.3;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.partner-logos.partner-enter a:not([hidden]){animation:none}}
