.casey-rl {
--crl-green: #2f5241;
--crl-cream: #f6f2e8;
--crl-gold: #b8924a;
--crl-text: #2c302d;
display: flex;
gap: 1.5rem;
align-items: flex-start;
color: var(--crl-text);
font-family: "Source Sans 3", system-ui, sans-serif;
max-width: 100%;
box-sizing: border-box;
}
.casey-rl * { box-sizing: border-box; }
.casey-rl .casey-rl__column { display: flex; flex: 1 1 0; min-width: 0; flex-direction: column; gap: 1.25rem; }
.casey-rl .casey-rl__panel { overflow: hidden; border: 1px solid var(--crl-gold); border-radius: .35rem; background: var(--crl-cream); }
.casey-rl .casey-rl__heading,
.casey-rl .casey-rl__nested-heading { margin: 0; }
.casey-rl button.casey-rl__toggle,
.casey-rl button.casey-rl__nested-toggle {
width: 100%;
border: 0;
cursor: pointer;
text-align: left;
display: flex;
align-items: center;
justify-content: space-between;
gap: 1rem;
} .casey-rl button.casey-rl__toggle {
padding: 1.35rem;
background: var(--crl-cream);
color: var(--crl-green);
}
.casey-rl button.casey-rl__toggle .casey-rl__title {
display: block;
color: var(--crl-green);
font-family: "Cormorant Garamond", Georgia, serif;
font-size: clamp(1.45rem, 2vw, 1.8rem);
font-weight: 700;
line-height: 1.15;
}
.casey-rl button.casey-rl__toggle .casey-rl__description {
display: block;
margin-top: .35rem;
color: var(--crl-text);
font-family: "Source Sans 3", system-ui, sans-serif;
font-size: .98rem;
font-style: normal;
font-weight: 400;
line-height: 1.45;
}
.casey-rl button.casey-rl__toggle .casey-rl__icon,
.casey-rl button.casey-rl__nested-toggle .casey-rl__icon {
width: .7rem;
height: .7rem;
flex: 0 0 .7rem;
color: var(--crl-green);
border-right: 2px solid var(--crl-green);
border-bottom: 2px solid var(--crl-green);
transform: rotate(45deg);
transition: transform .18s ease;
}
.casey-rl button.casey-rl__toggle:hover {
background: rgba(184, 146, 74, .09);
color: var(--crl-green);
}
.casey-rl button.casey-rl__toggle:hover .casey-rl__title { color: var(--crl-green); }
.casey-rl button.casey-rl__toggle:hover .casey-rl__description { color: var(--crl-text); }
.casey-rl button.casey-rl__toggle:hover .casey-rl__icon { color: var(--crl-green); border-color: var(--crl-green); }
.casey-rl button.casey-rl__toggle[aria-expanded="true"] {
background: var(--crl-green);
color: #fff;
}
.casey-rl button.casey-rl__toggle[aria-expanded="true"] .casey-rl__title { color: #fff; }
.casey-rl button.casey-rl__toggle[aria-expanded="true"] .casey-rl__description { color: var(--crl-cream); }
.casey-rl button.casey-rl__toggle[aria-expanded="true"] .casey-rl__icon {
color: #fff;
border-color: #fff;
transform: rotate(225deg);
}
.casey-rl button.casey-rl__toggle[aria-expanded="true"]:hover {
background: #294838;
color: #fff;
}
.casey-rl button.casey-rl__toggle[aria-expanded="true"]:hover .casey-rl__title { color: #fff; }
.casey-rl button.casey-rl__toggle[aria-expanded="true"]:hover .casey-rl__description { color: var(--crl-cream); }
.casey-rl button.casey-rl__toggle[aria-expanded="true"]:hover .casey-rl__icon { color: #fff; border-color: #fff; }
.casey-rl button.casey-rl__toggle:focus-visible,
.casey-rl button.casey-rl__nested-toggle:focus-visible,
.casey-rl .casey-rl__card:focus-visible { outline: 3px solid var(--crl-gold); outline-offset: -3px; }
.casey-rl .casey-rl__content {
padding: 0 1.35rem 1.35rem;
background: var(--crl-cream);
color: var(--crl-text);
font-family: "Source Sans 3", system-ui, sans-serif;
}
.casey-rl .casey-rl__card { display: block; container-type: inline-size; margin-top: .8rem; padding: 1rem; border-left: 3px solid var(--crl-gold); background: #fff; color: var(--crl-text); font-family: "Source Sans 3", system-ui, sans-serif; text-decoration: none; border-radius: .18rem; transition: transform .15s ease, box-shadow .15s ease; }
.casey-rl .casey-rl__card:first-child { margin-top: 0; }
.casey-rl .casey-rl__card:hover { color: var(--crl-text); transform: translateY(-1px); box-shadow: 0 4px 14px rgba(47,82,65,.13); }
.casey-rl .casey-rl__card-header { display: flex; align-items: flex-start; justify-content: space-between; gap: .75rem 1rem; min-width: 0; }
.casey-rl .casey-rl__card-title { display: block; min-width: 0; color: #2c302d; font-family: "Cormorant Garamond", Georgia, serif; font-size: 1.4rem; font-weight: 700; line-height: 1.2; }
.casey-rl .casey-rl__meta { display: block; flex: 0 0 auto; color: #59625d; font-family: "Source Sans 3", system-ui, sans-serif; font-size: .78rem; font-weight: 700; line-height: 1.35; letter-spacing: .06em; text-align: right; text-transform: uppercase; white-space: nowrap; }
.casey-rl .casey-rl__excerpt,
.casey-rl .casey-rl__categories { display: block; margin-top: .45rem; color: var(--crl-text); font-family: "Source Sans 3", system-ui, sans-serif; line-height: 1.45; }
.casey-rl .casey-rl__excerpt { color: #2c302d; font-size: .9rem; font-style: normal; font-weight: 400; }
.casey-rl .casey-rl__categories { font-size: .86rem; color: #59625d; } .casey-rl a.casey-rl__card,
.casey-rl a.casey-rl__card:is(:link, :visited, :hover, :active, :focus, :focus-visible),
.casey-rl a.casey-rl__card *,
.casey-rl a.casey-rl__card:is(:link, :visited, :hover, :active, :focus, :focus-visible) * { text-decoration: none !important; }
@container (max-width: 25rem) {
.casey-rl .casey-rl__card-header { flex-direction: column; }
.casey-rl .casey-rl__meta { text-align: left; }
}
.casey-rl .casey-rl__nested { margin-top: 1rem; margin-left: min(calc(var(--casey-rl-depth) * .7rem),2.1rem); border-top: 1px solid rgba(184,146,74,.55); }
.casey-rl button.casey-rl__nested-toggle,
.casey-rl button.casey-rl__nested-toggle:is(:hover, :focus, :focus-visible, :active, :visited),
.casey-rl button.casey-rl__nested-toggle[aria-expanded="true"],
.casey-rl button.casey-rl__nested-toggle[aria-expanded="true"]:is(:hover, :focus, :focus-visible, :active, :visited) {
padding: .72rem .15rem;
border: 0;
border-radius: 0;
outline: 0;
box-shadow: none !important;
text-shadow: none !important;
transform: none !important;
background: transparent !important;
background-color: transparent !important;
color: var(--crl-green);
font-family: "Source Sans 3", system-ui, sans-serif;
font-size: 1rem;
font-weight: 700;
}
.casey-rl button.casey-rl__nested-toggle:focus-visible,
.casey-rl button.casey-rl__nested-toggle[aria-expanded="true"]:focus-visible { outline: 3px solid var(--crl-gold); outline-offset: -3px; }
.casey-rl button.casey-rl__nested-toggle > span { color: var(--crl-green); font-family: "Source Sans 3", system-ui, sans-serif; }
.casey-rl button.casey-rl__nested-toggle[aria-expanded="true"] .casey-rl__icon { transform: rotate(225deg); }
.casey-rl .casey-rl__nested-content { padding: .25rem 0 .5rem; color: var(--crl-text); font-family: "Source Sans 3", system-ui, sans-serif; }
.casey-rl .casey-rl__empty { margin: .6rem 0 0; color: var(--crl-text); font-family: "Source Sans 3", system-ui, sans-serif; font-style: italic; font-weight: 400; opacity: 1; }
@media (max-width: 680px) {
.casey-rl { display: block; }
.casey-rl .casey-rl__column { gap: 1rem; }
.casey-rl .casey-rl__column--right { margin-top: 1rem; }
.casey-rl button.casey-rl__toggle { padding: 1.1rem; }
.casey-rl .casey-rl__content { padding: 0 1.1rem 1.1rem; }
}
@media (prefers-reduced-motion: reduce) {
.casey-rl .casey-rl__icon,
.casey-rl .casey-rl__card { transition: none; }
}