/* RA Metered Paywall – front-end styles */

:root{
	--ra-pw-primary:#c0451e;
	--ra-pw-dark:#0b1437;
}

/* Fade-out under the teaser so the cut feels intentional */
.ra-pw-fade{
	position:relative;
	height:140px;
	margin-top:-120px;
	pointer-events:none;
	background:linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,.85) 55%, #fff 100%);
}

/* Scroll lock applied by JS */
html.ra-pw-locked,
html.ra-pw-locked body{
	overflow:hidden !important;
}

/* Overlay */
.ra-pw-modal{
	position:fixed;
	inset:0;
	z-index:99999;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:20px;
}
.ra-pw-backdrop{
	position:absolute;
	inset:0;
	background:rgba(11,20,55,.72);
	-webkit-backdrop-filter:blur(4px);
	backdrop-filter:blur(4px);
}

/* Card */
.ra-pw-card{
	position:relative;
	width:100%;
	max-width:460px;
	background:#fff;
	border-radius:14px;
	padding:34px 30px 30px;
	box-shadow:0 24px 60px rgba(0,0,0,.35);
	text-align:center;
	animation:ra-pw-pop .22s ease-out;
}
@keyframes ra-pw-pop{
	from{opacity:0;transform:translateY(14px) scale(.98);}
	to{opacity:1;transform:none;}
}

.ra-pw-top-signin{
	display:block;
	font-size:13px;
	color:#5a5a5a;
	text-decoration:none;
	margin-bottom:18px;
}
.ra-pw-top-signin span{
	color:var(--ra-pw-primary);
	text-decoration:underline;
	font-weight:600;
}

.ra-pw-badge{
	display:inline-block;
	font-size:11px;
	letter-spacing:1.5px;
	font-weight:700;
	text-transform:uppercase;
	color:var(--ra-pw-primary);
	border:1px solid var(--ra-pw-primary);
	border-radius:4px;
	padding:4px 10px;
	margin-bottom:16px;
}

.ra-pw-title{
	font-size:26px;
	line-height:1.25;
	color:var(--ra-pw-dark);
	margin:0 0 12px;
	font-weight:800;
}
.ra-pw-sub{
	font-size:15px;
	line-height:1.5;
	color:#444;
	margin:0 0 18px;
}

.ra-pw-benefits{
	list-style:none;
	margin:0 0 22px;
	padding:0;
	text-align:left;
	display:inline-block;
}
.ra-pw-benefits li{
	position:relative;
	padding:5px 0 5px 26px;
	font-size:14px;
	color:#333;
}
.ra-pw-benefits li::before{
	content:"";
	position:absolute;
	left:0;top:9px;
	width:14px;height:8px;
	border-left:2px solid var(--ra-pw-primary);
	border-bottom:2px solid var(--ra-pw-primary);
	transform:rotate(-45deg);
}

.ra-pw-cta{
	display:block;
	width:100%;
	box-sizing:border-box;
	background:var(--ra-pw-primary);
	color:#fff !important;
	text-decoration:none;
	font-weight:700;
	font-size:15px;
	letter-spacing:.3px;
	padding:14px 18px;
	border-radius:8px;
	margin-bottom:12px;
	transition:filter .15s ease;
}
.ra-pw-cta:hover{filter:brightness(1.08);}

.ra-pw-secondary{
	display:inline-block;
	color:var(--ra-pw-dark) !important;
	text-decoration:none;
	font-weight:600;
	font-size:14px;
	border:1px solid #d8d8d8;
	border-radius:8px;
	padding:11px 22px;
	transition:border-color .15s ease;
}
.ra-pw-secondary:hover{border-color:var(--ra-pw-dark);}

.ra-pw-close{
	position:absolute;
	top:10px;right:14px;
	background:none;border:none;
	font-size:26px;line-height:1;
	color:#9a9a9a;cursor:pointer;
}
.ra-pw-close:hover{color:#333;}

@media (max-width:480px){
	.ra-pw-card{padding:28px 20px 24px;}
	.ra-pw-title{font-size:22px;}
}
