:root {
  color-scheme: light;
  --color-page: #f8f7fc;
  --color-surface: #ffffff;
  --color-mist: #ece7f7;
  --color-text: #292536;
  --color-muted: #696273;
  --color-accent: #65508c;
  --color-accent-hover: #534074;
  --color-border: #dcd7e5;
  --color-control-border: #898091;
  --color-focus: #473288;
  --color-success: #356454;
  --color-error: #963e52;
  --font-body: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --line-body: 1.5;
  --line-heading: 1.15;
  --line-display: 1.08;
  --heading-gap: 8px;
  --radius-control: 10px;
  --radius-card: 18px;
  --shadow-card: 0 10px 30px rgb(52 35 79 / 4%);
  --space-1: .25rem;
  --space-2: .5rem;
  --space-3: .75rem;
  --space-4: 1rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-12: 3rem;
  --space-16: 4rem;
}
* { box-sizing: border-box; }
html { scroll-behavior: auto; }
body { margin: 0; background: var(--color-page); color: var(--color-text); font-family: var(--font-body); line-height: var(--line-body); }
button, input { font: inherit; }
button, a, input { -webkit-tap-highlight-color: transparent; }
button { cursor: pointer; }
a { color: inherit; }
:focus-visible { outline: 3px solid var(--color-focus); outline-offset: 4px; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { line-height: var(--line-heading); margin-bottom: var(--heading-gap); }
p { margin-bottom: .75em; }
button:disabled { cursor: default; }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }

