/* A.D. Craig Dynamic Books v1.5 */

/* Posterity cleanup, Book pages only */
body.adc-dynamic-book .entry-header,
body.adc-dynamic-book .entry-title,
body.adc-dynamic-book article > header,
body.adc-dynamic-book .postmeta,
body.adc-dynamic-book .post-meta,
body.adc-dynamic-book .page_head,
body.adc-dynamic-book .page-title,
body.adc-dynamic-book .inner-banner,
body.adc-dynamic-book .innerbanner,
body.adc-dynamic-book .header-image,
body.adc-dynamic-book .post_head,
body.adc-dynamic-book .post-title,
body.adc-dynamic-book .bread_crumb,
body.adc-dynamic-book .breadcrumbs {
    display:none!important;
}

body.adc-dynamic-book #primary,
body.adc-dynamic-book .content-area,
body.adc-dynamic-book .site-main,
body.adc-dynamic-book .content-wrapper,
body.adc-dynamic-book .page_content,
body.adc-dynamic-book article,
body.adc-dynamic-book .entry-content {
    max-width:none!important;
    width:100%!important;
}

body.adc-dynamic-book .entry-content {
    width:100vw!important;
    position:relative!important;
    left:50%!important;
    margin-left:-50vw!important;
    padding:0!important;
}

/* Main page */
.adc-single-book-page{
    width:100%!important;
    background:#101010!important;
    color:#fff!important;
    padding:38px 32px 76px!important;
    margin:0!important;
}
.adc-single-book-page *,
.adc-single-book-page *:before,
.adc-single-book-page *:after{box-sizing:border-box}

.adc-single-book-inner{
    width:100%!important;
    max-width:1320px!important;
    margin:0 auto!important;
}

/* Hero */
.adc-book-showcase{
    display:grid!important;
    grid-template-columns:325px minmax(0,1fr) 330px!important;
    column-gap:72px!important;
    align-items:center!important;
    width:100%!important;
    padding:10px 0 62px!important;
    border-bottom:1px solid #5b5b5b!important;
}

.adc-showcase-cover{width:325px!important}
.adc-showcase-cover img,
.adc-main-cover{
    display:block!important;
    width:100%!important;
    max-width:325px!important;
    height:auto!important;
    margin:0!important;
    box-shadow:0 12px 34px rgba(0,0,0,.46)!important;
}

.adc-showcase-main{width:100%!important;min-width:0!important}

.adc-single-book-title{
    color:#fff!important;
    font-size:45px!important;
    font-weight:700!important;
    line-height:1.06!important;
    text-transform:uppercase!important;
    margin:0 0 11px!important;
    padding:0!important;
}
.adc-book-subtitle{
    color:#ddd!important;
    font-size:15px!important;
    margin:0 0 8px!important;
}
.adc-single-book-series{
    color:#ff2020!important;
    font-size:15px!important;
    font-weight:700!important;
    line-height:1.3!important;
    letter-spacing:2px!important;
    text-transform:uppercase!important;
    margin:0!important;
}
.adc-red-line{
    width:60px!important;
    height:3px!important;
    background:#ff2020!important;
    margin:18px 0 25px!important;
}
.adc-single-book-hook{
    color:#fff!important;
    font-size:23px!important;
    font-weight:500!important;
    line-height:1.42!important;
    max-width:520px!important;
    margin:0 0 28px!important;
}
.adc-book-tropes{
    list-style:none!important;
    margin:0!important;
    padding:0!important;
}
.adc-book-tropes li{
    position:relative!important;
    color:#fff!important;
    font-size:16px!important;
    line-height:1.5!important;
    margin:0 0 11px!important;
    padding:0 0 0 27px!important;
}
.adc-book-tropes li:before{
    content:"●"!important;
    position:absolute!important;
    left:0!important;
    top:1px!important;
    color:#ff2020!important;
    font-size:11px!important;
}

