:root{--color-peach:#ff8a65;--color-apricot:#ffc06a;--color-sunshine:#ffe066;--color-coral:#ff6b6b;--color-deep-navy:#1a1d2e;--color-page-bg:#fff7ed;--color-surface:#fff;--color-surface-alt:#fff0dc;--color-surface-warm:#ffe4bd;--color-surface-highlight:#fff4bd;--color-topbar-bg:var(--color-deep-navy);--color-topbar-text:var(--color-surface);--color-topbar-muted:#ffe6b0;--color-panel-bg:#fffaf4;--color-panel-border:#f1c89c;--color-card-bg:var(--color-surface);--color-card-hover:#fff4e7;--color-card-selected:#fff0bd;--color-card-selected-border:var(--color-coral);--color-heading:var(--color-deep-navy);--color-text:#292d42;--color-muted-text:#676b7c;--color-subtle-text:#85899a;--color-text-on-dark:var(--color-surface);--color-transparent:transparent;--color-white-alpha-12:#ffffff1f;--color-white-alpha-13:#ffffff21;--color-white-alpha-20:#fff3;--color-white-alpha-25:#ffffff40;--color-white-alpha-30:#ffffff4d;--color-white-alpha-55:#ffffff8c;--color-white-alpha-64:#ffffffa3;--color-white-alpha-66:#ffffffa8;--color-white-alpha-68:#ffffffad;--color-white-alpha-76:#ffffffc2;--color-white-alpha-88:#ffffffe0;--color-primary:var(--color-coral);--color-primary-hover:#eb5757;--color-primary-active:#d94b4b;--color-primary-text:var(--color-deep-navy);--color-secondary:var(--color-peach);--color-secondary-hover:#f27654;--color-secondary-active:#df6547;--color-secondary-text:var(--color-deep-navy);--color-accent:var(--color-sunshine);--color-accent-hover:#f4cf4f;--color-accent-text:var(--color-deep-navy);--color-warm-accent:var(--color-apricot);--color-warm-accent-hover:#f2ae52;--color-input-bg:var(--color-surface);--color-input-text:var(--color-deep-navy);--color-input-border:#e7bd91;--color-input-border-hover:var(--color-peach);--color-input-border-focus:var(--color-coral);--color-input-placeholder:#8e8990;--color-border:#edc69d;--color-border-light:#f5dfc8;--color-divider:#efd4b6;--color-link:#c8424d;--color-link-hover:#9f303b;--color-success:#3f8f65;--color-success-bg:#e6f5ec;--color-warning:#a26800;--color-warning-bg:#fff2c2;--color-error:#b93643;--color-error-bg:#ffe8e8;--color-hidden-gem-bg:var(--color-sunshine);--color-hidden-gem-text:var(--color-deep-navy);--color-rating:#dc8d00;--color-price:#af4550;--color-home-page-bg:#fffaf1;--color-home-hero-bg:#38251d;--color-home-hero-shade-start:#151218d1;--color-home-hero-shade-middle:#19141691;--color-home-hero-shade-end:#19141638;--color-home-hero-shade-bottom:#1611119e;--color-home-panel-bg:#191416ad;--color-home-message-bg:#1e1212ad;--color-home-eyebrow:#ffd497;--color-home-button-bg:#ffd072;--color-home-button-hover:#ffdc98;--color-home-button-text:#27201e;--color-home-story-eyebrow:#b6513d;--color-home-story-heading:#24202b;--color-home-story-text:#665e59;--color-home-story-accent:#9c493b;--color-home-story-divider:#e2af71;--color-map-info-text:#202124;--color-focus:var(--color-coral);--focus-ring:0 0 0 3px #ffd0c8;--color-focus-outline:color-mix(in srgb, var(--color-focus) 65%, var(--color-transparent));--color-error-border:color-mix(in srgb, var(--color-error) 45%, var(--color-border));--color-card-selected-ring:color-mix(in srgb, var(--color-primary) 16%, var(--color-transparent));--shadow-small:0 2px 5px #1a1d2e1f;--shadow-medium:0 6px 18px #1a1d2e29;--shadow-large:0 14px 36px #1a1d2e33;--shadow-card-resting:0 2px 8px #261e180f;--radius-small:.4rem;--radius-medium:.75rem;--radius-large:1rem;--radius-xl:1.35rem;--radius-pill:999px;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--top-action-bar-height:64px;--floating-panel-width:390px;--floating-panel-gap:1rem;--transition-fast:.14s ease;--transition-normal:.22s ease}
*,:before,:after{box-sizing:border-box}html,body{width:100%;min-width:320px;min-height:100%;margin:0}body{color:var(--color-text);background:var(--color-page-bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}button,input,select,textarea{font:inherit}button,select,summary,a{-webkit-tap-highlight-color:transparent}button,select,summary{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid var(--color-focus-outline);outline-offset:2px}button{color:var(--color-text)}a{color:var(--color-link)}h1,h2,h3,p{margin-top:0}::selection{color:var(--color-text-on-dark);background:var(--color-primary)}
.location-controls{min-width:0;color:var(--color-topbar-text);justify-content:flex-end;align-items:center;display:flex;position:relative}.location-controls details{position:relative}.location-controls summary{align-items:center;gap:var(--space-2);min-height:2.25rem;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-pill);white-space:nowrap;padding:.5rem .8rem;font-size:.82rem;font-weight:750;list-style:none;display:inline-flex}.location-controls summary::-webkit-details-marker{display:none}.location-controls summary:after{content:"";width:.45rem;height:.45rem;transition:transform var(--transition-fast);border-bottom:2px solid;border-right:2px solid;transform:translateY(-.12rem)rotate(45deg)}.location-controls details[open] summary{color:var(--color-link);border-color:var(--color-primary);background:var(--color-surface-highlight)}.location-controls details[open] summary:after{transform:translateY(.12rem)rotate(225deg)}.location-menu__panel{width:min(23rem,100vw - 1.5rem);max-height:calc(100dvh - var(--top-action-bar-height) - 3rem);padding:var(--space-4);color:var(--color-text);background:var(--color-panel-bg);border:1px solid var(--color-panel-border);border-radius:var(--radius-medium);box-shadow:var(--shadow-medium);position:absolute;top:calc(100% + .65rem);right:0;overflow-y:auto}.location-menu__panel p{margin:var(--space-3) 0 0;color:var(--color-muted-text);font-size:.82rem}.location-controls input,.location-controls select,.location-controls button{border:1px solid var(--color-border);border-radius:var(--radius-small);background:var(--color-surface);width:100%;min-height:2.5rem;padding:.6rem .75rem}.location-controls button{color:var(--color-text-on-dark);background:var(--color-primary);border-color:var(--color-primary);font-weight:750}.location-controls button:hover:not(:disabled){background:var(--color-primary-hover)}.location-controls button:disabled{cursor:not-allowed;opacity:.6}.location-address-input{gap:var(--space-1);display:grid}.location-address-input>label{color:var(--color-muted-text);font-size:.76rem;font-weight:750}.location-address-input>label span{font-weight:400;display:block}.location-address-input>input{width:100%;min-height:2.5rem;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-small);padding:.6rem .75rem}.location-address-suggestions-shell{border:1px solid var(--color-border);border-radius:var(--radius-small);background:var(--color-surface);box-shadow:var(--shadow-medium);overflow:hidden}.location-address-suggestions{max-height:min(16rem,38dvh);margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.location-address-suggestions li+li{border-top:1px solid var(--color-divider)}.location-address-input .location-address-suggestion{width:100%;min-height:0;color:var(--color-text);background:var(--color-surface);text-align:left;border:0;border-radius:0;gap:.1rem;padding:.65rem .75rem;display:grid}.location-address-input .location-address-suggestion:hover,.location-address-input .location-address-suggestion[aria-selected=true]{color:var(--color-text);background:var(--color-card-hover)}.location-address-suggestion span{text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;font-weight:750;overflow:hidden}.location-address-suggestion small{color:var(--color-muted-text);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-weight:500;overflow:hidden}.location-address-attribution{color:var(--color-subtle-text);border-top:1px solid var(--color-divider);text-align:right;padding:.3rem .6rem;font-size:.62rem;font-weight:700}.location-method-divider{align-items:center;gap:var(--space-3);margin:var(--space-3) 0;color:var(--color-subtle-text);text-transform:lowercase;font-size:.72rem;font-weight:700;display:flex}.location-method-divider:before,.location-method-divider:after{background:var(--color-divider);content:"";flex:1;height:1px}@media (max-width:720px){.location-controls summary{min-height:2.15rem;padding-inline:.52rem;font-size:.74rem}.location-menu__panel{top:calc(var(--floating-panel-gap) + var(--top-action-bar-height) + .4rem);right:var(--floating-panel-gap);left:var(--floating-panel-gap);width:auto;position:fixed}}@media (max-width:360px){.location-controls summary{padding-inline:.45rem;font-size:.7rem}}
.home-page{background:var(--color-home-page-bg);min-height:100vh;overflow-x:hidden}.home-hero{z-index:1;min-height:min(82vh,54rem);color:var(--color-text-on-dark);background-color:var(--color-home-hero-bg);background-image:url(/restaurant-hero-placeholder.svg);background-position:50%;background-size:cover;display:grid;position:relative;overflow:visible}.home-hero__shade{background:linear-gradient(90deg, var(--color-home-hero-shade-start) 0%, var(--color-home-hero-shade-middle) 48%, var(--color-home-hero-shade-end) 100%), linear-gradient(0deg, var(--color-home-hero-shade-bottom) 0%, var(--color-transparent) 46%);position:absolute;inset:0}.home-header,.home-hero__content{z-index:1;width:min(100% - 3rem,76rem);margin-inline:auto;position:relative}.home-header{align-self:start;padding-block:1.75rem}.home-header__nav{justify-content:space-between;align-items:center;gap:1rem;display:flex}.home-logo{color:var(--color-text-on-dark);align-items:center;gap:.75rem;display:inline-flex}.home-logo__mark{border:1px solid var(--color-white-alpha-66);background:var(--color-white-alpha-13);letter-spacing:.08em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:50%;place-items:center;width:2.65rem;height:2.65rem;font-size:.72rem;font-weight:800;display:grid}.home-logo__name{letter-spacing:.01em;font-family:Georgia,Times New Roman,serif;font-size:1.55rem;font-weight:700}.home-finder-link{border:1px solid var(--color-white-alpha-55);border-radius:var(--radius-pill);background:var(--color-white-alpha-12);color:var(--color-text-on-dark);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background-color var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);padding:.55rem 1rem;font-size:.85rem;font-weight:750;text-decoration:none}.home-finder-link:hover{border-color:var(--color-text-on-dark);background:var(--color-white-alpha-20);transform:translateY(-1px)}.home-hero__content{align-self:end;max-width:76rem;padding-block:5rem 6.5rem}.home-hero__eyebrow,.home-story__eyebrow{color:var(--color-home-eyebrow);letter-spacing:.18em;text-transform:uppercase;margin-bottom:1rem;font-size:.78rem;font-weight:800}.home-hero h1{letter-spacing:-.01em;text-wrap:balance;max-width:12ch;margin-bottom:1.25rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(3rem,7vw,6.75rem);font-weight:500;line-height:.96}.home-hero__intro{max-width:38rem;color:var(--color-white-alpha-88);margin-bottom:2rem;font-size:clamp(1rem,1.7vw,1.25rem);line-height:1.65}.home-hero__actions{flex-wrap:wrap;gap:.85rem;display:flex}.home-button{border-radius:var(--radius-pill);min-height:3.25rem;transition:transform var(--transition-fast), background-color var(--transition-fast), border-color var(--transition-fast);border:1px solid #0000;padding:.85rem 1.5rem;font-weight:750}.home-button:hover{transform:translateY(-2px)}.home-button:disabled{cursor:wait;opacity:.7}.home-button--primary{background:var(--color-home-button-bg);color:var(--color-home-button-text)}.home-button--primary:hover{background:var(--color-home-button-hover)}.home-button--secondary{border-color:var(--color-white-alpha-64);background:var(--color-white-alpha-12);color:var(--color-text-on-dark);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.home-button--secondary:hover{border-color:var(--color-text-on-dark);background:var(--color-white-alpha-20)}.home-hero-search__message{border:1px solid var(--color-white-alpha-25);background:var(--color-home-message-bg);max-width:40rem;color:var(--color-text-on-dark);border-radius:.75rem;margin:1rem 0 0;padding:.8rem 1rem}.home-hero-search__address-panel{border:1px solid var(--color-white-alpha-30);background:var(--color-home-panel-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:1rem;max-width:38rem;margin-top:1.25rem;padding:1.25rem}.home-hero-search__address-panel .location-address-input>label{color:var(--color-text-on-dark);gap:.2rem;margin-bottom:.8rem;font-weight:750;display:grid}.home-hero-search__address-panel .location-address-input>label span,.home-hero-search__address-panel p{color:var(--color-white-alpha-76);font-size:.85rem;font-weight:400}.home-hero-search__address-panel p{margin:.75rem 0 0}.home-story{z-index:0;text-align:center;width:min(100% - 3rem,68rem);margin-inline:auto;padding-block:clamp(4.5rem,9vw,8.5rem);position:relative}.home-story__eyebrow{color:var(--color-home-story-eyebrow)}.home-story h2{max-width:18ch;color:var(--color-home-story-heading);letter-spacing:-.02em;text-wrap:balance;margin:0 auto 2rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.2rem,5vw,4rem);font-weight:500;line-height:1.08}.home-story>p:not(.home-story__eyebrow){max-width:47rem;color:var(--color-home-story-text);margin:0 auto 1.2rem;font-size:clamp(1rem,1.6vw,1.15rem);line-height:1.8}.home-story__accent{color:var(--color-home-story-accent);justify-content:center;gap:clamp(1.25rem,5vw,4.5rem);margin-top:3rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(1rem,2vw,1.25rem);font-style:italic;display:flex}.home-story__accent span+span:before{color:var(--color-home-story-divider);content:"•";margin-right:clamp(1.25rem,5vw,4.5rem);font-style:normal}@media (max-width:620px){.home-header,.home-hero__content,.home-story{width:min(100% - 2rem,76rem)}.home-hero{background-position:62%;min-height:46rem}.home-hero__content{padding-block:4rem}.home-hero__actions{flex-direction:column;align-items:stretch}.home-story__accent{gap:.7rem}.home-story__accent span+span:before{margin-right:.7rem}}@media (prefers-reduced-motion:reduce){.home-button{transition:none}}

