/* =====================================================================
   ATLANTA CANCER CARE — HOMEPAGE
   File:   salient-child/css/acc/acc-home.css
   Needs:  acc-tokens.css, acc-base.css, acc-components.css
   Loads:  only when the ACC homepage template is active.
   Markup: acc-templates/template-acc-home.php + template-parts/acc/home/*.php

   Sections (in page order):
     1 hero (photo collage) + quick find 5 locations   9 trials
     2 statement (our promise)         6 care          10 support
     3 positioning (color tiles)       7 network       11 appointment
     4 physicians (portrait wall)      8 education
     4a stories · 5a first visit · 7a second opinion · 7b what's new
     (styles just before 12)

   12 (end of file) homepage photos: collage and the optional section photos

   Fonts: every rule reads --acc-font-head / --acc-font-body, so the
   homepage follows whatever pair the site is set to.

   Colors on forest green are written as hex on purpose (#C7A96B, #FAF6EE):
   a scoped rule elsewhere swaps the gold variable on dark panels, and the
   Salient Custom CSS forces heading and paragraph colors, which is also
   why those rules carry !important and -webkit-text-fill-color.
   ===================================================================== */

.acc-home {
	background: var(--acc-cream);
	--acc-peach: #E8A87C;      /* warm accent, used only as a fill behind forest text (7.9:1) */
	--acc-tile-radius: 18px;
}


/* ---------------------------------------------------------------------
   1. Hero (botanical)
   --------------------------------------------------------------------- */
.acc-hero {
	padding-block: clamp(2rem, 1rem + 4vw, 4.5rem) 0;
	background: #16291F;
}
.acc-hero__grid {
	display: grid;
	gap: var(--acc-space-6);
	align-items: center;
}
@media (min-width: 900px) {
	.acc-hero__grid { grid-template-columns: minmax(0, 1.3fr) minmax(0, 0.7fr); gap: var(--acc-space-8); }
}
.acc-hero__copy { min-width: 0; }

/* The one H1: "Atlanta Cancer Care" label, then the tagline */
body .acc-home .acc-hero .acc-hero__title {
	margin: 0 0 var(--acc-space-5) !important;
	max-width: 12em;
	font-family: var(--acc-font-head) !important;
	font-size: var(--acc-fs-display) !important;
	line-height: 1.05 !important;
	font-weight: var(--acc-fw-medium) !important;
	letter-spacing: -0.01em;
	text-transform: none !important;
	color: #FAF6EE !important;
	-webkit-text-fill-color: #FAF6EE !important;
}
body .acc-home .acc-hero .acc-hero__kicker {
	display: flex;
	align-items: center;
	gap: 0.75em;
	margin-bottom: var(--acc-space-4);
	font-family: var(--acc-font-body) !important;
	font-size: var(--acc-fs-xs) !important;
	font-weight: var(--acc-fw-bold) !important;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	line-height: 1.4;
	color: #C7A96B !important;
	-webkit-text-fill-color: #C7A96B !important;
}
.acc-hero__kicker::before { content: ""; width: 2rem; height: 2px; background: #C7A96B !important; flex: none; }
/* "Small practice feel." in gold, on its own line so it always reads as one phrase */
body .acc-home .acc-hero .acc-hero__title .acc-hero__accent {
	display: block;
	font-style: normal;
	color: #C7A96B !important;
	-webkit-text-fill-color: #C7A96B !important;
}
body .acc-home .acc-hero .acc-hero__text {
	margin: 0 0 var(--acc-space-6) !important;
	max-width: 34em;
	color: #E7EEE5 !important;
	-webkit-text-fill-color: #E7EEE5 !important;
}

/* Hero buttons: gold primary, cream outline. Hover stays in gold, never red.
   Self-contained (no shared .acc-btn class), so nothing else can restyle them. */
.acc-hero__actions { display: flex; flex-wrap: wrap; gap: var(--acc-space-3); }
html body .acc-home .acc-hero a.acc-hero__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 54px;
	padding: 0 1.75rem !important;
	border-radius: var(--acc-radius) !important;
	font-family: var(--acc-font-body) !important;
	font-size: 1.0625rem !important;
	font-weight: var(--acc-fw-bold) !important;
	line-height: 1.2 !important;
	letter-spacing: 0;
	text-transform: none !important;
	text-decoration: none !important;
	opacity: 1 !important;
	box-shadow: none !important;
	background-image: none !important;
	background-color: #C7A96B !important;
	border: 2px solid #C7A96B !important;
	color: #16291F !important;
	-webkit-text-fill-color: #16291F !important;
	transition: background-color var(--acc-dur) var(--acc-ease), border-color var(--acc-dur) var(--acc-ease), color var(--acc-dur) var(--acc-ease);
}
html body .acc-home .acc-hero a.acc-hero__btn:hover,
html body .acc-home .acc-hero a.acc-hero__btn:focus-visible {
	background-color: #B39352 !important;
	border-color: #B39352 !important;
	color: #16291F !important;
	-webkit-text-fill-color: #16291F !important;
}
html body .acc-home .acc-hero a.acc-hero__btn.acc-hero__btn--outline {
	background-color: transparent !important;
	border-color: #FAF6EE !important;
	color: #FAF6EE !important;
	-webkit-text-fill-color: #FAF6EE !important;
}
html body .acc-home .acc-hero a.acc-hero__btn.acc-hero__btn--outline:hover,
html body .acc-home .acc-hero a.acc-hero__btn.acc-hero__btn--outline:focus-visible {
	background-color: #C7A96B !important;
	border-color: #C7A96B !important;
	color: #16291F !important;
	-webkit-text-fill-color: #16291F !important;
}
.acc-hero a.acc-hero__btn:focus-visible { outline: 3px solid #FFFFFF; outline-offset: 3px; }
@media (max-width: 599px) {
	html body .acc-home .acc-hero a.acc-hero__btn { width: 100%; }
}

/* Leaf artwork: its own column, so it never sits behind the heading */
.acc-hero__leaves {
	position: relative;
	width: 100%;
	max-width: 400px;
	aspect-ratio: 1 / 1;
	margin-inline: auto;
}
.acc-hero__leaf { position: absolute; display: block; height: auto; }
.acc-hero__leaf--sage  { left: 22%; top: 0;   width: 78%; }
.acc-hero__leaf--gold  { left: 0;   top: 40%; width: 50%; transform: rotate(80deg); }
.acc-hero__leaf--peach { left: 52%; top: 58%; width: 40%; transform: rotate(-20deg); }
.acc-hero__leaf--mist  { left: 2%;  top: 6%;  width: 24%; transform: rotate(170deg); }
@media (max-width: 899px) {
	.acc-hero__leaves { max-width: 220px; }
}

/* Quick find: sits under the hero, overlapping the next section */
.acc-quickfind {
	position: relative;
	z-index: 1;
	display: grid;
	gap: 0;
	margin: clamp(2rem, 1rem + 3vw, 3.5rem) 0 calc(-1 * var(--acc-space-8));
	background: var(--acc-white);
	border: 1px solid var(--acc-line);
	border-top: 4px solid #C7A96B;
	border-radius: var(--acc-tile-radius);
	box-shadow: 0 18px 40px -18px rgba(15, 30, 22, 0.45);
}
@media (min-width: 900px) {
	.acc-quickfind { grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr); }
}
.acc-quickfind__form { padding: var(--acc-space-5) var(--acc-space-5) var(--acc-space-6); }
.acc-quickfind__form + .acc-quickfind__form { border-top: 1px solid var(--acc-line); }
@media (min-width: 900px) {
	.acc-quickfind__form + .acc-quickfind__form { border-top: 0; border-left: 1px solid var(--acc-line); }
}
.acc .acc-quickfind__title {
	margin: 0 0 var(--acc-space-3) !important;
	font-family: var(--acc-font-head) !important;   /* it's a <p>: the Custom CSS forces p to the body font */
	font-weight: var(--acc-fw-medium) !important;
	font-size: var(--acc-fs-h4) !important;
	color: var(--acc-heading) !important;
	-webkit-text-fill-color: var(--acc-heading) !important;
}
.acc-quickfind__fields {
	display: grid;
	gap: var(--acc-space-3);
	align-items: end;
}
.acc-quickfind__fields > div { min-width: 0; }
@media (min-width: 600px) {
	.acc-quickfind__fields { grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); }
	.acc-quickfind__fields > .acc-btn { grid-column: auto; }
	.acc-quickfind__form:not(.acc-quickfind__form--go) .acc-quickfind__fields { grid-template-columns: 1fr 1fr auto; }
	.acc-quickfind__form--go .acc-quickfind__fields { grid-template-columns: 1fr auto; }
}
.acc-quickfind .acc-btn { height: 48px; white-space: nowrap; }
.acc-quickfind .acc-btn .acc-icon { width: 1.1em; height: 1.1em; }
@media (max-width: 599px) {
	.acc-quickfind .acc-btn { width: 100%; justify-content: center; }
}
/* The section after the hero makes room for the overlapping quick find */
.acc-hero + .acc-section { padding-top: calc(var(--acc-section-y) + var(--acc-space-8)); }


