@font-face{font-family:Typewriter;src:url('assets/typewriter.ttf')}
:root{--paper:#f5f1e7;--ink:#343b36;--sky:#dae8df;--coral:#d5564b;--teal:#00838a;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink);background:var(--sky)}
*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}button{font:inherit}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--teal);outline-offset:5px}button{cursor:pointer}html{scroll-behavior:smooth}main{position:relative;isolation:isolate}
.site-header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;position:absolute;inset:0 0 auto;z-index:30}
.site-logo{display:block;width:120px;height:auto}.site-header a{text-decoration:none}.site-header .join-link{font-size:13px;padding:11px 18px;border:1px solid #343b3655;border-radius:40px;background:#f7f5eb65}.join-link:hover{background:var(--paper)}
.sky{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:-1;background:var(--sky)}.cloud{position:absolute;display:block;filter:drop-shadow(0 8px 0 #9cbab81b);user-select:none}.cloud-a{width:38vw;left:-17vw;top:7vh;transform:rotate(-16deg)}.cloud-b{width:36vw;right:-15vw;top:-16vh;transform:rotate(24deg)}.cloud-c{width:31vw;right:-17vw;top:53vh;transform:rotate(-14deg)}.cloud-d{width:30vw;left:-14vw;bottom:-23vh;transform:rotate(21deg)}
.usp-sections{background:transparent;margin-top:0}.usp-mail{background:transparent}.usp-section{overflow:clip}
.club-section{position:relative;min-height:650px;display:flex;align-items:center;justify-content:center;text-align:center;padding:125px 24px 95px;overflow:hidden}.club-copy{position:relative;z-index:2;max-width:730px}.club-section h2{font-family:'Iowan Old Style','Palatino Linotype',Georgia,serif;font-size:clamp(46px,5.5vw,76px);line-height:1.05;font-weight:400;letter-spacing:-.055em;margin:0 0 35px}.club-section h2 em{font-weight:400;color:var(--coral)}.club-keychain{position:absolute;width:110px;right:max(4%,calc(50% - 580px));top:110px;transform:rotate(12deg);filter:brightness(1.12) contrast(1.02) drop-shadow(2px 5px 3px #47645316)}.join-button{padding:15px 27px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);border-radius:40px;font-size:15px;transition:transform .2s}.join-button:hover{transform:translateY(-3px)}.club-copy small{display:block;margin-top:19px;font-size:12px;color:#65756b}
.site-footer{position:relative;padding:30px 5%;display:flex;align-items:center;justify-content:space-between;gap:28px;border-top:1px solid #343b3622;font-size:12px}.site-footer img{width:89px;display:block}.footer-links{display:flex;align-items:center;gap:22px}.footer-links a{text-decoration:none}.footer-links a:hover{text-decoration:underline}.footer-links .social-icon{display:inline-flex;width:19px;height:19px;color:var(--ink);transition:color .18s,transform .18s}.footer-links .social-icon:hover{color:var(--teal);transform:translateY(-1px);text-decoration:none}.social-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.social-icon .social-dot{fill:currentColor;stroke:none}.footer-divider{width:1px;height:18px;background:#343b3633;margin-inline:2px 3px}
.join-dialog{width:min(440px,calc(100vw - 40px));max-height:90svh;overflow:auto;border:1px solid #343b3633;border-radius:12px;padding:32px;background:var(--paper);color:var(--ink)}.join-dialog::backdrop{background:#263e3670}.dialog-close{display:block;margin:-10px -10px 14px auto;background:none;border:0;padding:9px;font-size:14px}.join-dialog h2{font:400 35px/1.1 'Iowan Old Style',Georgia,serif;letter-spacing:-.04em;margin:15px 0}.join-dialog p{font-size:14px;line-height:1.6;margin-bottom:25px}.join-dialog .join-button{width:100%}
.usp-mail .usp-mail-tabs{max-width:none}
.usp-copy h2 em{font-weight:400;color:var(--coral);position:relative;display:inline-block;transform:rotate(-3deg)}.usp-copy h2 em:after{content:'';position:absolute;left:-2%;right:-3%;height:10px;bottom:-8px;border-bottom:3px solid var(--coral);border-radius:50%;transform:rotate(-4deg) scaleX(0);transform-origin:left;transition:transform .65s cubic-bezier(.2,.7,.3,1);opacity:.65}.usp-copy.is-in-view h2 em:after{transform:rotate(-4deg) scaleX(1)}.usp-save .usp-copy h2{margin-bottom:35px}
@media(max-width:760px){.site-header{height:72px;padding-inline:6%}.site-logo{width:105px}.site-header .join-link{font-size:12px;padding:9px 13px}.cloud-a{width:65vw;left:-46vw;top:19vh}.cloud-b{width:64vw;right:-36vw;top:-8vh}.cloud-c{width:62vw;right:-43vw;top:67vh}.cloud-d{width:60vw;left:-42vw;bottom:-7vh}.club-section{min-height:560px;padding-block:115px 100px}.club-section h2{font-size:49px}.club-keychain{width:58px;right:22px;top:32px}.site-footer{padding:25px 6%;align-items:flex-start}.footer-links{gap:15px;flex-wrap:wrap;justify-content:flex-end}.site-footer img{width:77px}.usp-mail:before,.usp-mail:after{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}.usp-copy h2 em:after{transform:rotate(-4deg) scaleX(1)}}

.join-dialog{width:min(490px,calc(100vw - 40px));padding:32px;border-radius:12px;box-shadow:0 15px 60px #263e3622}
.join-dialog h2{font-size:39px;margin-top:4px}.join-dialog h2 em{color:var(--coral);font-weight:400}
.dialog-close{position:absolute;top:14px;right:18px;margin:0;font-size:27px;line-height:1}
.waitlist-fields{display:flex;gap:8px;margin-top:9px;padding:6px;border:1px solid #343b3666;border-radius:8px;background:#fffdf7}
#waitlist-email{width:100%;min-width:0;border:0;background:transparent;padding:10px;font:15px -apple-system,BlinkMacSystemFont,sans-serif;color:var(--ink)}
#waitlist-email:focus{outline:1px solid #00838a;outline-offset:0}
.join-dialog label{font-size:13px}.join-dialog .join-button{width:auto;white-space:nowrap;font-size:13px;padding:13px 15px;border-radius:5px}
.join-dialog .waitlist-status{font-size:12px;color:#65756b;margin:13px 0 0}
.waitlist-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.waitlist-result{text-align:center;padding:16px 8px 12px}.waitlist-result[hidden],.waitlist-entry[hidden]{display:none}.waitlist-result-mark{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 20px;border:1.5px solid var(--teal);border-radius:50%;color:var(--teal);font:400 27px/1 Georgia,serif}.waitlist-error .waitlist-result-mark{border-color:var(--coral);color:var(--coral)}.join-dialog .waitlist-result h2{margin-bottom:0}.join-dialog .waitlist-error h2{margin-bottom:24px}.join-dialog .waitlist-result .join-button{width:auto;padding-inline:24px}

.join-dialog .join-button:disabled{opacity:.45;cursor:default;transform:none}

/* Persistent navigation and existing app artwork, 10/09. */
.site-header{position:fixed;pointer-events:none;height:88px}
.site-header>a,.site-header>button{pointer-events:auto}
.site-header>a{padding:10px 12px;margin-left:-12px;border-radius:14px;transition:background .2s,box-shadow .2s}
.site-header.is-scrolled>a{background:#f7f5ebed;box-shadow:0 2px 9px #343b3610}
.site-header .join-link{background:var(--paper);color:var(--ink);font:400 18px/1.2 'Iowan Old Style',Georgia,serif;border:1.5px solid var(--ink);padding:13px 20px;border-radius:15px;box-shadow:3px 3px 0 #343b3624}
.site-header .join-link:hover{transform:translateY(-1px)}
.footer-brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.site-footer .footer-mark{width:43px;height:43px;border-radius:12px}
.ios-announcement{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:30px}
.ios-announcement p{font:400 21px/1.25 'Iowan Old Style',Georgia,serif;margin:0;color:var(--ink)}
.ios-announcement strong{font-weight:400;font-size:29px;color:var(--teal)}
.ios-friend{width:65px;height:75px;object-fit:contain}
.ios-snail{transform:rotate(-10deg)}.ios-notebook{transform:rotate(10deg)}
@media(max-width:760px){.site-header{height:72px}.site-header .join-link{font-size:15px;padding:10px 13px}.ios-announcement{gap:14px}.ios-friend{width:53px;height:65px}}

.header-brand{display:flex;align-items:center;gap:9px}.header-mark{width:40px;height:40px;object-fit:contain;border-radius:10px}
@media(max-width:760px){.header-mark{width:34px;height:34px}.header-brand{gap:7px}}

/* 10/09/2026: collapse the wordmark after leaving the hero so it cannot cover section copy. */
.header-brand,.site-logo{transition:gap .22s ease,width .22s ease,max-width .22s ease,opacity .16s ease,transform .22s ease}
.site-logo{max-width:120px;overflow:hidden;transform-origin:left center}
.site-header.is-scrolled .header-brand{gap:0}
.site-header.is-scrolled .site-logo{width:0;max-width:0;opacity:0;transform:translateX(-8px) scale(.92)}

/* 10/09/2026: Gommie symbol + existing wordmark, shared across all four pages. */
a.brand-link{display:inline-flex;align-items:center;gap:10px;flex-shrink:0;text-decoration:none}
header .brand-link img.brand-mark{width:33px;height:30px;object-fit:contain}
header .brand-link img.brand-word{width:120px;height:auto}
footer .brand-link img.brand-mark{width:26px;height:24px;object-fit:contain}
footer .brand-link img.brand-word{width:89px;height:auto}
.footer-brand{display:flex;align-items:center;gap:20px}
@media(max-width:760px){header .brand-link img.brand-word{width:105px}.footer-brand{flex-wrap:wrap;gap:12px}}

/* Hero has its own CTA; the fixed CTA takes over after scrolling. */
.site-header>a,.site-header.is-scrolled>a{background:none;box-shadow:none;border-radius:0}
.header-mark,.site-footer .footer-mark{border-radius:0;background:none}
.site-header .join-link{visibility:hidden;opacity:0;pointer-events:none;background:var(--ink);color:var(--paper);border:1px solid var(--ink);border-radius:40px;box-shadow:none;font:15px/1.2 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;padding:15px 27px}
.site-header.is-scrolled .join-link{visibility:visible;opacity:1;pointer-events:auto}
.usp-copy h2 em:after{bottom:-11px;height:5px;left:0;right:0;transform:scaleX(0);border-radius:50%}
.usp-copy.is-in-view h2 em:after{transform:scaleX(1)}
.join-dialog .waitlist-status:empty{display:none}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
