:root{--ink:#141b15;--green:#203022;--deep:#101711;--gold:#efbd45;--cream:#f4f0e7;--paper:#fffdfa;--muted:#687168;--line:#d9ddd4;--shadow:0 22px 65px rgba(17,25,18,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",system-ui,sans-serif}button,input,select,textarea{font:inherit}button,a{tap-highlight-color:transparent}.site-header{position:sticky;top:0;z-index:100;display:flex;align-items:center;min-height:72px;padding:0 max(20px,calc((100vw - 1180px)/2));gap:28px;background:rgba(244,240,231,.92);border-bottom:1px solid rgba(20,27,21,.08);backdrop-filter:blur(18px)}.brand{display:inline-grid;text-decoration:none;color:inherit;font-family:Oswald,sans-serif;line-height:.82;letter-spacing:-.035em}.brand span{font-size:.66rem;letter-spacing:.13em}.brand b{font-size:1.55rem}.site-header nav{display:flex;gap:24px;margin-left:auto}.site-header nav a{color:inherit;text-decoration:none;font-size:.82rem;font-weight:700}.header-grade{min-height:42px;padding:0 17px;border:0;border-radius:999px;background:var(--ink);color:#fff;font-weight:800;cursor:pointer}.eyebrow{margin:0 0 12px;color:#9c7415;font-size:.68rem;font-weight:800;letter-spacing:.18em}.eyebrow.light{color:var(--gold)}.hero{position:relative;min-height:680px;display:flex;align-items:flex-end;overflow:hidden;background:var(--deep);color:#fff}.hero-media,.hero-shade{position:absolute;inset:0}.hero-media img{width:100%;height:100%;object-fit:cover}.hero-shade{background:linear-gradient(90deg,rgba(11,16,12,.94) 0%,rgba(11,16,12,.78) 46%,rgba(11,16,12,.18) 100%),linear-gradient(0deg,rgba(11,16,12,.54),transparent 55%)}.hero-content{position:relative;z-index:1;width:min(1180px,100%);margin:0 auto;padding:80px 22px}.hero h1{max-width:900px;margin:0;font:600 clamp(4rem,8vw,7.4rem)/.87 Oswald,sans-serif;text-transform:uppercase;letter-spacing:-.055em}.hero h1 em{font-style:normal;color:var(--gold)}.hero-copy{max-width:660px;margin:24px 0;color:#d2dad0;font-size:1.15rem;line-height:1.6}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 20px;border-radius:999px;border:1px solid transparent;text-decoration:none;font-weight:800;cursor:pointer}.button.primary{background:var(--gold);color:var(--deep)}.button.secondary{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.24);color:#fff;backdrop-filter:blur(12px)}.button.dark{background:var(--ink);color:#fff}.button.full{width:100%}.hero-proof{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.hero-proof span{padding:8px 12px;border:1px solid rgba(255,255,255,.14);border-radius:999px;color:#bac5b9;font-size:.72rem;font-weight:700}.hero-proof b{color:#fff}.ranking-strip{padding:72px max(22px,calc((100vw - 1180px)/2));background:#ece7dc}.strip-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:26px}.strip-heading h2,.section-heading h2,.score-intro h2,.passport h2,.partner-cta h2,.final-cta h2,.dialog h2{margin:0;font:600 clamp(2.5rem,5vw,4.8rem)/.94 Oswald,sans-serif;text-transform:uppercase;letter-spacing:-.045em}.top-rankings{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.ranking-card{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:20px;border:1px solid #d2d6cd;border-radius:18px;background:var(--paper)}.ranking-card>strong{font:600 2.6rem Oswald,sans-serif;color:#a5812d}.ranking-card h3{margin:0 0 4px;font-size:1rem}.ranking-card p{margin:0;color:var(--muted);font-size:.76rem}.ranking-card button{border:0;background:none;font-weight:800;cursor:pointer}.skeleton{height:100px;border-radius:18px;background:linear-gradient(90deg,#e0dbd0,#f2eee6,#e0dbd0);background-size:200% 100%;animation:shimmer 1.4s infinite}@keyframes shimmer{to{background-position:-200% 0}}.section{padding:100px max(22px,calc((100vw - 1180px)/2))}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:36px}.section-heading>p{max-width:560px;margin:0;color:var(--muted);line-height:1.65}.discover-tools{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:25px}.search-box{display:flex;align-items:center;gap:10px;flex:1;max-width:560px;padding:0 15px;border:1px solid var(--line);border-radius:14px;background:#fff}.search-box input{width:100%;min-height:50px;border:0;outline:0;background:transparent}.filter-row{display:flex;gap:7px;flex-wrap:wrap}.filter-row button{min-height:38px;padding:0 13px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--muted);font-weight:800;cursor:pointer}.filter-row button.active{background:var(--ink);border-color:var(--ink);color:#fff}.discover-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px;align-items:start}.restaurant-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.restaurant-card{overflow:hidden;border:1px solid var(--line);border-radius:21px;background:var(--paper);transition:.2s ease}.restaurant-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.card-visual{position:relative;height:190px;background:#dfe3da;overflow:hidden}.card-visual img{width:100%;height:100%;object-fit:cover}.browser-bar{position:absolute;top:10px;left:10px;right:10px;display:flex;align-items:center;gap:4px;padding:7px 10px;border-radius:10px;background:rgba(255,255,255,.9);box-shadow:0 5px 20px rgba(0,0,0,.12);font-size:.62rem;color:#6f776e}.browser-bar i{width:6px;height:6px;border-radius:50%;background:#b4bbb2}.save-button{position:absolute;right:12px;bottom:12px;width:39px;height:39px;border:0;border-radius:50%;background:rgba(17,24,18,.88);color:#fff;font-size:1.1rem;cursor:pointer}.card-body{padding:19px}.card-head{display:flex;justify-content:space-between;gap:12px;align-items:start}.card-head h3{margin:0;font-size:1.13rem}.price{white-space:nowrap;font-size:.78rem;font-weight:800}.card-meta{margin:5px 0 14px;color:var(--muted);font-size:.76rem}.menu-lines{display:grid;gap:7px;padding:13px 0;border-top:1px solid #e5e7e1;border-bottom:1px solid #e5e7e1}.menu-lines div{display:flex;justify-content:space-between;gap:12px;font-size:.75rem}.menu-lines b{white-space:nowrap}.card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.card-actions button{min-height:42px;border-radius:11px;font-weight:800;cursor:pointer}.view-button{border:1px solid var(--line);background:transparent}.grade-button{border:0;background:var(--ink);color:#fff}.verified-line{display:flex;align-items:center;gap:7px;margin-top:11px;color:#5f6d60;font-size:.66rem;font-weight:800}.verified-line:before{content:"✓";display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:#dce9dc;color:#276037}.route-panel{position:sticky;top:92px;padding:24px;border-radius:22px;background:var(--green);color:#fff;box-shadow:var(--shadow)}.route-panel h3{margin:0 0 9px;font:600 2rem Oswald,sans-serif;text-transform:uppercase}.route-panel>p{color:#c2ccc0;line-height:1.55;font-size:.85rem}.route-list{display:grid;gap:7px;margin:22px 0}.route-list>span{color:#99a697;font-size:.78rem}.route-item{display:flex;justify-content:space-between;gap:8px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:.78rem}.route-item button{border:0;background:transparent;color:#fff;cursor:pointer}.text-button{display:block;margin:12px auto 0;border:0;background:transparent;color:#aebbaa;font-weight:700;cursor:pointer}.score-standard{display:grid;grid-template-columns:.82fr 1.18fr;gap:70px;background:#ece7dc}.score-intro>p:not(.eyebrow){max-width:520px;color:var(--muted);line-height:1.65}.score-stack{display:grid;border-top:1px solid #cdd2c8}.score-stack div{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid #cdd2c8}.score-stack span{color:#9a8060;font:600 1.1rem Oswald,sans-serif}.score-stack b{font-size:.94rem}.score-stack em{font:600 1.3rem Oswald,sans-serif;font-style:normal}.passport{display:grid;grid-template-columns:1.05fr .95fr;min-height:650px;background:var(--deep);color:#fff}.passport-media{overflow:hidden}.passport-media img{width:100%;height:100%;object-fit:cover}.passport-copy{display:flex;flex-direction:column;justify-content:center;padding:70px max(26px,calc((100vw - 1180px)/2)) 70px 70px}.passport-copy>p:not(.eyebrow){max-width:540px;color:#c3ccc1;line-height:1.65}.passport-steps{display:grid;grid-template-columns:repeat(4,1fr);margin:24px 0 30px}.passport-steps span{display:grid;gap:5px;padding:12px 10px;border-left:1px solid rgba(255,255,255,.14);font-size:.76rem}.passport-steps b{color:var(--gold);font:600 1.3rem Oswald,sans-serif}.partner-cta{display:flex;justify-content:space-between;align-items:end;gap:60px}.partner-cta>div{max-width:760px}.partner-cta p:not(.eyebrow){color:var(--muted);line-height:1.65}.final-cta{position:relative;min-height:500px;display:grid;place-items:center;overflow:hidden;color:#fff;text-align:center}.final-cta img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.final-cta:after{content:"";position:absolute;inset:0;background:rgba(10,15,11,.72)}.final-cta>div{position:relative;z-index:1;padding:40px 20px}.final-cta h2{margin-bottom:25px}footer{display:flex;align-items:center;gap:28px;padding:30px max(22px,calc((100vw - 1180px)/2));background:#0c110d;color:#fff}.brand.inverse{color:#fff}footer p{margin-left:auto;color:#8f9b8e;font-size:.76rem}footer>div{display:flex;gap:18px}footer a{color:inherit}.dialog{width:min(760px,calc(100% - 24px));max-height:calc(100vh - 24px);padding:0;border:0;border-radius:24px;background:transparent;overflow:auto}.dialog::backdrop{background:rgba(7,11,8,.72);backdrop-filter:blur(8px)}.dialog-shell,.grade-sheet,.lead-sheet{position:relative;padding:28px;border-radius:24px;background:var(--paper);box-shadow:0 30px 90px rgba(0,0,0,.3)}.dialog-close{position:absolute;top:14px;right:14px;z-index:2;width:38px;height:38px;border:0;border-radius:50%;background:#ecefe8;font-size:1.35rem;cursor:pointer}.detail-hero{margin:-28px -28px 24px;height:250px;overflow:hidden;border-radius:24px 24px 0 0}.detail-hero img{width:100%;height:100%;object-fit:cover}.detail-meta{display:flex;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:.76rem}.detail-menu{display:grid;gap:8px;margin:22px 0}.detail-menu article{display:flex;justify-content:space-between;gap:15px;padding:14px;border:1px solid var(--line);border-radius:12px}.detail-menu h4{margin:0 0 4px}.detail-menu p{margin:0;color:var(--muted);font-size:.72rem}.detail-actions{display:flex;gap:9px;flex-wrap:wrap}.grade-dialog{width:min(820px,calc(100% - 20px))}.grade-head{display:flex;justify-content:space-between;gap:20px;align-items:start;padding-right:44px}.live-score{text-align:right}.live-score strong{font:600 4rem/.8 Oswald,sans-serif;color:#a87911}.live-score span{color:var(--muted)}.live-score small{display:block;margin-top:7px;font-size:.7rem;font-weight:800;text-transform:uppercase}.restaurant-select,.review-field,.lead-sheet label{display:grid;gap:7px;margin:20px 0 14px;font-size:.72rem;font-weight:800}.restaurant-select select,.review-field textarea,.lead-sheet input{width:100%;border:1px solid var(--line);border-radius:12px;background:#fafbf8;padding:13px;color:var(--ink)}.review-field textarea{min-height:82px;resize:vertical}.review-field span{color:#9aa097;font-weight:500}.grade-rails{display:grid;grid-template-columns:1fr 1fr;gap:9px}.grade-rail{padding:13px 14px;border:1px solid var(--line);border-radius:14px;background:#fff}.rail-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:9px}.rail-head span{font-size:.76rem;font-weight:800}.rail-head output{font:600 1rem Oswald,sans-serif}.grade-rail input[type=range]{width:100%;accent-color:#b68b23}.identity{margin:13px 0}.identity summary{cursor:pointer;color:var(--muted);font-size:.76rem;font-weight:700}.identity>div{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.identity input{width:100%;padding:11px;border:1px solid var(--line);border-radius:10px}.form-status{min-height:20px;margin:10px 0 0;color:#8f322f;font-size:.78rem}.share-result{margin-top:18px;padding:22px;border-radius:18px;background:var(--deep);color:#fff;text-align:center}.share-result strong{display:block;font:600 4rem/.9 Oswald,sans-serif;color:var(--gold)}.share-result h3{margin:8px 0}.share-buttons{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.share-buttons button{min-height:42px;padding:0 14px;border-radius:999px;font-weight:800;cursor:pointer}.challenge-bar{position:fixed;z-index:300;left:50%;top:14px;transform:translateX(-50%);width:min(760px,calc(100% - 24px));padding:14px 54px 14px 18px;border-radius:16px;background:var(--gold);color:var(--deep);box-shadow:0 16px 50px rgba(0,0,0,.25)}.challenge-bar button{position:absolute;right:12px;top:50%;transform:translateY(-50%);border:0;background:transparent;font-size:1.3rem;cursor:pointer}.toast{position:fixed;z-index:400;left:50%;bottom:22px;transform:translate(-50%,20px);padding:11px 16px;border-radius:999px;background:var(--deep);color:#fff;opacity:0;pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}@media(max-width:900px){.site-header nav{display:none}.site-header .header-grade{margin-left:auto}.top-rankings,.restaurant-grid{grid-template-columns:1fr}.discover-layout,.score-standard,.passport{grid-template-columns:1fr}.route-panel{position:relative;top:auto}.passport-media{height:470px}.passport-copy{padding:60px 24px}.partner-cta{align-items:start;flex-direction:column}.section-heading{align-items:start;flex-direction:column}.discover-tools{align-items:stretch;flex-direction:column}.search-box{max-width:none}.score-standard{gap:40px}}@media(max-width:620px){.site-header{min-height:64px}.brand b{font-size:1.35rem}.header-grade{min-height:38px;padding:0 13px;font-size:.72rem}.hero{min-height:620px}.hero-content{padding:60px 18px}.hero h1{font-size:clamp(3.5rem,17vw,5.4rem)}.hero-actions{display:grid}.button{width:100%}.hero-proof{display:grid}.ranking-strip,.section{padding:65px 17px}.strip-heading{align-items:start;flex-direction:column}.restaurant-grid{grid-template-columns:1fr}.card-visual{height:175px}.route-panel{padding:20px}.score-stack div{grid-template-columns:32px 1fr auto}.passport-media{height:360px}.passport-steps{grid-template-columns:1fr 1fr}.partner-cta{gap:25px}.final-cta{min-height:420px}footer{align-items:flex-start;flex-direction:column}footer p{margin:0}footer>div{flex-direction:column}.dialog,.grade-dialog{width:100%;max-height:100vh;border-radius:0}.dialog-shell,.grade-sheet,.lead-sheet{min-height:100vh;border-radius:0;padding:22px 17px}.grade-head{padding-right:35px}.grade-head h2{font-size:2.6rem}.live-score strong{font-size:3.2rem}.grade-rails{grid-template-columns:1fr}.identity>div{grid-template-columns:1fr}.detail-hero{margin:-22px -17px 20px;border-radius:0;height:220px}.challenge-bar{top:8px}}

/* v12 customer-obsession rebuild */
.signal-bar{display:flex;justify-content:center;gap:28px;padding:8px 18px;background:#0a0f0b;color:#c8d0c5;font-size:.68rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.site-header{top:0}.hero{min-height:720px}.hero-content{max-width:780px}.hero h1{max-width:760px}.hero-search{max-width:690px;margin-top:28px}.hero-search>label{display:block;margin-bottom:8px;color:#dce3d9;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.hero-search>div{display:grid;grid-template-columns:1fr auto;padding:7px;border-radius:16px;background:rgba(255,255,255,.97);box-shadow:0 18px 55px rgba(0,0,0,.28)}.hero-search input{min-width:0;border:0;background:transparent;padding:0 14px;font:600 .95rem DM Sans,sans-serif;color:#101712;outline:0}.hero-search button{min-height:50px;border:0;border-radius:11px;padding:0 22px;background:#d4a62f;color:#111812;font-weight:900;cursor:pointer}.hero-grade-link{margin-top:14px;border:0;background:transparent;color:#fff;font-weight:800;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.strip-heading>p{max-width:390px;color:var(--muted);font-size:.82rem;line-height:1.5}.proof-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center;background:#f1ede4}.proof-copy>p:not(.eyebrow){max-width:560px;color:var(--muted);line-height:1.7}.proof-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.proof-grid article{display:grid;gap:4px;padding:22px;border:1px solid #d8d5cb;border-radius:18px;background:rgba(255,255,255,.72)}.proof-grid article:last-child{grid-column:1/-1}.proof-grid b{font:700 2.4rem Oswald,sans-serif;color:#a87911}.proof-grid span{font-weight:800}.passport-progress{margin:28px 0;padding:20px;border-radius:18px;background:rgba(255,255,255,.07)}.passport-progress>div{display:flex;align-items:end;gap:10px}.passport-progress strong{font:700 3.2rem/.9 Oswald,sans-serif;color:var(--gold)}.passport-progress span{color:#c5cec3;font-size:.8rem}.passport-progress progress{width:100%;height:10px;margin:16px 0 9px;accent-color:var(--gold)}.passport-progress p{margin:0;color:#c5cec3;font-size:.78rem}.restaurant-card{isolation:isolate}.restaurant-card:focus-within{outline:3px solid rgba(182,139,35,.25);outline-offset:4px}.card-actions{grid-template-columns:.78fr 1.22fr}.grade-button{background:#b58b25;color:#111812}.ranking-card button{font-weight:900}.mobile-grade{display:none}.grade-sheet{overflow:hidden}.grade-rail{transition:border-color .15s ease,background .15s ease}.grade-rail:focus-within{border-color:#b58b25;background:#fffdf5}.share-result{box-shadow:0 18px 55px rgba(0,0,0,.2)}
@media(max-width:900px){.proof-section{grid-template-columns:1fr}.signal-bar span:nth-child(2){display:none}}
@media(max-width:620px){body{padding-bottom:72px}.signal-bar{justify-content:flex-start;overflow:hidden;white-space:nowrap}.hero{min-height:650px}.hero-search>div{grid-template-columns:1fr}.hero-search button{margin-top:7px}.proof-grid{grid-template-columns:1fr 1fr}.mobile-grade{display:block;position:fixed;z-index:250;left:14px;right:14px;bottom:calc(10px + env(safe-area-inset-bottom));min-height:52px;border:0;border-radius:14px;background:#d4a62f;color:#111812;box-shadow:0 14px 40px rgba(0,0,0,.3);font-weight:900}.passport-copy{padding-bottom:90px}.site-header .header-grade{display:none}}
