.church-card{border:1px solid #ddd;border-radius:8px;padding:1.25rem;margin-bottom:1.5rem;background:#fff}.church-card-inner{display:flex;justify-content:space-between;align-items:center;gap:1.5rem}.church-card-left{flex:1}.church-card-right{flex:0 0 120px;text-align:right}.church-logo{max-width:120px;height:auto;border:solid 1px #a8b6af}.church-name{margin:0 0 0.25rem}.church-address{margin:0 0 0.25rem}.church-view-btn{display:inline-block;margin-top:10px;background:#4ec642;color:#fff!important;padding:8px 16px;font-size:14px;border-radius:6px;text-decoration:none;font-weight:600;transition:background 0.2s ease}.church-view-btn:hover{background:#3da334;color:#fff!important}.church-card{box-shadow:0 6px 18px rgba(0,0,0,0.06)}.church-view-btn:hover{filter:brightness(0.95)}@media (max-width:768px){.church-card{padding:1rem}.church-card-inner{flex-direction:column;align-items:flex-start;gap:1rem}.church-card-left{width:100%}.church-card-right{width:100%;flex:0 0 auto;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:0.75rem}.church-logo{max-width:90px;width:90px;height:auto;flex:0 0 auto}.church-view-btn{margin-top:0;padding:10px 14px;font-size:15px;border-radius:8px;white-space:nowrap}.church-name{margin-bottom:0.35rem}.church-address{margin-bottom:0.35rem}}@media (max-width:420px){.church-card-right{flex-direction:column;align-items:flex-start}.church-view-btn{width:100%;text-align:center}}.sap-state-dropdown{width:100%;padding-top:15px;padding-bottom:15px;font-size:24px;color:black}.sap-county-list{display:flex;flex-wrap:wrap;gap:6px 6px!important;margin-bottom:25px}.sap-county-item{text-decoration:none;color:#333;font-size:14px!important;line-height:1.5em!important;font-weight:500;padding:4px 4px!important;border-radius:4px;background:rgba(78,198,66,0.49)!important;transition:background 0.2s ease;display:inline-block}.sap-county-item:hover{background:#e2e2e2}.sp-church-filters{display:grid;gap:14px}.sp-church-filters label{display:block;margin-bottom:6px}.sp-church-filters select{width:100%;padding:10px 12px;border-radius:10px}.sp-subdenom-dropdown{display:grid;gap:14px}.sp-subdenom-dropdown label{display:block;margin-bottom:6px}.sp-subdenom-dropdown select{width:100%;padding:10px 12px;border-radius:10px}.sp-pagination ul{list-style:none;padding-left:0;display:flex;gap:10px;flex-wrap:wrap}.sp-hp{display:none!important}.sp-add-church-form-wrap{max-width:760px}.sp-add-church-form label{display:block;margin:12px 0 6px;font-weight:600}.sp-add-church-form input,.sp-add-church-form select,.sp-add-church-form textarea{width:100%;padding:10px 12px;border-radius:10px}.sp-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.sp-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}@media (max-width:700px){.sp-grid-2,.sp-grid-3{grid-template-columns:1fr}}.sp-form-actions{margin-top:18px}.sp-form-actions button{padding:12px 16px;border-radius:10px;border:1px solid #50c444!important;cursor:pointer;color:white;background-color:#50c444}.sp-form-errors,.sp-form-success{padding:14px 16px;border-radius:10px;margin:0 0 16px}.sp-form-errors{background:#fff3f3}.sp-form-success{background:#f0fff2}.sp-disclaimer{margin-top:12px;font-size:0.95em;opacity:0.85}.custom-social-icons{display:flex;gap:18px;align-items:center}.custom-social-icons a.social-icon{width:44px;height:44px;position:relative;display:inline-block;text-decoration:none}.custom-social-icons a.social-icon:before{font-family:"Font Awesome 6 Brands"!important;font-weight:400;font-size:32px;color:#333;line-height:1}.custom-social-icons a.facebook:before{content:"\f39e"}.custom-social-icons a.instagram:before{content:"\f16d"}.custom-social-icons a.youtube:before{content:"\f167"}.custom-social-icons a.tiktok:before{content:"\e07b"}.custom-social-icons a.x_twitter:before{content:"\e61b"}.custom-social-icons a.vimeo:before{content:"\f27d"}.custom-social-icons a.spotify:before{content:"\f1bc"}.custom-social-icons a.soundcloud:before{content:"\f1be"}.custom-social-icons a.threads:before{content:"\e618"}.custom-social-icons a.podcast:before{font-family:"Font Awesome 6 Free"!important;font-weight:900;content:"\f2ce"}.custom-social-icons a.social-icon:hover:before{color:#4ec642!important}.custom-social-icons p{padding-bottom:0!important;margin:0!important}.custom-social-icons a.flocknote img{content:url("https://churchesnearme.saltandpurpose.com/wp-content/uploads/2026/07/flocknote-gray.png");transition:opacity .2s ease;margin-top:-5px}.custom-social-icons a.flocknote:hover img{content:url("https://churchesnearme.saltandpurpose.com/wp-content/uploads/2026/07/flocknote-green.webp");margin-top:-5px}.custom-social-icons a.sermonaudio img{content:url("https://churchesnearme.saltandpurpose.com/wp-content/uploads/2026/07/sermonaudio_icon.png");transition:opacity .2s ease;margin-top:-5px}.custom-social-icons a.sermonaudio:hover img{content:url("https://churchesnearme.saltandpurpose.com/wp-content/uploads/2026/07/sermonaudio_icon_green.png");margin-top:-5px}.custom-social-icons a.in_the_bulletin img{content:url("https://churchesnearme.saltandpurpose.com/wp-content/uploads/2026/07/inthebulletin.webp");transition:opacity .2s ease;margin-top:-5px}.custom-social-icons a.in_the_bulletin:hover img{content:url("https://churchesnearme.saltandpurpose.com/wp-content/uploads/2026/07/inthebulletin_green.webp");margin-top:-5px}.custom-social-icons a.rumble img{content:url(https://churchesnearme.saltandpurpose.com/wp-content/uploads/2026/08/rumble_icon.webp");
    transition: opacity .2s ease;
	margin-top: -5px;
}

