
.ad-reviews,.ad-reviews *,.ad-rating-badge,.ad-rating-badge *{font-family:inherit;box-sizing:border-box}
.ad-reviews{padding:36px 0;color:#333}
.ad-grid{display:grid;grid-template-columns:minmax(0,3fr) minmax(300px,1fr);gap:30px;align-items:stretch}
.ad-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.ad-card,.ad-summary{background:#fff;border:1px solid #e8e8e8;border-radius:14px;box-shadow:none}
.ad-card{padding:24px;display:flex;flex-direction:column;min-height:245px;opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s ease,border-color .2s ease,box-shadow .2s ease}
.ad-card.is-visible{opacity:1;transform:translateY(0)}
.ad-card:hover{border-color:#d8d8d8;box-shadow:0 12px 30px rgba(0,0,0,.04)}
.ad-meta{display:flex;gap:12px;margin-bottom:14px;align-items:flex-start}
.ad-meta-copy{min-width:0}
.ad-name{font-size:15px;font-weight:600;color:#333;line-height:1.3;margin-bottom:4px}
.ad-avatar{width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:18px;flex:0 0 auto;color:#444}
.ad-avatar.tone-1{background:#ededed}.ad-avatar.tone-2{background:#e6e6e6}.ad-avatar.tone-3{background:#efefef}
.ad-starsline{display:flex;align-items:center;gap:6px;margin-bottom:2px;flex-wrap:nowrap}
.ad-stars{position:relative;display:inline-block;font-size:18px;line-height:1;letter-spacing:1px;flex:0 0 auto}
.ad-stars .base{color:#dddddd}
.ad-stars .fill{position:absolute;left:0;top:0;overflow:hidden;white-space:nowrap;color:#F4B400}
.ad-rating{font-size:16px;font-weight:500;color:#666;flex:0 0 auto}
.ad-via{font-size:13px;color:#777;font-weight:600}
.ad-text{position:relative;padding-left:16px;font-size:16px;line-height:1.62;color:#555;margin-top:10px;flex-grow:1;hyphens:auto;-webkit-hyphens:auto;-ms-hyphens:auto;overflow-wrap:break-word}
.ad-text:before{content:"“";position:absolute;left:0;top:-2px;font-size:24px;line-height:1;color:#d1d1d1;font-weight:300}
.ad-more{display:inline-block;margin-top:10px;margin-left:16px;font-size:14px;color:#666 !important;text-decoration:none !important}
.ad-more:hover{color:#000 !important}
.ad-summary{padding:0;display:flex;align-items:stretch;justify-content:stretch;min-height:245px;height:100%;opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s ease,border-color .2s ease,box-shadow .2s ease}
.ad-summary.is-visible{opacity:1;transform:translateY(0)}
.ad-summary:hover{border-color:#d8d8d8;box-shadow:0 12px 30px rgba(0,0,0,.04)}
.ad-summary__inner{padding:28px 32px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:10px;min-height:100%;width:100%}
.ad-google-icon img{width:48px;height:auto;display:block}
.ad-summary-rating{font-size:72px;line-height:1;font-weight:500;letter-spacing:-.03em;color:#333;margin-top:2px}
.ad-summary-stars .ad-stars{font-size:34px;letter-spacing:2px}
.ad-count{font-size:15px;color:#777;line-height:1.4}
.ad-divider{width:70px;height:1px;background:#dddddd;margin:8px 0 6px}
.ad-review-hint{font-size:14px;line-height:1.5;color:#666;max-width:240px;margin-top:0}
.ad-btn{display:inline-flex;align-items:center;justify-content:center;margin-top:auto;align-self:flex-start;min-height:56px;padding:14px 28px;background:#333;color:#fff !important;border-radius:999px;text-decoration:none !important;font-size:16px;font-weight:600;transition:background-color .2s ease,transform .2s ease;min-width:230px}
.ad-btn:hover{background:#1f1f1f;transform:translateY(-1px)}
.ad-rating-badge{display:inline-flex;align-items:center;gap:8px;color:inherit !important;text-decoration:none !important;white-space:nowrap}
.ad-rating-badge__logo img{width:20px;height:auto;display:block}
.ad-rating-badge__stars .ad-stars{font-size:16px;letter-spacing:1px}
.ad-rating-badge__score{font-weight:700}
.ad-rating-badge__count{opacity:.8}
@media (max-width:1100px){.ad-grid{grid-template-columns:1fr}.ad-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.ad-summary__inner{min-height:auto}.ad-btn{margin-top:14px}}
@media (max-width:767px){.ad-reviews{padding:24px 0 34px}.ad-cards{grid-template-columns:1fr}.ad-card,.ad-summary{min-height:auto}.ad-card{padding:18px}.ad-summary__inner{padding:18px}.ad-summary-rating{font-size:58px}.ad-summary-stars .ad-stars{font-size:30px}.ad-btn{min-width:210px;margin-top:14px}}
