.wh-review-rating{display:inline-flex;align-items:center;gap:var(--sp-xs)}.wh-review-stars{position:relative;display:inline-block;color:var(--stone);font-size:15px;line-height:1;letter-spacing:1px;white-space:nowrap}.wh-review-stars-fill{position:absolute;inset:0 auto 0 0;overflow:hidden;color:var(--primary)}.wh-review-rating-value{font:700 var(--fs-caption)/1 var(--font-mono);color:var(--ink)}.wh-review-rating-scale{color:var(--mute);font-weight:400}.wh-review-rating-lg{gap:var(--sp-sm)}.wh-review-rating-lg .wh-review-stars{font-size:22px;letter-spacing:2px}.wh-review-rating-lg .wh-review-rating-value{font-size:20px}.wh-review-detail{max-width:1120px;margin:0 auto;padding:32px}.wh-review-hero{position:relative;height:360px;margin-bottom:var(--sp-xl);border:1px solid var(--hairline);border-radius:var(--r-md);overflow:hidden}.wh-review-eyebrow{margin-bottom:var(--sp-md);color:var(--primary);font:700 13px/1 var(--font-mono);text-transform:uppercase;letter-spacing:.1em}.wh-review-title{margin:0 0 var(--sp-sm);font:800 40px/1.1 var(--font-sans);letter-spacing:-.6px;color:var(--ink)}.wh-review-dek{max-width:720px;margin:0 0 var(--sp-md);font:500 19px/1.4 var(--font-sans);color:var(--body)}.wh-review-byline{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-sm) var(--sp-lg);padding-bottom:var(--sp-lg);border-bottom:1px solid var(--hairline);color:var(--mute);font-size:var(--fs-body-sm)}.wh-review-byline-venue{display:inline-flex;align-items:center;gap:var(--sp-xs)}.wh-review-detail .wh-backlink{gap:2px;padding:15px 0;margin:-9px 0 7px;border-radius:0;background:transparent;color:var(--body)}.wh-review-detail .wh-backlink>svg{margin-left:-5px}.wh-review-detail .wh-backlink:focus-visible,.wh-review-detail .wh-backlink:hover{background:transparent;color:var(--ink);text-decoration:none}.wh-review-detail .wh-backlink:focus-visible>span,.wh-review-detail .wh-backlink:hover>span{text-decoration:underline;text-underline-offset:3px}.wh-review-byline-author{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-weight:600}.wh-review-byline-author:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.wh-review-byline-dot{width:4px;height:4px;border-radius:50%;background:var(--primary)}.wh-review-avatar{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:none;overflow:hidden;border:1px solid var(--hairline);border-radius:50%;background:radial-gradient(circle at 50% 38%,#F4E3D2 0,var(--surface-soft) 100%);color:var(--ink)}.wh-review-avatar-byline{width:32px;height:32px;font-size:13px}.wh-review-avatar-card{width:80px;height:80px;font-size:30px}.wh-review-avatar-initials{font:700 1em/1 var(--font-sans);letter-spacing:.02em}.wh-review-column{min-width:0}.wh-review-author{display:flex;gap:var(--sp-xl);margin-top:40px;padding:var(--sp-xl);background:var(--surface-card);border:1px solid var(--hairline);border-radius:var(--r-md);scroll-margin-top:112px}.wh-review-author-body{min-width:0}.wh-review-author-eyebrow{display:block;margin-bottom:var(--sp-sm);font-size:12px}.wh-review-author-name{margin:0 0 6px;font:800 20px/1.2 var(--font-sans);letter-spacing:-.3px;color:var(--ink)}.wh-review-author-role{margin:-2px 0 10px;font-size:14px;line-height:1.4;color:var(--mute)}.wh-review-author-bio{margin:0 0 14px;font-size:15px;line-height:1.55;color:var(--body)}.wh-review-author-bio p{margin:0}.wh-review-author-bio p+p{margin-top:10px}.wh-review-author-links{display:flex;flex-wrap:wrap;gap:var(--sp-sm);margin:0;padding:0;list-style:none}.wh-review-author-link{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--r-full);background:var(--surface-soft);color:var(--ink);text-decoration:none;transition:background-color var(--t-fast) var(--ease-out)}.wh-review-author-link:hover{background:#DCD9CF;color:var(--ink);text-decoration:none}.wh-review-layout{display:grid;grid-template-columns:minmax(0,1fr) 352px;gap:var(--sp-3xl);margin-top:var(--sp-xl)}.wh-review-layout-solo{grid-template-columns:minmax(0,1fr);max-width:720px}.wh-review-side{display:flex;flex-direction:column;gap:var(--sp-lg);align-self:start;min-width:0}.wh-review-verdict{padding:20px}.wh-review-facts,.wh-review-verdict{display:flex;flex-direction:column;gap:var(--sp-md)}.wh-review-fact{display:flex;gap:var(--sp-sm);font-size:var(--fs-body-sm);color:var(--body)}.wh-review-fact svg{flex-shrink:0;margin-top:2px;color:var(--mute)}.wh-review-fact strong{display:block;color:var(--ink)}.wh-review-addr{display:block;margin-top:2px;color:var(--mute);font-size:var(--fs-caption)}.wh-review-map-link{width:100%}.wh-review-rail{display:flex;flex-direction:column;gap:var(--sp-lg)}.wh-review-sidebox{padding:20px}.wh-review-inline-signup{display:none;margin:var(--sp-xl) 0;font-size:var(--fs-body);line-height:var(--lh-body)}.wh-review-sidebox:hover{border-color:var(--hairline)}.wh-review-sidebox .wh-review-sidebox-title{margin:0 0 var(--sp-sm);font:800 18px/1.3 var(--font-sans);letter-spacing:-.2px;color:var(--ink);text-wrap:balance}.wh-review-sidebox .wh-review-sidebox-text{margin:0 0 var(--sp-lg);color:var(--body);font-size:var(--fs-body-sm);line-height:1.55}.wh-review-sidebox .wh-news-row{flex-direction:column}.wh-review-sidebox .wh-news-row .input{flex:none}.wh-review-inline-signup .wh-news-fineprint{margin:10px 0 0;color:var(--mute)}.wh-review-inline-signup .wh-news-success p{margin:0;color:var(--body)}.wh-review-sidebox-events{margin:var(--sp-md) 0;padding:0;list-style:none}.wh-review-sidebox-events li{display:flex;flex-direction:column;gap:2px;padding:var(--sp-sm) 0;border-top:1px solid var(--hairline)}.wh-review-sidebox-events li:first-child{border-top:0;padding-top:0}.wh-review-sidebox-events a{color:var(--ink);font-weight:700;font-size:var(--fs-body-sm);line-height:1.35}.wh-review-sidebox-events a:hover{color:var(--link)}.wh-review-sidebox-events span{color:var(--mute);font-size:var(--fs-caption)}.wh-review-sidebox-more{display:inline-flex;align-items:center;gap:var(--sp-xs);color:var(--link);font-weight:700;font-size:var(--fs-body-sm)}.wh-review-weather{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--sp-xs) var(--sp-md);margin:var(--sp-xs) 0 var(--sp-sm)}.wh-review-weather-temp{font:800 36px/1 var(--font-sans);letter-spacing:-.6px;color:var(--ink)}.wh-review-weather-conditions{color:var(--body);font-weight:600}.wh-review-sidebox-note{margin:0;color:var(--mute);font-size:var(--fs-caption)}.wh-review-body{color:var(--charcoal);font-size:18px;line-height:1.6}.wh-review-body>:first-child{margin-top:0}.wh-review-body :where(b:not(h2 *):not(h3 *):not(h4 *):not(th *)),.wh-review-body :where(strong:not(h2 *):not(h3 *):not(h4 *):not(th *)){font-weight:600}.wh-review-body :where(h2),.wh-review-heading{margin:var(--sp-xxl) 0 var(--sp-md);font:800 26px/1.25 var(--font-sans);letter-spacing:-.4px;color:var(--ink)}.wh-review-body :where(h3),.wh-review-subheading{margin:var(--sp-xl) 0 var(--sp-sm);font:700 19px/1.35 var(--font-sans);letter-spacing:-.2px;color:var(--ink)}.wh-review-body :where(h4),.wh-review-minorheading{margin:var(--sp-lg) 0 var(--sp-sm);font:700 17px/1.4 var(--font-sans);color:var(--ink)}.wh-review-body :where(p),.wh-review-paragraph{margin:0 0 var(--sp-lg);color:var(--charcoal)}.wh-review-body a{color:var(--link);text-decoration:underline;text-decoration-color:var(--primary);text-decoration-thickness:1px;text-underline-offset:3px}.wh-review-body a:hover{text-decoration-color:currentColor}.wh-review-body :where(ol),.wh-review-body :where(ul),.wh-review-list{margin:0 0 var(--sp-lg);padding-left:var(--sp-xl)}.wh-review-body :where(li),.wh-review-list li{margin-bottom:var(--sp-sm)}.wh-review-body :where(li)::marker,.wh-review-list li::marker{color:var(--primary)}.wh-review-body :where(li)>:where(ol),.wh-review-body :where(li)>:where(ul),.wh-review-list .wh-review-list{margin:var(--sp-sm) 0 0}.wh-review-body :where(li)>:where(p:last-child),.wh-review-list li>.wh-review-paragraph:last-child{margin-bottom:0}.wh-review-body :where(blockquote),.wh-review-quote{margin:var(--sp-xl) 0;padding:var(--sp-md) 0 var(--sp-md) var(--sp-xl);border-left:3px solid var(--primary);color:var(--charcoal);font:500 20px/1.5 var(--font-sans)}.wh-review-body :where(blockquote) p,.wh-review-quote p{margin:0;color:inherit;font:inherit}.wh-review-body :where(blockquote) p+p,.wh-review-quote p+p{margin-top:var(--sp-md)}.wh-review-body :where(figure),.wh-review-figure{margin:var(--sp-xl) 0}.wh-review-body :where(img),.wh-review-image{display:block;box-sizing:border-box;width:100%;height:auto;border:1px solid var(--hairline);border-radius:var(--r-md)}.wh-review-body>.wh-review-image,.wh-review-body>:where(img){margin:var(--sp-xl) 0}.wh-review-body :where(figcaption),.wh-review-caption{margin-top:var(--sp-sm);color:var(--mute);font-size:var(--fs-caption);line-height:1.5}.wh-review-body :where(figcaption):empty,.wh-review-caption:empty{display:none}.wh-review-body :where(hr),.wh-review-rule{margin:var(--sp-xxl) 0;border:0;height:1px;background:var(--hairline)}.wh-review-table-wrap{margin:var(--sp-xl) 0;overflow-x:auto;border:1px solid var(--hairline);border-radius:var(--r-md);background:var(--surface-card)}.wh-review-table-wrap:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.wh-review-body :where(table),.wh-review-table{width:100%;border-collapse:collapse;font-size:var(--fs-body-sm);line-height:1.5}.wh-review-body :where(td),.wh-review-body :where(th),.wh-review-table td,.wh-review-table th{padding:var(--sp-sm) var(--sp-md);border-bottom:1px solid var(--hairline);text-align:left;vertical-align:top}.wh-review-body :where(th),.wh-review-table th{background:var(--surface-soft);color:var(--ink);font-weight:700}.wh-review-body :where(tr:last-child)>:where(td),.wh-review-table tr:last-child>td{border-bottom:0}.wh-review-body :where(code),.wh-review-code{padding:1px var(--sp-xs);border-radius:var(--r-sm);background:var(--surface-soft);font:.9em var(--font-mono)}.wh-review-body :where(pre),.wh-review-pre{margin:0 0 var(--sp-lg);padding:var(--sp-md) var(--sp-lg);overflow-x:auto;border-radius:var(--r-md);background:var(--surface-soft);font-size:var(--fs-body-sm);line-height:1.5}.wh-review-body :where(pre) code,.wh-review-pre .wh-review-code{padding:0;background:none}@media (max-width:940px){.wh-review-layout{grid-template-columns:minmax(0,1fr);gap:var(--sp-xl)}.wh-review-rail{display:none}.wh-review-inline-signup{display:block}}@media (max-width:880px){.wh-review-detail{padding:16px max(16px,env(safe-area-inset-right)) 96px max(16px,env(safe-area-inset-left))}}@media (max-width:700px){.wh-review-hero{height:220px}.wh-review-title{font-size:28px;letter-spacing:-.4px}.wh-review-dek{font-size:17px}.wh-review-author{gap:var(--sp-lg);padding:20px 16px}.wh-review-avatar-card{width:56px;height:56px;font-size:22px}.wh-review-body{font-size:17px}.wh-review-body :where(h2),.wh-review-heading{font-size:22px;margin-top:var(--sp-xl)}.wh-review-body :where(blockquote),.wh-review-quote{font-size:18px;padding-left:var(--sp-lg)}.wh-review-body :where(table),.wh-review-table{font-size:var(--fs-caption)}.wh-review-body :where(td),.wh-review-body :where(th),.wh-review-table td,.wh-review-table th{padding:var(--sp-sm)}}