.custom-social-icons a.rumble:hover img {
    content: url("https://churchesnearme.saltandpurpose.com/wp-content/uploads/2026/08/rumble_icon_green.webp");
	margin-top: -5px;
}

.custom-social-icons a.faith_channel img {
    content: url("https://churchesnearme.saltandpurpose.com/wp-content/uploads/2026/08/faithchannel_icon-1.webp");
    transition: opacity .2s ease;
	margin-top: -5px;
}

.custom-social-icons a.faith_channel:hover img {
    content: url("https://churchesnearme.saltandpurpose.com/wp-content/uploads/2026/08/faithchannel_icon_green-1.webp");
	margin-top: -5px;
}

.custom-social-icons a.parishes_online img {
    content: url("https://churchesnearme.saltandpurpose.com/wp-content/uploads/2026/08/parishes_online_icon.webp");
    transition: opacity .2s ease;
	margin-top: -5px;
}

.custom-social-icons a.parishes_online:hover img {
    content: url("https://churchesnearme.saltandpurpose.com/wp-content/uploads/2026/08/parishes_online_green_icon.webp");
	margin-top: -5px;
}

.custom-social-icons a.boxcast img {
    content: url("https://churchesnearme.saltandpurpose.com/wp-content/uploads/2026/10/boxcasticon.webp");
    transition: opacity .2s ease;
	margin-top: -5px;
}

.custom-social-icons a.boxcast:hover img {
    content: url("https://churchesnearme.saltandpurpose.com/wp-content/uploads/2026/10/boxcasticongreen.webp");
	margin-top: -5px;
}

.custom-social-icons a.church_center img {
    content: url("https://churchesnearme.saltandpurpose.com/wp-content/uploads/2026/10/churchcentericon.webp");
    transition: opacity .2s ease;
	margin-top: -5px;
}

.custom-social-icons a.church_center:hover img {
    content: url("https://churchesnearme.saltandpurpose.com/wp-content/uploads/2026/10/churchcentericongreen.webp");
	margin-top: -5px;
}

.custom-social-icons a.church_online img {
    content: url("https://churchesnearme.saltandpurpose.com/wp-content/uploads/2026/10/churchonlineicon.webp");
    transition: opacity .2s ease;
	margin-top: -5px;
}

.custom-social-icons a.church_online:hover img {
    content: url("https://churchesnearme.saltandpurpose.com/wp-content/uploads/2026/10/churchonlineicongreen.webp");
	margin-top: -5px;
}

