.hero-actions{display:flex;flex-wrap:wrap;gap:14px}.button{cursor:pointer;gap:18px}.button.outline{background:transparent;color:var(--on-dark);border-color:#ffffff70}.button.outline:hover{background:#ffffff12}.business{padding-bottom:88px}.process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.process-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fffdf8}.process-photo{position:relative;height:205px}.process-photo img{width:100%;height:100%;object-fit:cover}.process-photo.detail img{object-position:80% center}.process-photo span{position:absolute;left:16px;top:16px;width:40px;height:40px;display:grid;place-items:center;background:var(--orange);border-radius:50%;color:#28251f;font-weight:700}.process-copy{padding:23px}.process-copy h3{margin:0 0 14px;font-size:28px}.process-copy p{font-size:15px;color:var(--muted);margin:0;line-height:1.65}.process-bottom{display:flex;justify-content:space-between;align-items:center;gap:32px;margin-top:30px}.process-bottom p{max-width:670px;color:var(--muted);font-size:14px}.process-bottom .button{flex-shrink:0}.launch-box .button{margin-top:24px}.contact-dock{position:fixed;bottom:0;left:0;right:0;z-index:10;background:var(--dark);color:var(--on-dark);border-top:1px solid #ffffff26;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px max(24px,calc((100vw - 1232px)/2));box-shadow:0 -8px 24px #0001}.contact-dock>span{font-size:16px}.contact-dock .button{padding:11px 26px}.contact-dialog{border:0;border-radius:16px;padding:38px;width:min(590px,calc(100% - 32px));max-height:calc(100dvh - 40px);color:var(--ink);background:var(--paper);box-shadow:0 24px 100px #0006}.contact-dialog::backdrop{background:#191918b8;backdrop-filter:blur(4px)}.dialog-open{overflow:hidden}.dialog-close{position:absolute;top:14px;right:14px;border:0;background:transparent;font-size:28px;width:44px;height:44px;cursor:pointer;color:var(--ink)}.contact-dialog .eyebrow{margin-bottom:12px;padding-right:25px}.contact-dialog h2{font-size:42px}.form-preview{font-size:13px;color:var(--muted);margin:12px 0 24px}.form-progress{list-style:none;display:flex;gap:25px;padding:0;margin:0 0 25px;border-bottom:1px solid var(--line)}.form-progress li{font-size:13px;color:var(--muted);padding-bottom:12px}.form-progress li[aria-current]{color:var(--ink);border-bottom:3px solid var(--orange);font-weight:700}.form-progress span{margin-left:8px}#operator-form label,#operator-form legend{display:block;font-size:15px;font-weight:600;margin-bottom:8px}#operator-form input:not([type=radio]),#operator-form select,#operator-form textarea{font:inherit;font-size:16px;width:100%;border:1px solid #b6b5ad;background:#fffdf9;color:var(--ink);border-radius:6px;min-height:48px;padding:11px 12px;margin-bottom:20px}#operator-form textarea{resize:vertical}#operator-form input::placeholder{color:#74766f}#operator-form fieldset{border:0;margin:0 0 22px;padding:0}.need-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.need-options label{position:relative;margin:0!important}.need-options input{position:absolute;opacity:0;width:1px;height:1px}.need-options span{display:flex;justify-content:center;align-items:center;min-height:49px;text-align:center;border:1px solid #b6b5ad;border-radius:6px;font-size:14px;cursor:pointer}.need-options input:checked+span{border-color:var(--orange);background:#ff790018;box-shadow:inset 0 0 0 1px var(--orange)}.need-options input:focus-visible+span{outline:3px solid var(--orange);outline-offset:3px}.form-columns{display:grid;grid-template-columns:1fr 1.5fr;gap:16px}.form-actions{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:10px}.form-actions>span{font-size:12px;color:var(--muted)}.back-button{background:none;border:0;padding:12px 0;cursor:pointer;color:var(--ink)}.preview-note{font-size:14px;color:var(--muted);padding:15px;background:#ebe8e0;border-radius:6px}.contact-dialog [hidden]{display:none!important}.contact-dialog :focus-visible{outline:3px solid var(--orange);outline-offset:3px}#request-summary{display:grid;grid-template-columns:100px 1fr;gap:10px 18px;font-size:15px;overflow-wrap:anywhere}#request-summary dt{color:var(--muted)}#request-summary dd{margin:0}.business .hero{gap:44px}@media(max-width:1050px){.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.process-photo{height:220px}}@media(max-width:700px){.process-grid{grid-template-columns:1fr}.process-photo{height:220px}.process-copy{padding:24px}.process-bottom{align-items:stretch;flex-direction:column;gap:12px}.contact-dock>span{display:none}.contact-dock{padding:12px 22px calc(12px + env(safe-area-inset-bottom))}.contact-dock .button{width:100%}.contact-dialog{padding:30px 22px;max-height:calc(100dvh - 24px)}.contact-dialog h2{font-size:36px}.form-columns{grid-template-columns:1fr;gap:0}.form-progress{gap:16px}.form-progress span{margin-left:3px}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .button{width:100%}.business{padding-bottom:100px}}
.business{--tablea-olive:oklch(.35 .045 125);--tablea-olive-soft:oklch(.94 .022 115)}
.funding-model .model-intro{max-width:740px;font-size:19px;line-height:1.7;color:var(--on-dark);margin-top:24px}
.funding-model .step b{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--tablea-olive-soft);color:var(--tablea-olive);font-family:var(--font-sans);font-size:21px;font-weight:600}
.funding-model .step p{font-size:17px;max-width:none}
.redemption-highlight{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;margin-top:44px;padding:30px 34px;border-radius:10px;background:var(--tablea-olive-soft);color:var(--tablea-olive)}
.redemption-period{display:block;font-size:clamp(32px,4vw,46px);line-height:1.2;font-weight:600;letter-spacing:-.03em}
.redemption-highlight strong{display:block;font-size:15px;margin-top:10px;font-weight:500}
.redemption-highlight p{margin:0;font-size:16px;line-height:1.65}
.funding-model .model-note{font-size:14px;color:var(--dark-muted);margin:20px 0 0;max-width:800px}
@media(max-width:700px){.redemption-highlight{grid-template-columns:1fr;gap:20px;padding:25px}.funding-model .model-intro{font-size:18px}}
.funding-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:42px}
.funding-fact{border:1px solid #ffffff35;border-radius:10px;padding:28px}
.funding-fact .fact-label{font-size:13px;font-weight:600;letter-spacing:.03em;color:var(--tablea-olive-soft);margin:0 0 24px}
.funding-fact h3{font-size:30px;line-height:1.15;margin:0 0 18px}
.funding-fact p{font-size:17px;line-height:1.65;margin:0;color:var(--on-dark)}
.funding-fact-period{background:var(--tablea-olive-soft);border-color:var(--tablea-olive-soft);color:var(--tablea-olive)}
.funding-fact-period .fact-label,.funding-fact-period p{color:var(--tablea-olive)}
.funding-fact-period h3{font-family:var(--font-sans);font-size:36px;font-weight:600;letter-spacing:-.035em}
@media(max-width:850px){.funding-facts{grid-template-columns:1fr;gap:18px}.funding-fact{padding:26px}.funding-fact .fact-label{margin-bottom:16px}}
.business .strip{align-items:center}
.business .strip a{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-weight:500;transition:color .2s}
.business .strip a span{color:var(--orange);font-size:18px}
.business .strip a:hover,.business .strip a:focus-visible{color:var(--orange)}
.business .strip a:hover{text-decoration:underline;text-underline-offset:5px}
#guest-discovery,#repeat-visits,#funding-model{scroll-margin-top:24px}


.business .strip a span{width:auto}
.restaurant-feature{padding:88px 0;background:var(--paper)}
.feature-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:72px}
.feature-copy h2{font-size:clamp(36px,4vw,54px);line-height:1.08;margin-bottom:24px}
.feature-copy>p:not(.eyebrow){font-size:19px;line-height:1.7;max-width:560px}
.feature-image{display:block;width:100%;height:480px;object-fit:cover;border-radius:12px}
.feature-points{list-style:none;padding:0;margin:30px 0 0}
.feature-points li{padding:20px 0;border-top:1px solid var(--line)}
.feature-points strong{display:block;font-size:18px;margin-bottom:8px}
.feature-points span{display:block;font-size:17px;line-height:1.65}
.return-feature{background:var(--tablea-olive-soft);color:var(--tablea-olive)}
.return-feature .feature-copy{grid-column:2;grid-row:1}
.return-feature .feature-image{grid-column:1;grid-row:1}
.restaurant-feature:focus-visible{outline:2px solid var(--orange);outline-offset:-4px}
@media(max-width:850px){.restaurant-feature{padding:60px 0}.feature-layout{grid-template-columns:1fr;gap:30px}.feature-image{height:340px}.return-feature .feature-copy,.return-feature .feature-image{grid-column:auto;grid-row:auto}}
@media(max-width:500px){.feature-image{height:280px}.feature-copy>p:not(.eyebrow){font-size:18px}}