/* Details */
.adc-showcase-details{
    width:100%!important;
    align-self:stretch!important;
    border-left:1px solid #555!important;
    padding:8px 0 8px 46px!important;
}
.adc-showcase-details h2,
.adc-single-section-title{
    color:#fff!important;
    font-size:27px!important;
    font-weight:700!important;
    line-height:1.2!important;
    text-transform:uppercase!important;
    margin:0!important;
    padding:0!important;
}
.adc-detail-list{margin:0 0 34px!important}
.adc-detail-list p{
    color:#ddd!important;
    font-size:15px!important;
    line-height:1.52!important;
    margin:0 0 9px!important;
    padding:0!important;
}
.adc-detail-list strong{color:#fff!important;font-weight:700!important}

.adc-buy-button,
.adc-buy-button:visited{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:52px!important;
    background:#ff2020!important;
    color:#fff!important;
    border:1px solid #ff2020!important;
    border-radius:0!important;
    padding:14px 22px!important;
    font-size:13px!important;
    font-weight:700!important;
    letter-spacing:1.4px!important;
    text-transform:uppercase!important;
    text-decoration:none!important;
}
.adc-buy-button:hover,
.adc-buy-button:focus{background:transparent!important;color:#fff!important}

/* About */
.adc-about-section{
    width:100%!important;
    padding:50px 5px 56px!important;
    border-bottom:1px solid #5b5b5b!important;
}
.adc-about-hook{
    color:#fff!important;
    font-size:18px!important;
    font-weight:700!important;
    line-height:1.55!important;
    max-width:980px!important;
    margin:0 0 21px!important;
}
.adc-book-blurb{
    width:100%!important;
    max-width:980px!important;
    color:#ddd!important;
}
.adc-book-blurb,
.adc-book-blurb p{
    color:#ddd!important;
    font-size:17px!important;
    line-height:1.72!important;
}
.adc-book-blurb p{margin:0 0 18px!important}

/* Series */
.adc-more-series{
    width:100%!important;
    padding:46px 5px 12px!important;
}
.adc-single-series-books{
    display:flex!important;
    flex-flow:row wrap!important;
    justify-content:center!important;
    align-items:flex-start!important;
    gap:60px!important;
    width:100%!important;
    margin:10px 0 0!important;
    padding:0!important;
}
.adc-single-series-book{
    flex:0 0 195px!important;
    width:195px!important;
    text-align:center!important;
}
.adc-single-series-book a{display:block!important;text-decoration:none!important}
.adc-single-series-book img{
    display:block!important;
    width:100%!important;
    max-width:195px!important;
    height:auto!important;
    margin:0 auto!important;
    box-shadow:0 8px 22px rgba(0,0,0,.4)!important;
    transition:transform .2s ease!important;
}
.adc-single-series-book a:hover img{transform:translateY(-3px)!important}
.adc-single-series-book.is-current img{outline:1px solid #ff2020!important;outline-offset:4px!important}
.adc-single-series-book p{
    color:#fff!important;
    font-size:12px!important;
    font-weight:500!important;
    line-height:1.3!important;
    letter-spacing:1.8px!important;
    text-transform:uppercase!important;
    margin:16px 0 0!important;
}

/* Tablet */
@media(max-width:1050px){
    .adc-single-book-inner{max-width:900px!important}
    .adc-book-showcase{
        grid-template-columns:255px minmax(0,1fr)!important;
        gap:52px!important;
    }
    .adc-showcase-cover{width:255px!important}
    .adc-showcase-cover img,.adc-main-cover{max-width:255px!important}
    .adc-showcase-details{
        grid-column:1/-1!important;
        border-left:0!important;
        border-top:1px solid #555!important;
        padding:32px 0 0!important;
        margin-top:8px!important;
    }
    .adc-buy-button{width:auto!important;min-width:230px!important}
}

/* Phone */
@media(max-width:650px){
    .adc-single-book-page{padding:36px 20px 55px!important}
    .adc-book-showcase{display:block!important;padding-bottom:46px!important}
    .adc-showcase-cover{width:100%!important;margin-bottom:36px!important}
    .adc-showcase-cover img,.adc-main-cover{max-width:235px!important;margin:0 auto!important}
    .adc-single-book-title{font-size:31px!important}
    .adc-single-book-hook{font-size:19px!important}
    .adc-showcase-details{
        border-left:0!important;
        border-top:1px solid #555!important;
        padding:31px 0 0!important;
        margin-top:36px!important;
    }
    .adc-buy-button{width:100%!important}
    .adc-about-section,.adc-more-series{padding-left:0!important;padding-right:0!important}
    .adc-single-series-books{gap:36px 25px!important}
    .adc-single-series-book{flex-basis:150px!important;width:150px!important}
    .adc-single-series-book img{max-width:150px!important}
}


/* =========================================================
   V5 — POSTERITY DESKTOP CLEANUP
   ========================================================= */

/* Posterity can leave an empty dark title/breadcrumb shell above the content.
   Collapse common empty wrappers only on single Book pages. */
body.adc-dynamic-book .page_head:empty,
body.adc-dynamic-book .page-title:empty,
body.adc-dynamic-book .inner-banner:empty,
body.adc-dynamic-book .innerbanner:empty,
body.adc-dynamic-book .post_head:empty,
body.adc-dynamic-book .entry-header:empty,
body.adc-dynamic-book .bread_crumb:empty,
body.adc-dynamic-book .breadcrumbs:empty,
body.adc-dynamic-book .page_head_bg,
body.adc-dynamic-book .inner-banner-bg,
body.adc-dynamic-book .innerbanner-bg {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

/* Remove inherited top spacing around the Book article/content. */
body.adc-dynamic-book #content,
body.adc-dynamic-book .site-content,
body.adc-dynamic-book #primary,
body.adc-dynamic-book .content-area,
body.adc-dynamic-book .site-main,
body.adc-dynamic-book article,
body.adc-dynamic-book .entry-content {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Large desktop: use more of the available screen while keeping readable text. */
@media (min-width: 1300px) {
    .adc-single-book-page {
        padding-top: 26px !important;
        padding-left: 42px !important;
        padding-right: 42px !important;
    }

    .adc-single-book-inner {
        max-width: 1500px !important;
    }

    .adc-book-showcase {
        grid-template-columns: 340px minmax(0, 1fr) 350px !important;
        column-gap: 82px !important;
    }

    .adc-showcase-cover {
        width: 340px !important;
    }

    .adc-showcase-cover img,
    .adc-main-cover {
        max-width: 340px !important;
    }

    .adc-single-book-title {
        font-size: 47px !important;
    }

    .adc-single-book-hook {
        max-width: 570px !important;
    }

    .adc-showcase-details {
        padding-left: 50px !important;
    }

    .adc-about-hook,
    .adc-book-blurb {
        max-width: 1040px !important;
    }
}


/* =========================================================
   V6 — EXACT POSTERITY SINGLE-BOOK COMPATIBILITY
   Based on Posterity's actual rendered markup.
   ========================================================= */

/* Posterity's title bar is the empty black rectangle above the Book content. */
body.adc-dynamic-book header.title-bar {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

/* Neutralize Posterity's content wrappers on Book pages only.
   The site's #header/navigation and footer are untouched. */
body.adc-dynamic-book article#content {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.adc-dynamic-book article#content > .content-limiter,
body.adc-dynamic-book article#content .content-limiter {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.adc-dynamic-book article#content #col-mask {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.adc-dynamic-book article#content .content-box {
    width: 100% !important;
    max-width: none !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.adc-dynamic-book article#content .formatter {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* With Posterity's wrappers neutralized, the dynamic Book page itself owns
   the spacing directly below the site header. */
body.adc-dynamic-book .adc-single-book-page {
    margin-top: 0 !important;
}

/* =========================================================
   V7 — DYNAMIC MAIN BOOKS INDEX
   Use shortcode: [adc_books_page]
   ========================================================= */
.adc-books-index-page{width:100%;background:#101010;color:#fff;padding:48px 32px 78px;margin:0}
.adc-books-index-page *{box-sizing:border-box}
.adc-books-index-inner{width:100%;max-width:1500px;margin:0 auto}
.adc-books-index-heading{color:#fff!important;font-size:46px!important;line-height:1.08!important;text-transform:uppercase!important;margin:0 0 52px!important;padding:0!important}
.adc-index-category{margin:0 0 68px}
.adc-index-category-title{color:#ff2020!important;font-size:29px!important;font-weight:700!important;letter-spacing:1.8px!important;text-transform:uppercase!important;border-bottom:1px solid #555!important;padding:0 0 13px!important;margin:0 0 38px!important}
.adc-index-series{width:100%;padding:0 0 54px;margin:0 0 52px;border-bottom:1px solid #353535}
.adc-index-series:last-child{margin-bottom:0}
.adc-layout-side{display:grid;grid-template-columns:275px minmax(0,1fr);gap:40px;align-items:start}
.adc-layout-wide{display:block}
.adc-layout-wide .adc-index-series-info{max-width:1050px;margin-bottom:32px}
.adc-index-series-title{color:#fff!important;font-size:27px!important;font-weight:700!important;line-height:1.15!important;text-transform:uppercase!important;margin:0 0 7px!important;padding:0!important}
.adc-index-series-type{color:#ff2020!important;font-size:11px!important;font-weight:700!important;letter-spacing:1.4px!important;text-transform:uppercase!important;margin:0 0 18px!important}
.adc-index-series-hook{color:#fff!important;font-size:17px!important;font-weight:700!important;line-height:1.5!important;margin:0 0 16px!important}
.adc-index-series-description,.adc-index-series-description p{color:#ccc!important;font-size:15px!important;line-height:1.65!important}
.adc-index-series-description p{margin:0 0 14px!important}
.adc-index-book-grid{display:flex;flex-flow:row nowrap;align-items:flex-start;justify-content:flex-start;gap:30px;width:100%;min-width:0}
.adc-index-book-card{flex:1 1 0;min-width:0;max-width:210px;text-align:center;margin:0!important;padding:0!important;background:none!important}
.adc-index-cover-link{display:block;text-decoration:none!important}
.adc-index-cover-link img{display:block;width:100%!important;max-width:190px!important;height:auto!important;margin:0 auto!important;box-shadow:0 8px 24px rgba(0,0,0,.42)!important;transition:transform .2s ease!important}
.adc-index-cover-link:hover img{transform:translateY(-3px)}
.adc-index-book-number{color:#fff!important;font-size:10px!important;font-weight:700!important;letter-spacing:1.5px!important;text-transform:uppercase!important;margin:15px 0 5px!important}
.adc-index-book-title{color:#fff!important;font-size:14px!important;font-weight:700!important;line-height:1.35!important;margin:0 0 12px!important;padding:0!important}
.adc-coming-soon{display:table;background:#ff2020;color:#fff;font-size:9px;font-weight:700;letter-spacing:1.1px;text-transform:uppercase;padding:6px 9px;margin:0 auto 10px}
.adc-books-index-page .adc-learn-more,.adc-books-index-page .adc-learn-more:visited{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:auto!important;min-width:105px!important;min-height:36px!important;padding:9px 16px!important;margin:0!important;background:#181818!important;border:1px solid #ff2020!important;border-radius:2px!important;color:#fff!important;font-size:10px!important;font-weight:700!important;line-height:1!important;letter-spacing:1.2px!important;text-transform:uppercase!important;text-decoration:none!important;transition:background .2s ease,border-color .2s ease,transform .2s ease!important}
.adc-books-index-page .adc-learn-more:hover,.adc-books-index-page .adc-learn-more:focus{background:#ff2020!important;border-color:#ff2020!important;color:#fff!important;text-decoration:none!important;transform:translateY(-1px)!important}
.adc-standalone-grid{justify-content:flex-start;flex-wrap:wrap}
@media(max-width:1050px){.adc-layout-side{grid-template-columns:230px minmax(0,1fr);gap:34px}.adc-index-book-grid{flex-wrap:wrap}.adc-index-book-card{flex:0 1 180px}.adc-index-cover-link img{max-width:175px!important}}
@media(max-width:700px){.adc-books-index-page{padding:38px 20px 58px}.adc-books-index-heading{font-size:34px!important;margin-bottom:38px!important}.adc-index-category-title{font-size:24px!important}.adc-layout-side{display:block}.adc-index-series-info{margin-bottom:28px}.adc-index-book-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 20px}.adc-index-book-card{width:100%;max-width:none}.adc-index-cover-link img{max-width:160px!important}.adc-index-series{padding-bottom:42px;margin-bottom:42px}}
@media(max-width:420px){.adc-index-book-grid{grid-template-columns:1fr}.adc-index-cover-link img{max-width:190px!important}}

/* =========================================================
   V8 — BOOKS INDEX LARGE-DESKTOP POLISH
   Break the shortcode page out of Posterity's narrow content
   wrapper while leaving the site header/navigation untouched.
   ========================================================= */
body.adc-dynamic-books-index article#content,
body.adc-dynamic-books-index article#content > .content-limiter,
body.adc-dynamic-books-index article#content .content-limiter,
body.adc-dynamic-books-index article#content #col-mask,
body.adc-dynamic-books-index article#content .content-box,
body.adc-dynamic-books-index article#content .formatter {
    width:100%!important;
    max-width:none!important;
    float:none!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
}
body.adc-dynamic-books-index .adc-books-index-page {
    margin:0!important;
}

@media (min-width:1300px) {
    .adc-books-index-page {
        padding:48px 42px 82px!important;
    }
    .adc-books-index-inner {
        max-width:1500px!important;
    }
    .adc-books-index-heading {
        font-size:46px!important;
        margin-bottom:54px!important;
    }
    .adc-index-category-title {
        font-size:29px!important;
        margin-bottom:40px!important;
    }
    .adc-layout-side {
        grid-template-columns:300px minmax(0,1fr)!important;
        column-gap:56px!important;
    }
    .adc-index-book-grid {
        gap:34px!important;
    }
    .adc-index-book-card {
        flex:0 1 210px!important;
        width:210px!important;
        max-width:210px!important;
    }
    .adc-index-cover-link img {
        width:auto!important;
        max-width:190px!important;
        max-height:none!important;
    }
    .adc-index-series-hook {
        font-size:17px!important;
    }
    .adc-index-series-description,
    .adc-index-series-description p {
        font-size:15px!important;
        line-height:1.7!important;
    }
}

@media (min-width:1700px) {
    .adc-books-index-inner {
        max-width:1500px!important;
    }
    .adc-layout-side {
        grid-template-columns:320px minmax(0,1fr)!important;
        column-gap:64px!important;
    }
    .adc-index-book-grid {
        gap:40px!important;
    }
}


/* =========================================================
   V9 — BOOKS INDEX FINAL PROPORTION REFINEMENTS
   Slightly wider copy column, more card breathing room,
   and improved title/button readability on large desktops.
   ========================================================= */
@media (min-width:1300px) {
    .adc-layout-side {
        grid-template-columns:350px minmax(0,1fr)!important;
        column-gap:70px!important;
    }

    .adc-index-book-grid {
        gap:46px!important;
    }

    .adc-index-book-card {
        flex:0 1 210px!important;
        width:210px!important;
        max-width:210px!important;
    }

    .adc-index-book-title {
        font-size:15px!important;
        line-height:1.4!important;
        margin-bottom:14px!important;
    }

    .adc-books-index-page .adc-learn-more,
    .adc-books-index-page .adc-learn-more:visited {
        min-width:116px!important;
        min-height:39px!important;
        padding:10px 18px!important;
        font-size:10.5px!important;
    }
}

@media (min-width:1700px) {
    .adc-layout-side {
        grid-template-columns:370px minmax(0,1fr)!important;
        column-gap:78px!important;
    }

    .adc-index-book-grid {
        gap:50px!important;
    }
}

/* =========================================================
   V10 — SERIES LAYOUT FIELD FIX
   Wide series always place their series copy above the full
   book row. This intentionally overrides large-screen side
   layout rules when the ACF Series Layout field is Wide.
   ========================================================= */
.adc-index-series.adc-layout-wide {
    display:block!important;
    grid-template-columns:none!important;
}
.adc-index-series.adc-layout-wide .adc-index-series-info {
    width:100%!important;
    max-width:1050px!important;
    margin:0 0 32px!important;
}
.adc-index-series.adc-layout-wide .adc-index-book-grid {
    width:100%!important;
}


/* =========================================================
   V11 — AUTOMATIC COMING-SOON PLACEHOLDERS
   A Book marked Coming Soon with no Featured Image renders a
   styled cover using its existing Book Number automatically.
   ========================================================= */
.adc-index-placeholder-cover {
    width:100%!important;
    max-width:190px!important;
    aspect-ratio:2 / 3!important;
    margin:0 auto!important;
    padding:24px 16px 18px!important;
    box-sizing:border-box!important;
    background:#151515!important;
    border:1px solid #3b3b3b!important;
    box-shadow:0 8px 24px rgba(0,0,0,.42)!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    text-transform:uppercase!important;
}
.adc-placeholder-book-number {
    color:#fff!important;
    font-size:17px!important;
    font-weight:700!important;
    line-height:1.25!important;
    letter-spacing:2px!important;
}
.adc-placeholder-rule {
    display:block!important;
    width:42px!important;
    height:2px!important;
    margin:17px auto!important;
    background:#ff2020!important;
}
.adc-placeholder-coming-soon {
    color:#ff2020!important;
    font-size:20px!important;
    font-weight:800!important;
    line-height:1.25!important;
    letter-spacing:1.5px!important;
}
.adc-placeholder-author {
    margin-top:auto!important;
    color:#fff!important;
    font-size:11px!important;
    font-weight:700!important;
    letter-spacing:2px!important;
}
.adc-placeholder-book-card .adc-placeholder-title {
    color:#fff!important;
}
@media(max-width:1050px) {
    .adc-index-placeholder-cover {max-width:175px!important;}
}
@media(max-width:700px) {
    .adc-index-placeholder-cover {max-width:160px!important;}
}
@media(max-width:420px) {
    .adc-index-placeholder-cover {max-width:190px!important;}
}

/* =========================================================
   V12 — SIMPLE DYNAMIC HOMEPAGE
   ========================================================= */
body.adc-dynamic-homepage article#content,
body.adc-dynamic-homepage article#content > .content-limiter,
body.adc-dynamic-homepage article#content .content-limiter,
body.adc-dynamic-homepage article#content #col-mask,
body.adc-dynamic-homepage article#content .content-box,
body.adc-dynamic-homepage article#content .formatter {
  width:100%!important; max-width:none!important; float:none!important;
  margin:0!important; padding:0!important;
}
body.adc-dynamic-homepage header.title-bar { display:none!important; }
.adc-home-page{background:#101010;color:#fff;padding:0 42px 70px;font-family:inherit;}
.adc-home-inner{max-width:1500px;margin:0 auto;}
.adc-home-hero{display:grid;grid-template-columns:minmax(0,1fr) 610px;gap:80px;align-items:center;min-height:560px;padding:65px 0;border-bottom:1px solid #3b3b3b;}
.adc-home-eyebrow,.adc-home-section-kicker{margin:0 0 18px;color:#ff2020;font-size:13px;font-weight:800;letter-spacing:2.2px;text-transform:uppercase;}
.adc-home-hero h1{margin:0 0 24px;color:#fff;font-size:64px;line-height:1.03;text-transform:uppercase;letter-spacing:.3px;}
.adc-home-hero h1 span{color:#ff2020;}
.adc-home-intro{max-width:650px;margin:0 0 30px;color:#ddd;font-size:18px;line-height:1.65;}
.adc-home-primary-button,.adc-home-primary-button:visited,.adc-home-outline-button,.adc-home-outline-button:visited{display:inline-flex;align-items:center;justify-content:center;width:auto;text-decoration:none!important;text-transform:uppercase;font-weight:800;letter-spacing:1.4px;transition:.2s ease;}
.adc-home-primary-button,.adc-home-primary-button:visited{min-height:48px;padding:13px 24px;background:#ff2020;border:1px solid #ff2020;color:#fff!important;font-size:11px;}
.adc-home-primary-button:hover{background:#d91616;border-color:#d91616;color:#fff!important;transform:translateY(-1px);}
.adc-home-outline-button,.adc-home-outline-button:visited{min-height:40px;padding:10px 17px;background:#181818;border:1px solid #ff2020;color:#fff!important;font-size:10px;}
.adc-home-outline-button:hover{background:#ff2020;color:#fff!important;transform:translateY(-1px);}
.adc-home-hero-covers{display:flex;align-items:center;justify-content:center;gap:22px;}
.adc-home-hero-covers a{display:block;width:31%;max-width:180px;}
.adc-home-hero-covers img{display:block;width:100%;height:auto;box-shadow:0 16px 35px rgba(0,0,0,.4);}
.adc-home-section{padding:58px 0;border-bottom:1px solid #3b3b3b;}
.adc-home-section-kicker{text-align:center;}
.adc-home-genre-grid{display:grid;grid-template-columns:1fr 1fr;}
.adc-home-genre{padding:15px 8%;text-align:center;}
.adc-home-genre + .adc-home-genre{border-left:1px solid #555;}
.adc-home-genre h2,.adc-home-about h2,.adc-home-newsletter h2{margin:0 0 14px;color:#fff;text-transform:uppercase;font-size:32px;line-height:1.15;}
.adc-home-genre p{max-width:470px;margin:0 auto 24px;color:#d4d4d4;font-size:16px;line-height:1.6;}
.adc-home-featured-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:55px;max-width:1180px;margin:0 auto;}
.adc-home-book-card{display:grid;grid-template-columns:165px 1fr;gap:24px;align-items:center;}
.adc-home-cover img{display:block;width:165px;height:auto;}
.adc-home-book-meta h3{margin:0 0 8px;color:#fff;font-size:20px;line-height:1.2;}
.adc-home-book-meta p{margin:0 0 18px;color:#bbb;font-size:13px;line-height:1.5;text-transform:uppercase;letter-spacing:.5px;}
.adc-home-about{max-width:850px;text-align:center;margin:0 auto;}
.adc-home-about h2{font-size:42px;}
.adc-home-about p:not(.adc-home-section-kicker){margin:0 auto 25px;color:#d6d6d6;font-size:17px;line-height:1.7;}
.adc-home-newsletter{display:flex;align-items:center;justify-content:space-between;gap:45px;}
.adc-home-newsletter .adc-home-section-kicker{text-align:left;margin-bottom:10px;}
.adc-home-newsletter h2{font-size:38px;margin-bottom:8px;}
.adc-home-newsletter p:not(.adc-home-section-kicker){margin:0;color:#d6d6d6;font-size:17px;}
@media(max-width:1100px){.adc-home-hero{grid-template-columns:1fr;gap:45px;min-height:0}.adc-home-hero-copy{text-align:center}.adc-home-intro{margin-left:auto;margin-right:auto}.adc-home-featured-grid{gap:30px}.adc-home-book-card{grid-template-columns:130px 1fr}.adc-home-cover img{width:130px}}
@media(max-width:800px){.adc-home-page{padding:0 22px 50px}.adc-home-hero{padding:48px 0}.adc-home-hero h1{font-size:43px}.adc-home-hero-covers{gap:12px}.adc-home-genre-grid,.adc-home-featured-grid{grid-template-columns:1fr}.adc-home-genre{padding:28px 4%}.adc-home-genre + .adc-home-genre{border-left:0;border-top:1px solid #444}.adc-home-featured-grid{max-width:520px}.adc-home-book-card{grid-template-columns:145px 1fr}.adc-home-cover img{width:145px}.adc-home-newsletter{display:block;text-align:center}.adc-home-newsletter .adc-home-section-kicker{text-align:center}.adc-home-newsletter .adc-home-primary-button{margin-top:25px}}
@media(max-width:480px){.adc-home-hero h1{font-size:36px}.adc-home-intro{font-size:16px}.adc-home-hero-covers a{max-width:125px}.adc-home-genre h2{font-size:26px}.adc-home-book-card{grid-template-columns:110px 1fr;gap:18px}.adc-home-cover img{width:110px}.adc-home-about h2,.adc-home-newsletter h2{font-size:31px}}

/* =========================================================
   V13 — HOMEPAGE POLISH
   Larger featured cards, stronger About section, tighter
   newsletter CTA, and more balanced desktop spacing.
   ========================================================= */
@media (min-width:1101px) {
    .adc-home-inner{max-width:1500px!important;}
    .adc-home-hero{
        grid-template-columns:minmax(0,1fr) 650px!important;
        gap:58px!important;
        min-height:500px!important;
        padding:52px 0!important;
    }
    .adc-home-hero-covers{gap:24px!important;justify-content:flex-start!important;}
    .adc-home-hero-covers a{width:31.5%!important;max-width:205px!important;}
    .adc-home-section{padding:52px 0!important;}

    .adc-home-featured-grid{
        max-width:1320px!important;
        gap:48px!important;
    }
    .adc-home-book-card{
        grid-template-columns:190px minmax(0,1fr)!important;
        gap:28px!important;
        min-width:0!important;
    }
    .adc-home-cover img{width:190px!important;max-width:190px!important;}
    .adc-home-book-meta h3{font-size:22px!important;line-height:1.22!important;margin-bottom:10px!important;}
    .adc-home-book-meta p{font-size:13.5px!important;line-height:1.55!important;margin-bottom:20px!important;}

    .adc-home-about{max-width:980px!important;padding:4px 0!important;}
    .adc-home-about h2{font-size:44px!important;margin-bottom:16px!important;}
    .adc-home-about p:not(.adc-home-section-kicker){
        max-width:900px!important;
        font-size:18px!important;
        line-height:1.72!important;
        margin-bottom:27px!important;
    }

    .adc-home-newsletter{
        max-width:1120px!important;
        margin:0 auto!important;
        justify-content:center!important;
        gap:72px!important;
    }
    .adc-home-newsletter > div{max-width:680px!important;}
    .adc-home-newsletter h2{font-size:40px!important;}
    .adc-home-newsletter p:not(.adc-home-section-kicker){font-size:18px!important;}
}

@media (min-width:1500px) {
    .adc-home-hero h1{font-size:66px!important;}
    .adc-home-intro{font-size:18.5px!important;}
}

/* V19 homepage: rotating full-catalog hero and simplified page */
.adc-home-carousel{width:100%;max-width:650px;margin:0 auto;}
.adc-home-carousel-viewport{position:relative;min-height:315px;}
.adc-home-carousel-slide{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:24px;opacity:0;visibility:hidden;transform:translateX(16px);transition:opacity .55s ease,transform .55s ease,visibility .55s;pointer-events:none;}
.adc-home-carousel-slide.is-active{opacity:1;visibility:visible;transform:translateX(0);pointer-events:auto;}
.adc-home-carousel-book{display:block;flex:0 1 31%;max-width:205px;transition:transform .2s ease;}
.adc-home-carousel-book:hover,.adc-home-carousel-book:focus{transform:translateY(-4px);}
.adc-home-carousel-book img{display:block;width:100%;height:auto;box-shadow:0 16px 35px rgba(0,0,0,.42);}
.adc-home-carousel-controls{display:flex;align-items:center;justify-content:center;gap:15px;margin-top:16px;}
.adc-home-carousel-arrow{width:32px;height:32px;padding:0;border:1px solid #555;background:#151515;color:#fff;font-size:25px;line-height:28px;cursor:pointer;transition:.2s ease;}
.adc-home-carousel-arrow:hover,.adc-home-carousel-arrow:focus{border-color:#ff2020;background:#ff2020;}
.adc-home-carousel-dots{display:flex;align-items:center;justify-content:center;gap:8px;}
.adc-home-carousel-dot{width:8px;height:8px;padding:0;border:1px solid #777;border-radius:50%;background:transparent;cursor:pointer;}
.adc-home-carousel-dot.is-active{background:#ff2020;border-color:#ff2020;}
@media(max-width:1100px){.adc-home-carousel{max-width:610px}.adc-home-carousel-viewport{min-height:300px}}
@media(max-width:800px){.adc-home-carousel-viewport{min-height:265px}.adc-home-carousel-slide{gap:12px}.adc-home-carousel-book{max-width:165px}.adc-home-carousel-controls{margin-top:12px}}
@media(max-width:480px){.adc-home-carousel-viewport{min-height:205px}.adc-home-carousel-book{max-width:125px}.adc-home-carousel-slide{gap:8px}.adc-home-carousel-arrow{width:29px;height:29px;font-size:22px}}
@media(prefers-reduced-motion:reduce){.adc-home-carousel-slide,.adc-home-carousel-book{transition:none!important}}
\n\n/* V21 — custom homepage newsletter signup preview */\n.adc-home-newsletter{display:grid!important;grid-template-columns:minmax(0,.85fr) minmax(520px,1.15fr)!important;align-items:center!important;gap:70px!important;max-width:1320px!important;margin:0 auto!important;}\n.adc-home-newsletter-copy{max-width:540px;}\n.adc-home-newsletter .adc-home-section-kicker{text-align:left!important;margin-bottom:10px!important;}\n.adc-home-newsletter h2{margin-bottom:10px!important;}\n.adc-home-newsletter-lead{margin:0 0 13px!important;color:#fff!important;font-size:18px!important;font-weight:700;}\n.adc-home-newsletter-description{margin:0!important;color:#bdbdbd!important;font-size:15px!important;line-height:1.65!important;}\n.adc-home-newsletter-signup{width:100%;}\n.adc-home-newsletter-form{display:grid;grid-template-columns:minmax(135px,.7fr) minmax(210px,1.15fr) auto;gap:10px;align-items:stretch;}\n.adc-home-newsletter-form label{display:block;margin:0;}\n.adc-home-newsletter-form input{box-sizing:border-box;width:100%;height:50px;margin:0;padding:0 15px;border:1px solid #555;border-radius:0;background:#171717;color:#fff;font:inherit;font-size:13px;letter-spacing:.7px;outline:none;transition:border-color .2s ease,background .2s ease;}\n.adc-home-newsletter-form input::placeholder{color:#aaa;opacity:1;}\n.adc-home-newsletter-form input:focus{border-color:#ff2020;background:#1c1c1c;}\n.adc-home-newsletter-form .adc-home-primary-button{height:50px;min-height:50px;margin:0!important;white-space:nowrap;cursor:pointer;}\n.adc-home-newsletter-note{margin:11px 0 0!important;color:#888!important;font-size:12px!important;line-height:1.5!important;}\n@media(max-width:1050px){.adc-home-newsletter{grid-template-columns:1fr!important;gap:28px!important;text-align:center!important;}.adc-home-newsletter-copy{max-width:720px;margin:0 auto;}.adc-home-newsletter .adc-home-section-kicker{text-align:center!important;}.adc-home-newsletter-form{max-width:760px;margin:0 auto;}.adc-home-newsletter-note{text-align:center!important;}}\n@media(max-width:700px){.adc-home-newsletter-form{grid-template-columns:1fr;gap:10px;}.adc-home-newsletter-form .adc-home-primary-button{width:100%;}.adc-home-newsletter-description{max-width:520px;margin-left:auto!important;margin-right:auto!important;}}\n

/* V22 — newsletter fields integrated with the dark/red site design */
.adc-home-newsletter-form input[type="text"],
.adc-home-newsletter-form input[type="email"]{
  -webkit-appearance:none!important;appearance:none!important;
  background:#101010!important;
  background-color:#101010!important;
  color:#fff!important;
  border:1px solid #3f3f3f!important;
  border-bottom:2px solid #ff2020!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.adc-home-newsletter-form input[type="text"]::placeholder,
.adc-home-newsletter-form input[type="email"]::placeholder{color:#8f8f8f!important;opacity:1!important;}
.adc-home-newsletter-form input[type="text"]:hover,
.adc-home-newsletter-form input[type="email"]:hover{border-color:#666!important;border-bottom-color:#ff2020!important;}
.adc-home-newsletter-form input[type="text"]:focus,
.adc-home-newsletter-form input[type="email"]:focus{background:#151515!important;border-color:#777!important;border-bottom-color:#ff2020!important;box-shadow:none!important;outline:none!important;}


/* V23 — force both newsletter inputs to the same dark treatment over Posterity */
body .adc-home-page .adc-home-newsletter .adc-home-newsletter-form label input[type="text"],
body .adc-home-page .adc-home-newsletter .adc-home-newsletter-form label input[type="email"]{
  -webkit-appearance:none!important;
  appearance:none!important;
  background:#101010!important;
  background-color:#101010!important;
  background-image:none!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  border:1px solid #3f3f3f!important;
  border-bottom:2px solid #ff2020!important;
  border-radius:0!important;
  box-shadow:inset 0 0 0 1000px #101010!important;
}
body .adc-home-page .adc-home-newsletter .adc-home-newsletter-form label input[type="text"]::placeholder,
body .adc-home-page .adc-home-newsletter .adc-home-newsletter-form label input[type="email"]::placeholder{
  color:#8f8f8f!important;
  -webkit-text-fill-color:#8f8f8f!important;
  opacity:1!important;
}
body .adc-home-page .adc-home-newsletter .adc-home-newsletter-form label input[type="text"]:focus,
body .adc-home-page .adc-home-newsletter .adc-home-newsletter-form label input[type="email"]:focus{
  background:#151515!important;
  background-color:#151515!important;
  box-shadow:inset 0 0 0 1000px #151515!important;
  border-color:#777!important;
  border-bottom-color:#ff2020!important;
  outline:none!important;
}

/* V24 — remove the red box/right-edge artifact from newsletter email field */
body .adc-home-page .adc-home-newsletter .adc-home-newsletter-form input[type="email"],
body .adc-home-page .adc-home-newsletter .adc-home-newsletter-form input[type="email"]:hover,
body .adc-home-page .adc-home-newsletter .adc-home-newsletter-form input[type="email"]:focus,
body .adc-home-page .adc-home-newsletter .adc-home-newsletter-form input[type="email"]:valid,
body .adc-home-page .adc-home-newsletter .adc-home-newsletter-form input[type="email"]:invalid{
  border-top-color:#3f3f3f!important;
  border-left-color:#3f3f3f!important;
  border-right-color:#3f3f3f!important;
  border-bottom-color:#ff2020!important;
  outline:0!important;
  box-shadow:inset 0 0 0 1000px #101010!important;
}

/* V26 — functional custom Sender newsletter form */
.adc-newsletter-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;}
.adc-home-newsletter-message{min-height:20px;margin:10px 0 0!important;font-size:13px!important;line-height:1.45!important;font-weight:700;}
.adc-home-newsletter-message:empty{display:none;}
.adc-home-newsletter-message.is-success{color:#fff!important;}
.adc-home-newsletter-message.is-error{color:#ff6b6b!important;}
.adc-home-newsletter-form .adc-home-primary-button:disabled{opacity:.65;cursor:wait;}


/* V27 — illustrated About banner preview */
.adc-home-about-banner-section{max-width:none!important;padding:52px 0!important;text-align:initial!important;}
.adc-home-about-banner{position:relative;width:100%;max-width:1500px;margin:0 auto;overflow:hidden;background:#0b0b0b;}
.adc-home-about-banner img{display:block;width:100%;height:auto;margin:0!important;}
.adc-home-about-banner-link{position:absolute;left:64.5%;top:67%;width:18.8%;height:11%;display:block;z-index:2;text-indent:-9999px;overflow:hidden;}
.adc-home-about-banner-link:focus{outline:2px solid #ff2020;outline-offset:3px;}
.adc-home-about-banner-link span{position:absolute;left:-9999px;}
@media(max-width:800px){
  .adc-home-about-banner-section{padding:34px 0!important;}
  .adc-home-about-banner{width:calc(100% + 44px);margin-left:-22px;}
}

/* V28 — subtle atmospheric hero background */
.adc-home-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
}
.adc-home-hero::before{
  content:"";
  position:absolute;
  z-index:-1;
  pointer-events:none;
  inset:0 -8% 0 -8%;
  background:
    radial-gradient(ellipse at 78% 45%, rgba(255,32,32,.105) 0%, rgba(145,12,18,.055) 24%, rgba(16,16,16,0) 57%),
    radial-gradient(ellipse at 28% 48%, rgba(145,12,18,.045) 0%, rgba(16,16,16,0) 48%);
}
.adc-home-hero::after{
  content:"";
  position:absolute;
  z-index:-1;
  pointer-events:none;
  inset:0;
  opacity:.12;
  background-image:radial-gradient(rgba(255,255,255,.16) .45px, transparent .55px);
  background-size:5px 5px;
  -webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 18%,#000 75%,transparent 100%);
  mask-image:linear-gradient(to bottom,transparent 0%,#000 18%,#000 75%,transparent 100%);
}
@media(max-width:1100px){
  .adc-home-hero::before{
    background:
      radial-gradient(ellipse at 50% 72%, rgba(255,32,32,.09) 0%, rgba(145,12,18,.045) 28%, rgba(16,16,16,0) 60%),
      radial-gradient(ellipse at 50% 20%, rgba(145,12,18,.035) 0%, rgba(16,16,16,0) 48%);
  }
}


/* V29 — final hero sizing, featured heading spacing, Contact Me About banner */
@media(min-width:1101px){
  .adc-home-carousel{max-width:715px!important;}
  .adc-home-carousel-viewport{min-height:345px!important;}
  .adc-home-carousel-book{max-width:225px!important;}
}
.adc-home-featured > .adc-home-section-kicker{margin-bottom:30px!important;}