/* =====================================
   FORCED CUSTOM SCROLLBAR (Chrome fix)
   ===================================== */

/* remove native styling */
html, body {
  scrollbar-gutter: stable;
}

/* WIDTH */
body::-webkit-scrollbar,
html::-webkit-scrollbar {
  width: 18px !important;
}

/* REMOVE ARROWS */
body::-webkit-scrollbar-button,
html::-webkit-scrollbar-button {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

/* TRACK */
body::-webkit-scrollbar-track,
html::-webkit-scrollbar-track {
  background: #ffffff !important;
  border-radius: 999px !important;
}

/* THUMB */
body::-webkit-scrollbar-thumb,
html::-webkit-scrollbar-thumb {
  background: #4ec642 !important;
  border-radius: 999px !important;
  border: none !important;
}

.cnm-breadcrumbs__list{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  font-size:14px;
}

.cnm-breadcrumbs__item,
.cnm-breadcrumbs__sep{
  display:inline-flex;
  align-items:center;
}

.cnm-breadcrumbs__link{
  text-decoration:none;
}

.cnm-breadcrumbs__current{
  font-weight:600;
}

.faith-box-button {
	color: white!important;
	background-color: #4ec542;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-right: 10px;
	padding-left: 10px;
	width: 100%!important;
	text-align: center!important;
	border-radius: 7px;
	display: block;
	font-size: 12px;
	line-height: 1.2em;
	margin-bottom: 0px!important;
}

.faith-box {
	width: 100%!important;
}

/* Suggest an Edit popup - scrollable form */

#suggestedit .sp-suggest-edit-form-wrap {
  max-width: 760px;
  margin: 0 auto;
  padding: 10px 20px 30px;

  max-height: 80vh;
  overflow-y: auto !important;
  overflow-x: hidden;

  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  box-sizing: border-box;
}

#suggestedit h3 {
  margin-top: 24px;
  margin-bottom: 12px;
  font-size: 22px;
  color: #222;
}

#suggestedit p {
  line-height: 1.5;
}

#suggestedit label {
  display: block;
  margin: 14px 0 6px;
  font-weight: 600;
  color: #222;
}

#suggestedit input[type="text"],
#suggestedit input[type="email"],
#suggestedit input[type="url"],
#suggestedit input[type="tel"],
#suggestedit select,
#suggestedit textarea {
  width: 100%;
  padding: 12px 14px;
  border: 1px solid #d8d8d8;
  border-radius: 8px;
  font-size: 16px;
  background: #fff;
}

#suggestedit textarea {
  resize: vertical;
}

#suggestedit .sp-grid-2,
#suggestedit .sp-grid-3 {
  display: grid;
  gap: 16px;
}

#suggestedit .sp-grid-2 {
  grid-template-columns: repeat(2, 1fr);
}

#suggestedit .sp-grid-3 {
  grid-template-columns: repeat(3, 1fr);
}

#suggestedit hr {
  border: 0;
  border-top: 1px solid #e5e5e5;
  margin: 26px 0;
}

#suggestedit .sp-form-actions {
  margin-top: 28px;
}

#suggestedit button[type="submit"] {
  background: #4ec641;
  color: #fff;
  border: 0;
  border-radius: 999px;
  padding: 13px 28px;
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
}

#suggestedit button[type="submit"]:hover {
  filter: brightness(0.92);
}

#suggestedit .sp-form-success {
  padding: 16px 18px;
  background: #edfbea;
  border-left: 5px solid #4ec641;
  margin-bottom: 20px;
}

#suggestedit .sp-form-errors {
  padding: 16px 18px;
  background: #fff1f1;
  border-left: 5px solid #c62828;
  margin-bottom: 20px;
}

#suggestedit .sp-hp {
  position: absolute;
  left: -9999px;
}

@media (max-width: 700px) {
  #suggestedit .sp-grid-2,
  #suggestedit .sp-grid-3 {
    grid-template-columns: 1fr;
  }
}

.wpkt-claim-form button {
	color: white;
	background-color: #4ec542;
	border: none;
}

.wpkt-claim-form input {
	width: 100%;
	padding-top:7px;
	padding-bottom: 7px;
}

.app-section {
	margin-top: 25px;
	width: 100%;
}

