.acnc-library {
	--acnc-library-accent: #972e25;
	--acnc-library-bg: #fff;
	--acnc-library-surface: #fff;
	--acnc-library-surface-soft: #f7f4f3;
	--acnc-library-text: #211d1c;
	--acnc-library-muted: #706967;
	--acnc-library-border: rgba(45, 35, 32, .13);
	background-color: var(--acnc-library-bg);
	background-image: linear-gradient(rgba(59,43,38,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(59,43,38,.025) 1px, transparent 1px);
	background-size: 72px 72px;
	color: var(--acnc-library-text);
	font-family: inherit;
	margin-inline: calc(50% - 50vw);
	padding: clamp(3.5rem, 8vw, 7rem) max(1.25rem, calc((100vw - 1180px) / 2));
}
.acnc-library-view #header, .single-acnc_library #header, body:has(.acnc-library--hub) #header,
.acnc-library-view header#header, .single-acnc_library header#header, body:has(.acnc-library--hub) header#header,
.acnc-library-view .ct-header, .single-acnc_library .ct-header, body:has(.acnc-library--hub) .ct-header,
.acnc-library-view .hero-section, .single-acnc_library .hero-section, body:has(.acnc-library--hub) .hero-section { display: none !important; }
.acnc-library-view #main, .single-acnc_library #main, body:has(.acnc-library--hub) #main,
.acnc-library-view .site-main, .single-acnc_library .site-main, body:has(.acnc-library--hub) .site-main { padding-top: 0; }
.acnc-library *, .acnc-library *::before, .acnc-library *::after { box-sizing: border-box; }
.acnc-library [hidden] { display: none !important; }
.acnc-library__hero { margin: 0 auto clamp(3rem, 7vw, 6rem); max-width: 930px; text-align: center; }
.acnc-library__kicker, .acnc-library__section-heading > p, .acnc-library__cta > p { color: var(--acnc-library-accent); font-size: .72rem; letter-spacing: .19em; margin: 0 0 1.2rem; text-transform: uppercase; }
.acnc-library__hero h1 { color: var(--acnc-library-text); font-size: clamp(2.65rem, 8vw, 6.4rem); font-weight: 500; letter-spacing: -.055em; line-height: .96; margin: 0 auto 1.5rem; max-width: 1000px; }
.acnc-library__hero > p:last-child { color: var(--acnc-library-muted); font-size: clamp(1rem, 2.2vw, 1.35rem); line-height: 1.6; margin: 0 auto; max-width: 740px; }
.acnc-library__hero .acnc-library__eyebrow { color: #985c57; font-family: Georgia, serif; font-size: clamp(1.25rem, 3vw, 2rem); font-style: italic; margin: -0.4rem auto 1rem; }
.acnc-library__volumes { display: grid; gap: 1rem; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0 auto clamp(4rem, 9vw, 7rem); max-width: 1120px; }
.acnc-library__volumes > a { background: linear-gradient(145deg, var(--acnc-library-surface-soft), var(--acnc-library-surface)); border: 1px solid var(--acnc-library-border); border-radius: 16px; box-shadow: 0 16px 42px rgba(45, 35, 32, .055); color: var(--acnc-library-text); min-height: 290px; padding: clamp(1.4rem, 4vw, 2.2rem); text-decoration: none; transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.acnc-library__volumes > a:hover { border-color: var(--acnc-library-accent); border-color: color-mix(in srgb, var(--acnc-library-accent) 70%, white); transform: translateY(-3px); }
.acnc-library__volume-number { background: var(--acnc-library-accent); border-radius: 99px; color: #fff; display: inline-block; font-size: .68rem; letter-spacing: .13em; padding: .45rem .65rem; }
.acnc-library__volumes h2 { color: var(--acnc-library-text); font-size: clamp(1.45rem, 3vw, 2.05rem); font-weight: 500; letter-spacing: -.03em; line-height: 1.08; margin: 2.8rem 0 .85rem; }
.acnc-library__volumes p { color: var(--acnc-library-muted); line-height: 1.55; margin: 0 0 1.5rem; }
.acnc-library__volumes small { color: #8b5752; }
.acnc-library__shelf { display: flex; gap: .6rem; margin: 0 auto clamp(4rem, 9vw, 7rem); max-width: 1120px; overflow-x: auto; padding: 0 0 .7rem; }
.acnc-library__shelf a { background: var(--acnc-library-surface); border: 1px solid var(--acnc-library-border); border-radius: 10px; color: var(--acnc-library-muted); display: grid; flex: 0 0 145px; gap: 1.4rem; min-height: 155px; padding: .9rem; text-decoration: none; }
.acnc-library__shelf a.is-current { background: #f8eeec; background: color-mix(in srgb, var(--acnc-library-accent) 10%, var(--acnc-library-surface)); border-color: var(--acnc-library-accent); color: var(--acnc-library-text); }
.acnc-library__shelf span { color: var(--acnc-library-accent); font-size: .7rem; letter-spacing: .12em; }
.acnc-library__catalog { margin: 0 auto; max-width: 1120px; }
.acnc-library__section-heading { align-items: end; display: grid; gap: .25rem 1rem; grid-template-columns: 1fr auto; margin-bottom: 1.5rem; }
.acnc-library__section-heading > p { grid-column: 1 / -1; margin: 0; }
.acnc-library__section-heading h2 { color: var(--acnc-library-text); font-size: clamp(1.8rem, 4vw, 3rem); font-weight: 500; letter-spacing: -.04em; margin: 0; }
.acnc-library__section-heading span { color: var(--acnc-library-muted); font-size: .8rem; }
.acnc-library__section-heading span b { color: var(--acnc-library-text); font-weight: 500; }
.acnc-library__filters { display: flex; gap: .5rem; margin: 0 0 1.25rem; overflow-x: auto; padding: 0 0 .35rem; }
.acnc-library__filters button { background: transparent; border: 1px solid var(--acnc-library-border); border-radius: 99px; color: var(--acnc-library-muted); cursor: pointer; flex: 0 0 auto; font: inherit; font-size: .76rem; padding: .55rem .8rem; }
.acnc-library__filters button:hover, .acnc-library__filters button.is-current { background: var(--acnc-library-accent); border-color: var(--acnc-library-accent); color: #fff; }
.acnc-library__content-grid { display: grid; gap: 1.2rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.acnc-library__content-card { background: var(--acnc-library-surface); border: 1px solid var(--acnc-library-border); border-radius: 16px; box-shadow: 0 14px 38px rgba(45, 35, 32, .055); min-width: 0; overflow: hidden; transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.acnc-library__content-card:hover { border-color: color-mix(in srgb, var(--acnc-library-accent) 42%, transparent); box-shadow: 0 18px 46px rgba(45, 35, 32, .09); transform: translateY(-2px); }
.acnc-library__cover { align-items: center; aspect-ratio: 16 / 9; background: linear-gradient(135deg, #311a18, #070707); background: radial-gradient(circle at 75% 25%, color-mix(in srgb, var(--acnc-library-accent) 55%, transparent), transparent 36%), linear-gradient(135deg, #1b1717, #070707); color: var(--acnc-library-text); display: flex; justify-content: space-between; min-height: 0; overflow: hidden; padding: 1.4rem; position: relative; text-decoration: none; }
.acnc-library__cover::after { border: 1px solid rgba(255,255,255,.08); border-radius: 50%; content: ''; height: 145px; position: absolute; right: -25px; top: -30px; width: 145px; }
.acnc-library__cover img { height: 100%; inset: 0; object-fit: cover; position: absolute; transform: scale(1.002); transition: transform .35s ease; width: 100%; }
.acnc-library__content-card:hover .acnc-library__cover img { transform: scale(1.025); }
.acnc-library__cover img + span, .acnc-library__cover img ~ i { background: rgba(5,5,5,.78); border-radius: 99px; padding: .45rem .65rem; position: relative; z-index: 1; }
.acnc-library__cover > span { font-size: .7rem; letter-spacing: .13em; text-transform: uppercase; }
.acnc-library__cover > i { align-items: center; background: var(--acnc-library-accent); border-radius: 50%; display: flex; font-size: 1.3rem; font-style: normal; height: 3.2rem; justify-content: center; width: 3.2rem; }
.acnc-library__content-body { padding: clamp(1.2rem, 3vw, 1.7rem); }
.acnc-library__content-body > p { color: #985c57; font-size: .68rem; letter-spacing: .13em; margin: 0 0 .75rem; }
.acnc-library__content-body h3 { color: var(--acnc-library-text); font-size: clamp(1.25rem, 2.5vw, 1.7rem); font-weight: 500; letter-spacing: -.025em; line-height: 1.16; margin: 0 0 .85rem; }
.acnc-library__content-body > div { color: var(--acnc-library-muted); line-height: 1.55; margin-bottom: 1.3rem; }
.acnc-library__content-body > a { border-bottom: 1px solid var(--acnc-library-accent); color: var(--acnc-library-accent); display: inline-block; padding-bottom: .2rem; text-decoration: none; }
.acnc-library__empty { background: var(--acnc-library-surface); border: 1px solid var(--acnc-library-border); border-radius: 16px; color: var(--acnc-library-muted); padding: 2rem; }
.acnc-library__cta { background: linear-gradient(135deg, #fbf4f2, #fff 70%); border: 1px solid color-mix(in srgb, var(--acnc-library-accent) 38%, #ddd); border-radius: 18px; box-shadow: 0 18px 46px rgba(45, 35, 32, .06); margin: clamp(4rem, 9vw, 7rem) auto 0; max-width: 1120px; padding: clamp(1.6rem, 5vw, 3.5rem); }
.acnc-library__cta h2 { color: var(--acnc-library-text); font-size: clamp(1.8rem, 4.2vw, 3.4rem); font-weight: 500; letter-spacing: -.04em; line-height: 1.02; margin: 0 0 1rem; max-width: 760px; }
.acnc-library__cta > div { color: var(--acnc-library-muted); line-height: 1.6; max-width: 720px; }
.acnc-library__cta > a { background: var(--acnc-library-accent); border-radius: 9px; color: #fff; display: inline-block; margin-top: 1.5rem; padding: .85rem 1.1rem; text-decoration: none; }
@media (max-width: 720px) {
	.acnc-library { background-size: 48px 48px; }
	.acnc-library__volumes, .acnc-library__content-grid { grid-template-columns: 1fr; }
	.acnc-library__volumes > a { min-height: 250px; }
	.acnc-library__section-heading { align-items: start; grid-template-columns: 1fr; }
	.acnc-library__section-heading > p { grid-column: auto; }
	.acnc-library__cover { min-height: 0; }
}
@media (prefers-reduced-motion: reduce) { .acnc-library__volumes > a, .acnc-library__content-card, .acnc-library__cover img { transition: none; } }
