/* Concorde Offer Popup - all selectors are prefixed with .cosp- */
.cosp-overlay,.cosp-overlay *{box-sizing:border-box}
.cosp-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2147483000;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(10,18,32,.72);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s}
.cosp-overlay.cosp-open{opacity:1;visibility:visible}
html.cosp-lock{overflow:hidden}

.cosp-box{position:relative;width:100%;max-width:640px;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow:auto;background:#fff;border-radius:22px;color:#0f1b2d;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:16px;line-height:1.4;text-align:left;box-shadow:0 24px 70px rgba(0,0,0,.45);transform:translateY(16px) scale(.97);transition:transform .3s ease;-webkit-text-size-adjust:100%}
.cosp-open .cosp-box{transform:none}

/* element resets (protect against theme styles) */
.cosp-box h2,.cosp-box p,.cosp-box ul,.cosp-box li{margin:0;padding:0;border:0;background:none;color:inherit;font-family:inherit;letter-spacing:normal;text-transform:none}
.cosp-box ul{list-style:none}
.cosp-box li::before,.cosp-box li::marker{content:none}
.cosp-box img{max-width:none;border:0;box-shadow:none;margin:0}
.cosp-box a{box-shadow:none}
.cosp-box svg.cosp-i{display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* close button */
.cosp-box .cosp-close{position:absolute;top:14px;right:14px;z-index:6;width:42px;height:42px;margin:0;padding:0;display:flex;align-items:center;justify-content:center;border:0;border-radius:50%;background:#fff;color:#0f1b2d;box-shadow:0 2px 10px rgba(0,0,0,.25);cursor:pointer;line-height:1;transition:transform .2s}
.cosp-box .cosp-close:hover{transform:scale(1.08);background:#fff;color:#0f1b2d}
.cosp-box .cosp-close svg{width:20px;height:20px;stroke-width:2.6}
.cosp-box .cosp-close:focus-visible,.cosp-box .cosp-cta:focus-visible{outline:3px solid #0f1b2d;outline-offset:2px}

/* logo */
.cosp-logo{position:absolute;z-index:4;top:20px;left:26px;display:flex;flex-direction:column;align-items:flex-start;color:#0f1b2d;line-height:1}
.cosp-logo::before{content:"";width:34px;height:14px;margin:0 0 -7px 38%;background:#fdb913;clip-path:polygon(0 0,100% 0,50% 100%)}
.cosp-logo b{position:relative;font-size:24px;font-weight:900;letter-spacing:-.5px}
.cosp-logo i{margin-top:4px;font-style:normal;font-size:13px;font-weight:700;letter-spacing:.38em}
.cosp-logo img{display:block;width:auto;max-width:190px;max-height:64px}
.cosp-logo:has(img)::before{display:none}

/* media */
.cosp-bin{position:absolute;z-index:1;display:block;height:auto;max-width:none;transform:translate(-50%,-50%);pointer-events:none;opacity:0}
.cosp-bin.cosp-ok{opacity:1}
.cosp-media{position:relative;overflow:hidden}
.cosp-photo,.cosp-ph{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;object-position:50% 68%;display:block}
.cosp-ph{background:linear-gradient(135deg,#1c2e4d 0%,#0f1b2d 60%,#fdb913 140%)}

/* shared body parts */
.cosp-badge{display:inline-block;background:#fdb913;color:#0f1b2d;font-size:clamp(13px,2.4vh,17px);font-weight:800;line-height:1.2;text-transform:uppercase;padding:clamp(6px,1.2vh,9px) 22px;border-radius:7px}
.cosp-box .cosp-h{font-weight:900;text-transform:uppercase;line-height:1;margin:clamp(6px,1.2vh,12px) 0 clamp(6px,1vh,10px)}
.cosp-pre{font-size:clamp(24px,min(5.2vw,7.4vh),48px);font-weight:900;letter-spacing:-.5px}
.cosp-big{font-size:clamp(40px,min(9vw,12vh),82px);font-weight:900;color:#fdb913;line-height:.95}
.cosp-big .cosp-ast{display:inline-block;vertical-align:top;margin:.12em 0 0 .06em;font-size:.3em;line-height:1;color:#0f1b2d}
.cosp-post{display:block;font-size:clamp(16px,min(3.2vw,4vh),26px);font-weight:900}
.cosp-box .cosp-d{font-size:clamp(12.5px,2vh,15px);color:#1d2433;margin:clamp(6px,1.2vh,10px) auto clamp(10px,2vh,18px);max-width:580px}
.cosp-box .cosp-f{display:flex;margin:0 0 clamp(10px,2vh,18px)}
.cosp-box .cosp-f li{flex:1;display:flex;flex-direction:column;align-items:center;gap:7px;padding:2px 8px;border-left:1px solid #d6d9e0;font-size:clamp(11.5px,1.9vh,13.5px);font-weight:700;line-height:1.25;text-align:center}
.cosp-box .cosp-f li:first-child{border-left:0}
.cosp-iw{display:flex}
.cosp-iw svg{width:clamp(22px,4vh,30px);height:clamp(22px,4vh,30px)}
.cosp-box a.cosp-cta{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;margin:0;padding:clamp(9px,1.6vh,12px) 20px;border:0;border-radius:8px;background:#ffc20e;color:#0f1b2d;font-size:clamp(14px,2.6vh,18px);font-weight:900;line-height:1.2;text-transform:uppercase;text-decoration:none;transition:background .2s,transform .2s}
.cosp-box a.cosp-cta:hover{background:#f5b300;color:#0f1b2d;transform:translateY(-1px)}
.cosp-cta svg{width:24px;height:24px;stroke-width:3}
.cosp-ft{display:flex;align-items:center;justify-content:space-between;gap:6px 14px;flex-wrap:wrap;margin-top:clamp(7px,1.4vh,12px);font-size:clamp(11px,1.8vh,13.5px)}
.cosp-loc{display:flex;align-items:center;gap:8px;font-weight:500}
.cosp-loc svg{width:22px;height:22px;flex:none;fill:currentColor;stroke:none}
.cosp-terms{font-size:12.5px;color:#777}

/* ---------- Design 1: image on top ---------- */
.cosp-l1 .cosp-media{height:clamp(140px,34vh,250px)}
.cosp-l1 .cosp-media::before,.cosp-l1 .cosp-media::after{content:"";position:absolute;bottom:0;z-index:2;height:54px;background:#fdb913}
.cosp-l1 .cosp-media::before{left:0;width:38%;clip-path:polygon(0 0,100% 100%,0 100%);opacity:.95}
.cosp-l1 .cosp-media::after{right:0;width:38%;clip-path:polygon(100% 0,100% 100%,0 100%);opacity:.95}
.cosp-l1 .cosp-body{padding:0 28px clamp(10px,2vh,16px);text-align:center}
.cosp-l1 .cosp-badge{position:relative;z-index:3;margin-top:-22px}
.cosp-l1 .cosp-pre,.cosp-l1 .cosp-big{display:inline-block;vertical-align:baseline}
.cosp-l1 .cosp-post{margin-top:2px}
.cosp-l1 a.cosp-cta{width:72%;margin:0 auto}
.cosp-l1 .cosp-ft{display:grid;grid-template-columns:1fr auto 1fr}
.cosp-l1 .cosp-ft::before{content:""}
.cosp-l1 .cosp-terms{text-align:right;white-space:nowrap}



/* ---------- Mobile ---------- */
@media (max-width:720px){
	.cosp-box{border-radius:18px}
	.cosp-l1 .cosp-media{order:0;flex:none;height:clamp(130px,26vh,220px);min-height:0;margin:0;clip-path:none}
	.cosp-l1 .cosp-media::before,.cosp-l1 .cosp-media::after{height:34px}
	.cosp-logo{top:12px;left:12px;padding:8px 10px 7px;border-radius:8px;background:rgba(255,255,255,.93)}
	.cosp-logo b{font-size:18px}
	.cosp-logo i{font-size:10px;margin-top:3px}
	.cosp-logo::before{width:22px;height:9px;margin-bottom:-4px}
	.cosp-logo img{max-width:130px;max-height:44px}
	.cosp-box .cosp-close{top:10px;right:10px;width:38px;height:38px}
	.cosp-l1 .cosp-body{order:1;margin:0;padding:0 18px 20px;text-align:center}
	.cosp-l1 .cosp-badge{margin-top:-18px;font-size:16px;padding:7px 16px}
	.cosp-badge{font-size:16px}
	.cosp-box .cosp-d{font-size:15px;margin:8px auto 14px}
	.cosp-box .cosp-f{flex-wrap:wrap}
	.cosp-box .cosp-f li{flex:1 1 50%;border:0;padding:8px 4px}
	.cosp-box a.cosp-cta,.cosp-l1 a.cosp-cta{width:100%;font-size:18px;padding:14px 16px}
	.cosp-l1 .cosp-ft,.cosp-ft{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-size:14px}
	.cosp-l1 .cosp-ft::before{display:none}
	.cosp-l1 .cosp-terms{text-align:center}
}

@media (max-height:540px){
	.cosp-box .cosp-d{display:none}
}
@media (prefers-reduced-motion:reduce){
	.cosp-overlay,.cosp-box,.cosp-box .cosp-close,.cosp-box a.cosp-cta{transition:none}
}
