/* GP Infographic Popups — Clean v1.2.1 */
.gpip-overlay{position:fixed;inset:0;z-index:999999;display:none;background:rgba(17,17,17,.5)}
.gpip-overlay.is-open{display:block}
.gpip-modal{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#fff;border-radius:20px;max-width:980px;width:calc(100% - 32px);box-shadow:0 24px 60px rgba(0,0,0,.25);overflow:hidden}
.gpip-close{position:absolute;right:14px;top:14px;width:38px;height:38px;border-radius:999px;border:0;background:#f1f1f1;cursor:pointer;font-size:20px;line-height:38px;text-align:center;z-index:3}
.gpip-close:hover{background:#e6e6e6}
.gpip-lang{position:absolute;right:64px;top:14px;display:flex;gap:6px;z-index:3}
.gpip-lang-btn{border:1px solid #dcdcdc;background:#fff;padding:6px 10px;border-radius:999px;font-size:12px;cursor:pointer}
.gpip-lang-btn[aria-pressed="true"]{background:#111;color:#fff;border-color:#111}

/* Layout */
.gpip-layout{display:grid;grid-template-columns:1fr;background:#fff}
.gpip-layout.has-media{grid-template-columns:minmax(260px,42%) 1fr}
.gpip-media{min-height:340px;background-size:cover;background-position:center center}
.gpip-panel{padding:36px 34px 30px;background:#fff}

.gpip-title{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-weight:800;letter-spacing:-.25px;
  font-size:clamp(28px,3.2vw,42px); line-height:1.15; margin:0 0 12px; color:#111}
.gpip-paragraph{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif; color:#333; text-align:justify; 
  font-size:clamp(16px,1.4vw,19px); line-height:1.7; margin:12px 0 18px}
.gpip-quote{color:#555; font-size:clamp(14px,1.2vw,16px); text-align:justify; margin:8px 0 0}

.gpip-coupon{margin:16px 0 18px}
.gpip-input{border:2px dashed #bbb;border-radius:12px;padding:14px 16px;width:100%;font-weight:800;letter-spacing:.03em;color:#111;background:#fafafa;outline:none}
.gpip-input.copied{border-style:solid}

.gpip-primary{display:inline-block;background:#111;color:#fff;text-decoration:none;padding:14px 22px;border-radius:12px;font-weight:800}
.gpip-primary:active{transform:translateY(1px)}
.gpip-rating span{color:#f5b301;font-size:18px}

/* Responsive */
@media (max-width:900px){
  .gpip-layout.has-media{grid-template-columns:1fr}
  .gpip-media{min-height:200px}
  .gpip-panel{padding:24px}
  .gpip-title{font-size:clamp(26px,6vw,36px)}
  .gpip-paragraph{font-size:clamp(15px,4.2vw,18px)}
}