.app-section-col1 {
	width: 50%;
	float: left;
}
.app-section-col2 {
	width: 50%;
	float: right;
}
.donation_button {
    display: inline-block;
    background: #4ec642;
    color: #fff !important;
    padding: 12px 24px;
    border-radius: 6px;
    text-decoration: none;
    font-weight: 600;
    transition: background .2s ease;
	margin-top: 25px;
}

.donation_button:hover {
    background: #3fad37;
    color: #fff !important;
}

.nearby-churches-section {
	margin-top: 40px;
}

.nearby-churches-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 22px;
}

.nearby-church-card {
	background: #fff;
	border: 1px solid #e5e5e5;
	border-radius: 12px;
	padding: 22px;
	text-align: center;
	box-shadow: 0 4px 14px rgba(0,0,0,0.06);
}

.nearby-church-card-link {
	display: block;
	color: inherit;
	text-decoration: none;
}

.nearby-church-logo {
	max-width: 120px;
	max-height: 80px;
	object-fit: contain;
	margin: 0 auto 15px;
	display: block;
	border: solid 1px #a8b6af;
}

.nearby-church-card h3 {
	font-size: 20px;
	line-height: 1.25;
	margin-bottom: 10px;
}

.nearby-church-address {
	font-size: 15px;
	line-height: 1.5;
	margin-bottom: 16px;
}

.nearby-church-btn {
	display: inline-block;
	padding: 8px 18px;
	border-radius: 6px!important;
	background: #4ec641;
	color: #fff;
	font-weight: 700;
	font-size: 14px;
}

@media (max-width: 980px) {
	.nearby-churches-grid {
		grid-template-columns: 1fr;
	}
}

.more-denom-churches-section {
	margin-top: 40px;
}

.more-denom-link-wrap {
	text-align: center;
	margin-top: 22px;
}

.more-denom-link {
	display: inline-block;
	font-weight: 700;
	text-decoration: underline;
}


.offerings ul {
  list-style-type: none;
  padding-left: 0;
}

.offerings ul li {
  position: relative;
  padding-left: 30px; /* Space reserved for the icon */
  margin-bottom: 2px;
}

.offerings ul li::before {
  position: absolute;
  left: 0;
  top: 2px; /* Fine-tune the vertical alignment */
  font-family: "Font Awesome 6 Free"; /* Use "Font Awesome 5 Free" if on v5 */
  font-weight: 900; /* Required for solid icons to render properly */
  content: "\f00c"; /* Unicode for the checkmark icon */
  color: #2ecc71; /* Change to your preferred icon color */
  font-size: 16px;
}

.offerings ul li:empty::before {
  content: "";
  color: #666;
	font-family: var(--et_global_body_font);
	font-weight: 500!important; 
	font-size: 18px!important;
  list-style-type: none; /* Removes the default bullet if desired */
}

.sp-checkbox-item{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:6px;
}

.sp-checkbox-item input{
    margin:0 !important;
    width:auto !important;
    flex:none;
}

.sp-checkbox-item label{
    margin:0 !important;
    display:inline !important;
    font-weight:normal;
}

/* Photo + map row */
.church-photo-map {
    align-items: stretch;
}

/* Map column */
.church-photo-map .et_pb_column:has(.church-map) {
    position: relative;
}

/* Map module fills the entire column */
.church-photo-map .church-map {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

/* Force ALL wrappers inside the map module to inherit full height */
.church-photo-map .church-map > div,
.church-photo-map .church-map .et_pb_code_inner {
    height: calc(100% - 9px) !important;
}

/* Google map fills the resulting space */
.church-photo-map .church-map iframe[src*="google.com/maps/embed"] {
    width: 100%;
    height: 100% !important;
    border: 0;
    display: block;
}

/* Mobile: restore map to normal flow */
@media (max-width: 767px) {

    .church-photo-map .church-map {
        position: relative;
        inset: auto;
        width: 100%;
        height: 250px;
    }

    .church-photo-map .church-map .et_pb_code_inner {
        height: 250px;
    }

    .church-photo-map iframe[src*="google.com/maps/embed"] {
        width: 100%;
        height: 250px !important;
        display: block;
    }
}

.cnm-badge-copy {
    margin-top:20px;
}

.cnm-badge-copy textarea{
    width:100%;
    min-height:120px;
    font-family:Consolas, Monaco, monospace;
    font-size:14px;
    padding:12px;
    border:1px solid #ccc;
    border-radius:6px;
    background:#fafafa;
    resize:vertical;
}

.cnm-copy-btn{
    margin-top:10px;
    background:#4ec641;
    color:#fff;
    border:0;
    padding:10px 18px;
    border-radius:6px;
    cursor:pointer;
    font-weight:600;
}

.cnm-copy-btn:hover{
    background:#3fa934;
}

#faithbox img {
	    border: solid 1px #a8b6af;
}