/* The header scrolls away: anchor sections need no fixed-header offset. */
html.restaurant-page{scroll-padding-top:0;scroll-padding-bottom:90px}
#guest-discovery,#repeat-visits,#funding-model{scroll-margin-top:0}
.feature-layout{grid-template-columns:repeat(2,minmax(0,1fr))}
.feature-copy,.funding-fact{min-width:0}
.feature-image{max-width:100%}
@media(min-width:851px) and (max-height:850px){
 .restaurant-feature,.funding-model{padding:30px 0 90px}
 .feature-layout{gap:40px}
 .feature-copy .eyebrow,.funding-model .eyebrow{margin-bottom:14px}
 .feature-copy h2,.funding-model h2{font-size:40px;line-height:1.06;margin-bottom:16px}
 .feature-copy>p:not(.eyebrow),.funding-model .model-intro{font-size:17px;line-height:1.5;margin:14px 0}
 .feature-image{height:360px}
 .feature-points{margin-top:18px}
 .feature-points li{padding:12px 0}
 .feature-points strong{font-size:17px;margin-bottom:5px}
 .feature-points span{font-size:16px;line-height:1.5}
 .funding-facts{gap:18px;margin-top:24px}
 .funding-fact{padding:22px}
 .funding-fact .fact-label{margin-bottom:14px}
 .funding-fact h3{font-size:28px;margin-bottom:12px}
 .funding-fact p{font-size:16px;line-height:1.5}
 .funding-model .model-note{margin-top:14px}
}
@media(max-width:850px){.feature-layout{grid-template-columns:minmax(0,1fr)}}

