/* Safee Content Experience — public presentation only. */
:root{
	--safee-gam-accent:#40bd61;
	--safee-gam-accent-dark:#256836;
	--safee-gam-accent-strong:#249561;
	--safee-gam-ink:#222021;
	--safee-gam-muted:#565656;
	--safee-gam-soft:#f9faf9;
	--safee-gam-border:#eceeeb;
	--safee-gam-white:#fff;
	--safee-gam-shadow:0 18px 50px rgba(34,32,33,.08);
	--safee-gam-width:920px;
	--safee-gam-wide:1180px;
}

body.safee-gam-enhanced-article .safee-gam-article{
	width:min(var(--safee-gam-width),calc(100% - 40px));
	margin-inline:auto;
	color:var(--safee-gam-ink);
	font-family:"DM Sans",Arial,sans-serif;
	font-size:18px;
	line-height:1.82;
	overflow-wrap:anywhere;
}

body.safee-gam-enhanced-article .safee-gam-article>h1:first-child{
	max-width:1000px;
	margin:40px auto 20px;
	padding:0;
	border:0;
	color:#121212;
	font-family:"DM Sans",Arial,sans-serif;
	font-size:clamp(38px,5.2vw,56px);
	line-height:1.12;
	font-weight:800;
	letter-spacing:-.035em;
}

.safee-gam-article-byline{
	margin:0 0 32px;
	padding:0 0 22px;
	border-bottom:1px solid var(--safee-gam-border);
}

.safee-gam-categories{
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	margin-bottom:14px;
}

.safee-gam-categories a,
.safee-gam-card-term,
.safee-gam-archive-kicker{
	display:inline-flex;
	align-items:center;
	min-height:30px;
	padding:5px 11px;
	border:1px solid rgba(64,189,97,.28);
	border-radius:999px;
	background:rgba(64,189,97,.1);
	color:var(--safee-gam-accent-dark)!important;
	font-size:12px;
	font-weight:800;
	line-height:1.2;
	letter-spacing:.02em;
	text-decoration:none!important;
}

.safee-gam-categories a:hover{
	background:var(--safee-gam-accent);
	color:#102416!important;
}

.safee-gam-meta-line{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:8px 0;
	color:var(--safee-gam-muted);
	font-size:14px;
	line-height:1.5;
}

.safee-gam-meta-item{
	display:inline-flex;
	align-items:center;
}

.safee-gam-meta-item:not(:last-child)::after{
	content:"";
	display:inline-block;
	width:4px;
	height:4px;
	margin-inline:11px;
	border-radius:50%;
	background:var(--safee-gam-accent);
}

.safee-gam-meta-line a{
	color:var(--safee-gam-ink)!important;
	font-weight:800;
	text-decoration:none!important;
}

.safee-gam-meta-line a:hover{
	color:var(--safee-gam-accent-dark)!important;
}

body.safee-gam-enhanced-article .safee-gam-article p{
	margin:0 0 1.25em;
	font:inherit;
	color:inherit;
}

body.safee-gam-enhanced-article .safee-gam-article>p:first-of-type{
	font-size:20px;
	line-height:1.75;
	color:#404441;
}

body.safee-gam-enhanced-article .safee-gam-article>h2,
body.safee-gam-enhanced-article .safee-gam-article>.wp-block-group h2{
	margin:58px 0 18px;
	padding-inline-start:16px;
	border-inline-start:5px solid var(--safee-gam-accent);
	color:#141414;
	font-family:"DM Sans",Arial,sans-serif;
	font-size:clamp(27px,3.2vw,34px);
	line-height:1.35;
	font-weight:800;
	letter-spacing:-.018em;
	scroll-margin-top:110px;
}

body.safee-gam-enhanced-article .safee-gam-article>h3,
body.safee-gam-enhanced-article .safee-gam-article>.wp-block-group h3{
	margin:38px 0 14px;
	color:#181818;
	font-family:"DM Sans",Arial,sans-serif;
	font-size:clamp(21px,2.5vw,25px);
	line-height:1.45;
	font-weight:800;
	scroll-margin-top:110px;
}

