/*
 * Flower Shop theme styles: everything theme.json can't express.
 *
 * Breakpoints follow the old Divi site: desktop ≥ 981px, tablet 768–980px, phone ≤ 767px.
 */

/* ---------- Base ---------- */
*,
*::before,
*::after { box-sizing: border-box; }
body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; overflow-x: hidden; }
img { max-width: 100%; height: auto; }
strong, b { font-weight: 700; }
.wp-site-blocks > * + * { margin-block-start: 0; }
.screen-reader-text {
	border: 0;
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}
:where(p, li, h1, h2, h3, h4, h5, h6):last-child { padding-bottom: 0; }

/* ---------- Rows & columns (Divi's grid: 80% wide rows, 3% gutters, 2% vertical padding) ---------- */
.fs-row {
	width: 80%;
	max-width: 1440px;
	margin-inline: auto !important;
	padding: 2% 0;
}
.fs-row.fs-w90 { width: 90%; }
.fs-row.fs-w95 { width: 95%; }
.fs-row.fs-w98 { width: 98%; }
.fs-row.fs-w100 { width: 100%; max-width: 100%; }
.fs-row.fs-flush { padding: 0; }
.fs-row.fs-middle { align-items: center; }
.wp-block-columns.fs-row {
	flex-wrap: nowrap !important;
	gap: 3%;
	margin-block: 0;
}
.wp-block-columns.fs-row.fs-gutter-1 { gap: 0; }
.wp-block-columns.fs-row.fs-equal > .wp-block-column { align-self: stretch; }
.fs-row > .wp-block-column { min-width: 0; }

@media (max-width: 980px) {
	.fs-row { padding: 30px 0; }
	.wp-block-columns.fs-row { flex-wrap: wrap !important; row-gap: 30px; }
	.wp-block-columns.fs-row > .wp-block-column { flex-basis: 100% !important; }
	/* Four-up rows become two-up on tablet, like Divi's 1/4 columns. */
	.wp-block-columns.fs-row.fs-cols-4 > .wp-block-column { flex-basis: calc(50% - 1.5%) !important; }
	.wp-block-columns.fs-row.fs-cols-4.fs-gutter-1 > .wp-block-column { flex-basis: 50% !important; }
}
@media (max-width: 767px) {
	.wp-block-columns.fs-row.fs-cols-4 > .wp-block-column,
	.wp-block-columns.fs-row.fs-cols-4.fs-gutter-1 > .wp-block-column { flex-basis: 100% !important; }
}

/* Spacing between stacked "modules" in a column (Divi's module bottom margin). */
.fs-row > .wp-block-column > * + *,
.fs-stack > * + * { margin-top: 30px; }
@media (min-width: 981px) {
	.fs-row > .wp-block-column > * + *,
	.fs-stack > * + * { margin-top: 2.75%; }
}

/* ---------- Shared text treatments ---------- */
.fs-shadow-1 { text-shadow: 0 0.1em 0.1em rgba(0, 0, 0, 0.4); }
.fs-shadow-2 { text-shadow: 0.08em 0.08em 0.08em rgba(0, 0, 0, 0.4); }
.fs-shadow-strong { text-shadow: 0.08em 0.32em 0.33em rgba(0, 0, 0, 0.86); }
.fs-box-shadow { box-shadow: 0 12px 18px -6px rgba(0, 0, 0, 0.3); }
.fs-max-55 { max-width: 55%; }
.fs-max-80 { max-width: 80%; margin-inline: auto; }
@media (max-width: 980px) {
	.fs-max-55 { max-width: 100%; }
}
@media (max-width: 767px) {
	.fs-max-80 { max-width: 100%; }
}
.fs-heading-xl { font-size: 5em !important; line-height: 1 !important; }
@media (max-width: 980px) { .fs-heading-xl { font-size: 36px !important; } }
@media (max-width: 767px) { .fs-heading-xl { font-size: 33px !important; } }

