/* A compact, useful close for this long restaurant ranking. */
.ranking-close{background:var(--surface);padding:36px 32px 30px;border-radius:4px;margin:20px 0 54px;scroll-margin-top:30px}
.closing-heading{display:flex;align-items:baseline;justify-content:space-between;gap:25px;margin-bottom:30px}
.closing-heading h2{font-size:33px;line-height:1.2;text-wrap:pretty}
.closing-heading>p{font-size:14px;color:var(--muted);margin:0}
.closing-occasions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px}
.occasion-group h3{font-size:24px;line-height:1.2;display:flex;align-items:center;gap:11px;letter-spacing:-.02em}
.closing-icon{width:36px;height:36px;flex-shrink:0;color:var(--accent)}
.occasion-group ul{list-style:none;margin:22px 0 0;padding:0}
.occasion-group li+li{margin-top:18px}
.occasion-group li a{display:flex;justify-content:space-between;align-items:baseline;gap:16px;text-decoration:none;min-height:48px}
.occasion-group strong{font-size:15px;font-weight:600;line-height:1.45;display:block}
.occasion-group small{font-size:12px;color:var(--muted);display:block;margin-top:4px}
.closing-score{font:600 23px/1.2 var(--display);font-variant-numeric:tabular-nums;color:var(--accent)}
.occasion-group a:hover strong{text-decoration:underline;text-underline-offset:4px}
.ranking-about{display:grid;grid-template-columns:1fr 2fr;gap:60px;align-items:start;padding-bottom:25px}
.ranking-about-intro>.closing-icon{width:46px;height:46px;margin-bottom:18px}
.ranking-about h2{font-size:32px;line-height:1.2;text-wrap:pretty}
.ranking-about-intro>p{font-size:15px;color:var(--muted);max-width:29ch;margin-top:15px}
.ranking-about-intro>a{display:inline-flex;gap:12px;font-size:14px;color:var(--accent);margin-top:22px;min-height:44px;align-items:center}
.ranking-question{margin:0;border-bottom:1px solid var(--line)}
.ranking-question:first-child{border-top:1px solid var(--line)}
.ranking-question summary{display:flex;justify-content:space-between;align-items:center;gap:24px;list-style:none;font:600 17px/1.5 var(--body);padding:21px 0;min-height:64px}
.ranking-question summary::-webkit-details-marker{display:none}
.question-mark{position:relative;width:16px;height:16px;flex-shrink:0;color:var(--accent)}
.question-mark:before,.question-mark:after{content:'';position:absolute;background:currentColor;left:0;top:7px;width:16px;height:2px}
.question-mark:after{transform:rotate(90deg)}
.ranking-question[open] .question-mark:after{display:none}
.ranking-question[open] summary{color:var(--accent)}
.ranking-question>div{padding:0 32px 22px 0;max-width:72ch}
.ranking-question p{font-size:15px;line-height:1.8;margin:0}
@media(max-width:1100px){.closing-occasions{grid-template-columns:1fr 1fr;gap:32px 45px}.closing-heading{display:block}.closing-heading>p{margin-top:12px}.ranking-about{gap:35px;grid-template-columns:1fr 1.7fr}}
@media(max-width:700px){.ranking-about{grid-template-columns:1fr;gap:22px}.ranking-close{padding:28px 23px;margin-bottom:38px}.closing-heading h2{font-size:29px}.closing-occasions{gap:28px}.occasion-group h3{font-size:22px}.closing-icon{width:30px;height:30px}.occasion-group li a{gap:10px}.ranking-about h2{font-size:29px}.ranking-about-intro>.closing-icon{margin-bottom:12px;width:38px;height:38px}.ranking-about-intro>p{max-width:40ch}.ranking-about-intro>a{margin-top:9px}.ranking-question summary{font-size:16px;padding-block:19px}.page-top50 .footer-bottom>span{display:block}}
@media(max-width:500px){.closing-occasions{grid-template-columns:1fr;gap:30px}.occasion-group ul{margin-top:16px}.occasion-group li+li{margin-top:12px}.occasion-group h3{font-size:25px}.closing-score{font-size:23px}.ranking-question>div{padding-right:0}.ranking-question summary{gap:18px}}