body.safee-gam-enhanced-article .safee-gam-article>h4,
body.safee-gam-enhanced-article .safee-gam-article>.wp-block-group h4{
	margin:30px 0 12px;
	color:#1c1c1c;
	font-family:"DM Sans",Arial,sans-serif;
	font-size:20px;
	line-height:1.5;
	font-weight:800;
	scroll-margin-top:110px;
}

body.safee-gam-enhanced-article .safee-gam-article :where(ul,ol){
	margin:0 0 1.5em;
	padding-inline-start:1.45em;
}

body.safee-gam-enhanced-article .safee-gam-article li{
	margin:.45em 0;
	padding-inline-start:.18em;
}

body.safee-gam-enhanced-article .safee-gam-article li::marker{
	color:var(--safee-gam-accent-dark);
	font-weight:800;
}

body.safee-gam-enhanced-article .safee-gam-article a{
	color:var(--safee-gam-accent-dark);
	text-decoration-color:rgba(37,104,54,.38);
	text-underline-offset:3px;
}

body.safee-gam-enhanced-article .safee-gam-article a:hover{
	color:#163f21;
	text-decoration-color:currentColor;
}

body.safee-gam-enhanced-article .safee-gam-article>figure{
	margin:34px 0;
}

body.safee-gam-enhanced-article .safee-gam-article img{
	display:block;
	max-width:100%;
	height:auto;
	border-radius:14px;
}

body.safee-gam-enhanced-article .safee-gam-article .safee-gam-featured-image img{
	width:100%;
	aspect-ratio:16/9;
	object-fit:cover;
}

body.safee-gam-enhanced-article .safee-gam-article figcaption{
	margin-top:8px;
	color:var(--safee-gam-muted);
	font-size:13px;
	line-height:1.55;
	text-align:center;
}

body.safee-gam-enhanced-article .safee-gam-article .wp-block-table{
	margin:34px 0;
	overflow-x:auto;
	border:1px solid var(--safee-gam-border);
	border-radius:12px;
}

body.safee-gam-enhanced-article .safee-gam-article table{
	width:100%;
	min-width:640px;
	border-collapse:collapse;
	font-size:15px;
	line-height:1.55;
}

body.safee-gam-enhanced-article .safee-gam-article th,
body.safee-gam-enhanced-article .safee-gam-article td{
	padding:13px 14px;
	border:1px solid var(--safee-gam-border);
	vertical-align:top;
	text-align:start;
}

body.safee-gam-enhanced-article .safee-gam-article th{
	background:var(--safee-gam-soft);
	color:#17201b;
	font-weight:800;
}

body.safee-gam-enhanced-article .safee-gam-article blockquote{
	margin:32px 0;
	padding:20px 24px;
	border-inline-start:5px solid var(--safee-gam-accent);
	background:var(--safee-gam-soft);
	border-radius:12px;
	font-size:19px;
}

