/* Review-only presentation. Existing review.css owns charts, controls and card states. */
.acmrv-dashboard{border:1px solid #cdeaf3;border-radius:9px;margin:30px 0;padding:18px;background:#f6fcff}
.acmrv-dashboard>summary{cursor:pointer;font-weight:700;font-size:18px;color:#174367;list-style:revert}
.acmrv-dashboard>summary .acmrv-script{font-size:26px;margin-left:15px}
.acmrv-dashboard>summary small{display:block;font-size:12px;font-weight:400;margin:6px 0}
.acmrv .rv-section-desc{text-align:left}
#body_wrap.acmrv-enabled{padding-top:0!important;background:#fff}
.acmrv-enabled #content{max-width:none;padding:0!important;margin:0!important}
.acmrv-enabled .l-mainContent{width:100%;max-width:none!important;padding:0!important;float:none;border-radius:0;box-shadow:none}
.acmrv-enabled .l-mainContent__inner{padding:0!important}
.acmrv-enabled #breadcrumb{margin-top:20px!important;margin-bottom:16px}
.acmrv-enabled #acmm-header:not(.acmh-scrolled) .acmm-header-inner{background:transparent;border-color:transparent;box-shadow:none}
.acmrv-enabled #acmm-header .acmm-brand{position:relative;isolation:isolate}
.acmrv-enabled #acmm-header:not(.acmh-scrolled) .acmm-brand:before{content:'';position:absolute;inset:-9px -18px;z-index:-1;background:radial-gradient(ellipse,#fff 25%,#ffffffdd 55%,#ffffff50 73%,transparent 85%);filter:blur(7px)}
.acmrv-enabled #acmm-header:not(.acmh-scrolled) .acmn-panel:not(.acmn-category-panel) summary{background:#ffffffb8}
.acmrv-enabled #acmm-header:not(.acmh-scrolled) .acmm-desktop-nav{background:#ffffffa6}
.review-page.acmrv{--c-primary:#00add0;--c-primary-dark:#0087a6;--c-text-main:#123c61;--c-text-sub:#49657d;--c-text-light:#627b90;--c-border:#cdeaf3;--c-bg-light:#f1f9fc;--c-star-on:#ba7410;color:#123c61;padding:0!important;margin:0!important;font-size:15px;line-height:1.8;max-width:none!important;background:#fff}
.acmrv :is(h1,h2,h3){color:#11375d}
.acmrv a{text-underline-offset:3px}
.acmrv :is(button,a,summary,select):focus-visible{outline:3px solid #0877b2;outline-offset:4px}
.acmrv [id]{scroll-margin-top:125px}
.acmrv-hero{position:relative;isolation:isolate;min-height:545px;overflow:hidden}
.acmrv-hero picture{position:absolute;inset:0;z-index:-2;mask-image:linear-gradient(#000 89%,transparent)}
.acmrv-hero picture img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.acmrv-hero-inner{max-width:1320px;margin:auto;padding:140px 32px 40px;position:relative;min-height:545px}
.acmrv-hero-copy{width:59%;max-width:740px;text-shadow:0 0 12px #fff}
.acmrv .acmrv-hero h1{font-size:clamp(27px,3vw,43px);letter-spacing:.015em;line-height:1.45;margin:5px 0 15px;padding:0;background:none;border:0;box-shadow:none}
.acmrv .acmrv-hero h1:before,.acmrv .acmrv-hero h1:after{content:none}
.acmrv-hero-copy>p{font-size:14px;margin:12px 0;line-height:1.85}
.acmrv .acmrv-tagline{font-size:20px;font-weight:700;margin:0 0 12px}
.acmrv-script,.acmrv .rv-en-label{font-family:'ACM Editorial Hand',cursive;color:#0099ba;font-size:30px;line-height:1.2;letter-spacing:0;font-weight:400;text-transform:none}
.acmrv-script{display:inline-block;transform:rotate(-5deg)}
.acmrv-badges{display:flex;gap:8px;flex-wrap:wrap;margin:17px 0}
.acmrv-badges span{background:#ffffffdd;border:1px solid #b3e3f2;padding:5px 10px;border-radius:6px;font-size:12px;font-weight:700}
.acmrv-hero-links{display:flex;flex-wrap:wrap;gap:12px}
.acmrv-hero-links a{border:1px solid #00afd1;background:#ffffffdd;border-radius:6px;padding:12px 27px;color:#0084a5;font-size:15px;font-weight:700;text-decoration:none;text-shadow:none}
.acmrv-hero-links a:first-child{background:linear-gradient(100deg,#00bbda,#009ed0);color:#fff;box-shadow:0 6px 16px #009dc421}
.acmrv .acmrv-updated{font-size:11px;color:#4a6981;margin-top:13px}
.acmrv-bubble{position:absolute;right:32px;bottom:90px;max-width:210px;background:#fffffff2;border-radius:45% 48% 44% 40%;padding:18px 22px;font-size:13px;font-weight:700;line-height:1.6;transform:rotate(-4deg);box-shadow:0 4px 20px #17355209}
.acmrv-bubble:after{content:'';position:absolute;bottom:-9px;left:28px;border-top:18px solid #fffffff2;border-right:20px solid transparent;transform:rotate(15deg)}
.acmrv-credit{position:absolute;right:32px;bottom:30px;text-align:right;font-size:11px;font-weight:700;background:transparent;border-radius:0;padding:4px 9px;color:#345b77;text-shadow:0 0 5px #fff}
.acmrv-credit small{display:block;font-size:9px;font-weight:400}
.acmrv-sp{display:none}
.acmrv-content{max-width:1280px;padding:0 32px 30px;margin:auto}
.acmrv .rv-section-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px;margin:42px 0 22px;border:0;padding:0}
.acmrv .rv-section-title{order:-1;font-size:25px!important;font-weight:700!important;border-left:4px solid #ffe673!important;padding:0 0 0 12px!important;margin:0!important;background:none!important;box-shadow:none;line-height:1.5!important;letter-spacing:.01em}
.acmrv .rv-section-title:before,.acmrv .rv-section-title:after{content:none!important}
.acmrv .rv-section-head .rv-en-label{margin:0;transform:rotate(-5deg)}
.acmrv .rv-section-desc{flex-basis:100%;font-size:13px;line-height:1.8;margin:0}
.acmrv-categories .rv-section-head{margin-top:0}
.acmrv .rv-cats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 22px}
.acmrv .rv-cat{display:grid;grid-template-columns:66px 1fr;grid-template-rows:auto auto auto;gap:2px 14px;padding:20px;border:1px solid #cdeaf3;border-radius:8px;background:#fff;box-shadow:none;text-decoration:none;min-width:0}
.acmrv .rv-cat__ico{grid-row:1 / 4;width:60px;height:60px;align-self:center;background:none;color:#00acd0}
.acmrv .rv-cat__ico svg{width:52px;height:52px}
.acmrv .rv-cat__name{font-size:17px;font-weight:700}.acmrv .rv-cat__use{font-size:12px;line-height:1.6;color:#4a6881}.acmrv .rv-cat__cta{font-size:11px;color:#007e9e;margin:5px 0 0}
.acmrv .rv-toc{border-radius:8px;background:#f3fbfe;padding:9px;margin:0 0 35px}
.acmrv .rv-toc__list{justify-content:space-between}.acmrv .rv-toc__link{font-size:12px;padding:6px 10px;color:#167f9f}
.acmrv .rv-ranking-controls{gap:18px;align-items:center}.acmrv .rv-ranking-tabs{margin:0}.acmrv .rv-ranking-tab{border-radius:6px}
.acmrv .rv-ranking-sort{border:1px solid #cdeaf3;background:#fff;border-radius:7px;padding:5px;gap:4px}
.acmrv .rv-ranking-sort__tab{font-size:12px;padding:7px 13px;border-radius:4px}
.acmrv .rv-ranking-sort__tab.is-active{color:#fff;background:#00a9d0}.acmrv .rv-ranking-sort__label{font-size:11px}
/* Equal-size vertical cards for every rank and every sorting axis. */
.acmrv .rv-ranking-list.is-active{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.acmrv .rv-ranking-list .rv-ranking-item,.acmrv .rv-ranking-list .rv-ranking-item:first-child{display:flex;flex-direction:column;align-items:stretch;gap:12px;padding:25px 20px 17px;border:1px solid #cdeaf3;border-radius:9px;background:#fff;box-shadow:0 4px 18px #06759908;position:relative;min-width:0}
.acmrv .rv-ranking-item__no{position:absolute;top:12px;left:12px;width:30px;height:30px;z-index:1}
.acmrv-logo{height:115px;display:flex;align-items:center;justify-content:center;padding:20px 6px 5px}
.acmrv-logo img{display:block;width:100%;height:85px;max-width:220px;object-fit:contain;contain:none!important;contain-intrinsic-size:none!important}
.acmrv-brand-name{font-size:23px;font-weight:700;text-align:center;line-height:1.4;color:#1d5279}
.acmrv-logo[data-brand="rakuten-turbo"] img{background:#bf0060;border-radius:4px;padding:14px}
.acmrv-card-logo{height:68px;display:flex;align-items:center;margin:0 0 14px}
.acmrv-card-logo img{width:180px;max-width:85%;height:60px;object-fit:contain;object-position:left;contain:none!important;contain-intrinsic-size:none!important}
.acmrv-card-logo[data-brand="rakuten-turbo"] img{background:#bf0060;border-radius:4px;padding:10px}
.acmrv-logo[data-brand="zeus-wifi"] img,.acmrv-card-logo[data-brand="zeus-wifi"] img{background:#19222b;border-radius:4px;padding:12px}
.acmrv .rv-ranking-list .rv-ranking-item__name,.acmrv .rv-ranking-list .rv-ranking-item:first-child .rv-ranking-item__name{font-size:16px;line-height:1.6}
.acmrv .rv-ranking-item__main{flex:1;width:100%}.acmrv .rv-ranking-item__provider{font-size:10px;color:#647b8f}.acmrv .rv-ranking-item__affil{display:inline-block;margin:4px 0 0;font-size:9px}
.acmrv .rv-ranking-item__rating{align-items:flex-start;gap:3px}
.acmrv .rv-ranking-list .rv-rating-num-lg,.acmrv .rv-ranking-list .rv-ranking-item:first-child .rv-rating-num-lg{font-size:24px;color:#b84455;line-height:1.3}
.acmrv .rv-ranking-item__count{font-size:12px}
.acmrv-rank-link{display:block;text-align:center;padding:7px 4px;border:1px solid #7acfe6;border-radius:5px;font-size:12px;font-weight:700;color:#0086a6;text-decoration:none}
.acmrv-choices{padding:1px 0 24px;margin:30px 0;background:linear-gradient(100deg,#e9f9ff,#f6fdff);box-shadow:0 0 0 18px #f1fbfe;border-radius:16px}
.acmrv-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}
.acmrv-choice{border:1px solid #cae8f3;border-radius:8px;background:#fff;min-width:0}
.acmrv-choice>summary{display:flex;align-items:center;gap:16px;padding:12px;cursor:pointer;list-style:none}.acmrv-choice>summary::-webkit-details-marker{display:none}
.acmrv-choice>summary img{width:34%;height:155px;object-fit:cover;border-radius:5px}.acmrv-choice>summary span{flex:1}.acmrv-choice>summary strong{display:block;font-size:17px}.acmrv-choice>summary small{display:block;font-size:12px;line-height:1.7;margin:6px 0}.acmrv-choice>summary b{display:inline-block;font-size:12px;color:#0087a6;border:1px solid #a4daeb;border-radius:4px;padding:4px 12px}
.acmrv-choice[open]{grid-column:1/-1}.acmrv-choice[open]>summary img{width:160px;height:115px}
.acmrv-choice-body{padding:0 18px 18px}.acmrv-choice-body .rv-section-head{margin:18px 0}.acmrv-choice-body .rv-section-title{font-size:20px!important}
.acmrv .rv-filters{background:#f4fbfe;border:1px solid #d1eaf3;border-radius:8px;padding:17px;gap:12px}
.acmrv .rv-filter-select{max-width:100%;background-color:#fff}
.acmrv-summary{margin:16px 0 24px;border:1px solid #cdeaf3;border-radius:8px;padding:13px}
.acmrv-summary>summary{font-size:14px;cursor:pointer;font-weight:700;color:#166183}
.acmrv-summary .rv-svcsum-wrap{margin:15px 0 0}
.acmrv .rv-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}
.acmrv .rv-card{padding:20px;border-color:#cdeaf3;border-radius:9px;box-shadow:0 3px 15px #046c8506;min-width:0}
.acmrv .rv-card__service-name{font-size:15px}.acmrv .rv-card__body{font-size:13px;line-height:1.8}.acmrv .rv-card__actions{flex-wrap:wrap}
.acmrv .rv-card__head{flex-wrap:wrap}.acmrv .rv-card__persona{min-width:0}
.acmrv .rv-pagination__btn{background:#fff;color:#0087a6;border:1px solid #70cce6;box-shadow:none;border-radius:6px;min-width:280px}
.acmrv-method-art{float:left;width:32%;margin:0 24px 18px 0;text-align:center}.acmrv-method-art img{width:100%;height:auto;border-radius:8px}.acmrv-method-art p{font-size:14px;font-weight:700;line-height:1.7}
.acmrv .rv-method-summary{width:auto;overflow:hidden}.acmrv .rv-method-summary th{background:#eaf8fd;color:#185275}.acmrv .rv-method-summary td{font-size:12px}.acmrv .rv-method-details{clear:both}
.acmrv .rv-insights{margin:40px 0}.acmrv .rv-about-fold{border-color:#cdeaf3;border-radius:8px}
.acmrv .rv-about-fold__summary .rv-en-label{font-size:23px}
.acmrv-closing{position:relative;min-height:240px;isolation:isolate;overflow:hidden}
.acmrv-closing>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-1;mask-image:linear-gradient(transparent,#000 20%)}
.acmrv-closing>p{max-width:1100px;margin:auto;padding:90px 30px 45px;font-size:27px;font-weight:700;text-shadow:0 0 10px #fff,0 0 20px #fff;line-height:1.7}
.acmrv-closing .acmrv-script{display:block;margin:10px 0;font-weight:400;font-size:28px}
@media(max-width:1050px){.acmrv-hero-inner{padding-top:128px}.acmrv .acmrv-hero h1{font-size:30px}.acmrv .acmrv-tagline{font-size:17px}.acmrv-bubble{display:none}.acmrv .rv-cat{padding:14px;grid-template-columns:45px 1fr;gap:3px 8px}.acmrv .rv-cat__ico,.acmrv .rv-cat__ico svg{width:40px;height:40px}.acmrv .rv-cat__name{font-size:14px}.acmrv .rv-ranking-list.is-active{grid-template-columns:repeat(2,minmax(0,1fr))}.acmrv .rv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.acmrv-choice>summary{gap:8px}.acmrv-choice>summary strong{font-size:15px}.acmrv-method-art{width:35%}}
@media(max-width:699px){.acmrv-hero,.acmrv-hero-inner{min-height:825px}.acmrv-hero-inner{padding:100px 22px 30px}.acmrv-hero picture{top:130px;mask-image:linear-gradient(transparent,#000 12%,#000 94%,transparent)}.acmrv-hero picture img{object-fit:cover;object-position:center bottom}.acmrv-hero-copy{width:100%;max-width:480px}.acmrv .acmrv-hero h1{font-size:clamp(24px,6.3vw,35px);margin:10px 0}.acmrv-script{font-size:27px}.acmrv .acmrv-tagline{font-size:16px}.acmrv-hero-copy>p{font-size:12px;margin:10px 0}.acmrv-sp{display:block}.acmrv-badges{gap:5px;margin:13px 0}.acmrv-badges span{font-size:10px;padding:4px 7px}.acmrv-hero-links{gap:8px}.acmrv-hero-links a{padding:9px 15px;font-size:12px}.acmrv .acmrv-updated{font-size:10px}.acmrv-credit{right:18px;bottom:22px;font-size:11px}.acmrv-credit small{font-size:8px}.acmrv-content{padding:0 18px 25px}.acmrv .rv-section-title{font-size:21px!important}.acmrv .rv-en-label{font-size:26px}.acmrv .rv-section-head{gap:5px 10px;margin:30px 0 17px}.acmrv .rv-section-desc{font-size:12px}.acmrv .rv-cats{grid-template-columns:1fr;gap:10px}.acmrv .rv-cat{grid-template-columns:52px 1fr;padding:13px 15px}.acmrv .rv-cat__ico{width:45px;height:45px}.acmrv .rv-cat__name{font-size:16px}.acmrv .rv-cat__use{font-size:11px}.acmrv .rv-cat__cta{display:none}.acmrv .rv-ranking-controls{gap:12px}.acmrv .rv-ranking-tabs{width:100%;flex-wrap:wrap}.acmrv .rv-ranking-tab{padding:7px 11px;font-size:12px}.acmrv .rv-ranking-sort{width:100%;flex-wrap:wrap;gap:3px}.acmrv .rv-ranking-sort__tab{padding:6px 9px;font-size:11px}.acmrv .rv-ranking-sort__label{display:none}.acmrv .rv-ranking-list.is-active{gap:10px}.acmrv .rv-ranking-list .rv-ranking-item,.acmrv .rv-ranking-list .rv-ranking-item:first-child{padding:16px 12px 12px;gap:9px}.acmrv-logo{height:92px;padding-top:25px}.acmrv-logo img{height:65px}.acmrv .rv-ranking-item__no{width:24px;height:24px;top:9px;left:9px;font-size:12px}.acmrv .rv-ranking-list .rv-ranking-item__name,.acmrv .rv-ranking-list .rv-ranking-item:first-child .rv-ranking-item__name{font-size:13px}.acmrv .rv-ranking-item__provider{font-size:9px}.acmrv-rank-link{font-size:10px;padding:6px 2px}.acmrv-brand-name{font-size:17px}.acmrv .rv-ranking-list .rv-rating-num-lg,.acmrv .rv-ranking-list .rv-ranking-item:first-child .rv-rating-num-lg{font-size:22px}.acmrv-choice-grid{grid-template-columns:1fr;gap:12px}.acmrv-choice>summary img{height:115px}.acmrv-choice>summary strong{font-size:15px}.acmrv-choices{box-shadow:0 0 0 9px #f1fbfe}.acmrv-choice-body{padding:0 12px 12px}.acmrv-choice[open]>summary img{width:30%}.acmrv .rv-grid{grid-template-columns:1fr;gap:16px}.acmrv .rv-card{padding:18px}.acmrv .rv-filters{padding:12px}.acmrv .rv-filter-group{max-width:100%}.acmrv .rv-filter-select{font-size:12px;width:100%}.acmrv .rv-svcsum__body{min-width:0}.acmrv-summary{padding:10px}.acmrv-method-art{float:none;width:80%;max-width:340px;margin:0 auto 20px}.acmrv .rv-method-summary{width:100%;font-size:11px}.acmrv .rv-method-summary th{min-width:70px}.acmrv .rv-method-summary td{font-size:11px;overflow-wrap:anywhere}.acmrv .rv-about-fold__summary .rv-en-label{font-size:20px}.acmrv-closing{min-height:230px}.acmrv-closing>p{font-size:20px;padding:75px 20px 40px;max-width:390px}.acmrv-closing .acmrv-script{font-size:24px}.acmrv-closing>img{object-position:65% center}}
/* Keep the mobile character below the final text line, including the updated date. */
@media(max-width:699px){.acmrv-hero,.acmrv-hero-inner{min-height:870px}.acmrv-hero picture{top:235px}}
@media(prefers-reduced-motion:reduce){.acmrv *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Character-free cafe hero: content first, scenery below the copy. */
@media(max-width:699px){.acmrv-hero,.acmrv-hero-inner{min-height:640px}.acmrv-hero picture{top:210px}}