/* ---------------------------------------------------------------------
   2. The statement ("Cancer changes everything. How you're cared for shouldn't.")
   Light section under the hero: heading left, promise text right.
   --------------------------------------------------------------------- */
.acc-statement { background: var(--acc-cream); text-align: left; }
.acc-statement__grid { display: grid; gap: var(--acc-space-5); align-items: center; }
@media (min-width: 900px) {
	.acc-statement__grid { grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr); gap: var(--acc-space-8); }
}
.acc .acc-statement__title {
	margin: 0 !important;
	font-family: var(--acc-font-head) !important;
	font-size: var(--acc-fs-h2) !important;
	line-height: 1.1 !important;
	font-weight: var(--acc-fw-medium) !important;
	color: var(--acc-heading) !important;
	-webkit-text-fill-color: var(--acc-heading) !important;
}
.acc-statement__title span { display: block; }
.acc .acc-statement__title .acc-statement__second {
	color: var(--acc-green-ink) !important;
	-webkit-text-fill-color: var(--acc-green-ink) !important;
}
.acc .acc-statement__text {
	margin: 0 !important;
	max-width: 36em;
	color: var(--acc-muted) !important;
	-webkit-text-fill-color: var(--acc-muted) !important;
}


/* ---------------------------------------------------------------------
   3. Positioning: heading + color tiles (live counts) + QOPI tile
   --------------------------------------------------------------------- */
.acc-home-positioning { background: var(--acc-sage-light); }
.acc-home-positioning__head { display: grid; gap: var(--acc-space-5); align-items: end; }
@media (min-width: 900px) {
	.acc-home-positioning__head { grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr); gap: var(--acc-space-8); }
}
.acc-home-positioning h2 { max-width: 16em; }
/* Our promise is the heading here now; the Northside positioning line follows the promise text */
.acc .acc-home-positioning .acc-statement__title { max-width: none; margin-bottom: var(--acc-space-5) !important; text-wrap: balance; }
.acc-home-positioning__head .acc-lead { margin-bottom: var(--acc-space-3) !important; }
.acc .acc-home-positioning__more { margin: 0 0 var(--acc-space-4) !important; max-width: 36em; color: var(--acc-muted) !important; -webkit-text-fill-color: var(--acc-muted) !important; }