#denomlist ul {
	padding-bottom: 0px;
}

.sp-add-church-form select[multiple] {
	width: 100%;
	min-height: 300px;
	padding: 10px;
}

.sp-add-church-form .sp-field-help {
	margin-top: -5px;
	font-size: 14px;
	font-style: italic!important;
}

.et_pb_search input.et_pb_searchsubmit {
	background-color: #3fa934;
	color: white;
}

.et_pb_search input.et_pb_s, .et_pb_search input.et_pb_searchsubmit {
    padding-top: 16px!important;
	  padding-bottom: 16px!important;
	    padding-right: 0.715em !important;
	padding-left: 0.715em !important;
    margin: 0;
    font-size: 24px;
    line-height: normal !important;
    border: none;
}

.et_pb_search {
    border: 1px solid #bbb;
    border-radius: 3px;
    overflow: hidden;
}

.church-offering-states li {
	list-style:none;
	border: 1px solid #3fa934;
	margin-bottom: 10px;
	padding: 7px;
}

.church-offering-links {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.church-offering-link-card {
	padding: 22px;
	border: 1px solid #ddd;
	border-radius: 10px;
	background: #fff;
}

.church-offering-link-card h3 {
	margin: 8px 0 10px;
}

.church-offering-link-card p {
	margin-bottom: 15px;
}

.church-offering-link-card a {
	font-weight: 700;
	text-decoration: none;
}

@media (max-width: 980px) {
	.church-offering-links {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 600px) {
	.church-offering-links {
		grid-template-columns: 1fr;
	}
}

.church-pagination {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 35px;
}

.church-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 40px;
	height: 40px;
	padding: 0 12px;
	border: 1px solid #ddd;
	border-radius: 4px;
	text-decoration: none;
	line-height: 1;
}

.church-pagination .page-numbers.current {
	font-weight: 700;
}

.church-pagination a.page-numbers:hover {
	text-decoration: none;
}

.seealldenoms {
	text-transform: uppercase;
	background-color: #3fa934;
	padding-top: 7px;
	padding-bottom: 7px;
}

.seealldenoms a{
	color: white;
}

body .et_pb_menu .et-menu-nav ul.et-menu > li.findachurch_menu_link.current-menu-ancestor > a,
body .et_pb_menu .et-menu-nav ul.et-menu > li.findachurch_menu_link.current-menu-parent > a {
    color: #000 !important;
}

/* Custom menu breakpoint - 1157px */

/* Desktop */
@media only screen and (min-width: 1158px) {
    .et_pb_menu .et_pb_menu__menu {
        display: flex !important;
    }

    .et_pb_menu .et_mobile_nav_menu {
        display: none !important;
    }
}

/* Mobile */
@media only screen and (max-width: 1157px) {
    .et_pb_menu .et_pb_menu__menu {
        display: none !important;
    }

    .et_pb_menu .et_mobile_nav_menu {
        display: block !important;
    }
}

/* Preserve header padding between custom and default breakpoints */
@media only screen and (min-width: 981px) and (max-width: 1157px) {

    /* Replace with your header row's custom CSS class if possible */
    .et-l--header .et_pb_row {
        padding-top: 15px !important;
        padding-bottom: 15px !important;
    }
}

.denom-card {
    background: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 14px;
    padding: 28px;
    transition: all .25s ease;
    box-shadow: 0 2px 8px rgba(0,0,0,.05);
}

.denom-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 30px rgba(0,0,0,.12);
}

.denom-card h3 {
    margin: 0 0 12px;
}

.denom-card p {
    color: #666;
    font-size: .95rem;
    line-height: 1.5;
}

.denom-card .button {
    display: inline-block;
    margin-top: 16px;
    font-weight: 600;
}

/* Desktop */
.church-offering-states .church-offering-states-dropdown {
	display: none !important;
}

