/* GPLGuide HOME 2: benefits bento (v2). Overrides the older .benefits rules in home2.css. */
.gplguide-home2 .benefits-v2{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:24px;align-items:stretch}

/* Lead card: dark, warm glow */
.gplguide-home2 .benefits-v2 .benefits-lead{display:flex;flex-direction:column;justify-content:center;padding:52px 46px;border:0;border-radius:32px;background:radial-gradient(ellipse 90% 70% at 100% 0%,#ff67334d 0%,transparent 60%),radial-gradient(ellipse 70% 60% at 0% 100%,#ff67331f 0%,transparent 70%),var(--ink);box-shadow:0 30px 70px #17120f2e;color:#fff}
.gplguide-home2 .benefits-v2 .benefits-lead::before{right:-90px;top:-90px;width:260px;height:260px;border-color:#ff673366;box-shadow:0 0 0 38px #ff67330f,0 0 0 76px #ff673308}
.gplguide-home2 .benefits-v2 .benefits-lead::after{content:"";position:absolute;inset:0;border-radius:inherit;background-image:radial-gradient(#ffffff14 1px,transparent 1px);background-size:22px 22px;-webkit-mask-image:linear-gradient(200deg,#000 0%,transparent 55%);mask-image:linear-gradient(200deg,#000 0%,transparent 55%);z-index:-1;pointer-events:none}
.gplguide-home2 .benefits-v2 .benefits-lead .eyebrow{color:var(--accent);font-weight:600}
.gplguide-home2 .benefits-v2 .benefits-lead h2{color:#fff;font-size:clamp(32px,3.1vw,46px)}
.gplguide-home2 .benefits-v2 .bv-accent{background:linear-gradient(90deg,#ff6733,#ffb08f,#ff6733);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:bv-sheen 6s ease-in-out infinite}
.gplguide-home2 .benefits-v2 .benefits-lead .benefits-copy{color:#ffffffb3}
.bv-points{list-style:none;margin:30px 0 0;padding:22px 0 0;border-top:1px solid #ffffff1f;display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:12px 34px}
.bv-points li{display:flex;flex-direction:column;gap:2px}
.bv-points strong{font-size:22px;font-weight:700;letter-spacing:-.6px;color:#fff;line-height:1.2}
.bv-points span{font-size:12.5px;color:#ffffff8c}
.gplguide-home2 .benefits-v2 .benefits-lead>.button{margin-top:32px}
.gplguide-home2 .benefits-v2 .benefits-lead>.button.primary{box-shadow:0 12px 30px #ff673340}

/* Benefit cards: 2x2 grid */
.gplguide-home2 .benefits-v2 .benefit-list{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.gplguide-home2 .benefits-v2 .benefit,.gplguide-home2 .benefits-v2 .benefit:last-child{display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:28px;border:1px solid var(--line);border-radius:26px;background:var(--bg);box-shadow:0 5px 20px #17120f05;overflow:hidden;isolation:isolate;--mx:50%;--my:0%}
.gplguide-home2 .benefits-v2 .benefit::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(260px circle at var(--mx) var(--my),#ff67331f,transparent 65%);opacity:0;transition:opacity .35s ease}
.gplguide-home2 .benefits-v2 .benefit-icon{width:50px;height:50px;border-radius:15px;color:var(--accent);font-size:0}
.gplguide-home2 .benefits-v2 .benefit-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.gplguide-home2 .benefits-v2 .benefit h3{margin-top:20px;font-size:19px}
.gplguide-home2 .benefits-v2 .benefit p{margin-top:8px;font-size:14px;line-height:1.7;max-width:none}
@media(hover:hover){
.gplguide-home2 .benefits-v2 .benefit:hover{transform:translateY(-5px);border-color:#ffc2aa;box-shadow:0 22px 44px #a94a2116}
.gplguide-home2 .benefits-v2 .benefit:hover::before{opacity:1}
.gplguide-home2 .benefits-v2 .benefit:hover .benefit-icon{background:var(--accent);color:#fff}
}

/* Mini visuals */
.gplguide-home2 .benefits-v2 .benefit>div:not(.bv-visual){margin-bottom:22px}
.bv-visual{margin-top:auto;width:100%}
.bv-visual>*{font-size:12.5px}
.bv-update{display:flex;align-items:center;gap:10px;padding:8px;border-radius:14px;background:var(--surface);border:1px solid #f4ebe7}
.bv-update img{width:30px;height:30px;border-radius:8px;background:#fff;padding:3px}
.bv-name{flex:1;color:var(--ink);font-weight:500}
.bv-state{display:grid}
.bv-state>span{grid-area:1/1;padding:5px 10px;border-radius:99px;font-weight:600;font-size:11.5px;text-align:center;white-space:nowrap}
.bv-new{background:var(--pale);color:#a84420}
.bv-ok{background:#e7f6ee;color:#13804b;opacity:0}
.bv-library{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent);mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent)}
.bv-logos{display:flex;gap:10px;width:max-content}
.bv-logos img{width:42px;height:42px;padding:7px;border-radius:12px;background:var(--surface);border:1px solid #f4ebe7;object-fit:contain}
.bv-price{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.bv-old{position:relative;color:var(--muted);padding:5px 0}
.bv-old::after{content:"";position:absolute;left:0;right:0;top:52%;height:1.5px;background:var(--accent);transform-origin:left;transform:scaleX(1)}
.bv-arrow{color:var(--muted)}
.bv-deal{padding:6px 13px;border-radius:99px;background:var(--ink);color:#fff;font-weight:700;font-size:14px!important}
.bv-deal small{font-weight:500;opacity:.7;font-size:11px}
.bv-sites{display:flex;flex-wrap:wrap;gap:7px}
.bv-sites span{padding:5px 11px;border-radius:99px;border:1px solid var(--line);background:var(--bg);color:var(--ink);font-size:11.5px}
.bv-sites .bv-more{background:var(--pale);border-color:transparent;color:#a84420;font-weight:600}

/* Motion */
@keyframes bv-sheen{50%{background-position:100% 0}}
@keyframes bv-marquee{to{transform:translateX(calc(-50% - 5px))}}
@keyframes bv-swap-a{0%,45%{opacity:1;transform:none}50%,95%{opacity:0;transform:translateY(-6px)}100%{opacity:1;transform:none}}
@keyframes bv-swap-b{0%,45%{opacity:0;transform:translateY(6px)}50%,95%{opacity:1;transform:none}100%{opacity:0}}
@keyframes bv-strike{0%,15%{transform:scaleX(0)}35%,100%{transform:scaleX(1)}}
@keyframes bv-pop{0%,30%{transform:scale(1)}38%{transform:scale(1.1)}46%,100%{transform:scale(1)}}
@keyframes bv-chip{0%,100%{transform:none}50%{transform:translateY(-3px)}}
.bv-logos{animation:bv-marquee 16s linear infinite}
.bv-new{animation:bv-swap-a 5s ease infinite}
.bv-ok{animation:bv-swap-b 5s ease infinite}
.bv-old::after{animation:bv-strike 4.5s ease infinite}
.bv-deal{animation:bv-pop 4.5s ease infinite}
.bv-sites span{animation:bv-chip 3.6s ease-in-out infinite}
.bv-sites span:nth-child(2){animation-delay:.3s}.bv-sites span:nth-child(3){animation-delay:.6s}.bv-sites span:nth-child(4){animation-delay:.9s}
.benefits-v2.is-offscreen *,.benefits-v2.is-offscreen *::before,.benefits-v2.is-offscreen *::after{animation-play-state:paused!important}

@media(max-width:1100px){.gplguide-home2 .benefits-v2{grid-template-columns:1fr}.gplguide-home2 .benefits-v2 .benefits-lead{padding:40px 32px}}
@media(max-width:640px){
.gplguide-home2 .benefits-v2 .benefit-list{grid-template-columns:1fr;gap:16px}
.gplguide-home2 .benefits-v2 .benefits-lead{padding:32px 24px;border-radius:26px}
.gplguide-home2 .benefits-v2 .benefit,.gplguide-home2 .benefits-v2 .benefit:last-child{padding:22px}
.bv-points{gap:12px 22px}.bv-points strong{font-size:18px}
}
@media(prefers-reduced-motion:reduce){
.benefits-v2 *,.benefits-v2 *::before,.benefits-v2 *::after{animation:none!important}
.bv-new{opacity:0}.bv-ok{opacity:1}
}