body{font-size:16px}a{text-underline-offset:3px}button,input{font:inherit}.skip{position:absolute;left:16px;top:-80px;padding:12px;background:white;z-index:10}.skip:focus{top:12px}.site-header,.site-footer,main{width:min(1120px,calc(100% - 48px));margin-inline:auto}.site-header{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:100px}.brand{display:inline-flex;align-items:center;gap:10px;font-size:30px;font-weight:500;letter-spacing:-1px;text-decoration:none;min-height:44px;white-space:nowrap}.brand img{width:32px;height:32px}.brand .dot{color:var(--color-accent);margin-left:-9px}.site-header nav,.site-footer nav{display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px}.site-header nav a,.site-footer nav a,.site-footer button{display:inline-flex;align-items:center;min-height:44px;font-size:14px}.site-header nav a{text-decoration:none}.site-header nav a:hover{text-decoration:underline}.button{display:inline-flex;justify-content:center;align-items:center;min-height:46px;padding:11px 18px;border:1px solid var(--color-accent);border-radius:10px;background:var(--color-accent);color:white;font-size:15px;font-weight:600;line-height:1.3;text-decoration:none;text-align:center}.button:hover{background:var(--color-accent-hover)}.secondary{background:white;color:var(--color-accent);border-color:var(--color-border)}.secondary:hover{background:var(--color-mist)}.actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 12px}.hero{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:76px;padding:48px 0 64px}.hero-copy{max-width:580px}.hero h1{font-size:clamp(42px,5vw,64px);line-height:1.08;letter-spacing:-2.4px;margin:20px 0 16px}.hero p:not(.beta):not(.fine){max-width:500px}.lead{font-size:20px;line-height:1.4;color:var(--color-muted)}.fine{font-size:13px;line-height:1.5;color:var(--color-muted)}.beta{display:inline-flex;align-items:center;gap:8px;background:var(--color-mist);color:var(--color-accent-hover);padding:6px 12px;border-radius:8px;font-size:13px;font-weight:600;margin:0}.beta span{width:6px;height:6px;border-radius:50%;background:var(--color-accent)}.eyebrow{font-size:11px;letter-spacing:1.3px;font-weight:650;color:var(--color-muted);line-height:1.5;margin-bottom:12px}.peek{position:relative;padding:24px;background:radial-gradient(ellipse at 70% 20%,#e6e9f8,transparent 70%),var(--color-mist);border-radius:28px}.peek>.eyebrow{text-align:center}.example-card{background:white;border:1px solid var(--color-border);border-radius:18px;box-shadow:var(--shadow-card);overflow:hidden}.bag-art{position:relative;background:#f3f0f8;margin:10px 10px 0;border-radius:12px}.bag-art>svg{display:block;width:100%;height:auto}.example-top{display:flex;align-items:center;gap:5px;position:absolute;top:10px;left:10px;padding:6px 9px;border-radius:8px;background:var(--color-accent);color:white;font-size:12px;font-weight:600}.example-top img{filter:brightness(0) invert(1)}.example-body{padding:20px}.example-body h2{font-size:20px;font-weight:650;line-height:1.2}.example-body>p{font-size:14px}.example-price{display:grid;gap:6px;border:1px solid var(--color-border);border-radius:10px;background:#f8f6fc;padding:12px;margin:16px 0;font-size:12px}.example-price strong{font-size:14px;font-weight:600}.example-reservation{border:1px solid #adc5bb;color:#356454;border-radius:10px;padding:10px;text-align:center;font-weight:600}.example-body .fine{margin:0;text-align:center;font-size:12px}.smoke{position:absolute;right:-28px;bottom:-32px;opacity:.55;pointer-events:none}.intro{padding:40px 0 64px;border-top:1px solid var(--color-border)}h2{font-size:28px;letter-spacing:-.65px}h3{font-size:20px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin:32px 0 20px}.step-number{display:block;font-size:13px;font-weight:650;color:var(--color-accent);margin-bottom:12px}.steps p{color:var(--color-muted);font-size:15px}.text-link{display:inline-flex;align-items:center;min-height:44px;color:var(--color-accent);font-weight:600}.shopping-note{display:flex;align-items:flex-start;gap:24px;max-width:800px;padding:24px 0 56px}.shopping-note img{flex:none;margin-top:4px}.shopping-note p{color:var(--color-muted);margin:0}.signup{display:grid;grid-template-columns:1fr 1fr;gap:48px;background:var(--color-mist);padding:36px;border-radius:18px;margin:8px 0 64px;scroll-margin-top:24px}.signup p{max-width:430px}.signup form{align-self:center}.signup label{display:block;font-weight:600;font-size:14px;margin-bottom:8px}.email-row{display:flex;gap:8px}.email-row input{width:100%;min-width:0;min-height:46px;border:1px solid var(--color-control-border);border-radius:10px;padding:10px 12px;background:white;color:var(--color-text)}.email-row .button{flex:none}.signup .fine{margin:10px 0 0}.honeypot{display:none}.site-footer{border-top:1px solid var(--color-border);padding:24px 0 32px;display:flex;align-items:center;justify-content:space-between;gap:24px}.site-footer p{margin:0;font-size:13px;color:var(--color-muted)}.site-footer nav{gap:8px 18px}.site-footer button{padding:0;border:0;background:none;color:inherit;text-decoration:underline;cursor:pointer}.page-heading{max-width:800px;padding:48px 0 32px}.page-heading h1{font-size:clamp(36px,4.7vw,54px);line-height:1.08;letter-spacing:-1.8px;margin-bottom:16px}.page-heading .lead{max-width:650px}.prose,.guide{max-width:730px;padding-bottom:64px}.prose h2,.guide h2{font-size:24px;margin-top:32px}.prose p,.guide p{margin-bottom:16px}.guide section{padding-bottom:12px}.contact-email{display:inline-block;font-size:clamp(20px,4vw,28px);color:var(--color-accent);margin:8px 0 12px;overflow-wrap:anywhere}.policy h2{margin-top:32px}.policy li{margin:8px 0}.policy ul{padding-left:22px}.policy a{overflow-wrap:anywhere}.thanks{min-height:60vh}.thanks>img{margin-bottom:20px}.cookie-choice{width:min(1120px,calc(100% - 48px));margin:0 auto 24px;padding:20px;border:1px solid var(--color-border);background:white;border-radius:12px;display:flex;align-items:center;gap:24px}.cookie-choice[hidden]{display:none}.cookie-choice p{font-size:14px;max-width:700px;margin:0}.cookie-choice .actions{flex:none;margin:0}.cookie-choice button{font-size:13px}dialog{border:1px solid var(--color-border);border-radius:18px;color:var(--color-text);padding:28px;max-width:min(520px,calc(100% - 32px));background:white}dialog::backdrop{background:rgb(41 37 54 / 35%)}dialog h2{font-size:24px}dialog p{font-size:15px}.dialog-close{margin-top:12px;padding:10px 0;min-height:44px;background:none;border:0;text-decoration:underline;color:inherit}.empty-status:empty{display:none}
@media(max-width:900px){.hero{gap:32px}.hero h1{font-size:48px}.signup{gap:24px;padding:28px}.cookie-choice{display:block}.cookie-choice .actions{margin-top:16px}.site-footer{display:block}.site-footer nav{margin-top:12px}.steps{gap:24px}}@media(max-width:650px){.site-header,main,.site-footer,.cookie-choice{width:calc(100% - 32px)}.site-header{min-height:84px;gap:12px;flex-wrap:wrap;padding:12px 0}.site-header nav{gap:16px}.site-header nav a{font-size:13px}.hero{grid-template-columns:1fr;padding:28px 0 48px;gap:32px}.hero h1{font-size:46px;letter-spacing:-1.8px}.lead{font-size:18px}.peek{max-width:380px;width:100%;justify-self:center}.smoke{right:0}.steps{grid-template-columns:1fr;gap:24px;margin-top:24px}.steps article{max-width:420px}.intro{padding:32px 0}.shopping-note{gap:16px;padding:16px 0 40px}.shopping-note h2{font-size:24px}.signup{grid-template-columns:1fr;gap:20px;padding:24px 20px;margin-bottom:40px}.email-row{flex-wrap:wrap}.email-row input{flex:1 1 190px}.page-heading{padding:32px 0 20px}.prose,.guide{padding-bottom:40px}.prose h2,.guide h2{font-size:22px}.cookie-choice .actions{flex-wrap:wrap}}@media(forced-colors:active){.button,.beta,.example-top,.example-price,.example-reservation{border:1px solid CanvasText}.example-top img{filter:none}}

.example-price-badge{position:absolute;top:10px;right:10px;display:inline-flex;align-items:center;min-height:30px;padding:5px 9px;border:1px solid var(--color-border);border-radius:8px;background:white;color:var(--color-text);font-size:13px;font-weight:650;line-height:18px;font-variant-numeric:tabular-nums;pointer-events:none}.example-store-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;color:var(--color-accent)}.example-price small{font-size:11px;color:var(--color-muted)}.step-art{display:block;width:100%;height:auto;max-height:168px;margin:0 0 18px}.steps h3{margin-bottom:8px}.step-number{margin-bottom:8px}@media(max-width:650px){.step-art{max-width:280px;margin-inline:auto}}

/* The full guide expands the homepage's three illustrated steps. */
.guide-illustrated{max-width:960px}.guide-illustrated>section:not(.guide-step){max-width:680px}.guide-illustrated .guide-start{padding-bottom:24px}.guide-step{display:grid;grid-template-columns:240px minmax(0,1fr);align-items:start;gap:40px;border-top:1px solid var(--color-border);padding:32px 0 24px}.guide-step .guide-art{padding-top:8px}.guide-step h2{margin-top:0}.guide-step .step-number{margin-bottom:8px}.guide-step .step-art{margin:0}.guide-illustrated>section{scroll-margin-top:24px}@media(max-width:650px){.guide-step{grid-template-columns:1fr;gap:16px;padding-top:24px}.guide-step .guide-art{max-width:240px}.guide-step .step-art{margin-inline:0}}

#signin-dialog{width:min(420px,calc(100% - 32px));max-width:420px;padding:28px;text-align:center}#signin-dialog[open]{display:flex;flex-direction:column;align-items:stretch;gap:16px}#signin-dialog .signin-lamp{width:88px;height:88px;align-self:center;margin-bottom:4px}#signin-dialog h2,#signin-dialog p{margin:0}#signin-dialog h2{line-height:1.2}#signin-dialog .button{width:100%;margin-top:4px}#signin-dialog .fine{font-size:13px;line-height:1.5}#signin-dialog .dialog-close{align-self:center;margin:0;padding:8px 16px}@media(max-width:420px){#signin-dialog{padding:24px}}

/* Fewer words, bigger type (owner direction, October 20): younger readers skim and skip small text. */
.hero .lead{font-size:24px;line-height:1.35;color:var(--color-text);max-width:520px}
.hero .fine{font-size:15px}
.hero .actions .button{min-height:54px;padding:14px 24px;font-size:17px;border-radius:14px}
.intro h2{font-size:clamp(30px,4vw,40px);letter-spacing:-1px}
.steps h3{font-size:26px;letter-spacing:-.5px}
.steps p{font-size:18px;line-height:1.45;color:var(--color-text)}
.shopping-note h2{font-size:clamp(26px,3.4vw,32px)}
.shopping-note p{font-size:18px;line-height:1.45}
.signup h2{font-size:clamp(26px,3.4vw,32px)}
.signup p{font-size:18px}
.signup .fine{font-size:14px}
@media(max-width:650px){.hero .lead{font-size:21px}.hero h1{font-size:44px}.steps h3{font-size:24px}.steps p,.shopping-note p,.signup p{font-size:17px}.hero .actions{flex-direction:column;align-items:stretch}.hero .actions .button{width:100%}}
