/**
 * Southern Imprint Monthly
 * Community Page v3.0
 */

.sim-community-page{
	--sim-radius:24px;
	--sim-shadow-sm:0 12px 30px rgba(15,23,42,.055);
	--sim-shadow-md:0 24px 60px rgba(15,23,42,.09);
	--sim-shadow-lg:0 34px 90px rgba(15,23,42,.14);
	overflow:hidden;
}

.sim-community-page section{
	padding:88px 0;
}

.sim-eyebrow{
	margin:0 0 18px;
	color:var(--sim-orange);
	font-size:.78rem;
	font-weight:800;
	letter-spacing:.16em;
	text-transform:uppercase;
}

.sim-section-heading{
	max-width:760px;
	margin:0 auto 48px;
	text-align:center;
}

.sim-section-heading--left{
	max-width:760px;
	margin-right:auto;
	margin-left:0;
	text-align:left;
}

.sim-section-heading h2{
	margin:0;
	color:var(--sim-heading);
	font-size:clamp(2.15rem,3.6vw,3.15rem);
	line-height:1.08;
	letter-spacing:-.025em;
}

.sim-section-heading > p:last-child{
	max-width:650px;
	margin:22px auto 0;
	color:var(--sim-body);
	font-size:1.04rem;
	line-height:1.8;
}

.sim-section-heading--left > p:last-child{
	margin-left:0;
}

.sim-button{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:52px;
	padding:14px 24px;
	border:2px solid var(--sim-orange);
	border-radius:14px;
	background:var(--sim-orange);
	color:#fff;
	font-weight:800;
	text-decoration:none;
	transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,color .2s ease;
}

.sim-button:hover{
	transform:translateY(-2px);
	box-shadow:0 14px 28px rgba(245,130,32,.22);
}

.sim-button-outline{
	background:transparent;
	color:var(--sim-navy);
}

.sim-button-outline:hover{
	background:var(--sim-orange);
	color:#fff;
}

.sim-button-outline--light{
	border-color:#fff;
	color:#fff;
}

.sim-button-outline--light:hover{
	background:#fff;
	color:var(--sim-navy);
	box-shadow:none;
}

/* Hero */

.sim-community-hero{
	position:relative;
	overflow:hidden;
	padding:92px 0 90px!important;
	background:
		linear-gradient(110deg,rgba(255,252,247,.98) 0%,rgba(255,255,255,.96) 54%,rgba(238,244,247,.92) 100%);
}

.sim-community-hero::before{
	position:absolute;
	inset:0;
	background:
		radial-gradient(circle at 10% 14%,rgba(245,130,32,.12),transparent 27%),
		radial-gradient(circle at 90% 70%,rgba(13,52,69,.11),transparent 30%);
	content:"";
	pointer-events:none;
}

.sim-community-hero-grid{
	position:relative;
	z-index:1;
	display:grid;
	grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr);
	gap:54px;
	align-items:center;
}

.sim-community-hero-copy{
	max-width:760px;
}

.sim-community-hero-copy h1{
	margin:0;
	color:var(--sim-heading);
	font-size:clamp(3.2rem,5.6vw,5rem);
	line-height:1.02;
	letter-spacing:-.048em;
	text-wrap:balance;
}

.sim-community-location{
	margin:20px 0 0;
	color:var(--sim-navy);
	font-size:.86rem;
	font-weight:800;
	letter-spacing:.13em;
	text-transform:uppercase;
}

.sim-community-intro{
	max-width:690px;
	margin-top:24px;
	color:var(--sim-body);
	font-size:1.08rem;
	line-height:1.78;
}

.sim-community-intro p{
	margin:0;
}

.sim-community-actions{
	display:flex;
	flex-wrap:wrap;
	gap:16px;
	margin-top:30px;
}

.sim-community-topics{
	display:flex;
	flex-wrap:wrap;
	gap:10px;
	margin:26px 0 0;
	padding:0;
	list-style:none;
}

.sim-community-topics li{
	padding:10px 14px;
	border:1px solid rgba(13,52,69,.13);
	border-radius:999px;
	background:rgba(255,255,255,.78);
	color:var(--sim-navy);
	font-size:.76rem;
	font-weight:800;
	box-shadow:0 8px 24px rgba(15,23,42,.04);
}

.sim-edition-card{
	position:relative;
	overflow:hidden;
	border-radius:28px;
	background:#0d3445;
	color:#fff;
	box-shadow:0 38px 95px rgba(13,52,69,.28);
}