/* ---------- Buttons ---------- */
.wp-block-button__link {
	transition: background-color 300ms ease, color 300ms ease, border-color 300ms ease;
}
.wp-block-buttons { gap: 10px; }
.wp-block-button.fs-btn-lg .wp-block-button__link {
	font-size: 26px;
	padding: 5px 50px 10px 30px;
	border: 2px solid var(--wp--preset--color--orange);
}
.wp-block-button.is-style-outline-orange .wp-block-button__link {
	background: transparent;
	color: #fff;
	border: 2px solid var(--wp--preset--color--orange);
}
.wp-block-button.is-style-outline-orange .wp-block-button__link:hover {
	background: var(--wp--preset--color--green);
	border-color: var(--wp--preset--color--green);
}
.wp-block-button.is-style-pill-dark { width: 80%; margin-inline: auto; }
.wp-block-button.is-style-pill-dark .wp-block-button__link {
	display: block;
	width: 100%;
	padding: 10px;
	border-radius: 50px;
	background: var(--wp--preset--color--ink);
	color: #fff;
	font-family: var(--wp--preset--font-family--heading);
	font-size: 19px;
	line-height: 1.4;
	text-align: center;
	box-shadow: 0 12px 18px -6px rgba(0, 0, 0, 0.14);
}
.wp-block-button.is-style-pill-dark .wp-block-button__link:hover { background: #fff; color: #000; }
@media (max-width: 767px) {
	.wp-block-button.is-style-pill-dark { width: 100%; }
}

/* ---------- Images & cards ---------- */
.wp-block-image.is-style-card img {
	border-radius: 60px;
	box-shadow: 0 12px 18px -6px rgba(0, 0, 0, 0.3);
}
.wp-block-image.aligncenter,
.wp-block-image.aligncenter img { margin-inline: auto; }
.is-style-hover-grow { transition: transform 300ms ease; }
.is-style-hover-grow:hover { transform: scale(1.05); }

/* ---------- Header ----------
 * States (classes set by assets/js/header.js):
 *   .is-hero     at the top: logo + nav stretched across the rest of the row, font fitted (desktop)
 *   (parallax)   while scrolling through the header's own height it drifts up at half speed; logo and menu fade
 *   .is-pinned   further down: fixed and parked above the viewport (.fs-header-wrap keeps its space)
 *   .is-visible  pinned + the visitor scrolled up: a compact bar slides back in
 */
.fs-header {
	position: relative;
	z-index: 0; /* page content slides over the header while it drifts away */
	background: var(--wp--preset--color--ink);
	padding-bottom: 0.5em;
	will-change: transform;
}
.fs-header:hover,
.fs-header:focus-within,
.fs-header:has(.fs-menu.is-open) { z-index: 1000; } /* keep dropdowns and the mobile panel above the page */
.wp-site-blocks > :not(:first-child) { position: relative; z-index: 1; }
.fs-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	width: 98%;
	margin-inline: auto;
	padding-top: 2px;
	opacity: var(--fs-header-fade, 1);
}
.fs-header__logo { flex: 0 0 auto; width: 19%; max-width: 300px; margin: 0; }
.fs-header__logo img { display: block; width: 100%; }
.fs-header .fs-menu { padding: 10px 0 5px; }

/* Hero state, desktop: logo inline, menu stretched across the rest of the row. */
@media (min-width: 981px) {
	.fs-header.is-hero .fs-header__inner { width: 96%; gap: 3vw; }
	.fs-header.is-hero .fs-header__logo { width: clamp(200px, 17vw, 300px); }
	.fs-header.is-hero .fs-menu { flex: 1 1 0; min-width: 0; padding: 6px 0 4px; }
	.fs-header.is-hero .fs-menu__list { justify-content: space-between; flex-wrap: nowrap; }
	.fs-header.is-hero .fs-menu__list > li { padding-right: 0; }
	.fs-header.is-hero .fs-menu__list > li > :is(a, .fs-menu__parent) {
		/* JS sets --fs-nav-fit to the exact size; this fallback is tuned to the current menu. */
		font-size: var(--fs-nav-fit, calc(2.07vw - 4px));
		line-height: 1.4;
		white-space: nowrap;
	}
	.fs-header.is-measuring .fs-menu__list { justify-content: flex-start; width: max-content; }
	.fs-header.is-measuring .fs-menu__list > li > :is(a, .fs-menu__parent) { font-size: 100px; }
	/* Compact (snapped-back) bar: smaller logo and type, menu still stretched across the row. */
	.fs-header.is-pinned .fs-header__inner { width: 96%; gap: 3vw; }
	.fs-header.is-pinned .fs-header__logo { width: 180px; }
	.fs-header.is-pinned .fs-menu { flex: 1 1 0; min-width: 0; }
	.fs-header.is-pinned .fs-menu__list { justify-content: space-between; flex-wrap: nowrap; }
	.fs-header.is-pinned .fs-menu__list > li { padding-right: 0; }
	.fs-header.is-pinned .fs-menu__list > li > :is(a, .fs-menu__parent) { white-space: nowrap; }
	.fs-header.is-pinned .fs-menu a,
	.fs-header.is-pinned .fs-menu .fs-menu__parent { font-size: clamp(16px, 1.55vw, 25px); }
	.fs-header.is-pinned .fs-menu .sub-menu a { font-size: 18px; }
}

