/* Local review adjustments to the live 24 September article style. */
html { scroll-behavior: smooth; }
.review-ribbon { background:#eaf1f7; border-bottom:1px solid #b8cbd9; color:#183d69; padding:11px max(22px, calc((100vw - 1280px)/2)); font:600 14px/1.5 Manrope, sans-serif; }
.review-ribbon a { color:inherit; text-decoration:underline; text-underline-offset:3px; }
.glasses-hero-copy > p:not(.lead) { font-size:18px; line-height:1.7; max-width:760px; margin-top:18px; }
.ar-head .glasses-hero { max-width:1200px; display:grid; grid-template-columns:minmax(0,1.55fr) minmax(0,1fr); gap:48px; align-items:center; }
.glasses-hero-copy { min-width:0; }
.glasses-hero-figure, .ar-head .glasses-hero-figure { margin:0; min-width:0; }
.glasses-hero-figure .ar-image-open img { aspect-ratio:1 / 1; object-fit:cover; object-position:54% 52%; }
.ar-head h1, .ar-section h2 { max-width:none; text-wrap:balance; }
.ar-body .ar-section p, .ar-body .ar-section li, .ar-body .ar-section td { font-size:18px; line-height:1.7; }
.ar-contents-links a[aria-current="true"] { font-weight:800; color:#183d69; text-decoration:underline; text-underline-offset:4px; }
.ar-figure img { display:block; width:100%; height:auto; }
.ar-image-open { display:block; position:relative; width:100%; padding:0; border:0; background:transparent; text-align:left; cursor:zoom-in; }
.ar-image-open:focus-visible { outline:3px solid #183d69; outline-offset:4px; border-radius:16px; }
.ar-enlarge-cue { position:absolute; top:12px; right:12px; display:grid; place-items:center; width:32px; height:32px; border:2px solid #183d69; border-radius:50%; background:#fff; color:#183d69; font:700 25px/1 Manrope,sans-serif; box-shadow:0 2px 6px #183d6933; }
.ar-image-viewer { width:min(1100px,calc(100vw - 36px)); max-height:calc(100dvh - 36px); padding:0; border:0; border-radius:16px; background:#fff; box-shadow:0 16px 70px #0b264b80; }
.ar-image-viewer::backdrop { background:#091b34c9; }
.ar-image-viewer-inner { padding:18px; }
.ar-image-close { display:block; margin:0 0 12px auto; padding:8px 12px; border:1px solid #b8cbd9; border-radius:10px; background:#eaf1f7; color:#183d69; font:700 15px Manrope,sans-serif; cursor:pointer; }
.ar-image-close:focus-visible { outline:3px solid #183d69; outline-offset:3px; }
.ar-image-viewer img { display:block; max-width:100%; max-height:calc(100dvh - 140px); width:auto; height:auto; margin:auto; object-fit:contain; }
.ar-image-viewer-caption { margin:12px 0 0; color:#37527a; font:500 15px/1.5 Manrope,sans-serif; }
.glasses-table-wrap { overflow-x:auto; margin:24px 0 32px; }
.glasses-table-wrap .ar-table { width:100%; border-collapse:collapse; font-size:18px; line-height:1.6; }
.glasses-table-wrap th, .glasses-table-wrap td { border:1px solid #b8cbd9; text-align:left; vertical-align:top; padding:14px; }
.glasses-table-wrap th { background:#eaf1f7; font-weight:700; }
.glasses-related { background:#eaf1f7; padding:24px; margin-top:32px; border:1px solid #b8cbd9; }
.glasses-related p { display:flex; flex-wrap:wrap; gap:10px 24px; }
.glasses-related a { font-weight:700; }
@media (max-width:1059px) {
  .ar-head .glasses-hero { display:block; }
  .ar-head .glasses-hero-figure { margin-top:28px; max-width:640px; }
  .glasses-hero-figure .ar-image-open img { aspect-ratio:3 / 2; }
}
@media (max-width:760px) {
  .review-ribbon { padding:10px 18px; }
  .ar-head .glasses-hero { display:block; }
  .glasses-hero-copy > p:not(.lead) { font-size:18px; }
  .ar-head .glasses-hero-figure { margin-top:24px; }
  .glasses-hero-figure .ar-image-open img { aspect-ratio:3 / 2; }
  .glasses-table-wrap { overflow:visible; }
  .glasses-table-wrap .ar-table, .glasses-table-wrap tbody, .glasses-table-wrap tr, .glasses-table-wrap td { display:block; width:100%; }
  .glasses-table-wrap thead { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
  .glasses-table-wrap tr { margin:0 0 15px; border:1px solid #b8cbd9; }
  .glasses-table-wrap td { border:0; border-bottom:1px solid #b8cbd9; padding:12px 14px; }
  .glasses-table-wrap td:last-child { border-bottom:0; }
  .glasses-table-wrap td::before { content:attr(data-label); display:block; font-size:13px; font-weight:800; margin-bottom:5px; color:#285581; }
  .glasses-related p { display:block; }
  .glasses-related a { display:block; margin:10px 0; }
}
@media (max-width:380px) {
  .site-footer .footer-top { grid-template-columns:minmax(0,1fr) !important; }
  .site-footer .footer-top > * { min-width:0; }
}