.sim-edition-card::before{
	position:absolute;
	top:-120px;
	right:-120px;
	width:300px;
	height:300px;
	border-radius:50%;
	background:rgba(245,130,32,.12);
	content:"";
}

.sim-edition-card-top{
	position:relative;
	padding:42px 40px 38px;
}

.sim-edition-label{
	margin:0;
	color:#ffb46f;
	font-size:.74rem;
	font-weight:800;
	letter-spacing:.16em;
	text-transform:uppercase;
}

.sim-edition-card h2{
	margin:18px 0 0;
	color:#fff;
	font-size:clamp(2.35rem,4vw,3.45rem);
	line-height:1.04;
	letter-spacing:-.04em;
}

.sim-edition-card-top > p:last-child{
	margin:20px 0 0;
	color:rgba(255,255,255,.78);
	font-size:1rem;
	line-height:1.8;
}

.sim-edition-card-actions{
	position:relative;
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	border-top:1px solid rgba(255,255,255,.14);
}

.sim-edition-card-actions a{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	min-height:62px;
	padding:18px 24px;
	color:#fff;
	font-size:.86rem;
	font-weight:800;
	text-decoration:none;
	transition:background-color .2s ease,color .2s ease;
}

.sim-edition-card-actions a + a{
	border-left:1px solid rgba(255,255,255,.14);
}

.sim-edition-card-actions a:hover{
	background:var(--sim-orange);
	color:#fff;
}

/* Spotlight */