/* Mobile */
@media (max-width: 767px) {

	.church-offering-states .church-offering-states-list {
		display: none !important;
	}

	.church-offering-states .church-offering-states-dropdown {
		display: block !important;
	}

	.church-offering-states .church-offering-states-dropdown select {
		width: 100%;
		padding: 12px 15px;
		font-size: 16px;
	}
}

.organization-location-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 30px;
}

.organization-location-card {
	position: relative;
	overflow: hidden;
	border: 1px solid #ddd;
	padding: 20px;
	background: #fff;
}

.organization-location-name {
	font-weight: 700;
	text-align: center;
	font-size: 20px;
	line-height: 1.3;
	margin-bottom: 15px;
}

.organization-location-image-link {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
	overflow: hidden;
}

.organization-location-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.organization-location-info {
	text-align: center;
	padding-top: 15px;
}

.organization-location-address,
.organization-location-city {
	line-height: 1.5;
}

.organization-location-link {
	display: inline-block;
	margin-top: 12px;
	font-weight: 600;
}

/* Main Location corner ribbon */
.organization-main-location {
	position: absolute;
	top: 18px;
	right: -42px;
	width: 170px;
	padding: 7px 0;
	background: #4ec542;
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	text-align: center;
	text-transform: uppercase;
	transform: rotate(45deg);
	z-index: 5;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

/* Mobile */
@media (max-width: 767px) {

	.organization-location-grid {
		grid-template-columns: 1fr;
	}

}

.church-other-locations {
	margin-top: 40px;
}

.church-other-locations h2 {
	text-align: center;
	margin-bottom: 25px;
}

.church-other-locations-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 25px;
}

.church-other-location-card {
	display: block;
	text-decoration: none;
	color: inherit;
}

.church-other-location-name {
	font-weight: 700;
	text-align: center;
	margin-bottom: 10px;
}

.church-other-location-image {
	width: 100%;
	aspect-ratio: 4 / 3;
	overflow: hidden;
}

.church-other-location-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.church-other-locations-all {
	text-align: center;
	margin-top: 25px;
}

.church-other-locations-all a {
	font-weight: 700;
}

@media (max-width: 767px) {
	.church-other-locations-grid {
		grid-template-columns: 1fr;
	}
}

.church-other-location-address {
	text-align: center;
	margin-top: 10px;
	line-height: 1.5;
}

.church-organization-button {
	display: inline-block;
	padding: 10px 18px;
	background: #3fa934;
	color: #fff !important;
	font-weight: 700;
	text-decoration: none;
	border-radius: 4px;
}

.church-organization-button:hover {
	opacity: .9;
}


.church-organization-dropdown {
  display: grid;
  gap: 7px;
	margin-top: 20px;
}

.church-organization-dropdown label {
  display: block;
  margin-bottom: 0px;
}

.church-organization-dropdown select {
  width: 100%;
  padding: 10px 12px;
  border-radius: 10px;
}

.diocese-parish-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 30px;
}

.diocese-parish-card {
	position: relative;
	overflow: hidden;
	border: 1px solid #ddd;
	padding: 20px;
	background: #fff;
}

.parish-location-name {
	font-weight: 700;
	text-align: center;
	font-size: 20px;
	line-height: 1.3;
	margin-bottom: 15px;
}

.parish-location-image-link {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
	overflow: hidden;
}

.parish-location-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.parish-locationn-info {
	text-align: center;
	padding-top: 15px;
}

.parish-location-address,
.organization-location-city {
	line-height: 1.5;
}

.parish-location-link {
	display: inline-block;
	margin-top: 12px;
	font-weight: 600;
}

/* Mobile */
@media (max-width: 767px) {

	.diocese-parish-grid {
		grid-template-columns: 1fr;
	}

}

.parish-location-parish {
	margin-bottom: 4px;
	font-size: 14px;
	line-height: 1.3em;
	font-weight: 600;
	text-align: center;
}

.parish-location-parish a {
	text-decoration: none;
}

.sap-email-reveal {
    appearance: none;
    -webkit-appearance: none;
    background: none !important;
    border: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    font: inherit !important;
    color: #4ec642;
    cursor: pointer;
}

.wpkt-territory-ads {
    display: grid;
    gap: 20px;
    margin: 30px 0;
}

