/* 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; }
}
/* Scoped additions: quiet focus comparison and an unambiguous author identity. */
.ar-author { border:1px solid #b8cbd9 !important; background:#eaf1f7 !important; padding:20px !important; display:flex !important; gap:18px !important; align-items:center; }
.ar-author img { width:84px !important; height:84px !important; flex:0 0 84px; object-fit:cover; border-radius:50%; }
.ar-author p { margin:0 !important; }
.ar-author-name { font-size:16px !important; line-height:1.6 !important; }
.ar-author-role { font-size:14px !important; line-height:1.6 !important; }
.ar-author-post { display:block; }
.ar-author a { text-decoration:underline; text-underline-offset:3px; }
.ar-head h1 { font-size:clamp(32px,3.25vw,48px) !important; line-height:1.14 !important; }
.ar-section h2 { font-size:28px !important; line-height:1.3 !important; }
.ar-head .lead { font-size:20px !important; line-height:1.65 !important; }
.ar-section p + p { margin-top:18px; }
.ar-section ul, .ar-section ol { padding-left:24px; }
.ar-section li + li { margin-top:10px; }
.ar-body a { text-decoration:underline; text-underline-offset:3px; }
.ar-related a { display:inline-block; border:1px solid #b8cbd9; padding:10px 14px; border-radius:30px; text-decoration:none; }
.focus-comparison .compare-stage { position:relative; aspect-ratio:3/2; width:100%; overflow:hidden; border-radius:14px; --split:50%; }
.focus-comparison .compare-stage img { width:100%; height:100%; object-fit:cover; }
.focus-comparison .scene.affected { position:absolute; inset:0; clip-path:inset(0 0 0 var(--split)); }
.focus-comparison .scene.affected img { filter:blur(3px); transform:scale(1.015); }
.focus-comparison .compare-tag { position:absolute; bottom:14px; top:auto; background:#f6f5ef; padding:7px 12px; border-radius:20px; font:650 15px/1.4 Manrope,sans-serif; color:#183d69; }
.focus-comparison .compare-tag.left { left:14px; }
.focus-comparison .compare-tag.right { right:14px; }
.focus-comparison .compare-handle { position:absolute; top:0; bottom:0; left:var(--split); width:3px; background:#fff; box-shadow:0 0 0 1px #183d6966; }
.focus-slider-label { display:block; margin:14px 0 3px; font-size:16px; font-weight:650; }
#focus-slider { display:block; width:100%; min-height:36px; accent-color:#183d69; }
.viewer-simulation .compare-stage { max-height:66vh; aspect-ratio:3/2; }
.viewer-simulation .compare-stage img { max-height:none; }
.ar-image-viewer .viewer-simulation { display:none; }
.ar-image-viewer.simulation-open .viewer-simulation { display:block; }
.ar-image-viewer.simulation-open > .ar-image-viewer-inner > img { display:none; }
@media(max-width:760px) {
 .ar-author { padding:16px !important; gap:13px !important; }
 .ar-author img { width:76px !important; height:76px !important; flex-basis:76px; }
 .ar-section h2 { font-size:25px !important; }
 .focus-comparison .compare-tag { font-size:12px; padding:5px 8px; bottom:10px; }
 .focus-comparison .compare-tag.left { left:8px; }
 .focus-comparison .compare-tag.right { right:8px; }
}
/* Avoid inherited phone text shrinkage; preserve readable footer navigation. */
.ar-body .ar-section p, .ar-body .ar-section li, .ar-body .ar-section td { font-size:18px !important; line-height:1.7 !important; }
.site-footer .footer-col a { display:block; margin:6px 0; }
.site-footer .footer-bottom a { display:inline-block; }
.site-footer .footer-group > div > a { display:block; margin:7px 0; }
.site-footer .footer-shortcuts a { display:block; margin-bottom:8px; }
.site-footer .footer-essential.footer-clinic-details { grid-column:1 / -1 !important; display:grid !important; grid-template-columns:1fr 1.5fr 1fr !important; width:100% !important; gap:24px !important; margin-top:24px; }
.site-footer .footer-clinic-details > * { min-width:0; width:auto !important; }
.site-footer .footer-clinic-details address { font-style:normal; }
@media(max-width:760px) { .site-footer .footer-essential.footer-clinic-details { grid-template-columns:1fr !important; gap:20px !important; } }
