@font-face{font-family:"Display";src:url(/assets/josefin-sans-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;background:var(--bg);color:var(--ink);font:400 1.0625rem/1.6 var(--body)}
a{color:var(--accent);text-underline-offset:.2em}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.wrap{flex:1;width:100%;max-width:36rem;margin:0 auto;padding:var(--top,3.5rem) 1.5rem 3rem;text-align:center;display:flex;flex-direction:column;align-items:center}
.mark{margin:0 0 2rem;width:100%}
.logo{display:block;max-width:min(80vw,22rem);height:auto;margin:0 auto}
.wordmark{margin:0;font-family:var(--display);color:var(--mark-ink)}
.wordmark span{display:block}
.line{text-wrap:pretty;margin:0 0 .75rem;font-size:clamp(1.05rem,3.8vw,1.2rem);max-width:31rem}
.ai{margin:0 0 2.25rem;color:var(--muted);font-size:.95rem}
.signup{width:100%;max-width:26rem;margin:0 0 2.5rem;text-align:left}
.signup label{display:block;font-size:.95rem;margin-bottom:.55rem}
.signup .row{display:flex;flex-direction:column;gap:.55rem}
@media (min-width:480px){.signup .row{flex-direction:row}}
.signup input{flex:1;min-width:0;font:inherit;padding:.75rem .85rem;border:1px solid var(--field);border-radius:var(--radius);background:var(--input-bg);color:var(--ink)}
.signup button{font:600 1rem/1 var(--body);padding:.85rem 1.15rem;border:0;border-radius:var(--radius);background:var(--accent);color:var(--accent-ink);cursor:pointer;white-space:nowrap}
.signup button:hover{filter:brightness(1.12)}
.signup .note{margin:.55rem 0 0;font-size:.82rem;color:var(--muted)}
.signup .msg{margin:.7rem 0 0;font-size:.95rem;font-weight:600}
.signup .msg:empty{display:none}
.signup .msg.err{color:var(--err)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.social{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem 1.25rem;font-size:.88rem;color:var(--muted)}
.social-h{margin:0 0 .45rem;font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.foot{padding:1.4rem 1.5rem 1.8rem;text-align:center;font-size:.85rem;color:var(--muted);border-top:1px solid var(--rule)}
.foot p{margin:.2rem 0}
.foot a{color:inherit}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
:root{--bg:#f3eee3;--ink:#1c2620;--muted:#4f5a52;--accent:#1f3a2e;--accent-ink:#f3eee3;--mark-ink:#d9b86c;--rule:rgba(28,38,32,.14);
--field:rgba(28,38,32,.35);--input-bg:#fffdf8;--err:#9b2c1f;--radius:3px;--top:0;
--display:"Display","Avenir Next","Futura",system-ui,sans-serif;--body:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
/* awning: green and cream stripes with a scalloped edge */
.awning{width:100%;height:64px;background:repeating-linear-gradient(90deg,#1f3a2e 0 36px,#efe8d8 36px 72px);position:relative}
.awning::after{content:"";position:absolute;left:0;right:0;bottom:-17px;height:18px;
background:radial-gradient(circle at 18px 0,#1f3a2e 17px,transparent 18px) 0 0/72px 18px repeat-x,radial-gradient(circle at 54px 0,#efe8d8 17px,transparent 18px) 0 0/72px 18px repeat-x}
.wrap{padding-top:clamp(3.25rem,10vh,5.5rem)}
/* fascia board */
.fascia{background:#1f3a2e;padding:6px;border-radius:2px;box-shadow:0 1px 0 rgba(0,0,0,.08),0 10px 24px -14px rgba(0,0,0,.45);max-width:30rem;margin:0 auto}
.fascia-in{border:2px solid #b8975a;outline:1px solid rgba(217,184,108,.35);outline-offset:-7px;padding:1.6rem 1rem 1.35rem}
.wordmark{text-transform:uppercase;font-weight:600;line-height:1}
.wm-the{font-size:clamp(.8rem,3.2vw,.95rem);letter-spacing:.5em;margin:0 0 .55rem .5em}
.wm-main{font-size:clamp(2.1rem,9.6vw,3.4rem);letter-spacing:.09em;margin-left:.09em}
.wm-sub{font-size:clamp(.7rem,2.8vw,.82rem);letter-spacing:.55em;margin:.75rem 0 0 .55em;color:#efe8d8;opacity:.85}
.wm-sub::before,.wm-sub::after{content:"";display:inline-block;width:1.6em;height:1px;background:currentColor;vertical-align:middle;margin:0 .8em .2em;opacity:.7}
