@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/pxiEyp8kv8JHgFVrFJA.woff2) format('woff2');
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/pxiByp8kv8JHgFVrLGT9V1s.woff2) format('woff2');
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/pxiByp8kv8JHgFVrLEj6V1s.woff2) format('woff2');
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/pxiByp8kv8JHgFVrLCz7V1s.woff2) format('woff2');
}
@font-face {
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-B4i1UA.woff2) format('woff2');
}
@font-face {
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-NYi1UA.woff2) format('woff2');
}
@font-face {
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-2Y-1UA.woff2) format('woff2');
}
@font-face {
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-4I-1UA.woff2) format('woff2');
}
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K0nXNig.woff2) format('woff2');
}
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K3vXNig.woff2) format('woff2');
}
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K5fQNig.woff2) format('woff2');
}
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K67QNig.woff2) format('woff2');
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}img,svg{max-width:100%}button,input,select,textarea{font:inherit}a,button,input,select,textarea,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex="0"]:focus-visible{outline:3px solid #0875df;outline-offset:4px}table{border-collapse:collapse}th{text-align:left}details>summary{cursor:pointer}main{min-height:55vh}.source-evidence{font-size:.875rem;line-height:1.7;overflow-wrap:anywhere}.source-evidence ul{padding-left:1.2rem}.skip-link{position:absolute;top:-90px;left:16px;z-index:99999;background:white;color:#111;padding:14px}.skip-link:focus{top:8px}.translation-notice{padding:1rem;background:#fff7db;color:#161616;border-bottom:1px solid #dec97f}.local-status{font-size:12px;line-height:1.5}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

@font-face {
  font-family: 'Almarai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/tsstApxBaigK_hnnc1o.woff2) format('woff2');
}
@font-face {
  font-family: 'Almarai';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/tssoApxBaigK_hnnS-aghng.woff2) format('woff2');
}

