/* ==========================================================
   Age Gate / 21+ Verification -- frontend styles
   Everything is namespaced with .agv- / #agv- / html.agv-locked
   so it never collides with the active theme or other plugins.
   ========================================================== */
:root{
	--agv-paper:#FFFEF7;
	--agv-ink:#0A2916;
	--agv-ink-soft:#3E5748;
	--agv-line:rgba(10,41,22,.14);
	--agv-r-lg:16px;
	--agv-ease-out:cubic-bezier(.16,1,.3,1);
}

html.agv-locked{overflow:hidden!important}

/* Hidden by default. Only html.agv-locked (set synchronously, before first
   paint, by the inline script in <head>) reveals it. This is what stops the
   "blink" of the gate on subsequent page loads for already-verified visitors:
   nothing needs to wait for the footer script to hide it, because it was
   never shown in the first place. */
.agv-gate{
	position:fixed;
	inset:0;
	z-index:999999;
	display:grid;
	place-items:center;
	padding:20px;
	background:rgba(0,0,0,.45);
	opacity:0;
	visibility:hidden;
	pointer-events:none;
	transition:opacity .45s var(--agv-ease-out),visibility 0s .45s;
	font-family:Georgia,"Times New Roman",serif;
	box-sizing:border-box;
	--accent-deep:#7BA428;
}
.agv-gate *{box-sizing:border-box}
html.agv-locked .agv-gate{
	opacity:1;
	visibility:visible;
	pointer-events:auto;
	transition:opacity .45s var(--agv-ease-out);
}

.agv-gate-card{
	background:var(--agv-paper);
	border-radius:var(--agv-r-lg);
	max-width:430px;
	width:100%;
	padding:44px 38px;
	text-align:center;
	box-shadow:0 30px 60px -20px rgba(0,0,0,.35);
	transform:translateY(16px);
	transition:transform .45s var(--agv-ease-out);
}
html.agv-locked .agv-gate-card{transform:translateY(0)}

.agv-logo{
	margin-bottom:20px;
	font-family:Georgia,"Times New Roman",serif;
	color:var(--agv-ink);
	line-height:1.3;
}
.agv-logo img{max-width:220px;height:auto;margin:0 auto;display:block}
.agv-gate .logo .lm{
	color: var(--agv-ink);
}
.agv-gate .logo .lm i{
	 color:  var(--accent-deep);
}

.agv-gate-card h2{
	font-family:Georgia,"Times New Roman",serif;
	font-weight:500;
	font-size:29px;
	line-height:1.15;
	letter-spacing:-.01em;
	margin:0 0 10px;
	color:var(--agv-ink);
}

.agv-gate-card p.agv-desc{
	font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
	font-size:14px;
	line-height:1.55;
	color:var(--agv-ink-soft);
	margin:0 0 26px;
}

.agv-gate-btns{
	display:flex;
	gap:10px;
	justify-content:center;
	flex-wrap:wrap;
}

.agv-btn{
	-webkit-appearance:none;
	appearance:none;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	flex:1;
	min-width:120px;
	padding:15px 26px;
	border-radius:999px;
	font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
	font-size:15px;
	font-weight:600;
	letter-spacing:.01em;
	cursor:pointer;
	border:none;
	transition:transform .35s var(--agv-ease-out),box-shadow .35s var(--agv-ease-out),background-color .2s,color .2s;
}
.agv-btn:hover{transform:translateY(-2px)}
.agv-btn:active{transform:translateY(0) scale(.98)}

.agv-btn-solid{
	background:var(--agv-ink);
	color:var(--agv-paper);
}

.agv-btn-ghost{
	background:transparent;
	color:var(--agv-ink);
	border:1.5px solid var(--agv-line);
}
.agv-btn-ghost:hover{border-color:var(--agv-ink)}

.agv-gate-no{
	margin:16px 0 0;
	font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
	font-size:12px;
	color:var(--agv-ink-soft);
	display:none;
}
.agv-gate.agv-denied .agv-gate-no{display:block}

@media (max-width:480px){
	.agv-gate-card{padding:34px 24px}
	.agv-gate-card h2{font-size:24px}
}

@media (prefers-reduced-motion:reduce){
	.agv-gate,.agv-gate-card,.agv-btn{transition:none}
}