.sim-spotlight{
	background:
		linear-gradient(180deg,#f5f8fa 0%,#eef3f6 100%);
}

.sim-spotlight-container{
	width:min(1320px,94%);
}

.sim-spotlight-layout{
	display:grid;
	grid-template-columns:minmax(0,1.18fr) minmax(340px,.82fr);
	gap:54px;
	align-items:start;
}

.sim-spotlight-content{
	padding:10px 0 0;
}

.sim-spotlight-logo{
	display:flex;
	align-items:center;
	width:100%;
	max-width:520px;
	min-height:130px;
	margin-bottom:28px;
}

.sim-spotlight-logo img{
	display:block;
	width:auto;
	max-width:100%;
	max-height:160px;
	object-fit:contain;
	object-position:left center;
}

.sim-spotlight-content h3{
	margin:0 0 20px;
	color:var(--sim-heading);
	font-size:clamp(2.2rem,3.8vw,3.35rem);
	line-height:1.06;
	letter-spacing:-.045em;
}

.sim-spotlight-contact{
	margin:0 0 28px;
	padding:0 0 24px;
	border-bottom:1px solid #dbe3e8;
}

.sim-spotlight-contact p{
	margin:0 0 8px;
	color:var(--sim-body);
	font-size:1rem;
	line-height:1.6;
}

.sim-spotlight-contact a{
	color:var(--sim-navy);
	font-weight:800;
	text-decoration:none;
}

.sim-spotlight-contact a:hover{
	color:var(--sim-orange);
}

.sim-spotlight-story{
	max-width:760px;
	color:var(--sim-body);
	font-size:1.06rem;
	line-height:1.82;
}

.sim-spotlight-story p{
	margin:0 0 22px;
}

.sim-spotlight-content .sim-button{
	margin-top:8px;
}

.sim-spotlight-ad{
	display:flex;
	align-items:flex-start;
	justify-content:center;
	padding:18px;
	border:1px solid #dfe5ea;
	border-radius:28px;
	background:#fff;
	box-shadow:0 24px 65px rgba(15,23,42,.11);
}

.sim-spotlight-ad a{
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	overflow:hidden;
	border-radius:18px;
	background:#f6f8fa;
}

.sim-spotlight-ad img{
	display:block;
	width:100%;
	height:auto;
	max-height:700px;
	object-fit:contain;
}

@media (max-width:1000px){
	.sim-spotlight-layout{
		grid-template-columns:1fr;
	}

	.sim-spotlight-ad{
		max-width:760px;
	}

	.sim-spotlight-logo{
		max-width:460px;
	}
}

@media (max-width:560px){
	.sim-spotlight-container{
		width:min(1200px,92%);
	}

	.sim-spotlight-layout{
		gap:42px;
	}

	.sim-spotlight-logo{
		min-height:110px;
		margin-bottom:26px;
	}

	.sim-spotlight-logo img{
		max-height:140px;
	}

	.sim-spotlight-contact{
		margin-bottom:28px;
		padding-bottom:24px;
	}

	.sim-spotlight-ad{
		padding:14px;
		border-radius:22px;
	}
}

/* Current issue */

.sim-current-issue{
	background:#fff;
}

.sim-current-issue-card{
	display:grid;
	grid-template-columns:minmax(0,1.35fr) auto;
	gap:42px;
	align-items:center;
	padding:42px 46px;
	border-radius:28px;
	background:#0d3445;
	color:#fff;
	box-shadow:var(--sim-shadow-md);
}

.sim-current-issue-card h2{
	margin:0;
	color:#fff;
	font-size:clamp(2.15rem,3.6vw,3.05rem);
	line-height:1.05;
}

.sim-current-issue-card p:last-child{
	margin:18px 0 0;
	color:rgba(255,255,255,.76);
}

.sim-current-issue-actions{
	display:flex;
	flex-wrap:wrap;
	gap:14px;
}

.sim-current-issue-actions .sim-button{
	min-width:170px;
}

/* Shared gallery */

.sim-gallery-section{
	background:#fff;
}

.sim-gallery-section--alt{
	background:#f6f8fa;
}

.sim-gallery-grid{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:26px;
	align-items:stretch;
}

.sim-gallery-card{
	display:flex;
	flex-direction:column;
	overflow:hidden;
	min-height:100%;
	border:1px solid #e1e6eb;
	border-radius:var(--sim-radius);
	background:#fff;
	box-shadow:var(--sim-shadow-sm);
	transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}

.sim-gallery-card:hover{
	transform:translateY(-6px);
	border-color:#d2dae2;
	box-shadow:var(--sim-shadow-md);
}

.sim-gallery-media{
	position:relative;
	display:flex;
	flex:1;
	align-items:center;
	justify-content:center;
	min-height:260px;
	padding:16px;
	overflow:hidden;
	background:#f3f5f7;
}

.sim-gallery-media img{
	display:block;
	width:100%;
	height:auto;
	max-height:520px;
	object-fit:contain;
	transition:transform .25s ease;
}

.sim-gallery-media > span{
	position:absolute;
	inset:0;
	display:flex;
	align-items:center;
	justify-content:center;
	background:rgba(13,52,69,.76);
	color:#fff;
	font-size:.82rem;
	font-weight:800;
	letter-spacing:.09em;
	text-transform:uppercase;
	opacity:0;
	transition:opacity .2s ease;
}

.sim-gallery-media:hover > span,
.sim-gallery-media:focus-visible > span{
	opacity:1;
}

.sim-gallery-card:hover img{
	transform:scale(1.018);
}

.sim-gallery-copy{
	padding:22px;
	border-top:1px solid #e5e9ed;
}

.sim-gallery-copy h3{
	margin:0 0 10px;
	color:var(--sim-heading);
	font-size:1.35rem;
}

.sim-gallery-copy p{
	margin:0;
	color:var(--sim-body);
	line-height:1.72;
}

/* Existing deal/event/archive compatibility */

.sim-artwork-section,
.sim-issue-archives{
	background:#fff;
}

.sim-artwork-grid{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:26px;
}

.sim-artwork-card,
.sim-archive-card{
	overflow:hidden;
	border:1px solid #e1e6eb;
	border-radius:var(--sim-radius);
	background:#fff;
	box-shadow:var(--sim-shadow-sm);
}

.sim-artwork-image{
	display:flex;
	align-items:center;
	justify-content:center;
	min-height:300px;
	padding:20px;
	background:#f3f5f7;
}

.sim-artwork-image img{
	display:block;
	width:100%;
	height:auto;
	max-height:460px;
	object-fit:contain;
}

.sim-artwork-action,
.sim-archive-actions a{
	color:var(--sim-navy);
	font-weight:800;
	text-decoration:none;
}

.sim-artwork-action{
	display:flex;
	align-items:center;
	justify-content:center;
	min-height:50px;
	padding:12px 18px;
	border-top:1px solid #e5e9ed;
}

.sim-artwork-actions{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
}

.sim-artwork-meta{
	margin:0;
	padding:12px;
	color:#6d7884;
	font-size:.82rem;
	font-weight:700;
	text-align:center;
}

.sim-archive-grid{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:26px;
}

.sim-archive-card{
	padding:26px;
}

.sim-archive-card h3{
	margin:0;
	color:var(--sim-heading);
	font-size:1.45rem;
}

.sim-archive-actions{
	display:flex;
	flex-wrap:wrap;
	gap:18px;
	margin-top:20px;
}

/* Lightbox */

.sim-lightbox{
	position:fixed;
	z-index:9999;
	inset:0;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:26px;
	background:rgba(5,16,23,.95);
	opacity:0;
	visibility:hidden;
	transition:opacity .2s ease,visibility .2s ease;
}

.sim-lightbox.is-open{
	opacity:1;
	visibility:visible;
}

.sim-lightbox-dialog{
	position:relative;
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	height:100%;
}

.sim-lightbox-image{
	display:block;
	max-width:min(1280px,88vw);
	max-height:82vh;
	border-radius:12px;
	object-fit:contain;
	box-shadow:0 30px 90px rgba(0,0,0,.5);
	transform:scale(.97);
	transition:transform .2s ease;
}

.sim-lightbox.is-open .sim-lightbox-image{
	transform:scale(1);
}

.sim-lightbox-close,
.sim-lightbox-prev,
.sim-lightbox-next{
	position:absolute;
	z-index:3;
	display:flex;
	align-items:center;
	justify-content:center;
	width:52px;
	height:52px;
	padding:0;
	border:1px solid rgba(255,255,255,.28);
	border-radius:999px;
	background:rgba(13,52,69,.82);
	color:#fff;
	font-size:2rem;
	cursor:pointer;
}

.sim-lightbox-close{top:0;right:0;}
.sim-lightbox-prev{left:0;}
.sim-lightbox-next{right:0;}

.sim-lightbox-counter{
	position:absolute;
	top:10px;
	left:50%;
	margin:0;
	padding:7px 12px;
	border-radius:999px;
	background:rgba(13,52,69,.8);
	color:#fff;
	font-size:.78rem;
	font-weight:800;
	letter-spacing:.08em;
	transform:translateX(-50%);
}

.sim-lightbox-caption{
	position:absolute;
	right:90px;
	bottom:0;
	left:90px;
	margin:0;
	color:#fff;
	text-align:center;
}

.sim-lightbox-actions{
	position:absolute;
	right:80px;
	bottom:42px;
	left:80px;
	display:flex;
	justify-content:center;
	gap:12px;
}

.sim-lightbox-action{
	display:none;
	padding:11px 17px;
	border:1px solid rgba(255,255,255,.35);
	border-radius:999px;
	background:rgba(13,52,69,.82);
	color:#fff;
	font-size:.82rem;
	font-weight:800;
	text-decoration:none;
}

.sim-lightbox-action.is-visible{
	display:inline-flex;
}

body.sim-lightbox-open{
	overflow:hidden;
}

@media (max-width:1000px){
	.sim-community-hero-grid,
	.sim-spotlight-card{
		grid-template-columns:1fr;
	}

	.sim-edition-card{
		max-width:650px;
	}

	.sim-gallery-grid,
	.sim-artwork-grid{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
}

@media (max-width:760px){
	.sim-community-page section{
		padding:70px 0;
	}

	.sim-current-issue-card{
		grid-template-columns:1fr;
		padding:38px;
	}

	.sim-spotlight-card{
		padding:38px 30px;
	}
}

@media (max-width:560px){
	.sim-community-page section{
		padding:58px 0;
	}

	.sim-community-hero{
		padding:64px 0 66px!important;
	}

	.sim-community-hero-grid{
		gap:42px;
	}

	.sim-community-hero-copy h1{
		font-size:clamp(2.7rem,12vw,3.55rem);
		line-height:1.04;
	}

	.sim-community-intro{
		font-size:1.02rem;
		line-height:1.72;
	}

	.sim-community-actions,
	.sim-current-issue-actions{
		flex-direction:column;
	}

	.sim-community-actions .sim-button,
	.sim-current-issue-actions .sim-button{
		width:100%;
	}

	.sim-edition-card{
		border-radius:24px;
	}

	.sim-edition-card-top{
		padding:32px 28px 28px;
	}

	.sim-edition-card-actions{
		grid-template-columns:1fr;
	}

	.sim-edition-card-actions a + a{
		border-top:1px solid rgba(255,255,255,.14);
		border-left:0;
	}

	.sim-gallery-grid,
	.sim-artwork-grid,
	.sim-archive-grid{
		grid-template-columns:1fr;
	}

	.sim-gallery-media,
	.sim-artwork-image{
		min-height:240px;
	}

	.sim-lightbox{
		padding:14px;
	}

	.sim-lightbox-prev,
	.sim-lightbox-next{
		top:auto;
		bottom:0;
	}

	.sim-lightbox-actions{
		right:64px;
		bottom:54px;
		left:64px;
		flex-wrap:wrap;
	}

	.sim-lightbox-caption{
		right:64px;
		bottom:112px;
		left:64px;
	}
}


@media (prefers-reduced-motion:reduce){
	.sim-button,
	.sim-gallery-card,
	.sim-gallery-media img,
	.sim-lightbox,
	.sim-lightbox-image{
		transition:none!important;
	}
}