.acc-tiles {
	display: grid;
	gap: var(--acc-grid-gap);
	margin-top: var(--acc-space-7);
}
.acc .acc-tiles__stats { display: contents; margin: 0 !important; padding: 0 !important; }
/* Four stat tiles: two by two on tablets, one row on wide screens */
@media (min-width: 640px) {
	.acc-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1000px) {
	.acc-tiles { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
.acc-tile {
	min-width: 0;
	padding: clamp(1.25rem, 1rem + 1.2vw, 2rem);
	border-radius: var(--acc-tile-radius);
}

/* Stat tiles: the label is first in the markup, the big number shows on top */
.acc-tile--stat {
	display: flex;
	flex-direction: column-reverse;
	justify-content: center;
	gap: var(--acc-space-3);
	background: #C7A96B;
}
.acc .acc-tile__value {
	margin: 0 !important;
	padding: 0 !important;
	font-family: var(--acc-font-head) !important;
	font-size: clamp(3.25rem, 2.4rem + 3vw, 5.25rem) !important;
	line-height: 0.9 !important;
	font-weight: var(--acc-fw-medium) !important;
	font-variant-numeric: lining-nums;
	color: #16291F !important;
	-webkit-text-fill-color: #16291F !important;
}
.acc .acc-tile__label {
	margin: 0 !important;
	padding: 0 !important;
	font-family: var(--acc-font-body) !important;
	font-size: var(--acc-fs-base) !important;
	font-weight: var(--acc-fw-body) !important;
	line-height: var(--acc-lh-snug) !important;
	color: #16291F !important;
	-webkit-text-fill-color: #16291F !important;
}
/* Tile 2: forest with a gold number. Tile 3: peach. Any extra tiles repeat gold. */
.acc-tiles__stats .acc-tile--stat:nth-child(3n + 2) { background: #16291F; }
.acc .acc-tiles__stats .acc-tile--stat:nth-child(3n + 2) .acc-tile__value { color: #C7A96B !important; -webkit-text-fill-color: #C7A96B !important; }
.acc .acc-tiles__stats .acc-tile--stat:nth-child(3n + 2) .acc-tile__label { color: #FAF6EE !important; -webkit-text-fill-color: #FAF6EE !important; }
.acc-tiles__stats .acc-tile--stat:nth-child(3n + 3) { background: var(--acc-peach); }
/* Phones: number left, label right, so three tiles stay compact */
@media (max-width: 639px) {
	.acc-tile--stat { flex-direction: row-reverse; justify-content: flex-end; align-items: center; gap: var(--acc-space-5); }
	.acc .acc-tile__value { flex: none; min-width: 1.2em; font-size: 3.25rem !important; }
}

/* QOPI tile */
.acc-tile--qopi {
	display: flex;
	align-items: flex-start;
	gap: var(--acc-space-5);
	background: var(--acc-cream);
}
.acc-tile__seal { flex: none; width: 84px !important; height: auto !important; display: block; }
.acc .acc-tile__title {
	margin: 0 0 6px !important;
	font-family: var(--acc-font-head) !important;
	font-size: var(--acc-fs-h4) !important;
	line-height: 1.2 !important;
	color: var(--acc-heading) !important;
	-webkit-text-fill-color: var(--acc-heading) !important;
}
.acc .acc-tile__text {
	margin: 0 !important;
	padding: 0 !important;
	font-size: var(--acc-fs-sm) !important;
	line-height: 1.6 !important;
	color: var(--acc-ink) !important;
	-webkit-text-fill-color: var(--acc-ink) !important;
}
@media (max-width: 480px) {
	.acc-tile--qopi { flex-direction: column; gap: var(--acc-space-4); }
	.acc-tile__seal { width: 72px !important; }
}

/* 3. Credentials row: QOPI (cream) and Northside (dark green) side by side.
   The Northside photo is a banner across the top of its card, edge to edge
   and cropped (focal point decides what stays in view). */
.acc-home-positioning__creds { display: grid; gap: var(--acc-grid-gap); margin-top: var(--acc-grid-gap); align-items: stretch; }
@media (min-width: 900px) {
	.acc-home-positioning__creds { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
}
/* Side by side, QOPI fills its half: seal on top, words centered below */
@media (min-width: 900px) {
	.acc-home-positioning__creds .acc-tile--qopi {
		flex-direction: column;
		justify-content: center;
		gap: var(--acc-space-5);
		padding: clamp(1.5rem, 1rem + 2vw, 2.5rem);
	}
	.acc-home-positioning__creds .acc-tile__seal { width: 110px !important; }
	.acc .acc-home-positioning__creds .acc-tile__title { font-size: var(--acc-fs-h3) !important; margin-bottom: var(--acc-space-3) !important; }
	.acc .acc-home-positioning__creds .acc-tile__text { font-size: var(--acc-fs-base) !important; }
}
.acc-home-positioning__network {
	display: flex;
	flex-direction: column;
	gap: var(--acc-space-5);
	padding: clamp(1.25rem, 1rem + 1.2vw, 2rem);
	background: #16291F;
	border-radius: var(--acc-tile-radius);
}
.acc-home-positioning__network--photo { padding: 0; gap: 0; overflow: hidden; }
.acc .acc-home-positioning__network .acc-photo--banner { flex: none; aspect-ratio: 16 / 7; border-radius: 0; }
.acc .acc-home-positioning__network .acc-photo--banner .acc-photo__img { object-fit: cover; }
.acc-home-positioning__network--photo .acc-home-positioning__network-words { padding: clamp(1.25rem, 1rem + 1.2vw, 2rem); }
.acc-home-positioning__network-words { display: flex; flex-direction: column; align-items: flex-start; gap: var(--acc-space-3); }
.acc .acc-home-positioning__network .acc-kicker { margin: 0 !important; color: #C7A96B !important; -webkit-text-fill-color: #C7A96B !important; }
.acc .acc-home-positioning__network h3 {
	margin: 0 !important;
	font-family: var(--acc-font-head) !important;
	font-size: var(--acc-fs-h4);
	line-height: 1.15;
	color: #FAF6EE !important;
	-webkit-text-fill-color: #FAF6EE !important;
}
.acc .acc-home-positioning__network p:not(.acc-kicker) {
	max-width: 40em;
	margin: 0 !important;
	font-size: var(--acc-fs-sm);
	line-height: 1.6;
	color: #E7EEE5 !important;
	-webkit-text-fill-color: #E7EEE5 !important;
}
.acc .acc-home-positioning__network .acc-link-arrow { color: #C7A96B !important; -webkit-text-fill-color: #C7A96B !important; }
.acc .acc-home-positioning__network .acc-link-arrow:hover { color: #FAF6EE !important; -webkit-text-fill-color: #FAF6EE !important; }
.acc-home-positioning__network .acc-link-arrow:focus-visible { outline-color: #FFFFFF; }


/* ---------------------------------------------------------------------
   4. Physicians: portrait wall
   Quiet on purpose: every portrait is the same plain rectangle, no colored
   frames. Seven across on desktop (14 physicians = two even rows), four on
   tablets, two on phones. A short last row is centered.
   --------------------------------------------------------------------- */
.acc-home-physicians .acc-section__head { align-items: end; }

.acc .acc-wall {
	--acc-wall-gap: var(--acc-grid-gap);
	--acc-wall-cols: 2;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--acc-space-6) var(--acc-wall-gap);
	margin: var(--acc-space-7) 0 0 !important;
	padding: 0 !important;
	list-style: none !important;
}
@media (min-width: 641px)  { .acc .acc-wall { --acc-wall-cols: 4; } }
@media (min-width: 1100px) { .acc .acc-wall { --acc-wall-cols: 7; } }
.acc .acc-wall__cell {
	flex: 0 0 calc((100% - (var(--acc-wall-cols) - 1) * var(--acc-wall-gap)) / var(--acc-wall-cols));
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}
.acc .acc-wall__item {
	display: flex;
	flex-direction: column;
	gap: var(--acc-space-3);
	height: 100%;
	text-decoration: none !important;
	color: var(--acc-ink) !important;
}
.acc-wall__item:focus-visible { outline: 3px solid var(--acc-focus); outline-offset: 4px; border-radius: var(--acc-radius); }

.acc-wall__arch {
	position: relative;
	display: block;
	aspect-ratio: 4 / 5;
	overflow: hidden;
	border-radius: var(--acc-radius);
	background: var(--acc-sage-light);
}
.acc .acc-wall__arch .acc-wall__img {
	display: block;
	width: 100% !important;
	height: 100% !important;
	max-width: none;
	margin: 0 !important;
	border-radius: 0 !important;
	object-fit: cover;
	object-position: center top;
	transition: transform 700ms var(--acc-ease);
}
.acc-wall__item:hover .acc-wall__img,
.acc-wall__item:focus-visible .acc-wall__img { transform: scale(1.06); }

/* "View profile" band: slides up over the photo on hover (mouse and keyboard only;
   on touch screens it stays out of the way and the whole card is still the link) */
.acc-wall__peek {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	display: none;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	padding: 10px 12px;
	background: rgba(22, 41, 31, 0.92);
	font-family: var(--acc-font-body);
	font-size: var(--acc-fs-xs);
	font-weight: var(--acc-fw-bold);
	line-height: 1.2;
	color: #FAF6EE;
	-webkit-text-fill-color: #FAF6EE;
	transform: translateY(101%);
	transition: transform 320ms var(--acc-ease);
}
.acc-wall__peek .acc-icon { flex: none; width: 16px; height: 16px; color: #C7A96B; stroke: #C7A96B; }
@media (hover: hover) {
	.acc-wall__peek { display: flex; }
	.acc-wall__item:hover .acc-wall__peek,
	.acc-wall__item:focus-visible .acc-wall__peek { transform: translateY(0); }
}
.acc-wall__placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	font-family: var(--acc-font-head);
	font-size: 2.5rem;
	color: var(--acc-green-ink);
}
.acc-wall__body {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
	padding-top: var(--acc-space-3);
	position: relative;
	border-top: 1px solid var(--acc-line);
}
/* A gold line draws across under the photo on hover */
.acc-wall__body::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: -1px;
	height: 2px;
	background: #C7A96B;
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform 420ms var(--acc-ease);
}
.acc-wall__item:hover .acc-wall__body::before,
.acc-wall__item:focus-visible .acc-wall__body::before { transform: scaleX(1); }

/* Entrance: armed and released by the small script in physicians.php */
.acc-wall.is-armed .acc-wall__cell { opacity: 0; transform: translateY(22px); }
.acc-wall.is-armed.is-in .acc-wall__cell {
	opacity: 1;
	transform: none;
	transition: opacity 700ms var(--acc-ease), transform 700ms var(--acc-ease);
	transition-delay: calc(var(--acc-i, 0) * 70ms);
}
.acc .acc-wall__name {
	font-family: var(--acc-font-head) !important;
	font-size: var(--acc-fs-base);
	font-weight: var(--acc-fw-medium);
	line-height: 1.25;
	color: var(--acc-heading) !important;
	-webkit-text-fill-color: var(--acc-heading) !important;
	overflow-wrap: anywhere;
}
.acc-wall__cred { font-weight: var(--acc-fw-regular); }
.acc-wall__services,
.acc-wall__locations {
	font-family: var(--acc-font-body);
	font-size: var(--acc-fs-xs);
	font-weight: var(--acc-fw-body);
	line-height: 1.4;
	color: var(--acc-muted);
	-webkit-text-fill-color: var(--acc-muted);
}
.acc-wall__locations { color: var(--acc-green-ink); -webkit-text-fill-color: var(--acc-green-ink); }


/* ---------------------------------------------------------------------
   5. Locations: sage band, cards get a leaf marker that cycles color
   --------------------------------------------------------------------- */
.acc-home-locations { background: var(--acc-sage-light); }
.acc-home-locations .acc-location-card { border-radius: var(--acc-tile-radius); }
.acc-home-locations .acc-location-card__name { display: flex; align-items: center; gap: 0.5em; }
.acc-home-locations .acc-location-card__name::before {
	content: "";
	flex: none;
	width: 0.95em;
	height: 0.95em;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M0 100 C0 40 40 0 100 0 C100 60 60 100 0 100 Z' fill='%234B7A5E'/%3E%3C/svg%3E") center / contain no-repeat;
}
.acc-home-locations li:nth-child(4n + 2) .acc-location-card__name::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M0 100 C0 40 40 0 100 0 C100 60 60 100 0 100 Z' fill='%23B8863F'/%3E%3C/svg%3E");
}
.acc-home-locations li:nth-child(4n + 3) .acc-location-card__name::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M0 100 C0 40 40 0 100 0 C100 60 60 100 0 100 Z' fill='%2316291F'/%3E%3C/svg%3E");
}
.acc-home-locations li:nth-child(4n + 4) .acc-location-card__name::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M0 100 C0 40 40 0 100 0 C100 60 60 100 0 100 Z' fill='%23D9824F'/%3E%3C/svg%3E");
}


/* ---------------------------------------------------------------------
   6. Care: forest band, every service as an outlined link, grouped
   --------------------------------------------------------------------- */
.acc-home-care { background: #16291F; }
.acc-home-care__head { display: grid; gap: var(--acc-space-5); align-items: end; }
@media (min-width: 900px) {
	.acc-home-care__head { grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr); gap: var(--acc-space-8); }
}
html body .acc-home .acc-home-care .acc-home-care__kicker { color: #C7A96B !important; -webkit-text-fill-color: #C7A96B !important; }
html body .acc-home .acc-home-care .acc-home-care__title {
	margin: 0 !important;
	max-width: 16em;
	color: #FAF6EE !important;
	-webkit-text-fill-color: #FAF6EE !important;
}
html body .acc-home .acc-home-care .acc-home-care__text {
	margin: 0 0 var(--acc-space-4) !important;
	color: #E7EEE5 !important;
	-webkit-text-fill-color: #E7EEE5 !important;
}
html body .acc-home .acc-home-care a.acc-home-care__all {
	display: inline-flex;
	align-items: center;
	gap: 0.5em;
	padding-bottom: 2px;
	border-bottom: 2px solid #C7A96B;
	font-weight: var(--acc-fw-bold);
	text-decoration: none !important;
	color: #FAF6EE !important;
	-webkit-text-fill-color: #FAF6EE !important;
}
html body .acc-home .acc-home-care a.acc-home-care__all:hover { color: #C7A96B !important; -webkit-text-fill-color: #C7A96B !important; }
.acc-home-care__all .acc-icon { width: 1.1em; height: 1.1em; }

.acc-home-care__groups {
	display: flex;
	flex-wrap: wrap;
	gap: var(--acc-space-6) var(--acc-space-7);
	margin-top: var(--acc-space-7);
	padding-top: var(--acc-space-6);
	border-top: 1px solid rgba(250, 246, 238, 0.2);
}
.acc-home-care__group { flex: 1 1 220px; min-width: 0; }
.acc-home-care__group:first-child { flex: 2.2 1 420px; }
html body .acc-home .acc-home-care .acc-home-care__label {
	margin: 0 0 var(--acc-space-4) !important;
	font-family: var(--acc-font-body) !important;
	font-size: var(--acc-fs-xs) !important;
	font-weight: var(--acc-fw-bold) !important;
	line-height: 1.4 !important;
	letter-spacing: 0.14em;
	text-transform: uppercase !important;
	color: #C7A96B !important;
	-webkit-text-fill-color: #C7A96B !important;
}
.acc .acc-home-care__list {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}
.acc .acc-home-care__list li { margin: 0 !important; padding: 0 !important; list-style: none !important; }
html body .acc-home .acc-home-care a.acc-care-pill {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 0 1.1rem;
	border: 1px solid rgba(250, 246, 238, 0.45);
	border-radius: 999px;
	background-color: transparent;
	font-size: var(--acc-fs-sm);
	font-weight: var(--acc-fw-body);
	line-height: 1.2;
	text-decoration: none !important;
	color: #FAF6EE !important;
	-webkit-text-fill-color: #FAF6EE !important;
	transition: background-color var(--acc-dur) var(--acc-ease), border-color var(--acc-dur) var(--acc-ease), color var(--acc-dur) var(--acc-ease);
}
html body .acc-home .acc-home-care a.acc-care-pill:hover,
html body .acc-home .acc-home-care a.acc-care-pill:focus-visible {
	background-color: #C7A96B !important;
	border-color: #C7A96B !important;
	color: #16291F !important;
	-webkit-text-fill-color: #16291F !important;
}
.acc-home-care a:focus-visible { outline: 3px solid #FFFFFF; outline-offset: 3px; }


/* ---------------------------------------------------------------------
   7. Network: heading left, copy right, two quiet leaves in the corner
   --------------------------------------------------------------------- */
.acc-home-network { position: relative; overflow: hidden; background: var(--acc-cream); }
.acc-home-network::after {
	content: "";
	position: absolute;
	right: -70px;
	bottom: -90px;
	width: 300px;
	height: 300px;
	pointer-events: none;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M0 100 C0 40 40 0 100 0 C100 60 60 100 0 100 Z' fill='%23E7EEE5'/%3E%3C/svg%3E") center / contain no-repeat;
}
.acc-home-network__grid { position: relative; z-index: 1; }
.acc-home-network__words { display: grid; gap: var(--acc-space-5); align-items: start; }
@media (min-width: 900px) {
	.acc-home-network__words { grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr); gap: var(--acc-space-8); }
}
.acc-home-network__copy { padding-top: var(--acc-space-4); border-top: 2px solid #C7A96B; }
.acc .acc-home-network h2 { margin-bottom: 0 !important; }
@media (max-width: 899px) {
	.acc-home-network::after { width: 180px; height: 180px; right: -50px; bottom: -60px; }
}


/* ---------------------------------------------------------------------
   8. Patient resources: four link cards
   --------------------------------------------------------------------- */
.acc .acc-rescards {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr));
	gap: var(--acc-grid-gap);
	margin: var(--acc-space-6) 0 0 !important;
	padding: 0 !important;
	list-style: none !important;
}
.acc .acc-rescards__cell { margin: 0 !important; padding: 0 !important; list-style: none !important; }
html body .acc-home a.acc-rescard {
	display: flex;
	flex-direction: column;
	gap: var(--acc-space-3);
	height: 100%;
	box-sizing: border-box;
	padding: var(--acc-space-5);
	background-color: var(--acc-white);
	border: 1px solid var(--acc-line);
	border-radius: var(--acc-tile-radius);
	text-decoration: none !important;
	color: var(--acc-ink) !important;
	transition: border-color var(--acc-dur) var(--acc-ease), box-shadow var(--acc-dur) var(--acc-ease);
}
html body .acc-home a.acc-rescard:hover,
html body .acc-home a.acc-rescard:focus-visible { border-color: #C7A96B; box-shadow: 0 0 0 1px #C7A96B, var(--acc-shadow); }
.acc-rescard__leaf { display: block; width: 34px; height: 34px; fill: var(--acc-green); }
.acc-rescards__cell:nth-child(4n + 2) .acc-rescard__leaf { fill: #C7A96B; }
.acc-rescards__cell:nth-child(4n + 3) .acc-rescard__leaf { fill: #16291F; }
.acc-rescards__cell:nth-child(4n + 4) .acc-rescard__leaf { fill: var(--acc-peach); }
.acc .acc-rescard__title {
	font-family: var(--acc-font-head) !important;
	font-size: var(--acc-fs-h4);
	font-weight: var(--acc-fw-medium);
	line-height: 1.2;
	color: var(--acc-heading) !important;
	-webkit-text-fill-color: var(--acc-heading) !important;
}
.acc-rescard__text {
	font-size: var(--acc-fs-sm);
	line-height: 1.55;
	color: var(--acc-ink);
	-webkit-text-fill-color: var(--acc-ink);
}
.acc-rescard__more {
	display: inline-flex;
	align-items: center;
	gap: 0.45em;
	margin-top: auto;
	padding-top: var(--acc-space-2);
	font-size: var(--acc-fs-sm);
	font-weight: var(--acc-fw-bold);
	color: var(--acc-green-ink);
	-webkit-text-fill-color: var(--acc-green-ink);
}
.acc-rescard__more .acc-icon { width: 1.1em; height: 1.1em; transition: transform var(--acc-dur) var(--acc-ease); }
.acc-rescard:hover .acc-rescard__more .acc-icon { transform: translateX(3px); }


/* ---------------------------------------------------------------------
   9. Clinical trials: white panel, the two points in a forest box
   --------------------------------------------------------------------- */
.acc-home .acc-home-trials { padding-top: var(--acc-section-y); }
.acc-home-trials__panel {
	display: grid;
	gap: var(--acc-space-6);
	padding: clamp(1.5rem, 1rem + 3vw, 3.5rem);
	background: var(--acc-white);
	border: 1px solid var(--acc-line);
	border-radius: var(--acc-tile-radius);
}
@media (min-width: 900px) {
	.acc-home-trials__panel { grid-template-columns: 1.1fr 1fr; gap: var(--acc-space-8); align-items: center; }
}
.acc .acc-home-trials .acc-checklist {
	display: flex;
	flex-direction: column;
	gap: var(--acc-space-4);
	margin: 0 !important;
	padding: clamp(1.25rem, 1rem + 1.5vw, 2rem) !important;
	list-style: none !important;
	background: #16291F;
	border-radius: var(--acc-tile-radius);
}
.acc .acc-home-trials .acc-checklist li {
	display: flex;
	align-items: flex-start;
	gap: var(--acc-space-3);
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	list-style: none !important;
	color: #FAF6EE !important;
	-webkit-text-fill-color: #FAF6EE !important;
}
.acc .acc-home-trials .acc-checklist li span { color: #FAF6EE !important; -webkit-text-fill-color: #FAF6EE !important; }
.acc .acc-home-trials .acc-checklist .acc-icon { flex: none; margin-top: 0.15em; color: #C7A96B !important; stroke: #C7A96B !important; }
.acc .acc-home-trials .acc-checklist li:nth-child(even) .acc-icon { color: #E8A87C !important; stroke: #E8A87C !important; }


/* ---------------------------------------------------------------------
   10. Patient support: copy left, four links as one list on the right
   --------------------------------------------------------------------- */
.acc-home-support { background: var(--acc-sage-light); }
.acc-home-support__grid { display: grid; gap: var(--acc-space-6); align-items: center; }
@media (min-width: 900px) {
	.acc-home-support__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--acc-space-8); }
}
.acc .acc-support-list {
	margin: 0 !important;
	padding: 0 var(--acc-space-5) !important;
	list-style: none !important;
	background: var(--acc-cream);
	border-radius: var(--acc-tile-radius);
}
.acc .acc-support-list__cell { margin: 0 !important; padding: 0 !important; list-style: none !important; }
.acc-support-list__cell + .acc-support-list__cell { border-top: 1px solid var(--acc-line); }
html body .acc-home a.acc-support-link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--acc-space-4);
	padding: var(--acc-space-5) 0;
	text-decoration: none !important;
	color: var(--acc-ink) !important;
}
.acc-support-link__copy { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.acc .acc-support-link__title {
	font-family: var(--acc-font-head) !important;
	font-size: var(--acc-fs-h4);
	font-weight: var(--acc-fw-medium);
	line-height: 1.2;
	color: var(--acc-heading) !important;
	-webkit-text-fill-color: var(--acc-heading) !important;
}
.acc-support-link__text {
	font-size: var(--acc-fs-sm);
	line-height: 1.5;
	color: var(--acc-muted);
	-webkit-text-fill-color: var(--acc-muted);
}
.acc-support-link__arrow {
	flex: none;
	width: 40px !important;
	height: 40px !important;
	padding: 9px;
	box-sizing: border-box;
	border-radius: 50%;
	background: var(--acc-sage-light);
	color: #16291F;
	stroke: #16291F;
	transition: background-color var(--acc-dur) var(--acc-ease), transform var(--acc-dur) var(--acc-ease);
}
.acc-support-link:hover .acc-support-link__arrow,
.acc-support-link:focus-visible .acc-support-link__arrow { background: #C7A96B; transform: translateX(3px); }
.acc-support-link:hover .acc-support-link__title { text-decoration: underline; text-decoration-color: #C7A96B; text-decoration-thickness: 2px; text-underline-offset: 3px; }
.acc-support-link:focus-visible { outline: 3px solid var(--acc-focus); outline-offset: 2px; border-radius: var(--acc-radius); }


/* ---------------------------------------------------------------------
   11. Appointment band
   --------------------------------------------------------------------- */
.acc-home-appointment__band { align-items: start; }
@media (min-width: 900px) {
	.acc-home-appointment__band { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
}
.acc-home-appointment__band .acc-btn-row { margin-top: var(--acc-space-5); }
.acc-home-appointment__phones {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 190px), 1fr));
	gap: 0 var(--acc-space-5);
	margin: 0 !important;
	padding: 0 !important;
	list-style: none;
}
.acc-home-appointment__phones li {
	display: flex;
	flex-direction: column;
	gap: 2px;
	margin: 0 !important;
	padding: var(--acc-space-3) 0;
	border-top: 1px solid rgba(250, 246, 238, 0.18);
}
.acc-home-appointment__office { font-size: var(--acc-fs-sm); color: var(--acc-on-dark); }
.acc-home-appointment__phones a {
	font-family: var(--acc-font-head) !important;
	font-size: var(--acc-fs-h5);
	color: var(--acc-cream) !important;
	text-decoration: none !important;
	min-height: 24px;
}
.acc-home-appointment__phones a:hover { text-decoration: underline !important; }


@media (prefers-reduced-motion: reduce) {
	.acc-wall__img,
	.acc-wall__peek,
	.acc-wall__body::before,
	.acc-wall.is-armed .acc-wall__cell { transition: none !important; }
	.acc-wall__item:hover .acc-wall__img,
	.acc-wall__item:focus-visible .acc-wall__img { transform: none; }
	.acc-wall.is-armed .acc-wall__cell { opacity: 1; transform: none; }
}


/* ---------------------------------------------------------------------
   4a. Patient stories: up to three quote cards on cream
   Only stories marked "Consent on file" reach the page (stories.php).
   --------------------------------------------------------------------- */
.acc .acc-stories {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
	gap: var(--acc-grid-gap);
	margin: var(--acc-space-6) 0 0 !important;
	padding: 0 !important;
	list-style: none !important;
}
.acc .acc-stories__cell { margin: 0 !important; padding: 0 !important; list-style: none !important; }
.acc .acc-story {
	display: flex;
	flex-direction: column;
	gap: var(--acc-space-4);
	height: 100%;
	box-sizing: border-box;
	margin: 0 !important;
	padding: var(--acc-space-6);
	background: var(--acc-white);
	border: 1px solid var(--acc-line);
	border-radius: var(--acc-tile-radius);
}
.acc-story__photo { overflow: hidden; aspect-ratio: 4 / 3; border-radius: calc(var(--acc-tile-radius) - 6px); background: var(--acc-sage-light); }
.acc .acc-story__photo .acc-story__img { display: block; width: 100% !important; height: 100% !important; max-width: none !important; margin: 0 !important; object-fit: cover; }
.acc .acc-story__quote { position: relative; margin: 0 !important; padding: 0 !important; border: 0 !important; }
.acc .acc-story__quote::before {
	content: "\201C";
	display: block;
	height: 0.55em;
	font-family: var(--acc-font-head);
	font-size: 3.5rem;
	line-height: 1;
	color: #C7A96B;
}
.acc .acc-story__quote p {
	margin: 0 !important;
	font-family: var(--acc-font-head) !important;
	font-size: var(--acc-fs-h5);
	line-height: 1.45;
	color: var(--acc-heading) !important;
	-webkit-text-fill-color: var(--acc-heading) !important;
}
.acc-story__who {
	display: flex;
	flex-direction: column;
	gap: 2px;
	margin-top: auto;
	padding-top: var(--acc-space-4);
	border-top: 2px solid #C7A96B;
}
.acc-story__name { font-weight: var(--acc-fw-bold); color: var(--acc-ink); }
.acc-story__detail { font-size: var(--acc-fs-sm); color: var(--acc-muted); }
.acc-story__more { margin-top: var(--acc-space-2); }
.acc-home-stories--single .acc-stories { max-width: 820px; }
.acc .acc-home-stories--single .acc-story__quote p { font-size: var(--acc-fs-h4); }


/* ---------------------------------------------------------------------
   5a. Your first visit: words and buttons left, numbered steps right
   --------------------------------------------------------------------- */
.acc-home-first-visit__grid { display: grid; gap: var(--acc-space-6); align-items: center; }
@media (min-width: 900px) {
	.acc-home-first-visit__grid { grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); gap: var(--acc-space-8); }
}
.acc-home-first-visit .acc-btn-row { margin-top: var(--acc-space-5); }
.acc .acc-steps {
	margin: 0 !important;
	padding: 0 var(--acc-space-5) !important;
	list-style: none !important;
	background: var(--acc-cream);
	border-radius: var(--acc-tile-radius);
}
.acc .acc-steps__item {
	display: flex;
	align-items: flex-start;
	gap: var(--acc-space-4);
	margin: 0 !important;
	padding: var(--acc-space-5) 0 !important;
	list-style: none !important;
}
.acc-steps__item + .acc-steps__item { border-top: 1px solid var(--acc-line); }
.acc-steps__num {
	flex: none;
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #16291F;
	font-family: var(--acc-font-head);
	font-size: 1.1rem;
	color: #C7A96B;
	-webkit-text-fill-color: #C7A96B;
}
.acc-steps__copy { display: flex; flex-direction: column; gap: 4px; min-width: 0; padding-top: 6px; }
.acc .acc-steps__title {
	font-family: var(--acc-font-head) !important;
	font-size: var(--acc-fs-h4);
	font-weight: var(--acc-fw-medium);
	line-height: 1.2;
	color: var(--acc-heading) !important;
	-webkit-text-fill-color: var(--acc-heading) !important;
}
.acc-steps__text { font-size: var(--acc-fs-sm); line-height: 1.55; color: var(--acc-muted); -webkit-text-fill-color: var(--acc-muted); }


/* ---------------------------------------------------------------------
   7a. Second opinions: a peach band with one forest button
   Forest text on peach is 7.9:1.
   --------------------------------------------------------------------- */
.acc-home-second-opinion__band {
	display: grid;
	gap: var(--acc-space-5);
	align-items: center;
	padding: clamp(1.5rem, 1rem + 3vw, 3rem);
	background: var(--acc-peach);
	border-radius: var(--acc-tile-radius);
}
@media (min-width: 900px) {
	.acc-home-second-opinion__band { grid-template-columns: minmax(0, 1fr) auto; gap: var(--acc-space-8); }
}
.acc .acc-home-second-opinion h2 { max-width: 18em; }
.acc .acc-home-second-opinion p { max-width: 40em; margin-bottom: 0 !important; color: #16291F !important; -webkit-text-fill-color: #16291F !important; }
.acc .acc-home-second-opinion .acc-kicker { color: #16291F !important; -webkit-text-fill-color: #16291F !important; }
html body .acc-home .acc-home-second-opinion a.acc-btn {
	justify-self: start;
	background: #16291F !important;
	border-color: #16291F !important;
	color: #FAF6EE !important;
	-webkit-text-fill-color: #FAF6EE !important;
}
html body .acc-home .acc-home-second-opinion a.acc-btn:hover,
html body .acc-home .acc-home-second-opinion a.acc-btn:focus-visible { background: #24402F !important; border-color: #24402F !important; }


/* ---------------------------------------------------------------------
   7b. What's new: a forest announcement card left, news cards right
   The card is the upcoming event while it is on, otherwise the featured
   program (both from inc/acc/acc-announcements-data.php).
   --------------------------------------------------------------------- */
.acc-home-news__grid { display: grid; gap: var(--acc-space-6); align-items: start; }
@media (min-width: 900px) {
	.acc-home-news__grid { grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr); gap: var(--acc-space-8); }
	.acc-home-news--posts-only .acc-home-news__grid { grid-template-columns: minmax(0, 1fr); }
}

/* Announcement card */
.acc .acc-news-feature {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: var(--acc-space-4);
	margin: 0 !important;
	padding: clamp(1.75rem, 1rem + 3vw, 3.5rem);
	background: #16291F;
	border-radius: var(--acc-tile-radius);
	overflow: hidden;
}
.acc .acc-news-feature::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 6px; background: #C7A96B; }
.acc .acc-news-feature__date {
	display: inline-flex;
	align-self: flex-start;
	margin: 0 !important;
	border-radius: 12px;
	overflow: hidden;
	border: 1px solid rgba(199, 169, 107, 0.5);
	text-align: center;
}
.acc .acc-news-feature__date span {
	display: grid;
	place-items: center;
	padding: 0 14px;
	background: #C7A96B;
	font-size: var(--acc-fs-sm);
	font-weight: var(--acc-fw-bold);
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #16291F;
	-webkit-text-fill-color: #16291F;
}
.acc .acc-news-feature__date strong {
	padding: 6px 16px;
	font-family: var(--acc-font-head);
	font-size: 2rem;
	font-weight: var(--acc-fw-medium);
	line-height: 1;
	color: #FAF6EE;
	-webkit-text-fill-color: #FAF6EE;
}
.acc .acc-news-feature__eyebrow {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--acc-space-3);
	margin: 0 !important;
	font-size: var(--acc-fs-sm);
	font-weight: var(--acc-fw-bold);
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #C7A96B !important;
	-webkit-text-fill-color: #C7A96B !important;
}
.acc .acc-news-feature__tag {
	padding: 4px 12px;
	border-radius: 999px;
	background: rgba(250, 246, 238, 0.12);
	font-size: 0.75rem;
	letter-spacing: 0.06em;
	color: #FAF6EE;
	-webkit-text-fill-color: #FAF6EE;
}
.acc .acc-news-feature h3 {
	margin: 0 !important;
	font-family: var(--acc-font-head) !important;
	font-size: var(--acc-fs-h2);
	line-height: 1.1;
	color: #FAF6EE !important;
	-webkit-text-fill-color: #FAF6EE !important;
}
.acc .acc-news-feature__text {
	max-width: 36em;
	margin: 0 !important;
	font-weight: var(--acc-fw-regular, 400) !important;
	color: #E7EEE5 !important;
	-webkit-text-fill-color: #E7EEE5 !important;
}
.acc .acc-news-feature__chips {
	display: flex;
	flex-wrap: wrap;
	gap: var(--acc-space-2);
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}
.acc .acc-news-feature__chips li {
	margin: 0 !important;
	padding: 6px 14px !important;
	border: 1px solid rgba(199, 169, 107, 0.55);
	border-radius: 999px;
	font-size: var(--acc-fs-sm);
	font-weight: var(--acc-fw-bold);
	line-height: 1.3;
	list-style: none !important;
	color: #FAF6EE;
	-webkit-text-fill-color: #FAF6EE;
}
.acc .acc-news-feature__cta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--acc-space-4);
	margin: var(--acc-space-2) 0 0 !important;
}
/* The ID matches acc-base.css (#ajax-content-wrap .acc .acc-btn), which would win otherwise. */
html body #ajax-content-wrap .acc-home .acc-news-feature a.acc-btn {
	background: #C7A96B !important;
	border-color: #C7A96B !important;
	color: #16291F !important;
	-webkit-text-fill-color: #16291F !important;
}
html body #ajax-content-wrap .acc-home .acc-news-feature a.acc-btn:hover,
html body #ajax-content-wrap .acc-home .acc-news-feature a.acc-btn:focus-visible { background: #FAF6EE !important; border-color: #FAF6EE !important; }
.acc-news-feature a.acc-btn:focus-visible { outline-color: #FFFFFF; }
.acc .acc-news-feature__note { font-size: var(--acc-fs-sm); color: #E7EEE5; -webkit-text-fill-color: #E7EEE5; }

/* News cards */
.acc .acc-news-list {
	display: grid;
	gap: var(--acc-space-4);
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}
.acc .acc-news-card {
	display: grid;
	grid-template-columns: 1fr;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	border-radius: var(--acc-tile-radius);
	background: var(--acc-white);
}
@media (min-width: 560px) {
	.acc .acc-news-card:has(.acc-news-card__photo) { grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); }
}
.acc-news-card__photo { min-height: 160px; background: var(--acc-sage-light); }
.acc .acc-news-card__photo .acc-news-card__img {
	display: block;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	object-fit: cover;
}
.acc-news-card__body { display: flex; flex-direction: column; gap: var(--acc-space-2); padding: var(--acc-space-5); }
.acc .acc-news-card__meta {
	display: flex;
	flex-wrap: wrap;
	gap: var(--acc-space-3);
	margin: 0 !important;
	font-size: var(--acc-fs-sm);
	color: var(--acc-muted);
}
.acc-news-card__meta span { font-weight: var(--acc-fw-bold); letter-spacing: 0.1em; text-transform: uppercase; color: var(--acc-green-ink); }
.acc .acc-news-card__title {
	margin: 0 !important;
	font-family: var(--acc-font-head) !important;
	font-size: var(--acc-fs-h5);
	line-height: 1.3;
}
.acc .acc-news-list__more { margin: 0 !important; padding: 0 !important; list-style: none !important; }


/* ---------------------------------------------------------------------
   9. Clinical trials and patient support, side by side (trials-support.php)
   Each card: a short photo banner, then its words. Trials on white,
   support on sage.
   --------------------------------------------------------------------- */
.acc-duo { display: grid; gap: var(--acc-grid-gap); align-items: stretch; }
@media (min-width: 900px) {
	.acc-duo { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
}
.acc .acc-duo__card {
	display: flex;
	flex-direction: column;
	margin: 0 !important;
	overflow: hidden;
	background: var(--acc-white);
	border: 1px solid var(--acc-line);
	border-radius: var(--acc-tile-radius);
}
.acc .acc-duo__card--support { background: var(--acc-sage-light); border-color: transparent; }
.acc .acc-duo__card .acc-duo__photo { flex: none; aspect-ratio: 16 / 7; border-radius: 0; }
.acc .acc-duo__card .acc-duo__photo .acc-photo__img { object-fit: cover; }
.acc-duo__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--acc-space-4);
	padding: clamp(1.5rem, 1rem + 2vw, 2.5rem);
}
.acc .acc-duo__body > * { margin: 0 !important; }
.acc .acc-duo__body h2 { font-size: var(--acc-fs-h3); }
.acc .acc-duo__body > p:not(.acc-kicker) { font-size: var(--acc-fs-sm); line-height: 1.6; color: var(--acc-muted) !important; -webkit-text-fill-color: var(--acc-muted) !important; }
.acc-duo__body .acc-checklist li { font-size: var(--acc-fs-sm); }
.acc .acc-duo__body > .acc-duo__cta { margin-top: auto !important; }
.acc .acc-duo__body > .acc-duo__links {
	align-self: stretch;
	margin-top: auto !important;
	padding: 0 !important;
	list-style: none !important;
	border-top: 1px solid var(--acc-line);
}
.acc .acc-duo__links li { margin: 0 !important; list-style: none !important; border-bottom: 1px solid var(--acc-line); }
.acc .acc-duo__link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--acc-space-3);
	padding: var(--acc-space-3) 0;
	font-weight: var(--acc-fw-bold);
	text-decoration: none !important;
	color: var(--acc-heading) !important;
	-webkit-text-fill-color: var(--acc-heading) !important;
}
.acc-duo__arrow { flex: none; width: 1.1em; height: 1.1em; color: var(--acc-green-ink); transition: transform var(--acc-dur) var(--acc-ease); }
.acc-duo__link:hover .acc-duo__arrow { transform: translateX(3px); }
.acc .acc-duo__link:hover span { text-decoration: underline; text-underline-offset: 0.18em; }


/* ---------------------------------------------------------------------
   12. Homepage photos
   Every photo is chosen on the Home page ("Homepage Photos" box). A section
   only gets its photo layout (the --photo / --collage class) when a photo
   has been chosen, so an empty field never leaves a blank space.
   --------------------------------------------------------------------- */

/* Shared photo frame */
.acc .acc-photo {
	position: relative;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden;
	border-radius: var(--acc-tile-radius);
	background: var(--acc-sage-light);
}
.acc .acc-photo .acc-photo__img {
	display: block;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	object-fit: cover;
}
.acc .acc-photo--portrait  { aspect-ratio: 4 / 5; }
.acc .acc-photo--landscape { aspect-ratio: 3 / 2; }

/* 1. Hero collage: three columns of photos drifting slowly (the middle one
   the other way), black and white, each turning to color on hover.
   Each track holds its photos twice; moving it up by half (plus half a gap)
   lands exactly where it started, so the loop has no jump. */
@media (min-width: 900px) {
	.acc-hero--collage .acc-hero__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
}
.acc-hero__media {
	position: relative;
	width: 100%;
	align-self: center;
}
.acc-hero__collage {
	--acc-lane-gap: 12px;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--acc-lane-gap);
	width: 100%;
	height: 540px;
	overflow: hidden;
	-webkit-mask-image: linear-gradient(transparent, #000 10%, #000 90%, transparent);
	mask-image: linear-gradient(transparent, #000 10%, #000 90%, transparent);
}
.acc-hero__lane { min-width: 0; overflow: hidden; }
.acc-hero__track {
	display: flex;
	flex-direction: column;
	gap: var(--acc-lane-gap);
}
.acc-hero__tile {
	position: relative;
	display: block;
	flex: none;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	border-radius: 6px;
	background: #1F3A2C;
}
.acc .acc-hero__tile .acc-hero__tile-img {
	display: block;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	object-fit: cover;
	object-position: center 25%;
	filter: grayscale(1) contrast(1.03);
	transition: filter 0.6s var(--acc-ease);
}
@media (hover: hover) {
	.acc .acc-hero__collage:hover .acc-hero__tile:hover .acc-hero__tile-img { filter: none; }
}
@media (prefers-reduced-motion: no-preference) {
	.acc-hero__collage { animation: acc-tile-in 0.9s var(--acc-ease) both; }
	.acc-hero__track { animation: acc-lane 42s linear infinite; }
	.acc-hero__lane:nth-child(2) .acc-hero__track { animation-direction: reverse; animation-duration: 48s; }
	.acc-hero__lane:nth-child(3) .acc-hero__track { animation-duration: 45s; }
	.acc-hero__collage:hover .acc-hero__track,
	.acc-hero__media.is-paused .acc-hero__track { animation-play-state: paused; }
}
@keyframes acc-lane    { from { transform: translateY(0); } to { transform: translateY(calc(-50% - var(--acc-lane-gap) / 2)); } }
@keyframes acc-tile-in { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }

/* Pause button: small, bottom right, readable on the forest green */
.acc .acc-hero__pause {
	position: absolute;
	right: 8px;
	bottom: 8px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	padding: 7px 12px;
	border: 1px solid rgba(255, 255, 255, 0.35);
	border-radius: 999px;
	background: rgba(22, 41, 31, 0.85);
	color: #fff;
	font: 600 12.5px/1 var(--acc-font-body, inherit);
	letter-spacing: 0.02em;
	cursor: pointer;
}
.acc .acc-hero__pause:hover { border-color: #C7A96B; }
.acc .acc-hero__pause:focus-visible { outline: 2px solid #C7A96B; outline-offset: 2px; }
.acc-hero__pause-icon { display: inline-block; width: 8px; height: 10px; border-left: 3px solid currentColor; border-right: 3px solid currentColor; box-sizing: border-box; }
.acc-hero__media.is-paused .acc-hero__pause-icon { width: 0; height: 0; border-style: solid; border-width: 5px 0 5px 9px; border-color: transparent transparent transparent currentColor; }
@media (prefers-reduced-motion: reduce) {
	.acc-hero__pause { display: none !important; }
}
@media (max-width: 899px) {
	.acc-hero__collage { --acc-lane-gap: 6px; height: 380px; }
}

/* 2. Our promise with a photo: photo left, words right */
@media (min-width: 900px) {
	.acc-statement--photo .acc-statement__grid { grid-template-columns: minmax(0, 0.85fr) minmax(0, 1fr); gap: var(--acc-space-8); }
}
.acc-statement--photo .acc-photo { max-width: 520px; width: 100%; }

/* Photos beside words fill the full height of the words on wide screens,
   instead of floating as a short 3:2 strip. The photo is cropped to fit; its
   focal point (Media Library) decides which part stays in view. */
@media (min-width: 900px) {
	.acc .acc-photo--fill {
		aspect-ratio: auto;
		height: 100%;
		min-height: 340px;
	}
	.acc .acc-photo--fill .acc-photo__img {
		position: absolute;
		inset: 0;
	}
}

/* 3. Who we are with a photo: words left, photo right, tiles below */
.acc-home-positioning__head--photo { align-items: center; }
@media (min-width: 900px) {
	.acc-home-positioning__head--photo { align-items: stretch; }
	.acc-home-positioning__head--photo > div:first-child { align-self: center; padding-block: var(--acc-space-4); }
}

/* 7. Northside with a photo, "beside" layout (the default): dark green
   section, words left, the photo shown whole on the right. Nothing is cropped
   or covered, so banners with their own text and logos stay readable. */
.acc-home-network--beside { background: #16291F; }
.acc-home-network--beside::after { display: none; }
.acc-home-network--beside .acc-home-network__grid { display: grid; gap: var(--acc-space-6); align-items: center; }
.acc-home-network--beside .acc-home-network__words { grid-template-columns: minmax(0, 1fr); gap: var(--acc-space-5); }
@media (min-width: 900px) {
	.acc-home-network--beside .acc-home-network__grid { grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); gap: var(--acc-space-8); }
}
.acc .acc-photo--whole { background: transparent; }
.acc .acc-photo--whole .acc-photo__img { height: auto !important; object-fit: contain; }

/* 7. Northside with a photo, "behind" layout: full width background behind a
   dark green shade. Plain photos only: any text in the photo would collide
   with the words on top. */
.acc-home-network--photo { background: #16291F; padding-block: clamp(5rem, 3rem + 6vw, 9rem); }
.acc-home-network--photo::after { display: none; }
.acc .acc-home-network--photo .acc-photo--bg {
	position: absolute;
	inset: 0;
	border-radius: 0;
	background: #16291F;
}
.acc-home-network__shade {
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(22, 41, 31, 0.94) 0%, rgba(22, 41, 31, 0.82) 50%, rgba(22, 41, 31, 0.55) 100%);
}
.acc .acc-home-network--photo .acc-kicker { color: #C7A96B !important; -webkit-text-fill-color: #C7A96B !important; }
.acc .acc-home-network--photo h2 { color: #FAF6EE !important; -webkit-text-fill-color: #FAF6EE !important; }
.acc .acc-home-network--photo .acc-home-network__copy p { color: #E7EEE5 !important; -webkit-text-fill-color: #E7EEE5 !important; }
.acc .acc-home-network--photo .acc-link-arrow { color: #C7A96B !important; -webkit-text-fill-color: #C7A96B !important; }
.acc .acc-home-network--photo .acc-link-arrow:hover { color: #FAF6EE !important; -webkit-text-fill-color: #FAF6EE !important; }
.acc-home-network--photo .acc-link-arrow:focus-visible { outline-color: #FFFFFF; }

/* 9. Clinical trials with a photo: words and points left, photo right */
.acc .acc-home-trials--photo .acc-checklist { margin: var(--acc-space-5) 0 var(--acc-space-6) !important; }
.acc-home-trials--photo .acc-photo { width: 100%; }
@media (min-width: 900px) {
	.acc-home-trials--photo .acc-home-trials__panel { align-items: stretch; }
	.acc-home-trials--photo .acc-home-trials__panel > div:first-child { align-self: center; }
}

/* 10. Patient support with a photo: photo left, words and list right */
@media (min-width: 900px) {
	.acc-home-support--photo .acc-home-support__grid { grid-template-columns: minmax(0, 0.8fr) minmax(0, 1fr); align-items: start; }
}
.acc-home-support__stack { display: grid; gap: var(--acc-space-6); }
.acc-home-support--photo .acc-photo { max-width: 520px; width: 100%; }

@media (prefers-reduced-motion: reduce) {
	.acc-hero__tile { animation: none !important; }
	.acc .acc-hero__tile .acc-hero__tile-img { transition: none !important; }
}