.fs-header.is-pinned {
	position: fixed;
	top: var(--wp-admin--admin-bar--height, 0px);
	left: 0;
	right: 0;
	z-index: 1000;
	transform: translateY(-110%) !important;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.35);
}
.fs-header.is-pinned.is-animating { transition: transform 250ms ease-out; }
.fs-header.is-pinned.is-visible { transform: translateY(0) !important; }

@media (max-width: 767px) {
	.fs-header__inner { width: auto; padding: 25px 15px 5px; }
	.fs-header__logo { width: 71%; }
	.fs-header .fs-menu { padding: 0; }
	.fs-header.is-pinned .fs-header__inner { padding-top: 10px; }
	.fs-header.is-pinned .fs-header__logo { width: 55%; max-width: 220px; }
}
@media (prefers-reduced-motion: reduce) {
	.fs-header,
	.fs-header.is-pinned.is-animating { transition: none; }
}

/* ---------- Footer ---------- */
.fs-footer { color: #fff; }
.fs-footer .fs-footer__row { width: 90%; padding-top: 100px; margin-top: -59px !important; }
.fs-footer h3 {
	color: #fff;
	font-size: 26px;
	text-align: center;
	text-shadow: 0.08em 0.32em 0.33em rgba(0, 0, 0, 0.86);
	margin-bottom: 4px;
}
.fs-footer .fs-footer__note {
	font-size: 14px;
	font-weight: 600;
	text-align: center;
	text-shadow: 0 0.09em 0.11em rgba(0, 0, 0, 0.76);
}
.fs-footer .fs-footer__hours { color: var(--wp--preset--color--yellow); font-weight: 600; text-align: center; text-shadow: 0 0.09em 0.11em rgba(0, 0, 0, 0.82); }
.fs-footer .fs-footer__hours h3 { font-size: 23px; text-shadow: 0 0.26em 0.15em #000; }
.fs-footer__links {
	display: flex;
	width: 70%;
	margin: 0 auto;
	font-weight: 600;
	text-shadow: 0 0.09em 0.11em rgba(0, 0, 0, 0.82);
}
.fs-footer__links ul { list-style: none; width: 50%; margin: 0; padding: 0; text-align: center; }
.fs-footer__links li { padding: 0.1em 0; }
.fs-footer__links a { color: var(--wp--preset--color--yellow); font-size: 16px; transition: color 300ms ease; }
.fs-footer__links a:hover { color: var(--wp--preset--color--green-light); }
.fs-footer__social { display: flex; justify-content: center; gap: 4px; list-style: none; margin: 0; padding: 0; }
.fs-footer__social img { display: block; transition: opacity 300ms ease; }
.fs-footer__social a:hover img { opacity: 0.7; }
.fs-footer__legal { padding: 1em 0; color: var(--wp--preset--color--muted); }
.fs-footer__legal .fs-copyright { font-family: var(--wp--preset--font-family--heading); font-size: 15px; padding-bottom: 1em; }
.fs-footer__legal p { font-size: 13px; }
@media (max-width: 980px) {
	.fs-footer h3 { font-size: 22px; }
	.fs-footer__legal { text-align: center; }
}
@media (max-width: 767px) {
	.fs-footer h3 { font-size: 28px; }
}

/* ---------- Plugin integrations (ported from the Divi custom CSS) ---------- */
.avwp-av-overlay { background-image: url(/wp-content/uploads/2022/04/weed_bg.jpg); }

input.wpcf7-form-control.wpcf7-text,
textarea.wpcf7-form-control.wpcf7-textarea {
	width: 100%;
	padding: 0.6rem;
	font-size: 16px;
	margin-bottom: 1em;
	font-family: inherit;
	border: 0;
	background: #eee;
	color: #4c4c4c;
}
input.wpcf7-form-control.has-spinner.wpcf7-submit {
	border: 1px solid #000;
	font-size: 1.5rem;
	padding: 0.4em 2.5em;
	border-radius: 4em;
	background: var(--wp--preset--color--orange);
	color: #fff;
	font-weight: 600;
	font-family: inherit;
	cursor: pointer;
	transition: all 0.3s ease 0s;
}
input.wpcf7-form-control.has-spinner.wpcf7-submit:hover { background: var(--wp--preset--color--green); }
.wpcf7-spinner { display: block; }
@media (max-width: 767px) {
	#contact-container { text-align: center !important; }
	.custom-btn { text-align: center; }
}

/* ---------- Shared components ---------- */
.wp-block-columns.fs-row.fs-gutter-3 { gap: 5.5%; }
@media (max-width: 980px) {
	.wp-block-columns.fs-row.fs-cols-4.fs-gutter-3 > .wp-block-column { flex-basis: calc(50% - 2.75%) !important; }
}
@media (max-width: 767px) {
	.wp-block-columns.fs-row.fs-cols-4.fs-gutter-3 > .wp-block-column { flex-basis: 100% !important; }
}
.wp-block-quote.fs-quote {
	margin: 20px 0 30px;
	padding: 0 0 0 20px;
	border-left: 5px solid var(--wp--preset--color--green);
}
/* Slight scroll-linked vertical drift (Divi "vertical motion"); browsers without scroll timelines just skip it. */
@supports (animation-timeline: view()) {
	@media (prefers-reduced-motion: no-preference) {
		.fs-scroll-drift img {
			animation: fs-drift linear both;
			animation-timeline: view();
		}
		@keyframes fs-drift {
			from { transform: translateY(25px); }
			to { transform: translateY(-25px); }
		}
	}
}

/* Store location cards (synced pattern "Store Locations") */
.fs-locations { padding-bottom: 78px; }
.fs-location__info {
	color: #fff;
	font-family: var(--wp--preset--font-family--heading);
	font-size: 19px;
	line-height: 1.4;
	text-shadow: 0 0.07em 0.1em #c95700;
}
.fs-location__info a { color: #79d820; font-weight: 800; }
.fs-location .wp-block-buttons { margin-bottom: 35px; }
.fs-location > .wp-block-buttons { margin-top: 5px !important; }

/* ---------- Home ---------- */
.fs-home-hero__row { padding: 73px 0 182px; }
.fs-home-hero__title {
	max-width: 55%;
	color: #fff;
	font-size: 3.5em;
	line-height: 1.2;
}
.fs-home-hero__buttons { margin-top: 2.75%; }
@media (max-width: 980px) {
	.fs-home-hero__row { padding: 149px 0 229px; }
	.fs-home-hero__title { max-width: 100%; font-size: 54px; }
}
@media (max-width: 767px) {
	.fs-home-hero__row { width: 95%; padding: 50px 0 160px; }
	.fs-home-hero__title { font-size: 32px; padding-inline: 10px; }
}
.fs-home-about__text {
	color: #fff;
	font-size: 1.2em;
	line-height: 1.8;
	padding: 10px 0 30px;
}
.fs-home-about__text h3 { font-size: 4em; line-height: 1.3; }
.fs-home-about__text h5 {
	color: #fff;
	font-family: var(--wp--preset--font-family--body);
	font-weight: 300;
	font-size: 1.5em;
	line-height: 1.3;
}
.fs-home-about__image { max-width: 83%; }
@media (max-width: 767px) {
	.fs-home-about__row { padding-bottom: 80px; }
	.fs-home-about__image { padding-top: 30px; }
}
.fs-picks-carousel {
	background: linear-gradient(180deg, #fff 0%, rgba(255, 102, 0, 0.2) 49%, #fff 100%);
	border: 5px solid var(--wp--preset--color--orange);
	border-radius: 100px;
	box-shadow: 0 12px 18px -6px rgba(0, 0, 0, 0.3);
	padding-inline: 2%;
}

/* Large buttons carry Divi's circled double-chevron icon: on hover for desktop, always on touch-size screens. */
.wp-block-button.fs-btn-lg .wp-block-button__link { position: relative; }
.wp-block-button.fs-btn-lg .wp-block-button__link::after {
	content: "";
	position: absolute;
	right: 14px;
	top: 50%;
	width: 26px;
	height: 26px;
	margin-top: -11px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26' fill='none' stroke='%23000' stroke-width='2'%3E%3Ccircle cx='13' cy='13' r='11.5'/%3E%3Cpath d='M8.5 8.5l4.5 4.5 4.5-4.5M8.5 13.5l4.5 4.5 4.5-4.5'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26' fill='none' stroke='%23000' stroke-width='2'%3E%3Ccircle cx='13' cy='13' r='11.5'/%3E%3Cpath d='M8.5 8.5l4.5 4.5 4.5-4.5M8.5 13.5l4.5 4.5 4.5-4.5'/%3E%3C/svg%3E") center / contain no-repeat;
	opacity: 0;
	transition: opacity 200ms ease;
}
.wp-block-button.fs-btn-lg .wp-block-button__link:hover::after { opacity: 1; }
@media (max-width: 980px) {
	.wp-block-button.fs-btn-lg .wp-block-button__link::after { opacity: 1; }
}

/* ---------- Page headers (image + dark gradient + wave) ---------- */
.fs-page-header__title {
	color: #fff;
	font-size: 55px;
	line-height: 1.4;
	padding-bottom: 0;
}
.fs-page-header__lead { color: var(--wp--preset--color--orange); font-size: 18px; }
.fs-max-56 { max-width: 56%; margin-inline: auto; }
@media (max-width: 980px) {
	.fs-max-56 { max-width: 100%; }
}
@media (max-width: 767px) {
	.fs-page-header__title { font-size: 48px; }
	.fs-page-header--compact .fs-page-header__title { font-size: 32px; }
}
@media (min-width: 768px) and (max-width: 980px) {
	.fs-page-header--compact .fs-page-header__title { font-size: 40px; }
}

/* ---------- Team ---------- */
.fs-team-member img {
	display: block;
	border-radius: 10px;
	box-shadow: 6px 6px 18px 0 rgba(0, 0, 0, 0.3);
}
.fs-team-member__name {
	margin-top: 20px;
	padding-bottom: 0;
	color: #4c5c67;
	font-size: 40px;
	line-height: 1.7;
	text-align: center;
}
.fs-team-member__position {
	color: #999;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.6;
	text-align: center;
	text-transform: uppercase;
}

/* ---------- Call to action band ---------- */
.fs-cta { width: 56%; max-width: 1008px; color: #fff; font-size: 18px; }
.fs-cta h2 { color: #fff; font-size: 42px; }
@media (max-width: 767px) {
	.fs-cta { width: 80%; }
}

/* ---------- Medical card ---------- */
.fs-page-header__tagline { color: var(--wp--preset--color--orange); font-size: 24px; font-weight: 700; line-height: 1.4; }
.fs-subhead { font-size: 36px; line-height: 1.4; }
@media (max-width: 980px) { .fs-subhead { font-size: 28px; } }
@media (max-width: 767px) { .fs-subhead { font-size: 24px; } }
.fs-max-66 { max-width: 66%; margin-inline: auto; }
@media (max-width: 980px) { .fs-max-66 { max-width: 100%; } }
.fs-steps-section { min-height: 55vh; }
.fs-steps { padding-bottom: 1px; }
.wp-block-columns.fs-steps { column-gap: 0; }
.fs-step { padding-inline: 0.5em; font-weight: 600; }
.fs-step h3 { color: var(--wp--preset--color--green); font-size: 26px; }
.fs-step > * + * { margin-top: 1em !important; }
@media (max-width: 980px) { .fs-step h3 { font-size: 24px; } }
.fs-note {
	margin-top: 70px !important;
	border-bottom: 1px dashed #f2f2f2;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.4;
}
.wp-block-button.is-style-outline-white .wp-block-button__link {
	background: transparent;
	color: #fff;
	border: 2px solid #fff;
	border-radius: 46px;
	font-size: 30px;
	font-weight: 600;
	padding: 0.2em 2em 0.4em;
}
.wp-block-button.is-style-outline-white .wp-block-button__link:hover { background: var(--wp--preset--color--green); }
@media (max-width: 980px) { .wp-block-button.is-style-outline-white .wp-block-button__link { font-size: 26px; } }
@media (max-width: 767px) { .wp-block-button.is-style-outline-white .wp-block-button__link { font-size: 22px; } }

/* ---------- Simple page titles ---------- */
.fs-title-50 { font-size: 50px; }
.fs-title-55 { font-size: 55px; }
.fs-lead-24 { font-size: 24px; line-height: 1.4; }
@media (max-width: 980px) { .fs-title-50 { font-size: 40px; } }
@media (max-width: 767px) { .fs-title-50 { font-size: 32px; } }
.fs-store-header .fs-page-header__title { text-align: left; }

/* ---------- Contact & forms ---------- */
.fs-contact { padding-top: 0; }
.fs-contact__address { font-family: var(--wp--preset--font-family--heading); font-size: 22px; line-height: 1.4; color: var(--wp--preset--color--heading); }
.wpcf7 input.wpcf7-form-control.wpcf7-text,
.wpcf7 textarea.wpcf7-form-control.wpcf7-textarea {
	background: #fff;
	border: 1px solid #bbb;
}
.fs-locations-section .fs-locations { padding-top: 0; }

/* ---------- Podcast & news grid ---------- */
.fs-podcast-header .fs-page-header__title { font-size: 55px; }
.fs-podcast__schedule { color: #fff; font-size: 18px; line-height: 1.6; }
@media (max-width: 980px) { .fs-podcast__schedule { font-size: 16px; } }
@media (max-width: 767px) { .fs-podcast__schedule { font-size: 14px; } .fs-title-55 { font-size: 40px; } }
.fs-podcast__links { gap: 5.5%; }
.fs-post-grid .wp-block-post-template { gap: 5.5%; row-gap: 30px; align-items: start; }
.fs-post-card {
	overflow: hidden;
	background: #fff;
	border-radius: 20px;
	box-shadow: 0 12px 18px -6px rgba(0, 0, 0, 0.3);
}
.fs-post-card .wp-block-post-featured-image { margin: 0; }
.fs-post-card .wp-block-post-featured-image img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.fs-post-card__body { padding: 19px; }
.fs-post-card h2 { font-size: 27px; line-height: 1.1; padding-bottom: 10px; }
.fs-post-card h2 a { color: #000; }
.fs-post-card__date { color: #159917; font-size: 16px; font-weight: 700; text-transform: uppercase; }
.fs-post-card .wp-block-post-excerpt { font-size: 14px; }
.fs-post-card .wp-block-post-excerpt__excerpt { margin: 0; }
.fs-post-card .wp-block-post-excerpt__more-link { font-size: 18px; }
.fs-news .wp-block-query-pagination { margin-top: 40px; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; font-size: 18px; }
.fs-news .wp-block-query-pagination a { color: #000; }
@media (max-width: 980px) {
	.fs-post-grid .wp-block-post-template { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 767px) {
	.fs-post-grid .wp-block-post-template { grid-template-columns: minmax(0, 1fr) !important; }
}

/* ---------- Blog templates (Divi's default post layout) ---------- */
.fs-article,
.fs-blog { padding-top: 58px; padding-bottom: 50px; }
.fs-article h1.wp-block-post-title { font-size: 30px; padding-bottom: 10px; }
.fs-post-meta { gap: 0; font-size: 14px; margin-bottom: 15px; }
.fs-post-meta > * + *::before { content: "|"; margin: 0 6px; color: var(--wp--preset--color--body-text); }
.fs-article .wp-block-post-featured-image { margin: 0 0 30px; }
.fs-article .wp-block-post-content h2 { font-size: 26px; padding: 15px 0 10px; }
.fs-article .wp-block-post-content :where(p, ul, ol) { padding-bottom: 1em; }
.fs-blog__main .fs-archive__item { margin-bottom: 60px; }
.fs-blog__main h2.wp-block-post-title { font-size: 26px; padding: 15px 0 5px; }
.fs-blog__main h2.wp-block-post-title a { color: var(--wp--preset--color--heading); }
.fs-blog__sidebar { padding-left: 30px; border-left: 1px solid #e2e2e2; }
.fs-blog__sidebar h2 { font-size: 18px; padding-bottom: 10px; }
.fs-blog__sidebar ul { padding-left: 0; list-style: none; }
.fs-blog__sidebar li { margin-bottom: 0.5em; }
@media (max-width: 980px) {
	.fs-blog__sidebar { padding-left: 0; border-left: 0; }
}
/* Divi's FitVids gave this embed a 2:1 box; keep the same space for the loyalty form. */
.fs-rewards iframe { display: block; width: 100%; height: auto; aspect-ratio: 2 / 1; }
.fs-article__body { width: 75%; }
@media (max-width: 980px) { .fs-article__body { width: 100%; } }
.fs-post-meta a { color: inherit; }
.fs-post-meta .wp-block-post-author-name::before { content: "by "; }
.fs-blog__title { font-size: 30px; }
.fs-blog__sidebar .wp-block-search__input { border: 1px solid #ddd; }
.fs-blog__sidebar .wp-block-search__button { background: #eee; color: #666; border-radius: 0; font-size: 14px; padding: 0.3em 0.6em; margin-left: 0; }
.fs-blog__sidebar :is(.wp-block-latest-posts, .wp-block-latest-comments) { font-size: 14px; }
.fs-blog__sidebar .wp-block-latest-posts a { color: var(--wp--preset--color--body-text); }
.fs-blog__sidebar h2 { margin-top: 30px; }