body.safee-gam-enhanced-article .safee-gam-article .safee-gam-callout{
	margin:36px 0;
	padding:26px 28px;
	border:1px solid rgba(64,189,97,.32);
	border-inline-start:6px solid var(--safee-gam-accent);
	border-radius:14px;
	background:linear-gradient(135deg,var(--safee-gam-soft),#fff);
}

body.safee-gam-enhanced-article .safee-gam-article .wp-block-button__link{
	min-height:46px;
	padding:12px 20px;
	background:var(--safee-gam-accent-dark);
	color:#fff;
	border-radius:999px;
	font-size:15px;
	font-weight:800;
	text-decoration:none;
}

/* Easy Table of Contents and common alternatives. */
body.safee-gam-enhanced-article .safee-gam-article :where(.ez-toc-container,#ez-toc-container,.lwptoc,.toc_container,.rank-math-toc-block,.wp-block-rank-math-toc-block){
	width:100%!important;
	margin:30px 0 42px!important;
	padding:24px 26px!important;
	background:var(--safee-gam-soft)!important;
	border:1px solid var(--safee-gam-border)!important;
	border-inline-start:5px solid var(--safee-gam-accent)!important;
	border-radius:14px!important;
	box-shadow:none!important;
}

body.safee-gam-enhanced-article .safee-gam-article :where(.ez-toc-title,.lwptoc_title,.toc_title,.rank-math-toc-block>h2,.wp-block-rank-math-toc-block>h2){
	margin:0!important;
	padding:0!important;
	border:0!important;
	color:var(--safee-gam-ink)!important;
	font-size:20px!important;
	font-weight:800!important;
	line-height:1.4!important;
}

body.safee-gam-enhanced-article #ez-toc-container .ez-toc-title-container{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:16px;
	margin-bottom:12px;
}

body.safee-gam-enhanced-article #ez-toc-container ul,
body.safee-gam-enhanced-article #ez-toc-container ol{
	margin:8px 0 0!important;
	padding-inline-start:20px!important;
}

body.safee-gam-enhanced-article #ez-toc-container li{
	margin:7px 0!important;
	font-size:15px!important;
	line-height:1.55!important;
}

body.safee-gam-enhanced-article .safee-gam-article :where(.ez-toc-container,#ez-toc-container,.lwptoc,.toc_container,.rank-math-toc-block,.wp-block-rank-math-toc-block) a{
	color:var(--safee-gam-accent-dark)!important;
	font-weight:700;
	text-decoration:none!important;
}