/* Real advertiser images */
.wpkt-territory-ad:not(.wpkt-territory-ad-placeholder) img {
    max-width: 480px;
    width: 100%;
    height: auto;
    display: block;
}

/* Unsold territory CTA */
.wpkt-territory-ad-placeholder {
    max-width: 480px;
    width: 100%;
}

.wpkt-ad-cta {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;

    padding: 32px 28px 30px;

    background: #ffffff;
    border: 3px solid #4ec642;
    border-radius: 12px;

    text-decoration: none !important;
    color: #222 !important;

    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);

    animation: wpkt-ad-pulse 4s ease-out infinite;

    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

.wpkt-ad-cta:hover {
    transform: translateY(-3px);
    box-shadow:
        0 8px 25px rgba(0, 0, 0, 0.12),
        0 0 0 4px rgba(78, 198, 66, 0.12);
}

/* YOUR AD */
.wpkt-ad-eyebrow {
    display: block;

    font-size: clamp(30px, 5vw, 46px);
    line-height: 1;
    font-weight: 900;
    letter-spacing: 1px;

    color: #4ec642;

    margin-bottom: 14px;
}

/* Geographic message */
.wpkt-ad-headline {
    display: block;

    font-size: 20px;
    line-height: 1.35;
    font-weight: 500;

    margin-bottom: 14px;
}

.wpkt-ad-headline strong {
    font-size: 25px;
    font-weight: 800;
}

/* Supporting copy */
.wpkt-ad-tagline {
    display: block;

    font-size: 15px;
    line-height: 1.4;
    font-weight: 600;

    color: #555;

    margin-bottom: 22px;
}

/* CTA button */
.wpkt-ad-button {
    display: inline-block;

    background: #4ec642;
    color: #fff;

    padding: 11px 22px;

    border-radius: 6px;

    font-size: 15px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .4px;

    transition:
        transform 0.2s ease,
        background 0.2s ease;
}

.wpkt-ad-cta:hover .wpkt-ad-button {
    transform: scale(1.04);
}

/* Occasional attention pulse */
@keyframes wpkt-ad-pulse {
    0%, 70%, 100% {
        box-shadow:
            0 5px 20px rgba(0, 0, 0, 0.08),
            0 0 0 0 rgba(78, 198, 66, 0);
    }

    80% {
        box-shadow:
            0 5px 20px rgba(0, 0, 0, 0.08),
            0 0 0 6px rgba(78, 198, 66, 0.18);
    }

    90% {
        box-shadow:
            0 5px 20px rgba(0, 0, 0, 0.08),
            0 0 0 11px rgba(78, 198, 66, 0);
    }
}

/* Respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce) {
    .wpkt-ad-cta {
        animation: none;
    }
}

.screen-reader-text {
    position: absolute !important;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* ==========================================
   ADD YOUR CHURCH FORM
   Upload Validation + Loading Animation
   ========================================== */

/* Help text beneath fields */
.sp-add-church-form .sp-field-help {
    font-size: 14px;
    line-height: 1.6;
    margin: 6px 0 12px;
}

/* Invalid upload messages */
.sp-add-church-form .sp-upload-error {
    color: #b42318;
    font-size: 14px;
    line-height: 1.5;
    margin: 6px 0 14px;
}

/* Hide empty error messages */
.sp-add-church-form .sp-upload-error:empty {
    display: none;
}

/* Loading message container */
.sp-submit-loading {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 18px;
    padding: 16px 0;
    line-height: 1.5;
}

/* Hide loading indicator until submission */
.sp-submit-loading[hidden] {
    display: none !important;
}

/* Smaller explanatory text */
.sp-submit-loading small {
    display: block;
    margin-top: 4px;
    opacity: 0.75;
}

/* Animated loading spinner */
.sp-loading-spinner {
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
    border: 3px solid #ddd;
    border-top-color: #385b6b;
    border-radius: 50%;
    animation: sp-loading-spin 0.8s linear infinite;
}

/* Spinner rotation */
@keyframes sp-loading-spin {
    to {
        transform: rotate(360deg);
    }
}

/* Disabled submit button */
.sp-add-church-form button:disabled,
.sp-add-church-form input[type="submit"]:disabled{opacity:0.6;cursor:wait}@media (prefers-reduced-motion:reduce){.sp-loading-spinner{animation-duration:2s}}