:root{--page:#fff;--ink:#272330;--muted:#5e5668;--purple:#673de6;--link:#673de6;--soft:#faf8fd;--line:#e4deeb;--lavender:#eee7fc;--focus:#3c8dff}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:104px}body{margin:0;background:var(--page);color:var(--ink);font:400 16px/1.5 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,summary,input{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}button{border:0}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,[role=tabpanel]:focus-visible{outline:3px solid var(--focus);outline-offset:4px}[hidden]{display:none!important}h1,h2,h3,p,figure{margin:0}h1,h2,h3,.logo{font-family:'Bricolage Grotesque',sans-serif}h1,h2,h3{font-weight:750;line-height:1.05;letter-spacing:-1.5px}h2{font-size:clamp(36px,4vw,52px)}h3{font-size:clamp(30px,3vw,40px)}img{max-width:100%;object-fit:contain}svg{display:block;width:24px;height:24px;flex:none}.wrap{width:100%;max-width:1344px;margin-inline:auto;padding-inline:32px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:1px;line-height:1.5}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;padding:12px 24px;border:1px solid transparent;border-radius:999px;background:var(--purple);color:#fff;font-weight:700;font-size:14px;text-align:center}.button svg{width:20px;height:20px}.button.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.button:hover,.web-account:hover{filter:brightness(.93)}.text-link{display:inline-flex;align-items:center;gap:12px;min-height:44px;font-size:14px;font-weight:700;color:var(--link)}.text-link svg{width:20px;height:20px}.text-link:hover{text-decoration:underline}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip{position:fixed;top:-100px;left:20px;z-index:100;padding:12px 20px;background:var(--page);border-radius:12px}.skip:focus{top:12px}
/* The same logo slot, bar height, and pill account control as the app. */
.header{height:80px;position:sticky;top:0;z-index:30;background:var(--page);border-bottom:1px solid var(--line)}.header-inner{height:100%;max-width:1344px;margin:auto;padding-inline:32px;display:flex;align-items:center;gap:32px}.logo{display:flex;align-items:center;gap:8px;font-size:30px;font-weight:800;line-height:1;letter-spacing:-1.5px;min-height:44px;flex:none}.header .logo{width:166px}.brand-mark{width:26px;height:40px;flex:none;background:var(--purple);mask:url('/assets/g-pin.svg') center/contain no-repeat;-webkit-mask:url('/assets/g-pin.svg') center/contain no-repeat}.desktop-nav{margin-left:auto;display:flex;align-items:center;gap:28px;font-size:14px}.desktop-nav a{display:flex;align-items:center;min-height:44px}.desktop-nav a:hover{color:var(--link)}.header-tools{display:flex;align-items:center;gap:24px;flex:none}.web-account{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border-radius:999px;background:var(--purple);color:#fff;font-size:14px;font-weight:700;white-space:nowrap}.mobile-menu{position:relative}.mobile-menu summary{display:flex;align-items:center;gap:8px;min-height:44px;font-size:14px;font-weight:600;list-style:none;white-space:nowrap}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary svg{width:16px;height:16px}.mobile-menu[open] summary svg{transform:rotate(180deg)}.partner-menu{position:absolute;right:0;top:56px;width:300px;max-width:calc(100vw - 40px);max-height:calc(100dvh - 100px);overflow:auto;overscroll-behavior:contain;background:var(--page);border:1px solid var(--line);border-radius:24px;box-shadow:0 8px 24px #27233014;padding:8px}.partner-menu a{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-height:48px;padding:14px 16px;border-radius:16px}.partner-menu a:hover{background:var(--soft)}.partner-menu strong{font-size:15px}.partner-menu a>span{color:var(--muted);font-size:13px;margin-top:4px}.mobile-nav-links{display:none}
/* An open, illustration-led arrival. Every scene keeps its original frame. */
.hero{display:grid;grid-template-columns:1fr 1.12fr;align-items:center;gap:56px;padding-block:64px}.hero-copy{min-width:0}.hero .eyebrow{color:var(--muted);margin-bottom:24px}.hero h1{font-size:clamp(60px,6.4vw,88px);font-weight:800;letter-spacing:-3px;line-height:1.02}.hero h1 span{color:var(--link)}.hero-description{font-size:21px;line-height:1.4;font-weight:600;margin-top:24px}.hero-detail{max-width:415px;color:var(--muted);margin-top:12px}.find-form{position:relative;max-width:520px;margin-top:28px}.search-box{height:60px;display:flex;align-items:center;gap:12px;padding:6px 6px 6px 20px;border:1px solid var(--line);border-radius:999px;background:var(--page);color:var(--ink)}.search-box>span{color:var(--muted)}.search-box input{min-width:0;flex:1;width:100%;border:0;outline:0;background:transparent;color:var(--ink);font-size:16px;padding:8px 0}.search-box input::placeholder{color:var(--muted);opacity:1}.search-box:focus-within{outline:3px solid var(--focus);outline-offset:3px}.search-submit{display:flex;align-items:center;justify-content:center;gap:12px;min-width:48px;height:48px;padding:0 20px;border-radius:999px;background:var(--purple);color:white;font-size:14px;font-weight:700;flex:none}.search-submit svg{width:20px;height:20px}.clear-search{display:grid;place-items:center;width:28px;height:44px;flex:none;background:none;color:var(--muted);padding:0}.clear-search svg{width:18px;height:18px}.search-submit.is-loading svg{display:none}.search-submit.is-loading:after{content:'';width:18px;height:18px;border:2px solid #ffffff66;border-top-color:#fff;border-radius:50%;animation:loading .7s linear infinite}.suggestions{position:absolute;top:68px;left:0;right:0;z-index:12;padding:8px;background:var(--page);border:1px solid var(--line);border-radius:24px;box-shadow:0 12px 28px #27233024}.suggestions button{display:block;width:100%;min-height:48px;padding:12px 16px;text-align:left;background:transparent;color:var(--ink);border-radius:16px}.suggestions button:hover,.suggestions button[aria-selected=true]{background:var(--soft);color:var(--link)}#search-status{font-size:14px;margin-top:12px;color:var(--muted)}#search-status:empty{display:none}.hero-links{display:flex;align-items:center;gap:8px 24px;flex-wrap:wrap;margin-top:12px;font-size:13px}.hero-links a{display:flex;align-items:center;gap:6px;min-height:44px}.hero-links a:first-child{font-weight:700;color:var(--link)}.hero-links a:last-child{color:var(--muted);text-decoration:underline;text-underline-offset:4px}.hero-links svg{width:16px;height:16px}.hero-scene{min-width:0}.hero-scene>img{display:block;width:100%;height:auto;aspect-ratio:3/2;border-radius:24px}.hero-scene figcaption{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:20px}.hero-scene figcaption strong{display:block;font-family:'Bricolage Grotesque',sans-serif;font-size:23px;line-height:1.15;letter-spacing:-.5px}.hero-scene figcaption div>span{display:block;margin-top:6px;color:var(--muted);font-size:14px}.round-link{width:48px;height:48px;flex:none;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;color:var(--link)}.round-link:hover{background:var(--soft)}
/* One food discovery rail, with original transparent category art. */
.food-band{background:var(--soft)}.food-inner{padding-block:32px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-bottom:32px}.food-inner .section-heading{margin-bottom:16px}.food-inner h2{font-size:30px;letter-spacing:-.7px}.cuisine-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}.cuisine-grid a{display:flex;flex-direction:column;align-items:center;gap:8px;padding:8px;border-radius:24px;min-width:0;font-size:15px;font-weight:600}.cuisine-grid img{display:block;width:88px;height:88px}/* Match the app: the shared alpha contour follows the food silhouette. */
.cuisine-grid .cuisine-art{display:block}
.cuisine-grid img{transition:transform .16s ease}
.cuisine-grid a:hover,.cuisine-grid a:focus-visible{outline:none;color:var(--link)}
.cuisine-grid a:is(:hover,:focus-visible) .cuisine-art{filter:url("#gs-category-sticker")}
.cuisine-grid a:is(:hover,:focus-visible) img{transform:rotate(-6deg)}
.cuisine-grid a:focus-visible>span:last-child{text-decoration:underline;text-underline-offset:4px}
@media(prefers-reduced-motion:reduce){.cuisine-grid img{transition:none}}
.availability{color:var(--muted);font-size:13px;text-align:center;margin-top:20px}
/* Events and catering share one place in the page, rather than repeated cards. */
.gathering{padding-block:80px}.gathering .section-heading{align-items:flex-end;margin-bottom:40px}.occasion-tabs{display:flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:999px;flex:none}.occasion-tabs button{min-height:44px;padding:10px 24px;border-radius:999px;background:transparent;color:var(--muted);font-size:14px;font-weight:700}.occasion-tabs button[aria-selected=true]{background:var(--purple);color:#fff}.occasion-panel{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:64px;min-width:0}.occasion-panel>img{width:100%;height:auto;aspect-ratio:3/2;display:block;border-radius:24px}.occasion-copy .eyebrow{color:var(--muted);margin-bottom:20px}.occasion-copy h3{font-size:clamp(32px,3vw,40px)}.occasion-copy>p:not(.eyebrow){color:var(--muted);max-width:380px;margin-top:20px;line-height:1.65}.occasion-copy .button{margin-top:28px}.occasion-copy>p.fine-print{font-size:12px;margin-top:16px;max-width:320px}
/* A single invitation for the two sides of the marketplace. */
.business{background:var(--purple);color:#fff}.business-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-block:64px}.business-intro{padding-top:8px}.business-intro .eyebrow{color:#e8deff;margin-bottom:24px}.business-intro h2{font-size:clamp(40px,4.6vw,62px);letter-spacing:-2px}.business-intro>p:last-child{margin-top:24px;color:#eee7fc;font-size:18px;line-height:1.6}.business-links>a{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:8px 0 32px}.business-links>a+a{border-top:1px solid #ffffff55;padding-top:32px;padding-bottom:0}.business-label{font-size:12px;letter-spacing:.6px;color:#eee7fc}.business-links h3{font-size:28px;line-height:1.15;letter-spacing:-.6px;margin-top:12px}.business-links p{color:#eee7fc;font-size:14px;margin-top:12px}.business-links strong{display:inline-block;font-size:14px;margin-top:20px;text-decoration:underline;text-underline-offset:5px}.business-arrow{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:50%;border:1px solid #ffffff66}.business-links>a:hover .business-arrow{background:#fff;color:var(--purple)}
.download{display:flex;justify-content:space-between;align-items:center;gap:48px;padding-block:64px;border-bottom:1px solid var(--line)}.download-copy{display:flex;gap:32px;align-items:center}.download-copy>.brand-mark{width:62px;height:96px}.download h2{font-size:40px;letter-spacing:-1.2px}.download p{color:var(--muted);margin-top:16px}.download-actions{display:flex;flex-direction:column;gap:12px;flex:none;min-width:205px}.faq{padding-block:48px 64px;display:grid;grid-template-columns:1fr 1.35fr;gap:64px}.faq h2{font-size:32px;letter-spacing:-.8px}.faq details{padding:20px 0;border-bottom:1px solid var(--line)}.faq details:first-child{padding-top:0}.faq summary{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:24px;list-style:none;font-weight:600}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';font-size:26px;color:var(--link);font-weight:400}.faq details[open] summary:after{content:'−'}.faq details p{color:var(--muted);margin-top:16px;max-width:640px}
footer{background:var(--soft)}.footer-main{display:grid;grid-template-columns:1.4fr 1fr 1fr .6fr;gap:40px;padding-block:40px}.footer-brand>p{font-size:14px;color:var(--muted);margin-top:16px}.footer-main nav{display:flex;flex-direction:column;gap:4px;font-size:14px}.footer-main nav a{min-height:36px;display:flex;align-items:center}.footer-main nav a:hover{text-decoration:underline}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:16px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}.footer-bottom>a{display:flex;align-items:center;gap:8px;min-height:44px}.footer-bottom svg{width:16px;height:16px;transform:rotate(-90deg)}.theme-toggle{min-height:44px;background:none;color:inherit;padding:8px}
[data-theme=dark]{--page:#1c1825;--ink:#f8f5fc;--muted:#c1b8d0;--link:#cbb7ff;--soft:#272130;--line:#44384f;--lavender:#332645}.logo .brand-mark,.download-copy>.brand-mark{background:var(--link)}
@keyframes loading{to{transform:rotate(360deg)}}
@media(max-width:1100px){.header-inner{gap:24px}.desktop-nav{gap:20px}.header-tools{gap:20px}.hero{gap:32px;padding-block:48px}.hero h1{font-size:68px}.hero-description{font-size:19px}.search-label{display:none}.search-submit{padding:0;width:48px}.occasion-panel{gap:40px}.business-inner{gap:48px}}
@media(max-width:959px){.header{height:76px}.header-inner{padding-inline:24px}.header .logo{width:auto}.desktop-nav{display:none}.header-tools{margin-left:auto}.mobile-menu{position:static}.partner-menu{right:24px;top:64px}.mobile-nav-links{display:block;border-top:1px solid var(--line);margin-top:8px;padding-top:8px}.wrap{padding-inline:24px}.hero{gap:28px;grid-template-columns:1fr 1fr}.hero h1{font-size:58px;letter-spacing:-2px}.hero .eyebrow{margin-bottom:20px;font-size:11px}.hero-description{font-size:18px}.hero-detail{font-size:15px}.hero-scene figcaption strong{font-size:19px}.hero-scene figcaption div>span{font-size:13px}.gathering{padding-block:56px}.occasion-panel{gap:32px;grid-template-columns:1.1fr 1fr}.occasion-copy h3{font-size:30px}.occasion-copy>p:not(.eyebrow){margin-top:16px;font-size:15px}.business-inner{gap:40px;padding-block:48px}.business-intro h2{font-size:44px}.business-links h3{font-size:25px}.download{gap:32px}.download-copy{gap:24px}.download-copy>.brand-mark{width:48px;height:74px}.download h2{font-size:34px}.faq{gap:40px;grid-template-columns:1fr 1.3fr}.footer-main{gap:24px;grid-template-columns:1.2fr 1fr 1fr}.footer-main nav:last-child{grid-column:2/-1;flex-direction:row;gap:24px}}
@media(max-width:700px){.header-inner{padding-inline:20px;gap:12px}.header .logo{font-size:26px;gap:7px}.brand-mark{width:23px;height:35px}.header-tools{gap:12px}.web-account{padding:10px 16px}.partner-menu{right:20px}.wrap{padding-inline:20px}.hero{grid-template-columns:1fr;gap:28px;padding-block:32px}.hero h1{font-size:clamp(56px,13.5vw,78px);letter-spacing:-2px}.hero .eyebrow{font-size:12px;margin-bottom:16px}.hero-description{font-size:19px;margin-top:20px}.hero-detail{font-size:16px;max-width:420px;margin-top:8px}.find-form{max-width:none;margin-top:24px}.hero-links{gap:0 20px;margin-top:8px}.search-box{height:56px;padding:4px 4px 4px 16px;gap:8px}.search-submit{height:46px;width:46px;min-width:46px}.suggestions{top:64px}.hero-scene figcaption{padding-top:16px;gap:16px}.hero-scene figcaption strong{font-size:21px}.hero-scene figcaption div>span{font-size:14px}.food-inner{padding-block:28px}.food-inner h2{font-size:26px}.section-heading{gap:16px}.food-inner .section-heading .text-link{font-size:13px;gap:6px}.food-inner .section-heading .text-link svg{display:none}.cuisine-grid{display:flex;overflow-x:auto;gap:12px;scroll-snap-type:x proximity;scroll-padding-inline:20px;margin-inline:-20px;padding:4px 20px 8px;scrollbar-width:none}.cuisine-grid::-webkit-scrollbar{display:none}.cuisine-grid a{flex:0 0 84px;scroll-snap-align:start;font-size:14px;padding:4px}.cuisine-grid img{width:76px;height:76px}.availability{text-align:left;font-size:13px;margin-top:16px}.gathering{padding-block:40px}.gathering .section-heading{align-items:flex-start;flex-direction:column;gap:24px;margin-bottom:24px}.gathering h2{font-size:38px;letter-spacing:-1px}.occasion-tabs{width:100%}.occasion-tabs button{flex:1}.occasion-panel{grid-template-columns:1fr;gap:24px}.occasion-copy .eyebrow{margin-bottom:12px}.occasion-copy h3{font-size:34px}.occasion-copy>p:not(.eyebrow){font-size:16px;max-width:440px}.occasion-copy .button{margin-top:24px}.occasion-copy>p.fine-print{font-size:12px}.business-inner{grid-template-columns:1fr;gap:36px;padding-block:40px}.business-intro{padding-top:0}.business-intro .eyebrow{margin-bottom:20px}.business-intro h2{font-size:44px}.business-intro>p:last-child{font-size:16px;margin-top:20px}.business-links>a{padding-bottom:28px}.business-links>a+a{padding-top:28px}.business-links h3{font-size:26px}.business-links p{font-size:14px}.business-arrow{width:44px;height:44px}.download{padding-block:40px;flex-direction:column;align-items:stretch;gap:24px}.download-copy{gap:24px}.download-copy>.brand-mark{width:40px;height:62px}.download h2{font-size:32px}.download p{font-size:15px;margin-top:12px}.download-actions{flex-direction:row;min-width:0;gap:12px}.download-actions>*{flex:1;padding-inline:16px}.download-actions svg{display:none}.faq{grid-template-columns:1fr;gap:24px;padding-block:32px 40px}.faq h2{font-size:28px}.faq summary{font-size:15px}.faq details{padding:16px 0}.footer-main{grid-template-columns:1fr 1fr;gap:28px 24px;padding-block:32px}.footer-brand{grid-column:1/-1}.footer-main nav:last-child{grid-column:1/-1}.footer-bottom{gap:16px;font-size:12px}.footer-bottom svg{display:none}}
@media(max-width:359px){.header-inner{padding-inline:12px;gap:8px}.header .logo{font-size:23px}.header-tools{gap:8px}.mobile-menu summary{gap:4px;font-size:13px}.web-account{padding:10px 12px}.brand-mark{width:21px;height:32px}.partner-menu{right:12px;max-width:calc(100vw - 24px)}.hero h1{font-size:52px}.hero-description{font-size:18px}.hero-scene figcaption strong{font-size:19px}.food-inner .section-heading{flex-wrap:wrap;gap:4px}.gathering h2{font-size:34px}.business-intro h2{font-size:40px}.business-links h3{font-size:24px}.download-copy{gap:16px}.download h2{font-size:28px}.download-actions{flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.search-submit.is-loading:after{animation:none}}

/* Useful product information stays readable with or without JavaScript. */
.faq-intro{color:var(--muted);margin-top:16px;max-width:290px}.gathering:not(.tabs-ready) .occasion-panel+.occasion-panel{margin-top:48px}
