.cmg-hero-section{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--surface-peach) 0%,var(--peach-soft) 52%,#ffffff 100%)}.cmg-hero-section:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(640px 320px at 86% -10%,rgba(255,133,44,.1),transparent 70%)}.cmg-hero-section:after{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(rgba(16,24,40,.05) 1px,transparent 1px);background-size:22px 22px;-webkit-mask-image:linear-gradient(180deg,#000 0%,transparent 58%);mask-image:linear-gradient(180deg,#000 0%,transparent 58%);opacity:.55}.cmg-hero-section>div{position:relative;z-index:1}.cmg-caveat{margin:0;padding:16px 20px;border-left:none;border-radius:var(--radius-lg);background:var(--peach-soft);font-size:15px;line-height:1.55;color:var(--neutral-700)}.cmg-shortlist{background:var(--peach-soft)}.cmg-top{margin:22px 0 0;background:var(--white);border:1px solid var(--peach-deep);border-top:4px solid var(--spice-500);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:24px 28px 26px}.cmg-top-flag{display:flex;align-items:center;gap:14px;margin-bottom:14px}.cmg-top-flag-pill{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--spice-700);background:var(--spice-50);border:1px solid var(--spice-200);padding:4px 10px;border-radius:var(--radius-pill)}.cmg-top-grid{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:start}.cmg-top-brand{display:inline-block;font-size:26px;font-weight:700;letter-spacing:-.01em;color:var(--ink-dark);text-decoration:none;border-bottom:2px solid transparent}.cmg-top-brand:hover{border-bottom-color:var(--spice-500)}.cmg-top-line{margin:8px 0 0;font-size:16px;line-height:1.55;color:var(--neutral-700);max-width:46ch}.cmg-top-aside{display:flex;flex-direction:column;align-items:flex-end;gap:10px;text-align:right;white-space:nowrap}.cmg-top-price{font-size:30px;font-weight:700;letter-spacing:-.02em;color:var(--ink-dark);line-height:1}.cmg-top-price-mo{font-size:14px;font-weight:500;color:var(--neutral-500)}.cmg-top-cta{font-size:14px;font-weight:600;color:var(--purple-500);text-decoration:none}.cmg-top-cta:hover{color:var(--purple-700)}.cmg-rest-label{margin:32px 0 0;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--neutral-500)}.cmg-rank{margin:14px 0 0;padding:0;list-style:none;display:grid;gap:12px}.cmg-card{display:flex;align-items:flex-start;gap:16px;padding:18px 20px;border:1px solid var(--peach-deep);border-radius:var(--radius-lg);background:var(--white);box-shadow:var(--shadow-card);transition:transform .18s ease,box-shadow .18s ease}.cmg-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.cmg-rank-num{flex:none;width:30px;height:30px;display:grid;place-items:center;border-radius:var(--radius-pill);background:var(--ink-dark);color:var(--neutral-25);font-size:14px;font-weight:700}.cmg-card-body{flex:1 1 auto;min-width:0}.cmg-card-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.cmg-card-brand{font-size:17px;font-weight:600;color:var(--ink-dark);text-decoration:none;border-bottom:1px solid transparent}.cmg-card-brand:hover{border-bottom-color:currentColor}.cmg-dots{display:inline-flex;gap:4px}.cmg-dot{width:8px;height:8px;border-radius:var(--radius-pill);background:var(--neutral-200, #e3e3e3)}.cmg-dot--on{background:var(--spice-500)}.cmg-dots--lg{gap:6px}.cmg-dots--lg .cmg-dot{width:11px;height:11px}.cmg-price{margin-left:auto;font-size:14px;font-weight:600;color:var(--neutral-700)}.cmg-card-line{margin:6px 0 0;font-size:15px;line-height:1.5;color:var(--neutral-600)}.cmg-caps{margin:10px 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:8px}.cmg-caps li{font-size:13px;font-weight:500;color:var(--neutral-700);background:var(--neutral-50);padding:4px 11px;border-radius:var(--radius-pill)}.cmg-legend{margin:14px 0 0;font-size:13px;line-height:1.5;color:var(--neutral-600)}@media(max-width:640px){.cmg-top-grid{grid-template-columns:1fr;gap:18px}.cmg-top-aside{align-items:flex-start;text-align:left}}
