/* ─────────────────────────────────────────────────────────────────────────────
   ATHERIA — RESOURCES / DOWNLOADS WIDGET
   Globals-First: colours/fonts resolve to --ath-* tokens, overridable in Style.
   ───────────────────────────────────────────────────────────────────────────── */

.ath-res__inner { display: block; }

/* Split layout */
.ath-res--split .ath-res__inner {
	display:     flex;
	align-items: flex-start;
	gap:         5rem;
}
.ath-res--split .ath-res__head {
	flex:      0 1 auto;
	flex-basis: 38%;
	max-width: 38%;
}
.ath-res--split .ath-res__head--sticky {
	position: sticky;
	top:      6rem;
}
.ath-res--split .ath-res__list {
	flex:      1 1 auto;
	min-width: 0;
}
.ath-res--stacked .ath-res__head { margin-bottom: 3rem; }

/* Heading column */
.ath-res__eyebrow {
	display:        inline-block;
	font-family:    var(--ath-font-eyebrow, sans-serif);
	font-size:      0.8125rem;
	font-weight:    700;
	letter-spacing: 0.05em;
	color:          var(--ath-arctic-navy, #243C4C);
	margin-bottom:  1rem;
}
.ath-res__title {
	font-family:   var(--ath-font-heading, serif);
	color:         var(--ath-arctic-navy, #243C4C);
	font-size:     clamp(2rem, 1.4rem + 2.6vw, 3.25rem);
	line-height:   1.1;
	margin:        0;
	overflow-wrap: break-word;
}
.ath-res__intro {
	font-family: var(--ath-font-body, sans-serif);
	color:       var(--ath-reflection, #698696);
	font-size:   1rem;
	line-height: 1.65;
	margin:      1.5rem 0 0;
}

/* List + rows */
.ath-res__list { display: flex; flex-direction: column; }

.ath-res__row {
	display:      flex;
	align-items:  center;
	gap:          1rem;
	padding:      1.5rem 0;
	border-top:   1px solid var(--ath-arctic-mist, #ACBCBF);
}
.ath-res__list:not(.ath-res__list--no-divider) .ath-res__row:first-child { border-top: 0; }
.ath-res__list--no-divider .ath-res__row { border-top: 0; }

.ath-res__icon {
	flex-shrink: 0;
	display:     inline-flex;
	align-items: center;
	justify-content: center;
	font-size:   22px;
	line-height: 1;
	color:       var(--ath-arctic-blue, #5289AD);
}
.ath-res__icon i { display: inline-block; line-height: 1; }

.ath-res__row-title {
	font-family:    var(--ath-font-eyebrow, sans-serif);
	font-size:      0.9375rem;
	font-weight:    700;
	letter-spacing: 0.02em;
	color:          var(--ath-arctic-navy, #243C4C);
}

.ath-res__sep {
	flex-shrink: 0;
	width:  5px;
	height: 5px;
	border-radius: 50%;
	background: var(--ath-arctic-mist, #ACBCBF);
}
.ath-res__date {
	font-family: var(--ath-font-body, sans-serif);
	font-size:   0.875rem;
	color:       var(--ath-reflection, #698696);
	white-space: nowrap;
}

/* Push the button to the far right */
.ath-res__btn {
	margin-left:  auto;
	flex-shrink:  0;
	display:      inline-flex;
	align-items:  center;
	gap:          0.75rem;
	padding:      0.4rem 0.4rem 0.4rem 1.5rem;
	border:       1px solid var(--ath-arctic-mist, #ACBCBF);
	border-radius: 100px;
	background:   transparent;
	text-decoration: none;
	transition:   background-color 0.25s var(--ath-ease-out), border-color 0.25s var(--ath-ease-out);
}
.ath-res__btn:hover { background: var(--ath-focus-tint, #DCE8E9); }
.ath-res__btn-label {
	font-family:    var(--ath-font-buttons, sans-serif);
	font-size:      1rem;
	color:          var(--ath-arctic-navy, #243C4C);
	line-height:    1;
}
.ath-res__btn-icon {
	flex-shrink: 0;
	display:     inline-flex;
	align-items: center;
	justify-content: center;
	width:  40px;
	height: 40px;
	border-radius: 50%;
	background: var(--ath-arctic-blue, #5289AD);
}
.ath-res__btn-icon svg {
	width:  18px;
	height: 18px;
	stroke: var(--ath-frost, #F4FCFB);
}

/* Responsive */
@media (max-width: 1024px) {
	.ath-res--split .ath-res__inner { flex-direction: column; }
	.ath-res--split .ath-res__head  { flex-basis: auto; max-width: 100%; width: 100%; position: static; }
}
@media (max-width: 560px) {
	.ath-res__row { flex-wrap: wrap; }
	.ath-res__btn { margin-left: 0; width: 100%; justify-content: space-between; }
	.ath-res__sep, .ath-res__date { margin-left: 2.75rem; }
}