/* Keep process cards readable at narrow widths and equal-height on desktop. */
.process-card{display:flex;flex-direction:column;min-width:0}
.process-copy{flex:1;overflow-wrap:break-word}
.process-card:first-child .process-photo img{object-position:65% center}
.process-card:nth-child(2) .process-photo img{object-position:70% center}
@media(max-width:700px){
 .business .strip{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;text-align:left}
 .business .strip>span:first-child{text-align:left;margin-bottom:8px}
 .business .strip a{justify-content:space-between;padding:7px 0;font-size:15px}
 .business .strip a span{flex:none}
 .process-photo{height:auto;aspect-ratio:3/2}
 .process-copy p{font-size:16px}
 .contact-dock .button{min-height:48px}
}

/* Responsive card rails and feature reading order. */
.funding-slides{display:contents}
.carousel-controls{display:none}
.contact-dock[hidden]{display:none}
.feature-layout{grid-template-areas:"copy image" "points image";row-gap:0}
.feature-copy{grid-area:copy}
.feature-layout>.feature-image{grid-area:image}
.feature-layout>.feature-points{grid-area:points}
.return-feature .feature-layout{grid-template-areas:"image copy" "image points"}
.return-feature .feature-copy{grid-area:copy}
.return-feature .feature-image{grid-area:image}
.restaurant-feature:focus{outline:none}
.restaurant-feature:focus-visible h2{outline:2px solid var(--orange);outline-offset:6px}
@media(max-width:850px){
 .feature-layout,.return-feature .feature-layout{grid-template-areas:"copy" "image" "points";gap:24px}
 .feature-layout>.feature-points{margin:0}
}
@media(max-width:700px){
 .business .hero.motion-hero{padding-top:36px;min-height:0}
 .business .hero .description{line-height:1.55;margin-bottom:24px}
 .business section{padding-top:44px;padding-bottom:44px}
 .business .partner{padding:32px 0;margin-bottom:0}
 .business .faq details{padding:18px 0}
 .business .faq summary{font-size:17px}
 .business .mobile-carousel{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:0;overscroll-behavior-x:contain;scrollbar-width:thin;padding-bottom:10px;margin-top:24px}
 .mobile-carousel>article{flex:0 0 88%;min-width:0;scroll-snap-align:start}
 .mobile-carousel>article:last-child{margin-right:12%}
 .principles.mobile-carousel>.principle{border:1px solid var(--line);border-radius:12px;padding:22px;background:#fffdf8}
 .mobile-carousel .process-photo{aspect-ratio:16/10}
 .mobile-carousel .process-copy{padding:20px}
 .mobile-carousel .process-copy h3{font-size:27px}
 .funding-facts{display:block;margin-top:24px}
 .funding-slides.mobile-carousel{margin-top:0}
 .funding-fact-period{margin-top:24px}
 .funding-fact-period h3{font-size:34px}
 .carousel-controls{display:flex;align-items:center;justify-content:center;gap:0;margin-top:4px}
 .carousel-controls button{display:grid;place-items:center;width:44px;height:44px;border:0;background:none;cursor:pointer}
 .carousel-controls button:before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor;opacity:.3}
 .carousel-controls button[aria-current="true"]:before{background:var(--orange);opacity:1;width:22px;border-radius:6px}
 .carousel-controls button{color:inherit}
 .carousel-controls button:focus-visible{outline:2px solid var(--orange);outline-offset:-4px}
 .mobile-carousel:focus-visible{outline:2px solid var(--orange);outline-offset:4px}
 .business .feature-image{height:auto;aspect-ratio:4/3}
 .business .feature-copy>p:not(.eyebrow){font-size:17px;line-height:1.6}
 .business .feature-points li{padding:16px 0}
}
