/* Generated by tools/build-hub.mjs from hub/booking-hub.dc.html. Do not edit. */
html, body { margin: 0; padding: 0; background: #0a0807; color: #f4f1ec; -webkit-font-smoothing: antialiased; }
/* scroll-padding-bottom keeps a focused field clear of the sticky cookie bar. */
html { color-scheme: dark; scroll-padding-bottom: 160px; touch-action: manipulation; -webkit-tap-highlight-color: rgba(217,185,136,.18); -moz-osx-font-smoothing: grayscale; }
/* Hover colours ease in rather than snap; buttons give a small press. */
a, button { transition-property: color, background-color, border-color, transform; transition-duration: .2s; transition-timing-function: ease-out; }
button:active { transform: scale(.98); }
@media (prefers-reduced-motion: no-preference) { html { scroll-behavior: smooth; } }
a { color: #d9b988; }
a:hover { color: #f4f1ec; }
:focus-visible { outline: 2px solid #d9b988; outline-offset: 3px; }
@keyframes rsGlow { 0%, 100% { box-shadow: 0 0 10px rgba(217,185,136,.18); } 50% { box-shadow: 0 0 18px 2px rgba(217,185,136,.5); } }
@media (prefers-reduced-motion: no-preference) { [data-opening-offer] { animation: rsGlow 3.5s ease-in-out infinite; } }
@keyframes rsRise { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
/* Founder card: a soft gold light follows the pointer, after React Bits SpotlightCard. */
[data-spotlight] { position: relative; overflow: hidden; }
[data-spotlight] > * { position: relative; }
[data-spotlight]::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: var(--spot-o, 0); transition: opacity .4s ease; background: radial-gradient(420px circle at var(--spot-x, 50%) var(--spot-y, 30%), rgba(217,185,136,.16), rgba(217,185,136,.05) 40%, transparent 70%); }
[data-slide-clip] { overflow-x: clip; }
[data-visit] { position: relative; isolation: isolate; }
[data-visit-photo] { position: relative; height: clamp(240px, 34cqi, 420px); overflow: hidden; }
[data-visit-img] { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 26%; }
[data-visit-fade] { position: absolute; inset: 0; background: linear-gradient(0deg, #0a0807, transparent 45%); }
@media (min-width: 1100px) {
  [data-visit-img] { object-position: 50% 42%; }
  [data-visit-photo] { position: absolute; inset: 0 0 0 auto; width: 58%; height: auto; z-index: -1; }
  [data-visit-fade] { background: linear-gradient(90deg, #0a0807, rgba(10,8,7,.94) 26%, rgba(10,8,7,.45) 44%, transparent 62%), linear-gradient(0deg, #0a0807, transparent 22%), linear-gradient(180deg, #0a0807, transparent 22%); }
}
[data-consent] { appearance: none; -webkit-appearance: none; display: grid; place-content: center; background: transparent; border: 1px solid #b5895a; border-radius: 0; transition: background .2s, border-color .2s; }
[data-consent]:hover { border-color: #d9b988; }
[data-consent]:checked { background: #d9b988; border-color: #d9b988; }
[data-consent]:checked::before { content: ""; width: 6px; height: 11px; border: solid #0a0807; border-width: 0 2px 2px 0; transform: translateY(-1px) rotate(45deg); }
main h2 { text-wrap: balance; }
/* Home hero photo starts a touch zoomed; hub-runtime.js eases it back and lets it drift as you scroll. */
[data-image-slot="home-hero"] { transform: scale(1.06); transform-origin: 50% 40%; will-change: transform; }
/* Session story. Without JS or with reduced motion it is a plain row of three steps. hub-runtime.js adds
   data-story-on and drives --story-bg, --tx, --zoom and --lift while you scroll, after the Apple and Aerolis pages. */
[data-story] { margin-top: clamp(56px,7cqi,96px); }
[data-story-stage] { box-sizing: border-box; max-width: 1200px; margin: 0 auto; padding: 0 clamp(20px,4cqi,48px); }
[data-story-list] { margin-top: 16px; display: flex; flex-wrap: wrap; gap: clamp(20px,2.4cqi,28px); }
[data-story-list] > figure { margin: 0; flex: 1 1 calc((560px - 100%) * 999); min-width: 0; display: flex; flex-direction: column; gap: 14px; }
[data-story-frame] { position: relative; aspect-ratio: 3 / 2; overflow: hidden; border: 1px solid rgba(181,137,90,.3); background: #14100c; }
[data-story-frame] img { display: block; width: 100%; height: 100%; object-fit: cover; filter: brightness(.85); }
[data-story-name] { font-family: 'Cinzel', serif; font-size: 20px; letter-spacing: .08em; color: #f4f1ec; }
[data-story-line] { font-family: 'Cinzel', serif; font-size: 15px; letter-spacing: .14em; text-transform: uppercase; color: #d9b988; font-variant-numeric: tabular-nums; }
[data-story-body] { font-size: 16px; line-height: 1.65; color: #c4bfb6; max-width: 46ch; text-wrap: pretty; }
[data-story-intro] { margin: 10px 0 0; font-size: 16px; line-height: 1.65; color: #c4bfb6; max-width: 640px; text-wrap: pretty; }
[data-story-list] figcaption { display: flex; flex-direction: column; gap: 10px; }
[data-story-on] { height: 320vh; margin-top: clamp(40px,5cqi,72px); }
[data-story-on] [data-story-stage] { position: sticky; top: var(--story-top, 0px); height: calc(100svh - var(--story-top, 0px)); max-width: none; padding: clamp(32px,7vh,88px) max(clamp(20px,4cqi,48px), calc(50% - 600px + clamp(20px,4cqi,48px))) clamp(24px,5vh,56px); background: var(--story-bg, #2a1609); display: flex; flex-direction: column; overflow: hidden; }
[data-story-on] [data-story-list] { position: relative; flex: 1; margin-top: clamp(16px,3vh,32px); display: block; }
[data-story-on] [data-story-list] > figure { position: absolute; inset: 0; display: block; }
[data-story-on] [data-story-list] > figure:not(:first-child) > * { opacity: 0; }
[data-story-on] [data-story-frame] { position: absolute; top: 50%; left: 0; width: min(46%, calc((100svh - 260px) * .8)); aspect-ratio: 4 / 5; transform: translate3d(var(--tx, 0px), -50%, 0); }
[data-story-on] [data-story-frame] img { transform: scale(var(--zoom, 1.08)); filter: brightness(.9); }
[data-story-on] figcaption { position: absolute; top: 50%; right: 0; width: min(44%, 480px); display: flex; flex-direction: column; gap: 14px; transform: translate3d(0, calc(-50% + var(--lift, 0px)), 0); }
[data-story-on] figure:nth-child(2) figcaption { right: auto; left: 0; }
[data-story-on] [data-story-name] { font-size: clamp(56px,7.5cqi,112px); line-height: 1; letter-spacing: .04em; }
[data-story-on] [data-story-line] { font-size: clamp(16px,1.6cqi,20px); }
[data-story-on] [data-story-body] { font-size: clamp(16px,1.4cqi,18px); }
@media (max-width: 979px) {
  [data-story-on] { height: 260vh; margin-top: 16px; }
  /* Phones: the last step ends closer to the text that follows, so no big empty gap sits under "Repeat". */
  [data-story-on] [data-story-stage] { padding-bottom: 28px; }
  [data-after-story] { --after-story-top: 12px; }
  [data-story-on] [data-story-intro] { display: none; }
  /* The photo takes whatever height its step's words leave, so no phone or step ends in an empty gap. */
  [data-story-on] [data-story-list] > figure { display: flex; flex-direction: column; gap: 18px; }
  [data-story-on] [data-story-frame] { position: relative; top: auto; width: 100%; flex: 1 1 0; min-height: 140px; aspect-ratio: auto; transform: none; }
  [data-story-on] figcaption, [data-story-on] figure:nth-child(2) figcaption { position: static; width: auto; gap: 8px; transform: translate3d(0, var(--lift, 0px), 0); }
  [data-story-on] [data-story-name] { font-size: clamp(40px,12vw,64px); }
  [data-story-on] [data-story-body] { font-size: 15px; line-height: 1.55; }
}
/* Memberships: one sideways row of cards. The browser does the scrolling; hub-runtime.js only drives the mouse buttons. */
[data-card-row] { --row-margin: max(clamp(20px,4cqi,48px), calc(50% - 600px + clamp(20px,4cqi,48px))); display: flex; align-items: stretch; gap: 16px; margin-top: 16px; padding: 4px var(--row-margin) 16px; overflow-x: auto; scroll-snap-type: x proximity; scroll-padding-inline: var(--row-margin); overscroll-behavior-x: contain; scrollbar-width: thin; scrollbar-color: #b5895a transparent; }
[data-card-row]:focus-visible { outline-offset: -2px; }
@media (prefers-reduced-motion: no-preference) { [data-card-row] { scroll-behavior: smooth; } }
[data-card-row] > article { position: relative; box-sizing: border-box; flex: 0 0 min(88%, 380px); min-width: 0; scroll-snap-align: start; scroll-margin-top: 88px; display: flex; flex-direction: column; gap: 14px; padding: clamp(18px,2.4cqi,24px) clamp(18px,2.2cqi,24px); }
:root { --banner-h: 44px; }
[data-plan-head] { display: flex; flex-direction: column; gap: 8px; }
/* Holds the priced block's height while prices load, so nothing jumps. Once the lookup has failed it takes no space. */
[data-card-row] [role="status"][aria-busy="true"] { min-height: clamp(106px,9.5cqi,122px); }
[data-founder-card] { box-sizing: border-box; scroll-margin-top: 88px; display: flex; flex-direction: column; gap: 14px; padding: clamp(20px,2.4cqi,28px) clamp(20px,3cqi,36px); }
/* Below 768 the columns dissolve, so the small-phone and landscape order rules below still move the button. */
[data-founder-col] { display: contents; }
[data-founder-col] > * { position: relative; }
@media (min-width: 768px) {
  [data-founder-card] { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(24px,4cqi,48px); align-items: center; }
  [data-founder-col] { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
}
[data-plan-list] { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; flex: 1; }
[data-plan-list] > li { position: relative; padding-left: 26px; font-size: 15px; line-height: 1.55; color: #c4bfb6; text-wrap: pretty; }
[data-plan-list] > li::before { content: ""; position: absolute; left: 3px; top: 4px; width: 5px; height: 10px; border: solid #d9b988; border-width: 0 1.6px 1.6px 0; transform: rotate(40deg); }
[data-plan-cta] { display: flex; flex-direction: column; gap: 8px; }
/* Small phones and phones on their side: the button comes up so it stays on the first screen. Order only moves text, so the tab order still makes sense. */
@media (max-width: 370px) { [data-plan-after], [data-plan-list] { order: 1; } }
@media (max-height: 500px) { [data-plan-cta] { order: -1; } }
[data-row-nav] { display: flex; gap: 8px; flex: none; }
[data-row-nav] button { box-sizing: border-box; width: 44px; height: 44px; padding: 0; display: inline-flex; align-items: center; justify-content: center; background: transparent; border: 1px solid #b5895a; border-radius: 0; color: #d9b988; cursor: pointer; }
[data-row-nav] button:hover { border-color: #d9b988; color: #f4f1ec; }
[data-row-nav] button[hidden] { display: inline-flex; visibility: hidden; }
@media (hover: none), (pointer: coarse) { [data-row-nav] { display: none; } }
/* Reduced motion drops movement only; the short colour and opacity fades on hover and focus stay. */
@media (prefers-reduced-motion: reduce) { * { animation: none !important; scroll-behavior: auto !important; } [data-image-slot="home-hero"], button:active { transform: none; } }
rs-if, rs-t, rs-frame { display: contents; }
rs-if[data-show="0"] { display: none !important; }
rs-if[data-show="1"] { display: contents !important; }
ul[aria-label="Founding membership"] li:has(rs-t:empty) { display: none !important; }
[hidden] { display: none !important; }
.rs-skip:focus { left: 16px !important; }
.f1bx5q7x:focus-visible { border-color:#d9b988 !important; }
.ftl5rfa:focus-visible { left:16px !important; }
.h1393q10:hover { background:#f4f1ec !important; border-color:#f4f1ec !important; color:#0a0807 !important; }
.h1c4x8m8:hover { background:#c89b69 !important; color:#14100c !important; }
.h1m09y3c:hover { color:#d9b988 !important; }
.h1tbhe9l:hover { background:#c89b69 !important; border-color:#c89b69 !important; }
.h8zlodu:hover { border-color:#d9b988 !important; color:#d9b988 !important; }
.hm216qe:hover { background:#1c1610 !important; color:#d9b988 !important; }
.horidti:hover { background:#c89b69 !important; }
.hqkzp9k:hover { border-color:#d9b988 !important; background:#14100c !important; }
.hwbbhtv:hover { color:#f4f1ec !important; }
@media (max-width: 359.98px) and (max-height: 499.98px) {
  .m-bookFacts { display: contents; }
  :root { --v-cookieBtnGap: 8px; }
  :root { --v-cookieBtnH: 44px; }
  :root { --v-cookieBtnLs: .1em; }
  :root { --v-cookieCopy: Essential cookies run this site. With your OK, Google Analytics and Microsoft Clarity show us how it is used, including recordings of visits.; }
  :root { --v-cookieGap: 8px 16px; }
  :root { --v-cookieLh: 1.5; }
  :root { --v-cookiePad: 10px clamp(16px,4cqi,48px); }
  :root { --v-cookieText: 13px; }
  :root { --v-ctTop: 4px; }
  :root { --v-f0-bodyPad: 16px; }
  :root { --v-f0-footPad: 8px 16px; }
  :root { --v-f0-headPad: 10px 16px; }
  :root { --v-f1-bodyPad: 16px; }
  :root { --v-f1-footPad: 8px 16px; }
  :root { --v-f1-headPad: 10px 16px; }
  :root { --v-f2-bodyPad: 16px; }
  :root { --v-f2-footPad: 8px 16px; }
  :root { --v-f2-headPad: 10px 16px; }
  .m-founderInPhoneHeader { display: none; }
  :root { --v-fpCardGap: 10px; }
  :root { --v-fpCardPad: 14px 18px; }
  :root { --v-fpGap: 16px 24px; }
  :root { --v-fpH1Size: 24px; }
  :root { --v-fpLinePad: 8px 0; }
  :root { --v-fpPad: 12px clamp(20px,4cqi,48px) 16px; }
  :root { --v-fpTextGap: 10px; }
  .m-frameCompact { display: contents; }
  :root { --v-frameTop: 12px; }
  :root { --v-frameTopLead: 12px; }
  .m-giftFrameEarly { display: contents; }
  .m-giftFrameLate { display: none; }
  :root { --v-h1Mb: 8px; }
  :root { --v-headerPos: sticky; }
  :root { --v-heroBtnTop: 0px; }
  :root { --v-heroGap: 12px; }
  :root { --v-heroH1Max: 12ch; }
  :root { --v-heroH1Size: clamp(24px,4.4cqi,34px); }
  :root { --v-heroImgPos: 68% 60%; }
  :root { --v-heroMinH: 0px; }
  :root { --v-heroPad: 20px clamp(20px,4cqi,48px) 20px clamp(20px,4cqi,48px); }
  :root { --v-heroScrim: linear-gradient(to top, rgba(10,8,7,.98) 0%, rgba(10,8,7,.9) 50%, rgba(10,8,7,.35) 72%, rgba(10,8,7,.15) 88%, rgba(10,8,7,.4) 100%); }
  :root { --v-heroStripTop: 4px; }
  .m-introEarly { display: none; }
  .m-introLate { display: contents; }
  :root { --v-introTop: 12px; }
  .m-isDesktopHeader { display: none; }
  .m-isPhone { display: contents; }
  .m-isTabletHeader { display: none; }
  .m-memIntroEarly { display: none; }
  .m-memIntroLate { display: contents; }
  :root { --v-menuH: max(calc(100svh - 57px), 200px); }
  .m-notPhone { display: none; }
  :root { --v-phoneStackDir: column; }
  .m-showMenuIcon { display: none; }
  .m-termsCollapsible { display: contents; }
  .m-termsStatic { display: none; }
  .m-termsVisible { display: none; }
}
@media (max-width: 359.98px) and (min-height: 500px) {
  .m-bookFacts { display: contents; }
  :root { --v-cookieBtnGap: 8px; }
  :root { --v-cookieBtnH: 44px; }
  :root { --v-cookieBtnLs: .1em; }
  :root { --v-cookieCopy: Essential cookies run this site. With your OK, Google Analytics and Microsoft Clarity show us how it is used, including recordings of visits.; }
  :root { --v-cookieGap: 8px 16px; }
  :root { --v-cookieLh: 1.5; }
  :root { --v-cookiePad: 10px clamp(16px,4cqi,48px); }
  :root { --v-cookieText: 13px; }
  :root { --v-ctTop: clamp(16px,2cqi,24px); }
  :root { --v-f0-bodyPad: 16px; }
  :root { --v-f0-footPad: 8px 16px; }
  :root { --v-f0-headPad: 10px 16px; }
  :root { --v-f1-bodyPad: 16px; }
  :root { --v-f1-footPad: 8px 16px; }
  :root { --v-f1-headPad: 10px 16px; }
  :root { --v-f2-bodyPad: 16px; }
  :root { --v-f2-footPad: 8px 16px; }
  :root { --v-f2-headPad: 10px 16px; }
  .m-founderInPhoneHeader { display: none; }
  :root { --v-fpCardGap: 16px; }
  :root { --v-fpCardPad: clamp(20px,3cqi,36px); }
  :root { --v-fpGap: clamp(24px,4cqi,56px); }
  :root { --v-fpH1Size: clamp(28px,4.4cqi,56px); }
  :root { --v-fpLinePad: 14px 0; }
  :root { --v-fpPad: 140px clamp(20px,4cqi,48px) 28px; }
  :root { --v-fpTextGap: 16px; }
  .m-frameCompact { display: contents; }
  :root { --v-frameTop: 16px; }
  :root { --v-frameTopLead: clamp(24px,3cqi,40px); }
  .m-giftFrameEarly { display: contents; }
  .m-giftFrameLate { display: none; }
  :root { --v-h1Mb: 20px; }
  :root { --v-headerPos: sticky; }
  :root { --v-heroBtnTop: 12px; }
  :root { --v-heroGap: 20px; }
  :root { --v-heroH1Max: 12ch; }
  :root { --v-heroH1Size: clamp(34px,10cqi,64px); }
  :root { --v-heroImgPos: 68% 60%; }
  :root { --v-heroMinH: min(max(calc(100svh - 57px - var(--banner-h, 0px)), 480px), 820px); }
  :root { --v-heroPad: 32px clamp(20px,4cqi,48px) 16px clamp(20px,4cqi,48px); }
  :root { --v-heroScrim: linear-gradient(to top, rgba(10,8,7,.98) 0%, rgba(10,8,7,.9) 50%, rgba(10,8,7,.35) 72%, rgba(10,8,7,.15) 88%, rgba(10,8,7,.4) 100%); }
  :root { --v-heroStripTop: clamp(8px,2vh,24px); }
  .m-introEarly { display: contents; }
  .m-introLate { display: none; }
  :root { --v-introTop: clamp(40px,6cqi,88px); }
  .m-isDesktopHeader { display: none; }
  .m-isPhone { display: contents; }
  .m-isTabletHeader { display: none; }
  .m-memIntroEarly { display: none; }
  .m-memIntroLate { display: contents; }
  :root { --v-menuH: max(calc(100svh - 57px), 200px); }
  .m-notPhone { display: none; }
  :root { --v-phoneStackDir: column; }
  .m-showMenuIcon { display: none; }
  .m-termsCollapsible { display: contents; }
  .m-termsStatic { display: none; }
  .m-termsVisible { display: none; }
}
@media (min-width: 360px) and (max-width: 389.98px) and (max-height: 499.98px) {
  .m-bookFacts { display: contents; }
  :root { --v-cookieBtnGap: 8px; }
  :root { --v-cookieBtnH: 44px; }
  :root { --v-cookieBtnLs: .1em; }
  :root { --v-cookieCopy: Essential cookies run this site. With your OK, Google Analytics and Microsoft Clarity show us how it is used, including recordings of visits.; }
  :root { --v-cookieGap: 8px 16px; }
  :root { --v-cookieLh: 1.5; }
  :root { --v-cookiePad: 10px clamp(16px,4cqi,48px); }
  :root { --v-cookieText: 13px; }
  :root { --v-ctTop: 4px; }
  :root { --v-f0-bodyPad: 16px; }
  :root { --v-f0-footPad: 8px 16px; }
  :root { --v-f0-headPad: 10px 16px; }
  :root { --v-f1-bodyPad: 16px; }
  :root { --v-f1-footPad: 8px 16px; }
  :root { --v-f1-headPad: 10px 16px; }
  :root { --v-f2-bodyPad: 16px; }
  :root { --v-f2-footPad: 8px 16px; }
  :root { --v-f2-headPad: 10px 16px; }
  .m-founderInPhoneHeader { display: contents; }
  :root { --v-fpCardGap: 10px; }
  :root { --v-fpCardPad: 14px 18px; }
  :root { --v-fpGap: 16px 24px; }
  :root { --v-fpH1Size: 24px; }
  :root { --v-fpLinePad: 8px 0; }
  :root { --v-fpPad: 12px clamp(20px,4cqi,48px) 16px; }
  :root { --v-fpTextGap: 10px; }
  .m-frameCompact { display: contents; }
  :root { --v-frameTop: 12px; }
  :root { --v-frameTopLead: 12px; }
  .m-giftFrameEarly { display: contents; }
  .m-giftFrameLate { display: none; }
  :root { --v-h1Mb: 8px; }
  :root { --v-headerPos: sticky; }
  :root { --v-heroBtnTop: 0px; }
  :root { --v-heroGap: 12px; }
  :root { --v-heroH1Max: 12ch; }
  :root { --v-heroH1Size: clamp(24px,4.4cqi,34px); }
  :root { --v-heroImgPos: 68% 60%; }
  :root { --v-heroMinH: 0px; }
  :root { --v-heroPad: 20px clamp(20px,4cqi,48px) 20px clamp(20px,4cqi,48px); }
  :root { --v-heroScrim: linear-gradient(to top, rgba(10,8,7,.98) 0%, rgba(10,8,7,.9) 50%, rgba(10,8,7,.35) 72%, rgba(10,8,7,.15) 88%, rgba(10,8,7,.4) 100%); }
  :root { --v-heroStripTop: 4px; }
  .m-introEarly { display: none; }
  .m-introLate { display: contents; }
  :root { --v-introTop: 12px; }
  .m-isDesktopHeader { display: none; }
  .m-isPhone { display: contents; }
  .m-isTabletHeader { display: none; }
  .m-memIntroEarly { display: none; }
  .m-memIntroLate { display: contents; }
  :root { --v-menuH: max(calc(100svh - 57px), 200px); }
  .m-notPhone { display: none; }
  :root { --v-phoneStackDir: column; }
  .m-showMenuIcon { display: none; }
  .m-termsCollapsible { display: contents; }
  .m-termsStatic { display: none; }
  .m-termsVisible { display: none; }
}
@media (min-width: 360px) and (max-width: 389.98px) and (min-height: 500px) {
  .m-bookFacts { display: contents; }
  :root { --v-cookieBtnGap: 8px; }
  :root { --v-cookieBtnH: 44px; }
  :root { --v-cookieBtnLs: .1em; }
  :root { --v-cookieCopy: Essential cookies run this site. With your OK, Google Analytics and Microsoft Clarity show us how it is used, including recordings of visits.; }
  :root { --v-cookieGap: 8px 16px; }
  :root { --v-cookieLh: 1.5; }
  :root { --v-cookiePad: 10px clamp(16px,4cqi,48px); }
  :root { --v-cookieText: 13px; }
  :root { --v-ctTop: clamp(16px,2cqi,24px); }
  :root { --v-f0-bodyPad: 16px; }
  :root { --v-f0-footPad: 8px 16px; }
  :root { --v-f0-headPad: 10px 16px; }
  :root { --v-f1-bodyPad: 16px; }
  :root { --v-f1-footPad: 8px 16px; }
  :root { --v-f1-headPad: 10px 16px; }
  :root { --v-f2-bodyPad: 16px; }
  :root { --v-f2-footPad: 8px 16px; }
  :root { --v-f2-headPad: 10px 16px; }
  .m-founderInPhoneHeader { display: contents; }
  :root { --v-fpCardGap: 16px; }
  :root { --v-fpCardPad: clamp(20px,3cqi,36px); }
  :root { --v-fpGap: clamp(24px,4cqi,56px); }
  :root { --v-fpH1Size: clamp(28px,4.4cqi,56px); }
  :root { --v-fpLinePad: 14px 0; }
  :root { --v-fpPad: 140px clamp(20px,4cqi,48px) 28px; }
  :root { --v-fpTextGap: 16px; }
  .m-frameCompact { display: contents; }
  :root { --v-frameTop: 16px; }
  :root { --v-frameTopLead: clamp(24px,3cqi,40px); }
  .m-giftFrameEarly { display: contents; }
  .m-giftFrameLate { display: none; }
  :root { --v-h1Mb: 20px; }
  :root { --v-headerPos: sticky; }
  :root { --v-heroBtnTop: 12px; }
  :root { --v-heroGap: 20px; }
  :root { --v-heroH1Max: 12ch; }
  :root { --v-heroH1Size: clamp(34px,10cqi,64px); }
  :root { --v-heroImgPos: 68% 60%; }
  :root { --v-heroMinH: min(max(calc(100svh - 57px - var(--banner-h, 0px)), 480px), 820px); }
  :root { --v-heroPad: 32px clamp(20px,4cqi,48px) 16px clamp(20px,4cqi,48px); }
  :root { --v-heroScrim: linear-gradient(to top, rgba(10,8,7,.98) 0%, rgba(10,8,7,.9) 50%, rgba(10,8,7,.35) 72%, rgba(10,8,7,.15) 88%, rgba(10,8,7,.4) 100%); }
  :root { --v-heroStripTop: clamp(8px,2vh,24px); }
  .m-introEarly { display: contents; }
  .m-introLate { display: none; }
  :root { --v-introTop: clamp(40px,6cqi,88px); }
  .m-isDesktopHeader { display: none; }
  .m-isPhone { display: contents; }
  .m-isTabletHeader { display: none; }
  .m-memIntroEarly { display: none; }
  .m-memIntroLate { display: contents; }
  :root { --v-menuH: max(calc(100svh - 57px), 200px); }
  .m-notPhone { display: none; }
  :root { --v-phoneStackDir: column; }
  .m-showMenuIcon { display: none; }
  .m-termsCollapsible { display: contents; }
  .m-termsStatic { display: none; }
  .m-termsVisible { display: none; }
}
@media (min-width: 390px) and (max-width: 479.98px) and (max-height: 499.98px) {
  .m-bookFacts { display: contents; }
  :root { --v-cookieBtnGap: 8px; }
  :root { --v-cookieBtnH: 44px; }
  :root { --v-cookieBtnLs: .1em; }
  :root { --v-cookieCopy: Essential cookies run this site. With your OK, Google Analytics and Microsoft Clarity show us how it is used, including recordings of visits.; }
  :root { --v-cookieGap: 8px 16px; }
  :root { --v-cookieLh: 1.5; }
  :root { --v-cookiePad: 10px clamp(16px,4cqi,48px); }
  :root { --v-cookieText: 13px; }
  :root { --v-ctTop: 4px; }
  :root { --v-f0-bodyPad: 16px; }
  :root { --v-f0-footPad: 8px 16px; }
  :root { --v-f0-headPad: 10px 16px; }
  :root { --v-f1-bodyPad: 16px; }
  :root { --v-f1-footPad: 8px 16px; }
  :root { --v-f1-headPad: 10px 16px; }
  :root { --v-f2-bodyPad: 16px; }
  :root { --v-f2-footPad: 8px 16px; }
  :root { --v-f2-headPad: 10px 16px; }
  .m-founderInPhoneHeader { display: contents; }
  :root { --v-fpCardGap: 10px; }
  :root { --v-fpCardPad: 14px 18px; }
  :root { --v-fpGap: 16px 24px; }
  :root { --v-fpH1Size: 24px; }
  :root { --v-fpLinePad: 8px 0; }
  :root { --v-fpPad: 12px clamp(20px,4cqi,48px) 16px; }
  :root { --v-fpTextGap: 10px; }
  .m-frameCompact { display: contents; }
  :root { --v-frameTop: 12px; }
  :root { --v-frameTopLead: 12px; }
  .m-giftFrameEarly { display: contents; }
  .m-giftFrameLate { display: none; }
  :root { --v-h1Mb: 8px; }
  :root { --v-headerPos: sticky; }
  :root { --v-heroBtnTop: 0px; }
  :root { --v-heroGap: 12px; }
  :root { --v-heroH1Max: 12ch; }
  :root { --v-heroH1Size: clamp(24px,4.4cqi,34px); }
  :root { --v-heroImgPos: 68% 60%; }
  :root { --v-heroMinH: 0px; }
  :root { --v-heroPad: 20px clamp(20px,4cqi,48px) 20px clamp(20px,4cqi,48px); }
  :root { --v-heroScrim: linear-gradient(to top, rgba(10,8,7,.98) 0%, rgba(10,8,7,.9) 50%, rgba(10,8,7,.35) 72%, rgba(10,8,7,.15) 88%, rgba(10,8,7,.4) 100%); }
  :root { --v-heroStripTop: 4px; }
  .m-introEarly { display: none; }
  .m-introLate { display: contents; }
  :root { --v-introTop: 12px; }
  .m-isDesktopHeader { display: none; }
  .m-isPhone { display: contents; }
  .m-isTabletHeader { display: none; }
  .m-memIntroEarly { display: none; }
  .m-memIntroLate { display: contents; }
  :root { --v-menuH: max(calc(100svh - 57px), 200px); }
  .m-notPhone { display: none; }
  :root { --v-phoneStackDir: column; }
  .m-showMenuIcon { display: contents; }
  .m-termsCollapsible { display: contents; }
  .m-termsStatic { display: none; }
  .m-termsVisible { display: none; }
}
@media (min-width: 390px) and (max-width: 479.98px) and (min-height: 500px) {
  .m-bookFacts { display: contents; }
  :root { --v-cookieBtnGap: 8px; }
  :root { --v-cookieBtnH: 44px; }
  :root { --v-cookieBtnLs: .1em; }
  :root { --v-cookieCopy: Essential cookies run this site. With your OK, Google Analytics and Microsoft Clarity show us how it is used, including recordings of visits.; }
  :root { --v-cookieGap: 8px 16px; }
  :root { --v-cookieLh: 1.5; }
  :root { --v-cookiePad: 10px clamp(16px,4cqi,48px); }
  :root { --v-cookieText: 13px; }
  :root { --v-ctTop: clamp(16px,2cqi,24px); }
  :root { --v-f0-bodyPad: 16px; }
  :root { --v-f0-footPad: 8px 16px; }
  :root { --v-f0-headPad: 10px 16px; }
  :root { --v-f1-bodyPad: 16px; }
  :root { --v-f1-footPad: 8px 16px; }
  :root { --v-f1-headPad: 10px 16px; }
  :root { --v-f2-bodyPad: 16px; }
  :root { --v-f2-footPad: 8px 16px; }
  :root { --v-f2-headPad: 10px 16px; }
  .m-founderInPhoneHeader { display: contents; }
  :root { --v-fpCardGap: 16px; }
  :root { --v-fpCardPad: clamp(20px,3cqi,36px); }
  :root { --v-fpGap: clamp(24px,4cqi,56px); }
  :root { --v-fpH1Size: clamp(28px,4.4cqi,56px); }
  :root { --v-fpLinePad: 14px 0; }
  :root { --v-fpPad: 140px clamp(20px,4cqi,48px) 28px; }
  :root { --v-fpTextGap: 16px; }
  .m-frameCompact { display: contents; }
  :root { --v-frameTop: 16px; }
  :root { --v-frameTopLead: clamp(24px,3cqi,40px); }
  .m-giftFrameEarly { display: contents; }
  .m-giftFrameLate { display: none; }
  :root { --v-h1Mb: 20px; }
  :root { --v-headerPos: sticky; }
  :root { --v-heroBtnTop: 12px; }
  :root { --v-heroGap: 20px; }
  :root { --v-heroH1Max: 12ch; }
  :root { --v-heroH1Size: clamp(34px,10cqi,64px); }
  :root { --v-heroImgPos: 68% 60%; }
  :root { --v-heroMinH: min(max(calc(100svh - 57px - var(--banner-h, 0px)), 480px), 820px); }
  :root { --v-heroPad: 32px clamp(20px,4cqi,48px) 16px clamp(20px,4cqi,48px); }
  :root { --v-heroScrim: linear-gradient(to top, rgba(10,8,7,.98) 0%, rgba(10,8,7,.9) 50%, rgba(10,8,7,.35) 72%, rgba(10,8,7,.15) 88%, rgba(10,8,7,.4) 100%); }
  :root { --v-heroStripTop: clamp(8px,2vh,24px); }
  .m-introEarly { display: contents; }
  .m-introLate { display: none; }
  :root { --v-introTop: clamp(40px,6cqi,88px); }
  .m-isDesktopHeader { display: none; }
  .m-isPhone { display: contents; }
  .m-isTabletHeader { display: none; }
  .m-memIntroEarly { display: none; }
  .m-memIntroLate { display: contents; }
  :root { --v-menuH: max(calc(100svh - 57px), 200px); }
  .m-notPhone { display: none; }
  :root { --v-phoneStackDir: column; }
  .m-showMenuIcon { display: contents; }
  .m-termsCollapsible { display: contents; }
  .m-termsStatic { display: none; }
  .m-termsVisible { display: none; }
}
@media (min-width: 480px) and (max-width: 599.98px) and (max-height: 499.98px) {
  .m-bookFacts { display: contents; }
  :root { --v-cookieBtnGap: 8px; }
  :root { --v-cookieBtnH: 44px; }
  :root { --v-cookieBtnLs: .1em; }
  :root { --v-cookieCopy: Essential cookies run this site. With your OK, Google Analytics and Microsoft Clarity show us how it is used, including recordings of visits.; }
  :root { --v-cookieGap: 8px 16px; }
  :root { --v-cookieLh: 1.5; }
  :root { --v-cookiePad: 10px clamp(16px,4cqi,48px); }
  :root { --v-cookieText: 13px; }
  :root { --v-ctTop: 4px; }
  :root { --v-f0-bodyPad: 16px; }
  :root { --v-f0-footPad: 8px 16px; }
  :root { --v-f0-headPad: 10px 16px; }
  :root { --v-f1-bodyPad: 16px; }
  :root { --v-f1-footPad: 8px 16px; }
  :root { --v-f1-headPad: 10px 16px; }
  :root { --v-f2-bodyPad: 16px; }
  :root { --v-f2-footPad: 8px 16px; }
  :root { --v-f2-headPad: 10px 16px; }
  .m-founderInPhoneHeader { display: contents; }
  :root { --v-fpCardGap: 10px; }
  :root { --v-fpCardPad: 14px 18px; }
  :root { --v-fpGap: 16px 24px; }
  :root { --v-fpH1Size: 24px; }
  :root { --v-fpLinePad: 8px 0; }
  :root { --v-fpPad: 12px clamp(20px,4cqi,48px) 16px; }
  :root { --v-fpTextGap: 10px; }
  .m-frameCompact { display: contents; }
  :root { --v-frameTop: 12px; }
  :root { --v-frameTopLead: 12px; }
  .m-giftFrameEarly { display: contents; }
  .m-giftFrameLate { display: none; }
  :root { --v-h1Mb: 8px; }
  :root { --v-headerPos: sticky; }
  :root { --v-heroBtnTop: 0px; }
  :root { --v-heroGap: 12px; }
  :root { --v-heroH1Max: 12ch; }
  :root { --v-heroH1Size: clamp(24px,4.4cqi,34px); }
  :root { --v-heroImgPos: 68% 60%; }
  :root { --v-heroMinH: 0px; }
  :root { --v-heroPad: 20px clamp(20px,4cqi,48px) 20px clamp(20px,4cqi,48px); }
  :root { --v-heroScrim: linear-gradient(to top, rgba(10,8,7,.98) 0%, rgba(10,8,7,.9) 50%, rgba(10,8,7,.35) 72%, rgba(10,8,7,.15) 88%, rgba(10,8,7,.4) 100%); }
  :root { --v-heroStripTop: 4px; }
  .m-introEarly { display: none; }
  .m-introLate { display: contents; }
  :root { --v-introTop: 12px; }
  .m-isDesktopHeader { display: none; }
  .m-isPhone { display: contents; }
  .m-isTabletHeader { display: none; }
  .m-memIntroEarly { display: none; }
  .m-memIntroLate { display: contents; }
  :root { --v-menuH: max(calc(100svh - 57px), 200px); }
  .m-notPhone { display: none; }
  :root { --v-phoneStackDir: row; }
  .m-showMenuIcon { display: contents; }
  .m-termsCollapsible { display: contents; }
  .m-termsStatic { display: none; }
  .m-termsVisible { display: none; }
}
@media (min-width: 480px) and (max-width: 599.98px) and (min-height: 500px) {
  .m-bookFacts { display: contents; }
  :root { --v-cookieBtnGap: 8px; }
  :root { --v-cookieBtnH: 44px; }
  :root { --v-cookieBtnLs: .1em; }
  :root { --v-cookieCopy: Essential cookies run this site. With your OK, Google Analytics and Microsoft Clarity show us how it is used, including recordings of visits.; }
  :root { --v-cookieGap: 8px 16px; }
  :root { --v-cookieLh: 1.5; }
  :root { --v-cookiePad: 10px clamp(16px,4cqi,48px); }
  :root { --v-cookieText: 13px; }
  :root { --v-ctTop: clamp(16px,2cqi,24px); }
  :root { --v-f0-bodyPad: 16px; }
  :root { --v-f0-footPad: 8px 16px; }
  :root { --v-f0-headPad: 10px 16px; }
  :root { --v-f1-bodyPad: 16px; }
  :root { --v-f1-footPad: 8px 16px; }
  :root { --v-f1-headPad: 10px 16px; }
  :root { --v-f2-bodyPad: 16px; }
  :root { --v-f2-footPad: 8px 16px; }
  :root { --v-f2-headPad: 10px 16px; }
  .m-founderInPhoneHeader { display: contents; }
  :root { --v-fpCardGap: 16px; }
  :root { --v-fpCardPad: clamp(20px,3cqi,36px); }
  :root { --v-fpGap: clamp(24px,4cqi,56px); }
  :root { --v-fpH1Size: clamp(28px,4.4cqi,56px); }
  :root { --v-fpLinePad: 14px 0; }
  :root { --v-fpPad: 140px clamp(20px,4cqi,48px) 28px; }
  :root { --v-fpTextGap: 16px; }
  .m-frameCompact { display: contents; }
  :root { --v-frameTop: 16px; }
  :root { --v-frameTopLead: clamp(24px,3cqi,40px); }
  .m-giftFrameEarly { display: contents; }
  .m-giftFrameLate { display: none; }
  :root { --v-h1Mb: 20px; }
  :root { --v-headerPos: sticky; }
  :root { --v-heroBtnTop: 12px; }
  :root { --v-heroGap: 20px; }
  :root { --v-heroH1Max: 12ch; }
  :root { --v-heroH1Size: clamp(34px,10cqi,64px); }
  :root { --v-heroImgPos: 68% 60%; }
  :root { --v-heroMinH: min(max(calc(100svh - 57px - var(--banner-h, 0px)), 480px), 820px); }
  :root { --v-heroPad: 32px clamp(20px,4cqi,48px) 16px clamp(20px,4cqi,48px); }
  :root { --v-heroScrim: linear-gradient(to top, rgba(10,8,7,.98) 0%, rgba(10,8,7,.9) 50%, rgba(10,8,7,.35) 72%, rgba(10,8,7,.15) 88%, rgba(10,8,7,.4) 100%); }
  :root { --v-heroStripTop: clamp(8px,2vh,24px); }
  .m-introEarly { display: contents; }
  .m-introLate { display: none; }
  :root { --v-introTop: clamp(40px,6cqi,88px); }
  .m-isDesktopHeader { display: none; }
  .m-isPhone { display: contents; }
  .m-isTabletHeader { display: none; }
  .m-memIntroEarly { display: none; }
  .m-memIntroLate { display: contents; }
  :root { --v-menuH: max(calc(100svh - 57px), 200px); }
  .m-notPhone { display: none; }
  :root { --v-phoneStackDir: row; }
  .m-showMenuIcon { display: contents; }
  .m-termsCollapsible { display: contents; }
  .m-termsStatic { display: none; }
  .m-termsVisible { display: none; }
}
@media (min-width: 600px) and (max-width: 759.98px) and (max-height: 499.98px) {
  .m-bookFacts { display: contents; }
  :root { --v-cookieBtnGap: 12px; }
  :root { --v-cookieBtnH: 48px; }
  :root { --v-cookieBtnLs: .16em; }
  :root { --v-cookieCopy: We use essential cookies to run this site. With your permission we also use Google Analytics and Microsoft Clarity to see how it is used, including recordings of page visits. Anything you type into forms is hidden.; }
  :root { --v-cookieGap: 12px 24px; }
  :root { --v-cookieLh: 1.6; }
  :root { --v-cookiePad: 10px clamp(16px,4cqi,48px); }
  :root { --v-cookieText: 14px; }
  :root { --v-ctTop: 4px; }
  :root { --v-f0-bodyPad: 16px; }
  :root { --v-f0-footPad: 8px 16px; }
  :root { --v-f0-headPad: 10px 16px; }
  :root { --v-f1-bodyPad: 16px; }
  :root { --v-f1-footPad: 8px 16px; }
  :root { --v-f1-headPad: 10px 16px; }
  :root { --v-f2-bodyPad: 16px; }
  :root { --v-f2-footPad: 8px 16px; }
  :root { --v-f2-headPad: 10px 16px; }
  .m-founderInPhoneHeader { display: contents; }
  :root { --v-fpCardGap: 10px; }
  :root { --v-fpCardPad: 14px 18px; }
  :root { --v-fpGap: 16px 24px; }
  :root { --v-fpH1Size: 24px; }
  :root { --v-fpLinePad: 8px 0; }
  :root { --v-fpPad: 12px clamp(20px,4cqi,48px) 16px; }
  :root { --v-fpTextGap: 10px; }
  .m-frameCompact { display: contents; }
  :root { --v-frameTop: 12px; }
  :root { --v-frameTopLead: 12px; }
  .m-giftFrameEarly { display: contents; }
  .m-giftFrameLate { display: none; }
  :root { --v-h1Mb: 8px; }
  :root { --v-headerPos: sticky; }
  :root { --v-heroBtnTop: 0px; }
  :root { --v-heroGap: 12px; }
  :root { --v-heroH1Max: 12ch; }
  :root { --v-heroH1Size: clamp(24px,4.4cqi,34px); }
  :root { --v-heroImgPos: 68% 60%; }
  :root { --v-heroMinH: 0px; }
  :root { --v-heroPad: 20px clamp(20px,4cqi,48px) 20px clamp(20px,4cqi,48px); }
  :root { --v-heroScrim: linear-gradient(to top, rgba(10,8,7,.98) 0%, rgba(10,8,7,.9) 50%, rgba(10,8,7,.35) 72%, rgba(10,8,7,.15) 88%, rgba(10,8,7,.4) 100%); }
  :root { --v-heroStripTop: 4px; }
  .m-introEarly { display: none; }
  .m-introLate { display: contents; }
  :root { --v-introTop: 12px; }
  .m-isDesktopHeader { display: none; }
  .m-isPhone { display: contents; }
  .m-isTabletHeader { display: none; }
  .m-memIntroEarly { display: none; }
  .m-memIntroLate { display: contents; }
  :root { --v-menuH: max(calc(100svh - 57px), 200px); }
  .m-notPhone { display: none; }
  :root { --v-phoneStackDir: row; }
  .m-showMenuIcon { display: contents; }
  .m-termsCollapsible { display: contents; }
  .m-termsStatic { display: none; }
  .m-termsVisible { display: none; }
}
@media (min-width: 600px) and (max-width: 759.98px) and (min-height: 500px) {
  .m-bookFacts { display: contents; }
  :root { --v-cookieBtnGap: 12px; }
  :root { --v-cookieBtnH: 48px; }
  :root { --v-cookieBtnLs: .16em; }
  :root { --v-cookieCopy: We use essential cookies to run this site. With your permission we also use Google Analytics and Microsoft Clarity to see how it is used, including recordings of page visits. Anything you type into forms is hidden.; }
  :root { --v-cookieGap: 12px 24px; }
  :root { --v-cookieLh: 1.6; }
  :root { --v-cookiePad: 16px clamp(16px,4cqi,48px); }
  :root { --v-cookieText: 14px; }
  :root { --v-ctTop: clamp(16px,2cqi,24px); }
  :root { --v-f0-bodyPad: 16px; }
  :root { --v-f0-footPad: 8px 16px; }
  :root { --v-f0-headPad: 10px 16px; }
  :root { --v-f1-bodyPad: 16px; }
  :root { --v-f1-footPad: 8px 16px; }
  :root { --v-f1-headPad: 10px 16px; }
  :root { --v-f2-bodyPad: 16px; }
  :root { --v-f2-footPad: 8px 16px; }
  :root { --v-f2-headPad: 10px 16px; }
  .m-founderInPhoneHeader { display: contents; }
  :root { --v-fpCardGap: 16px; }
  :root { --v-fpCardPad: clamp(20px,3cqi,36px); }
  :root { --v-fpGap: clamp(24px,4cqi,56px); }
  :root { --v-fpH1Size: clamp(28px,4.4cqi,56px); }
  :root { --v-fpLinePad: 14px 0; }
  :root { --v-fpPad: 140px clamp(20px,4cqi,48px) 28px; }
  :root { --v-fpTextGap: 16px; }
  .m-frameCompact { display: contents; }
  :root { --v-frameTop: 16px; }
  :root { --v-frameTopLead: clamp(24px,3cqi,40px); }
  .m-giftFrameEarly { display: contents; }
  .m-giftFrameLate { display: none; }
  :root { --v-h1Mb: 20px; }
  :root { --v-headerPos: sticky; }
  :root { --v-heroBtnTop: 12px; }
  :root { --v-heroGap: 20px; }
  :root { --v-heroH1Max: 12ch; }
  :root { --v-heroH1Size: clamp(34px,10cqi,64px); }
  :root { --v-heroImgPos: 68% 60%; }
  :root { --v-heroMinH: min(max(calc(100svh - 57px - var(--banner-h, 0px)), 480px), 820px); }
  :root { --v-heroPad: 32px clamp(20px,4cqi,48px) 16px clamp(20px,4cqi,48px); }
  :root { --v-heroScrim: linear-gradient(to top, rgba(10,8,7,.98) 0%, rgba(10,8,7,.9) 50%, rgba(10,8,7,.35) 72%, rgba(10,8,7,.15) 88%, rgba(10,8,7,.4) 100%); }
  :root { --v-heroStripTop: clamp(8px,2vh,24px); }
  .m-introEarly { display: contents; }
  .m-introLate { display: none; }
  :root { --v-introTop: clamp(40px,6cqi,88px); }
  .m-isDesktopHeader { display: none; }
  .m-isPhone { display: contents; }
  .m-isTabletHeader { display: none; }
  .m-memIntroEarly { display: none; }
  .m-memIntroLate { display: contents; }
  :root { --v-menuH: max(calc(100svh - 57px), 200px); }
  .m-notPhone { display: none; }
  :root { --v-phoneStackDir: row; }
  .m-showMenuIcon { display: contents; }
  .m-termsCollapsible { display: contents; }
  .m-termsStatic { display: none; }
  .m-termsVisible { display: none; }
}
@media (min-width: 760px) and (max-width: 979.98px) and (max-height: 499.98px) {
  .m-bookFacts { display: none; }
  :root { --v-cookieBtnGap: 12px; }
  :root { --v-cookieBtnH: 48px; }
  :root { --v-cookieBtnLs: .16em; }
  :root { --v-cookieCopy: We use essential cookies to run this site. With your permission we also use Google Analytics and Microsoft Clarity to see how it is used, including recordings of page visits. Anything you type into forms is hidden.; }
  :root { --v-cookieGap: 12px 24px; }
  :root { --v-cookieLh: 1.6; }
  :root { --v-cookiePad: 10px clamp(16px,4cqi,48px); }
  :root { --v-cookieText: 14px; }
  :root { --v-ctTop: 4px; }
  :root { --v-f0-bodyPad: 16px; }
  :root { --v-f0-footPad: 8px 16px; }
  :root { --v-f0-headPad: 10px 16px; }
  :root { --v-f1-bodyPad: 16px; }
  :root { --v-f1-footPad: 8px 16px; }
  :root { --v-f1-headPad: 10px 16px; }
  :root { --v-f2-bodyPad: 16px; }
  :root { --v-f2-footPad: 8px 16px; }
  :root { --v-f2-headPad: 10px 16px; }
  .m-founderInPhoneHeader { display: contents; }
  :root { --v-fpCardGap: 10px; }
  :root { --v-fpCardPad: 14px 18px; }
  :root { --v-fpGap: 16px 24px; }
  :root { --v-fpH1Size: 24px; }
  :root { --v-fpLinePad: 8px 0; }
  :root { --v-fpPad: 12px clamp(20px,4cqi,48px) 16px; }
  :root { --v-fpTextGap: 10px; }
  .m-frameCompact { display: contents; }
  :root { --v-frameTop: 12px; }
  :root { --v-frameTopLead: 12px; }
  .m-giftFrameEarly { display: contents; }
  .m-giftFrameLate { display: none; }
  :root { --v-h1Mb: 8px; }
  :root { --v-headerPos: relative; }
  :root { --v-heroBtnTop: 0px; }
  :root { --v-heroGap: 12px; }
  :root { --v-heroH1Max: 12ch; }
  :root { --v-heroH1Size: clamp(24px,4.4cqi,34px); }
  :root { --v-heroImgPos: 68% 60%; }
  :root { --v-heroMinH: 0px; }
  :root { --v-heroPad: 20px clamp(20px,4cqi,48px) 20px clamp(20px,4cqi,48px); }
  :root { --v-heroScrim: linear-gradient(to top, rgba(10,8,7,.98) 0%, rgba(10,8,7,.9) 50%, rgba(10,8,7,.35) 72%, rgba(10,8,7,.15) 88%, rgba(10,8,7,.4) 100%); }
  :root { --v-heroStripTop: 4px; }
  .m-introEarly { display: none; }
  .m-introLate { display: contents; }
  :root { --v-introTop: 12px; }
  .m-isDesktopHeader { display: none; }
  .m-isPhone { display: none; }
  .m-isTabletHeader { display: contents; }
  .m-memIntroEarly { display: none; }
  .m-memIntroLate { display: contents; }
  :root { --v-menuH: max(calc(100svh - 122px), 200px); }
  .m-notPhone { display: contents; }
  :root { --v-phoneStackDir: row; }
  .m-showMenuIcon { display: contents; }
  .m-termsCollapsible { display: contents; }
  .m-termsStatic { display: none; }
  .m-termsVisible { display: none; }
}
@media (min-width: 760px) and (max-width: 979.98px) and (min-height: 500px) {
  .m-bookFacts { display: none; }
  :root { --v-cookieBtnGap: 12px; }
  :root { --v-cookieBtnH: 48px; }
  :root { --v-cookieBtnLs: .16em; }
  :root { --v-cookieCopy: We use essential cookies to run this site. With your permission we also use Google Analytics and Microsoft Clarity to see how it is used, including recordings of page visits. Anything you type into forms is hidden.; }
  :root { --v-cookieGap: 12px 24px; }
  :root { --v-cookieLh: 1.6; }
  :root { --v-cookiePad: 16px clamp(16px,4cqi,48px); }
  :root { --v-cookieText: 14px; }
  :root { --v-ctTop: clamp(16px,2cqi,24px); }
  :root { --v-f0-bodyPad: clamp(24px,4cqi,48px) 20px; }
  :root { --v-f0-footPad: 14px 20px; }
  :root { --v-f0-headPad: 16px 20px; }
  :root { --v-f1-bodyPad: clamp(24px,4cqi,48px) 20px; }
  :root { --v-f1-footPad: 14px 20px; }
  :root { --v-f1-headPad: 16px 20px; }
  :root { --v-f2-bodyPad: clamp(24px,4cqi,48px) 20px; }
  :root { --v-f2-footPad: 14px 20px; }
  :root { --v-f2-headPad: 16px 20px; }
  .m-founderInPhoneHeader { display: contents; }
  :root { --v-fpCardGap: 16px; }
  :root { --v-fpCardPad: clamp(20px,3cqi,36px); }
  :root { --v-fpGap: clamp(24px,4cqi,56px); }
  :root { --v-fpH1Size: clamp(28px,4.4cqi,56px); }
  :root { --v-fpLinePad: 14px 0; }
  :root { --v-fpPad: clamp(28px,7cqi,104px) clamp(20px,4cqi,48px) clamp(28px,5cqi,64px); }
  :root { --v-fpTextGap: 16px; }
  .m-frameCompact { display: none; }
  :root { --v-frameTop: 16px; }
  :root { --v-frameTopLead: clamp(24px,3cqi,40px); }
  .m-giftFrameEarly { display: none; }
  .m-giftFrameLate { display: contents; }
  :root { --v-h1Mb: 20px; }
  :root { --v-headerPos: relative; }
  :root { --v-heroBtnTop: 12px; }
  :root { --v-heroGap: 20px; }
  :root { --v-heroH1Max: 12ch; }
  :root { --v-heroH1Size: clamp(34px,10cqi,64px); }
  :root { --v-heroImgPos: 68% 60%; }
  :root { --v-heroMinH: min(max(calc(100svh - 122px - var(--banner-h, 0px)), 480px), 820px); }
  :root { --v-heroPad: 32px clamp(20px,4cqi,48px) 16px clamp(20px,4cqi,48px); }
  :root { --v-heroScrim: linear-gradient(to top, rgba(10,8,7,.98) 0%, rgba(10,8,7,.9) 50%, rgba(10,8,7,.35) 72%, rgba(10,8,7,.15) 88%, rgba(10,8,7,.4) 100%); }
  :root { --v-heroStripTop: clamp(8px,2vh,24px); }
  .m-introEarly { display: contents; }
  .m-introLate { display: none; }
  :root { --v-introTop: clamp(40px,6cqi,88px); }
  .m-isDesktopHeader { display: none; }
  .m-isPhone { display: none; }
  .m-isTabletHeader { display: contents; }
  .m-memIntroEarly { display: contents; }
  .m-memIntroLate { display: none; }
  :root { --v-menuH: max(calc(100svh - 122px), 200px); }
  .m-notPhone { display: contents; }
  :root { --v-phoneStackDir: row; }
  .m-showMenuIcon { display: contents; }
  .m-termsCollapsible { display: contents; }
  .m-termsStatic { display: none; }
  .m-termsVisible { display: none; }
}
@media (min-width: 980px) and (max-width: 1023.98px) and (max-height: 499.98px) {
  .m-bookFacts { display: none; }
  :root { --v-cookieBtnGap: 12px; }
  :root { --v-cookieBtnH: 48px; }
  :root { --v-cookieBtnLs: .16em; }
  :root { --v-cookieCopy: We use essential cookies to run this site. With your permission we also use Google Analytics and Microsoft Clarity to see how it is used, including recordings of page visits. Anything you type into forms is hidden.; }
  :root { --v-cookieGap: 12px 24px; }
  :root { --v-cookieLh: 1.6; }
  :root { --v-cookiePad: 10px clamp(16px,4cqi,48px); }
  :root { --v-cookieText: 14px; }
  :root { --v-ctTop: 4px; }
  :root { --v-f0-bodyPad: 16px; }
  :root { --v-f0-footPad: 8px 16px; }
  :root { --v-f0-headPad: 10px 16px; }
  :root { --v-f1-bodyPad: 16px; }
  :root { --v-f1-footPad: 8px 16px; }
  :root { --v-f1-headPad: 10px 16px; }
  :root { --v-f2-bodyPad: 16px; }
  :root { --v-f2-footPad: 8px 16px; }
  :root { --v-f2-headPad: 10px 16px; }
  .m-founderInPhoneHeader { display: contents; }
  :root { --v-fpCardGap: 10px; }
  :root { --v-fpCardPad: 14px 18px; }
  :root { --v-fpGap: 16px 24px; }
  :root { --v-fpH1Size: 24px; }
  :root { --v-fpLinePad: 8px 0; }
  :root { --v-fpPad: 12px clamp(20px,4cqi,48px) 16px; }
  :root { --v-fpTextGap: 10px; }
  .m-frameCompact { display: contents; }
  :root { --v-frameTop: 12px; }
  :root { --v-frameTopLead: 12px; }
  .m-giftFrameEarly { display: contents; }
  .m-giftFrameLate { display: none; }
  :root { --v-h1Mb: 8px; }
  :root { --v-headerPos: relative; }
  :root { --v-heroBtnTop: 0px; }
  :root { --v-heroGap: 12px; }
  :root { --v-heroH1Max: 20ch; }
  :root { --v-heroH1Size: clamp(48px,4.6cqi,76px); }
  :root { --v-heroImgPos: 50% 55%; }
  :root { --v-heroMinH: 0px; }
  :root { --v-heroPad: 20px clamp(20px,4cqi,48px) 20px max(clamp(20px,4cqi,48px), calc(50cqi - 600px + clamp(20px,4cqi,48px))); }
  :root { --v-heroScrim: linear-gradient(to right, rgba(10,8,7,.88) 0%, rgba(10,8,7,.6) 32%, rgba(10,8,7,0) 62%), linear-gradient(to top, rgba(10,8,7,.97) 0%, rgba(10,8,7,.7) 26%, rgba(10,8,7,.2) 55%, rgba(10,8,7,.1) 78%, rgba(10,8,7,.45) 100%); }
  :root { --v-heroStripTop: 4px; }
  .m-introEarly { display: none; }
  .m-introLate { display: contents; }
  :root { --v-introTop: 12px; }
  .m-isDesktopHeader { display: none; }
  .m-isPhone { display: none; }
  .m-isTabletHeader { display: contents; }
  .m-memIntroEarly { display: none; }
  .m-memIntroLate { display: contents; }
  :root { --v-menuH: max(calc(100svh - 122px), 200px); }
  .m-notPhone { display: contents; }
  :root { --v-phoneStackDir: row; }
  .m-showMenuIcon { display: contents; }
  .m-termsCollapsible { display: none; }
  .m-termsStatic { display: contents; }
  .m-termsVisible { display: contents; }
}
@media (min-width: 980px) and (max-width: 1023.98px) and (min-height: 500px) {
  .m-bookFacts { display: none; }
  :root { --v-cookieBtnGap: 12px; }
  :root { --v-cookieBtnH: 48px; }
  :root { --v-cookieBtnLs: .16em; }
  :root { --v-cookieCopy: We use essential cookies to run this site. With your permission we also use Google Analytics and Microsoft Clarity to see how it is used, including recordings of page visits. Anything you type into forms is hidden.; }
  :root { --v-cookieGap: 12px 24px; }
  :root { --v-cookieLh: 1.6; }
  :root { --v-cookiePad: 16px clamp(16px,4cqi,48px); }
  :root { --v-cookieText: 14px; }
  :root { --v-ctTop: clamp(16px,2cqi,24px); }
  :root { --v-f0-bodyPad: clamp(24px,4cqi,48px) 20px; }
  :root { --v-f0-footPad: 14px 20px; }
  :root { --v-f0-headPad: 16px 20px; }
  :root { --v-f1-bodyPad: clamp(24px,4cqi,48px) 20px; }
  :root { --v-f1-footPad: 14px 20px; }
  :root { --v-f1-headPad: 16px 20px; }
  :root { --v-f2-bodyPad: clamp(24px,4cqi,48px) 20px; }
  :root { --v-f2-footPad: 14px 20px; }
  :root { --v-f2-headPad: 16px 20px; }
  .m-founderInPhoneHeader { display: contents; }
  :root { --v-fpCardGap: 16px; }
  :root { --v-fpCardPad: clamp(20px,3cqi,36px); }
  :root { --v-fpGap: clamp(24px,4cqi,56px); }
  :root { --v-fpH1Size: clamp(28px,4.4cqi,56px); }
  :root { --v-fpLinePad: 14px 0; }
  :root { --v-fpPad: clamp(28px,7cqi,104px) clamp(20px,4cqi,48px) clamp(28px,5cqi,64px); }
  :root { --v-fpTextGap: 16px; }
  .m-frameCompact { display: none; }
  :root { --v-frameTop: 16px; }
  :root { --v-frameTopLead: clamp(24px,3cqi,40px); }
  .m-giftFrameEarly { display: none; }
  .m-giftFrameLate { display: contents; }
  :root { --v-h1Mb: 20px; }
  :root { --v-headerPos: relative; }
  :root { --v-heroBtnTop: 12px; }
  :root { --v-heroGap: 20px; }
  :root { --v-heroH1Max: 20ch; }
  :root { --v-heroH1Size: clamp(48px,4.6cqi,76px); }
  :root { --v-heroImgPos: 50% 55%; }
  :root { --v-heroMinH: min(max(calc(100svh - 122px - var(--banner-h, 0px)), 480px), 820px); }
  :root { --v-heroPad: clamp(48px,8cqi,120px) clamp(20px,4cqi,48px) clamp(40px,6cqi,88px) max(clamp(20px,4cqi,48px), calc(50cqi - 600px + clamp(20px,4cqi,48px))); }
  :root { --v-heroScrim: linear-gradient(to right, rgba(10,8,7,.88) 0%, rgba(10,8,7,.6) 32%, rgba(10,8,7,0) 62%), linear-gradient(to top, rgba(10,8,7,.97) 0%, rgba(10,8,7,.7) 26%, rgba(10,8,7,.2) 55%, rgba(10,8,7,.1) 78%, rgba(10,8,7,.45) 100%); }
  :root { --v-heroStripTop: clamp(8px,2vh,24px); }
  .m-introEarly { display: contents; }
  .m-introLate { display: none; }
  :root { --v-introTop: clamp(40px,6cqi,88px); }
  .m-isDesktopHeader { display: none; }
  .m-isPhone { display: none; }
  .m-isTabletHeader { display: contents; }
  .m-memIntroEarly { display: contents; }
  .m-memIntroLate { display: none; }
  :root { --v-menuH: max(calc(100svh - 122px), 200px); }
  .m-notPhone { display: contents; }
  :root { --v-phoneStackDir: row; }
  .m-showMenuIcon { display: contents; }
  .m-termsCollapsible { display: none; }
  .m-termsStatic { display: contents; }
  .m-termsVisible { display: contents; }
}
@media (min-width: 1024px) and (max-height: 499.98px) {
  .m-bookFacts { display: none; }
  :root { --v-cookieBtnGap: 12px; }
  :root { --v-cookieBtnH: 48px; }
  :root { --v-cookieBtnLs: .16em; }
  :root { --v-cookieCopy: We use essential cookies to run this site. With your permission we also use Google Analytics and Microsoft Clarity to see how it is used, including recordings of page visits. Anything you type into forms is hidden.; }
  :root { --v-cookieGap: 12px 24px; }
  :root { --v-cookieLh: 1.6; }
  :root { --v-cookiePad: 10px clamp(16px,4cqi,48px); }
  :root { --v-cookieText: 14px; }
  :root { --v-ctTop: 4px; }
  :root { --v-f0-bodyPad: 16px; }
  :root { --v-f0-footPad: 8px 16px; }
  :root { --v-f0-headPad: 10px 16px; }
  :root { --v-f1-bodyPad: 16px; }
  :root { --v-f1-footPad: 8px 16px; }
  :root { --v-f1-headPad: 10px 16px; }
  :root { --v-f2-bodyPad: 16px; }
  :root { --v-f2-footPad: 8px 16px; }
  :root { --v-f2-headPad: 10px 16px; }
  .m-founderInPhoneHeader { display: contents; }
  :root { --v-fpCardGap: 10px; }
  :root { --v-fpCardPad: 14px 18px; }
  :root { --v-fpGap: 16px 24px; }
  :root { --v-fpH1Size: 24px; }
  :root { --v-fpLinePad: 8px 0; }
  :root { --v-fpPad: 12px clamp(20px,4cqi,48px) 16px; }
  :root { --v-fpTextGap: 10px; }
  .m-frameCompact { display: contents; }
  :root { --v-frameTop: 12px; }
  :root { --v-frameTopLead: 12px; }
  .m-giftFrameEarly { display: contents; }
  .m-giftFrameLate { display: none; }
  :root { --v-h1Mb: 8px; }
  :root { --v-headerPos: relative; }
  :root { --v-heroBtnTop: 0px; }
  :root { --v-heroGap: 12px; }
  :root { --v-heroH1Max: 20ch; }
  :root { --v-heroH1Size: clamp(48px,4.6cqi,76px); }
  :root { --v-heroImgPos: 50% 55%; }
  :root { --v-heroMinH: 0px; }
  :root { --v-heroPad: 20px clamp(20px,4cqi,48px) 20px max(clamp(20px,4cqi,48px), calc(50cqi - 600px + clamp(20px,4cqi,48px))); }
  :root { --v-heroScrim: linear-gradient(to right, rgba(10,8,7,.88) 0%, rgba(10,8,7,.6) 32%, rgba(10,8,7,0) 62%), linear-gradient(to top, rgba(10,8,7,.97) 0%, rgba(10,8,7,.7) 26%, rgba(10,8,7,.2) 55%, rgba(10,8,7,.1) 78%, rgba(10,8,7,.45) 100%); }
  :root { --v-heroStripTop: 4px; }
  .m-introEarly { display: none; }
  .m-introLate { display: contents; }
  :root { --v-introTop: 12px; }
  .m-isDesktopHeader { display: contents; }
  .m-isPhone { display: none; }
  .m-isTabletHeader { display: none; }
  .m-memIntroEarly { display: none; }
  .m-memIntroLate { display: contents; }
  :root { --v-menuH: max(calc(100svh - 81px), 200px); }
  .m-notPhone { display: contents; }
  :root { --v-phoneStackDir: row; }
  .m-showMenuIcon { display: contents; }
  .m-termsCollapsible { display: none; }
  .m-termsStatic { display: contents; }
  .m-termsVisible { display: contents; }
}
@media (min-width: 1024px) and (min-height: 500px) {
  .m-bookFacts { display: none; }
  :root { --v-cookieBtnGap: 12px; }
  :root { --v-cookieBtnH: 48px; }
  :root { --v-cookieBtnLs: .16em; }
  :root { --v-cookieCopy: We use essential cookies to run this site. With your permission we also use Google Analytics and Microsoft Clarity to see how it is used, including recordings of page visits. Anything you type into forms is hidden.; }
  :root { --v-cookieGap: 12px 24px; }
  :root { --v-cookieLh: 1.6; }
  :root { --v-cookiePad: 16px clamp(16px,4cqi,48px); }
  :root { --v-cookieText: 14px; }
  :root { --v-ctTop: clamp(16px,2cqi,24px); }
  :root { --v-f0-bodyPad: clamp(24px,4cqi,48px) 20px; }
  :root { --v-f0-footPad: 14px 20px; }
  :root { --v-f0-headPad: 16px 20px; }
  :root { --v-f1-bodyPad: clamp(24px,4cqi,48px) 20px; }
  :root { --v-f1-footPad: 14px 20px; }
  :root { --v-f1-headPad: 16px 20px; }
  :root { --v-f2-bodyPad: clamp(24px,4cqi,48px) 20px; }
  :root { --v-f2-footPad: 14px 20px; }
  :root { --v-f2-headPad: 16px 20px; }
  .m-founderInPhoneHeader { display: contents; }
  :root { --v-fpCardGap: 16px; }
  :root { --v-fpCardPad: clamp(20px,3cqi,36px); }
  :root { --v-fpGap: clamp(24px,4cqi,56px); }
  :root { --v-fpH1Size: clamp(28px,4.4cqi,56px); }
  :root { --v-fpLinePad: 14px 0; }
  :root { --v-fpPad: clamp(28px,7cqi,104px) clamp(20px,4cqi,48px) clamp(28px,5cqi,64px); }
  :root { --v-fpTextGap: 16px; }
  .m-frameCompact { display: none; }
  :root { --v-frameTop: 16px; }
  :root { --v-frameTopLead: clamp(24px,3cqi,40px); }
  .m-giftFrameEarly { display: none; }
  .m-giftFrameLate { display: contents; }
  :root { --v-h1Mb: 20px; }
  :root { --v-headerPos: relative; }
  :root { --v-heroBtnTop: 12px; }
  :root { --v-heroGap: 20px; }
  :root { --v-heroH1Max: 20ch; }
  :root { --v-heroH1Size: clamp(48px,4.6cqi,76px); }
  :root { --v-heroImgPos: 50% 55%; }
  :root { --v-heroMinH: min(max(calc(100svh - 81px - var(--banner-h, 0px)), 480px), 820px); }
  :root { --v-heroPad: clamp(48px,8cqi,120px) clamp(20px,4cqi,48px) clamp(40px,6cqi,88px) max(clamp(20px,4cqi,48px), calc(50cqi - 600px + clamp(20px,4cqi,48px))); }
  :root { --v-heroScrim: linear-gradient(to right, rgba(10,8,7,.88) 0%, rgba(10,8,7,.6) 32%, rgba(10,8,7,0) 62%), linear-gradient(to top, rgba(10,8,7,.97) 0%, rgba(10,8,7,.7) 26%, rgba(10,8,7,.2) 55%, rgba(10,8,7,.1) 78%, rgba(10,8,7,.45) 100%); }
  :root { --v-heroStripTop: clamp(8px,2vh,24px); }
  .m-introEarly { display: contents; }
  .m-introLate { display: none; }
  :root { --v-introTop: clamp(40px,6cqi,88px); }
  .m-isDesktopHeader { display: contents; }
  .m-isPhone { display: none; }
  .m-isTabletHeader { display: none; }
  .m-memIntroEarly { display: contents; }
  .m-memIntroLate { display: none; }
  :root { --v-menuH: max(calc(100svh - 81px), 200px); }
  .m-notPhone { display: contents; }
  :root { --v-phoneStackDir: row; }
  .m-showMenuIcon { display: contents; }
  .m-termsCollapsible { display: none; }
  .m-termsStatic { display: contents; }
  .m-termsVisible { display: contents; }
}