body.safee-gam-enhanced-article .safee-gam-article :where(.ez-toc-container,#ez-toc-container) a:hover,
body.safee-gam-enhanced-article .safee-gam-article :where(.ez-toc-container,#ez-toc-container) li.active>a{
	color:#163f21!important;
	text-decoration:underline!important;
	text-decoration-color:var(--safee-gam-accent)!important;
}

.safee-gam-preserved-anchor{
	display:block;
	position:relative;
	top:-105px;
	visibility:hidden;
}

.safee-gam-article-footer{
	margin-top:64px;
}

.safee-gam-tags{
	display:grid;
	grid-template-columns:auto 1fr;
	gap:14px 18px;
	align-items:start;
	padding:24px 0;
	border-top:1px solid var(--safee-gam-border);
	border-bottom:1px solid var(--safee-gam-border);
}

.safee-gam-tags-label{
	color:var(--safee-gam-ink);
	font-size:14px;
	font-weight:800;
}

.safee-gam-tag-links{
	display:flex;
	flex-wrap:wrap;
	gap:8px 16px;
}

.safee-gam-tag-links a{
	color:var(--safee-gam-muted)!important;
	font-size:14px;
	font-weight:700;
	text-decoration:none!important;
}

.safee-gam-tag-links a:hover{
	color:var(--safee-gam-accent-dark)!important;
}

.safee-gam-related{
	margin:70px 0 34px;
}

.safee-gam-section-heading{
	margin-bottom:24px;
}

.safee-gam-section-heading>span{
	display:block;
	margin-bottom:5px;
	color:var(--safee-gam-accent-dark);
	font-size:12px;
	font-weight:800;
	letter-spacing:.09em;
	text-transform:uppercase;
}

body .safee-gam-section-heading h2,
body .safee-gam-related-title{
	margin:0!important;
	padding:0!important;
	border:0!important;
	color:var(--safee-gam-ink)!important;
	font-size:clamp(27px,3vw,34px)!important;
	line-height:1.25!important;
	font-weight:800!important;
}

.safee-gam-related-grid,
.safee-gam-archive-grid{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:24px;
}

.safee-gam-card{
	display:flex;
	min-width:0;
	flex-direction:column;
	overflow:hidden;
	border:1px solid var(--safee-gam-border);
	border-radius:16px;
	background:var(--safee-gam-white);
	box-shadow:0 8px 28px rgba(34,32,33,.05);
	transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}

.safee-gam-card:hover{
	transform:translateY(-4px);
	border-color:rgba(64,189,97,.42);
	box-shadow:var(--safee-gam-shadow);
}

.safee-gam-card-media{
	display:block;
	aspect-ratio:16/9;
	overflow:hidden;
	background:#edf5ef;
}

.safee-gam-card-media img{
	width:100%!important;
	height:100%!important;
	border-radius:0!important;
	object-fit:cover;
	transition:transform .35s ease;
}

.safee-gam-card:hover .safee-gam-card-media img{
	transform:scale(1.035);
}

.safee-gam-card-placeholder{
	display:grid;
	width:100%;
	height:100%;
	place-items:center;
	background:linear-gradient(135deg,#edf7ef,#ccebd4);
	color:var(--safee-gam-accent-dark);
	font-size:24px;
	font-weight:800;
}

.safee-gam-card-body{
	display:flex;
	flex:1;
	flex-direction:column;
	align-items:flex-start;
	padding:22px;
}

.safee-gam-card-term{
	min-height:26px;
	margin-bottom:12px;
	padding:4px 9px;
	font-size:10px;
}

body .safee-gam-card h2,
body .safee-gam-card-title{
	margin:0 0 10px!important;
	padding:0!important;
	border:0!important;
	color:var(--safee-gam-ink)!important;
	font-size:20px!important;
	line-height:1.35!important;
	font-weight:800!important;
	letter-spacing:-.015em!important;
}

.safee-gam-card h2 a,
.safee-gam-card-title a{
	color:inherit!important;
	text-decoration:none!important;
}

.safee-gam-card h2 a:hover,
.safee-gam-card-title a:hover{
	color:var(--safee-gam-accent-dark)!important;
}

body .safee-gam-card p{
	margin:0 0 18px!important;
	color:var(--safee-gam-muted)!important;
	font-size:14px!important;
	line-height:1.65!important;
}

.safee-gam-card-meta{
	display:flex;
	width:100%;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	margin-top:auto;
	color:#808380;
	font-size:12px;
}

.safee-gam-card-meta a{
	display:inline-flex;
	align-items:center;
	gap:5px;
	color:var(--safee-gam-accent-dark)!important;
	font-weight:800;
	text-decoration:none!important;
}

.safee-gam-card-meta a span{
	display:inline-block;
}

/* Category and tag archive template. */
body.safee-gam-taxonomy-archive{
	background:#fff;
}

.safee-gam-archive{
	width:100%!important;
	max-width:none!important;
	margin:0!important;
	padding:0!important;
	border:0!important;
	color:var(--safee-gam-ink);
	font-family:"DM Sans",Arial,sans-serif;
}

body.safee-gam-taxonomy-archive .site-content>.ast-container{
	display:block;
	max-width:none;
	padding:0;
}

.safee-gam-archive-hero{
	padding:74px 20px 68px;
	border-bottom:1px solid var(--safee-gam-border);
	background:
		radial-gradient(circle at 88% 18%,rgba(64,189,97,.18),transparent 28%),
		linear-gradient(145deg,#f9faf9,#fff);
}

.safee-gam-archive-hero-inner{
	width:min(860px,100%);
	margin-inline:auto;
	text-align:center;
}

.safee-gam-archive-kicker{
	margin-bottom:16px;
	letter-spacing:.08em;
	text-transform:uppercase;
}

.safee-gam-archive-hero h1{
	margin:0;
	color:#121212;
	font-family:"DM Sans",Arial,sans-serif;
	font-size:clamp(40px,6vw,68px);
	line-height:1.08;
	font-weight:800;
	letter-spacing:-.04em;
}

.safee-gam-archive-description{
	max-width:760px;
	margin:22px auto 0;
	color:var(--safee-gam-muted);
	font-size:18px;
	line-height:1.75;
}

.safee-gam-archive-description :last-child{
	margin-bottom:0;
}

.safee-gam-archive-count{
	margin:18px 0 0;
	color:#808380;
	font-size:13px;
	font-weight:700;
}

.safee-gam-archive-content{
	width:min(var(--safee-gam-wide),calc(100% - 40px));
	margin:0 auto;
	padding:64px 0 80px;
}

.safee-gam-archive-grid{
	gap:28px;
}

.safee-gam-pagination{
	margin-top:54px;
}

.safee-gam-pagination .nav-links{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	gap:8px;
}

.safee-gam-pagination .page-numbers{
	display:grid;
	min-width:42px;
	height:42px;
	padding:0 12px;
	place-items:center;
	border:1px solid var(--safee-gam-border);
	border-radius:10px;
	background:#fff;
	color:var(--safee-gam-ink);
	font-size:14px;
	font-weight:800;
	text-decoration:none;
}

.safee-gam-pagination .page-numbers:hover,
.safee-gam-pagination .page-numbers.current{
	border-color:var(--safee-gam-accent);
	background:var(--safee-gam-accent);
	color:#102416;
}

.safee-gam-empty{
	padding:50px 24px;
	border:1px solid var(--safee-gam-border);
	border-radius:16px;
	background:var(--safee-gam-soft);
	text-align:center;
}

.safee-gam-empty h2{
	margin:0 0 8px;
}

.safee-gam-article :focus-visible,
.safee-gam-archive :focus-visible{
	outline:3px solid var(--safee-gam-accent);
	outline-offset:3px;
}

html[dir="rtl"] .safee-gam-card-meta a span,
body.rtl .safee-gam-card-meta a span{
	transform:rotate(180deg);
}

@media(max-width:960px){
	.safee-gam-related-grid,
	.safee-gam-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:680px){
	body.safee-gam-enhanced-article .safee-gam-article{width:calc(100% - 34px);font-size:17px;line-height:1.8}
	body.safee-gam-enhanced-article .safee-gam-article>h1:first-child{margin-top:24px;font-size:clamp(32px,9vw,42px)}
	.safee-gam-article-byline{margin-bottom:26px}
	.safee-gam-meta-line{align-items:flex-start;flex-direction:column;gap:6px}
	.safee-gam-meta-item:not(:last-child)::after{display:none}
	body.safee-gam-enhanced-article .safee-gam-article>p:first-of-type{font-size:18px}
	body.safee-gam-enhanced-article .safee-gam-article>h2{margin-top:44px;padding-inline-start:12px;border-inline-start-width:4px}
	body.safee-gam-enhanced-article .safee-gam-article>h3{margin-top:32px}
	body.safee-gam-enhanced-article .safee-gam-article>figure{margin:26px 0}
	body.safee-gam-enhanced-article .safee-gam-article .safee-gam-callout{padding:20px 18px}
	body.safee-gam-enhanced-article .safee-gam-article :where(.ez-toc-container,#ez-toc-container,.lwptoc,.toc_container,.rank-math-toc-block,.wp-block-rank-math-toc-block){padding:20px 18px!important}
	.safee-gam-tags{grid-template-columns:1fr;gap:8px}
	.safee-gam-related{margin-top:54px}
	.safee-gam-related-grid,
	.safee-gam-archive-grid{grid-template-columns:1fr}
	.safee-gam-archive-hero{padding:52px 18px 48px}
	.safee-gam-archive-hero h1{font-size:clamp(35px,11vw,48px)}
	.safee-gam-archive-description{font-size:16px}
	.safee-gam-archive-content{width:calc(100% - 34px);padding:42px 0 60px}
}

@media(prefers-reduced-motion:reduce){
	.safee-gam-card,
	.safee-gam-card-media img{transition:none}
}

@media print{
	body.safee-gam-enhanced-article .safee-gam-article{width:100%;font-size:12pt}
	.safee-gam-related,
	.safee-gam-tags{display:none}
}