/* Shared score component, sized to the existing editorial rating slots. */
body[data-site] a.workflow-score[data-score]{--score-star:#dfa921;--score-track:#e4e6e8;display:inline-flex;align-items:center;justify-content:flex-start;gap:12px;width:max-content;max-width:100%;padding:4px 0;margin:0;border:0;border-radius:0;background:none;box-shadow:none;color:#202529;text-align:left;text-decoration:none;line-height:1.2;vertical-align:middle;white-space:nowrap}
body[data-site] .workflow-score .workflow-score__value{display:inline-flex;align-items:baseline;gap:2px;margin:0;padding:0;color:#202529;font-family:inherit;font-size:30px;font-weight:600;line-height:1;letter-spacing:-1px;font-variant-numeric:tabular-nums}
body[data-site] .workflow-score .workflow-score__value>span{color:#7a8087;font-family:inherit;font-size:12px;font-weight:400;line-height:1;letter-spacing:0}
body[data-site] .workflow-score .workflow-score__detail{display:flex;flex-direction:column;align-items:flex-start;gap:5px;color:inherit;min-width:0}
body[data-site] .workflow-score .workflow-score__stars{display:flex;gap:3px;line-height:1}
body[data-site] .workflow-score .workflow-score__star{display:block;flex:none;width:14px;height:14px;background:linear-gradient(to right,var(--score-star) 0 var(--fill),var(--score-track) var(--fill) 100%);clip-path:polygon(50% 0%,61.8% 35.2%,99.8% 38.2%,70.5% 62%,80.8% 98%,50% 77%,19.2% 98%,29.5% 62%,0.2% 38.2%,38.2% 35.2%)}
body[data-site] .workflow-score .workflow-score__label{display:block;color:#69717b;font-family:inherit;font-size:10px;font-weight:400;line-height:1.3;letter-spacing:0;white-space:normal}
body[data-site] a.workflow-score[data-score]:hover .workflow-score__label{text-decoration:underline;text-underline-offset:3px;color:#303740}
body[data-site] .workflow-score--large .workflow-score__value{font-size:46px;letter-spacing:-1.5px}
body[data-site] .workflow-score--large .workflow-score__value>span{font-size:16px}
body[data-site] .workflow-score--large .workflow-score__star{width:18px;height:18px}
body[data-site] .workflow-score--large .workflow-score__label{font-size:11px}
body[data-site] .workflow-score--inline .workflow-score__value{font-size:24px}
body[data-site] .workflow-score--inline .workflow-score__star{width:12px;height:12px}
body[data-site] a.workflow-score--inline[data-score]{gap:9px}
@media(max-width:700px){body[data-site] .workflow-score--large .workflow-score__value{font-size:40px}body[data-site] .workflow-score--large .workflow-score__star{width:16px;height:16px}}

/* Original publication identities; page composition and navigation stay in place. */
body[data-site] a.publication-brand{display:inline-flex;align-items:center;justify-content:flex-start;flex:none;width:208px;height:52px;max-width:100%;margin:0;padding:0;line-height:1;letter-spacing:normal;text-decoration:none;white-space:normal}
body[data-site] a.publication-brand .publication-logo{display:block;width:100%;height:auto;max-height:52px;object-fit:contain;object-position:left center;margin:0;padding:0;border:0}
body[data-site] a.publication-brand .publication-logo--night{display:none}
body[data-site="review"] a.publication-brand{width:200px}
body[data-site="providers"] a.publication-brand{width:198px}
body[data-site="guide"] a.publication-brand{width:220px}
body[data-site="review"] a.publication-brand .publication-logo--day,
body[data-site="providers"] .site-footer a.publication-brand .publication-logo--day,
body[data-site="guide"] .site-footer a.publication-brand .publication-logo--day,
body[data-site="guide"] .site-header:not(.light) a.publication-brand .publication-logo--day{display:none}
body[data-site="review"] a.publication-brand .publication-logo--night,
body[data-site="providers"] .site-footer a.publication-brand .publication-logo--night,
body[data-site="guide"] .site-footer a.publication-brand .publication-logo--night,
body[data-site="guide"] .site-header:not(.light) a.publication-brand .publication-logo--night{display:block}
@media(max-width:700px){body[data-site] a.publication-brand{height:42px}body[data-site="review"] header a.publication-brand{width:186px}body[data-site="providers"] .site-header a.publication-brand{width:180px}body[data-site="guide"] .site-header a.publication-brand{width:205px}body[data-site="guide"] .site-header.light a.publication-brand .publication-logo--day{display:none}body[data-site="guide"] .site-header.light a.publication-brand .publication-logo--night{display:block}}

/* Six complete editions share one route-preserving language selector. */
body[data-site] .publication-languages{position:relative;flex:none;margin:0;font-size:14px;line-height:1.5;text-align:left;letter-spacing:0}
body[data-site] .publication-languages>summary{display:flex;align-items:center;gap:7px;cursor:pointer;list-style:none;white-space:nowrap;padding:10px 0}
body[data-site] .publication-languages>summary::-webkit-details-marker{display:none}
body[data-site] .publication-languages .publication-language-menu{position:absolute;z-index:1000;top:100%;right:0;display:flex;flex-direction:column;gap:0;min-width:180px;padding:8px;background:#fff;border:1px solid #e0e3e7;border-radius:6px;box-shadow:0 12px 30px #10203722;color:#202529}
body[data-site] .publication-languages:not([open]) .publication-language-menu{display:none}
body[data-site] .publication-language-menu a{display:block;width:100%;padding:9px 12px;margin:0;color:#202529;background:transparent;text-decoration:none;font-size:14px;line-height:1.4;white-space:nowrap}
body[data-site] .publication-language-menu a:hover,body[data-site] .publication-language-menu a:focus-visible{background:#f0f2f5;outline-offset:-2px}
body[data-site] .publication-language-menu a[aria-current="true"]{font-weight:600;background:#f0f2f5}
body[data-site] .footer-languages{display:flex;flex-wrap:wrap;gap:12px 20px}
html:lang(de) main :is(p,li,h1,h2,h3,h4){hyphens:auto}
html:lang(ja) body,html:lang(ja) :is(h1,h2,h3,h4,h5,h6,button,input,select,textarea){font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,system-ui,sans-serif;letter-spacing:0;line-break:strict}
html:lang(ja) main :is(p,li,td,dd){line-height:1.8}
html:lang(ja) main :is(h1,h2,h3,h4){line-height:1.4;word-break:normal;overflow-wrap:anywhere}
@media(max-width:900px){body[data-site] .publication-languages .publication-language-menu{left:0;right:auto}body[data-site] .publication-languages>summary{min-height:44px}}

/* Longer translated headlines retain the existing Guide hero proportions. */
html:not(:lang(en)) body[data-site="guide"] .hero h1{font-size:clamp(38px,5.6vw,72px);line-height:1.1;letter-spacing:-2px}
html:lang(ja) body[data-site="guide"] .hero h1{font-size:clamp(36px,5.2vw,68px);line-height:1.4;letter-spacing:0}

html:not(:lang(en)) body[data-site] :is(.btn,.button){white-space:normal;overflow-wrap:anywhere;line-height:1.4}
