

/*--- AGENCY GOTHIC CT----------------------*/
@font-face {
    font-family: 'Agency Gothic CT';
    font-weight: 700;
    src: url(agency-gothic-ct-bold.woff) format('woff')
}


/*--- AMMO PLUS -------------------------------------------------------------------*/
body:has(.ammo-plus) {
    background-color: #fff
}

main:has(.ammo-plus) .common {
    padding: 0;
    box-shadow: none;
    margin: 0
}

.ammo-plus {
}

    /*--- sections -----------------*/
    .ammo-plus > section {
        margin-bottom: 4rem
    }

    /*--- headings ---*/
    .ammo-plus h2 {
        padding: 0;
        font-family: 'Open Sans';
        font-weight: 800;
        font-size: clamp(2rem, 5vw, 2.8rem);
        color: #ce202e;
        text-align: center;
        margin: 0 0 .5em
    }

        .ammo-plus h2 i {
            font-style: normal;
            color: #ce202e
        }

    .ammo-plus :is(h1, h2, h3, p) span {
        display: inline-block
    }

    /*--- button-style links ---*/
    .ammo-plus .button-style-link {
        padding-left: clamp(2.5em, 5vw, 3em);
        padding-right: clamp(2.5em, 5vw, 3em);
        border-radius: 4em;
        font-size: 1.5rem
    }




/*--- hero banner ----------------------------------------------*/
.ammo-plus-hero {
    display: flex;
    flex-direction: column;
    justify-content: end;
    align-items: center;
    aspect-ratio: 1844/957;
    padding: 4rem 1rem clamp(1rem, 4vw, 3rem);
    background-color: #000;
    position: relative;
    z-index: 1;
    color: #fff;
    margin-left: clamp(-14rem, calc(((100vw - 1500px) / 2) * -1), 0rem);
    margin-right: clamp(-14rem, calc(((100vw - 1500px) / 2) * -1), 0rem)
}

    /*--- heading ---*/
    .ammo-plus-hero h1 {
        font-size: clamp(1.2rem, 4.75vw, 2.95rem);
        font-weight: bold;
        margin: 0 clamp(-1.9em, -1vw, 0em) clamp(2rem, 10vw, 12rem) 0
    }

        .ammo-plus-hero h1 img {
            display: block;
            width: clamp(20rem, 80vw, 50rem);
            margin: 0 auto clamp(.5rem, 2vw, 1.5rem);
            opacity: .85;
            mix-blend-mode: screen
        }

        .ammo-plus-hero h1 span:first-of-type {
            position: absolute;
            clip: rect(0,0,0,0);
            clip-path: inset(50%)
        }

    /*--- join ---*/
    .ammo-plus-hero > .button-style-link {
        margin: 0 0 .5rem
    }

        /*--- sign in ---*/
        .ammo-plus-hero > .button-style-link:nth-of-type(2) {
            background-color: transparent;
            font-size: 1.3rem;
            color: #fff;
            text-transform: none;
            margin-bottom: 1rem
        }

            .ammo-plus-hero > .button-style-link:nth-of-type(2):is(:hover, :focus) {
                background-color: hsl(0 0 0 / .3)
            }

    /*--- rules ---*/
    .ammo-plus-hero > a:last-of-type {
        display: flex;
        gap: .5em;
        font-size: clamp(1rem, 1.5vw, 1.3rem);
        color: #fff;
        text-decoration: underline;
        font-weight: bold;
        transition: opacity .2s
    }

        .ammo-plus-hero > a:last-of-type img {
            width: 1.1em;
            filter: invert(1)
        }

        .ammo-plus-hero > a:last-of-type:is(:hover, :focus) {
            opacity: .8
        }

@media (min-width:40rem) {
    .ammo-plus-hero > a:last-of-type {
        align-self: end;
        margin-right: clamp(0rem, 2vw, 2rem)
    }
}

/*--- faux background ---*/
.ammo-plus-hero > img {
    display: block;
    object-fit: cover;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1
}




/*--- benefits 1 ----------------------------------------------*/
.ammo-plus-benefits-1 {
}

    /*--- list ---*/
    .ammo-plus-benefits-1 ul {
        display: flex;
        flex-direction: column;
        padding: 0 .5rem;
        border: .25rem solid #e5e5e5;
        font-size: clamp(1.4rem, 2vw, 1.6rem);
        font-weight: bold;
        text-align: center
    }

    .ammo-plus-benefits-1 li {
        padding: 1em .5em
    }

        .ammo-plus-benefits-1 li:not(:last-child) {
            border-bottom: .25rem solid #ce202e
        }

    .ammo-plus-benefits-1 ul b {
        color: #ce202e
    }

    .ammo-plus-benefits-1 ul span {
        display: inline-block
    }

@media (min-width:44rem) {
    .ammo-plus-benefits-1 ul {
        flex-direction: row;
        padding: .5rem 0
    }

    .ammo-plus-benefits-1 li {
        flex: 33.3333%;
        align-content: center;
        padding: 1em clamp(1em, 3vw, 4em)
    }

        .ammo-plus-benefits-1 li:not(:last-child) {
            border: 0;
            border-right: .25rem solid #ce202e
        }
}




/*--- savings ----------------------------------------------*/
.ammo-plus-savings {
    padding: 2rem clamp(1rem, 25vw + -24rem, 6rem) 1rem;
    box-shadow: 0 0 1.5rem rgba(0,0,0,.4);
    color: #161b2e
}

    .ammo-plus-savings h2 {
        font-family: 'Agency Gothic CT';
        font-weight: 700;
        font-size: clamp(4rem, 7vw, 5rem);
        color: #161b2e;
        margin-bottom: .1em
    }

        .ammo-plus-savings h2 i {
            font-style: normal;
            color: #ce202e
        }

    .ammo-plus-savings > small:first-of-type {
        display: block;
        text-align: center;
        font-size: clamp(1.2rem, 2vw, 1.5rem);
        font-weight: 600;
        margin: 0 0 1em
    }

/*--- calculator ------------------*/
#ammo-plus-calculator {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 2rem 1rem;
    padding: 0 0 1.5rem;
    border-bottom: 2px solid #ce202e;
    margin: 0 0 1rem
}

    /*--- input group -------*/
    #ammo-plus-calculator > fieldset:first-of-type {
        flex: 2 0 20rem;
        padding: clamp(.5rem, 3vw, 2rem);
        background-color: #161b2e;
        color: #fff;
        text-align: center;
        margin: 0
    }

        /*--- text input ---*/
        #ammo-plus-calculator > fieldset:first-of-type label {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            align-items: center;
            gap: .5rem .25rem;
            margin: 0 0 2rem
        }

            #ammo-plus-calculator > fieldset:first-of-type label b {
                flex: 100%;
                font-size: 1.9em;
                font-weight: 800
            }

            #ammo-plus-calculator > fieldset:first-of-type label input {
                -webkit-appearance: none;
                -moz-appearance: textfield;
                width: 5em;
                padding: .2em .5em;
                border-radius: 0;
                font-size: 1.5rem;
                color: #ce202e;
                text-align: right;
                margin: 0
            }

                #ammo-plus-calculator > fieldset:first-of-type label input::-webkit-inner-spin-button {
                    -webkit-appearance: none
                }

                #ammo-plus-calculator > fieldset:first-of-type label input::placeholder {
                    color: #ce202e
                }

            #ammo-plus-calculator > fieldset:first-of-type label span {
                font-size: 1.4rem
            }

            /*--- range input ---*/
            #ammo-plus-calculator > fieldset:first-of-type label:last-of-type {
                position: absolute;
                clip: rect(0,0,0,0);
                clip-path: inset(50%)
            }

        #ammo-plus-calculator > fieldset:first-of-type > input {
            width: 100%;
            padding: 0 1rem;
            margin: 1rem 0 0
        }

        #ammo-plus-calculator > fieldset:first-of-type datalist {
            display: flex;
            justify-content: space-between;
            font-weight: bold;
            margin: .8rem 0 1rem
        }

        /*--- custom slider ---*/
        #ammo-plus-calculator > fieldset:first-of-type > input {
            --range-position: 50;
            -webkit-appearance: none;
            height: .7rem;
            padding: 0;
            background-image: linear-gradient(to right, #ce202e calc(var(--range-position) * 1%), transparent calc(var(--range-position) * 1%));
            background-size: 100% 5px;
            border: 0;
            border-radius: 4em;
            box-shadow: none;
            margin-bottom: .5em
        }

            #ammo-plus-calculator > fieldset:first-of-type > input::-webkit-slider-runnable-track {
            }

            #ammo-plus-calculator > fieldset:first-of-type > input::-webkit-slider-thumb {
                -webkit-appearance: none;
                width: 1em;
                height: 1em;
                background-color: #fff;
                border: .15em solid #ce202e;
                border-radius: 50%;
                font-size: 2rem;
                margin: -.4em 0 0
            }

            #ammo-plus-calculator > fieldset:first-of-type > input::-moz-range-thumb {
                -webkit-appearance: none;
                width: 1em;
                height: 1em;
                background-color: #fff;
                border: .15em solid #ce202e;
                border-radius: 50%;
                font-size: 2rem;
                margin: -.4em 0 0
            }

        /*--- note ---*/
        #ammo-plus-calculator > fieldset:first-of-type small {
            display: block;
            font-size: 1.2rem;
            font-weight: 600;
            margin: 0
        }

@media (min-width:60rem) {
    #ammo-plus-calculator > fieldset:first-of-type label b {
        flex: initial;
        margin-right: auto
    }
}

/*--- output group -------*/
#ammo-plus-calculator > fieldset:last-of-type {
    flex: 1 0 18rem;
    text-align: center
}

    #ammo-plus-calculator > fieldset:last-of-type label {
        padding: 0;
        font-size: 1.2em;
        margin: 0 auto
    }

    #ammo-plus-calculator > fieldset:last-of-type output {
        display: block;
        font-size: clamp(5.5rem, 20vw, 7rem);
        font-weight: bold;
        color: #ce202e;
        margin: .05em 0 .1em
    }

    #ammo-plus-calculator > fieldset:last-of-type .button-style-link {
        margin: 0 auto
    }

    #ammo-plus-calculator > fieldset:last-of-type a:not(.button-style-link) {
        display: block;
        width: fit-content;
        padding: .5em;
        text-decoration: underline;
        font-size: 1.2rem;
        font-weight: 600;
        margin: 0 auto
    }

        #ammo-plus-calculator > fieldset:last-of-type a:not(.button-style-link):not(:hover, :focus) {
            color: #151a30
        }


/*--- examples -------*/
.ammo-plus-savings {
}

    .ammo-plus-savings h3 {
        font-size: clamp(2rem, 5vw, 2.8rem);
        text-transform: uppercase;
        text-align: center;
        font-weight: 800;
        margin: 0 0 .5em
    }

        .ammo-plus-savings h3 i {
            font-style: normal;
            color: #ce202e
        }

    /*--- table ---*/
    .ammo-plus-savings table {
        border-collapse: collapse;
        width: 100%;
        font-size: clamp(.9rem, 3vw, 1.4rem);
        font-weight: bold;
        margin: 0 0 2rem
    }

    .ammo-plus-savings :is(th, td) {
        padding: 1.25em .25em
    }

    .ammo-plus-savings th {
        color: #ce202e;
        font-weight: 800;
        text-align: left
    }

    .ammo-plus-savings td {
    }

    .ammo-plus-savings tbody tr:not(:first-child) {
        border-top: 2px solid #e5e5e5
    }

    /*--- note ---*/
    .ammo-plus-savings > small:last-of-type {
        display: block;
        font-size: 1.2rem;
        line-height: 1.4;
        font-weight: bold;
        text-align: center
    }

@media (min-width:65rem) {
    .ammo-plus-savings > small:last-of-type span {
        display: block
    }
}



/*--- market ----------------------------------------------*/
.ammo-plus-market {
    padding: 3rem 0 4rem;
    background-color: #282828;
    box-shadow: 25vw 0 0 #282828, 50vw 0 0 #282828, -25vw 0 0 #282828, -50vw 0 0 #282828;
    color: #fff;
    text-align: center
}

    /*--- note ---*/
    .ammo-plus-market > p {
        font-size: clamp(1.2rem, 5vw, 1.5rem)
    }

    /*--- list ---*/
    .ammo-plus-market ul {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(clamp(clamp(100% / (4 + 1) + 0.1%, (80rem - 100vw) * 1000, 100% / (2 + 1) + 0.1%), (40rem - 100vw) * 1000, 100%), 1fr));
        gap: clamp(.5rem, 5vw, 3rem);
        text-shadow: 0 0 .1em rgba(0,0,0,.5), 0 0 .2em rgba(0,0,0,.4), 0 0 .5em rgba(0,0,0,.2)
    }

    .ammo-plus-market li {
        padding: clamp(.5rem, 5vw, 1rem);
        position: relative;
        z-index: 1
    }

        .ammo-plus-market li::before {
            display: block;
            padding-top: clamp(25%, 25vw, 100%);
            content: ""
        }

    .ammo-plus-market h3 {
        font-size: clamp(1.5rem, 5vw, 2rem);
        text-transform: uppercase;
        font-weight: 800;
        margin: 0 0 .5em
    }

    .ammo-plus-market p {
        font-size: clamp(1.2rem, 5vw, 1.5rem);
        line-height: 1.4;
        font-weight: 600
    }

    .ammo-plus-market img {
        display: block;
        object-fit: cover;
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1
    }
    /*--- faux background image ---*/
    .ammo-plus-market li:nth-child(2) img {
        object-position: top center
    }




/*--- benefits 2 ----------------------------------------------*/
.ammo-plus-benefits-2 {
}

    /*--- heading ---*/
    .ammo-plus-benefits-2 h2 {
        font-size: clamp(1.6rem, 5vw, 2.2rem);
        font-weight: bold;
        color: #000;
        text-transform: none
    }

        .ammo-plus-benefits-2 h2 i {
            font-style: normal;
            color: #ce202e
        }

    /*--- list ---*/
    .ammo-plus-benefits-2 ul {
        display: flex;
        flex-direction: column;
        border: .25rem solid #e5e5e5;
        border-top: 0;
        font-size: clamp(1.2rem, 2vw, 1.4rem);
        font-weight: bold;
        text-align: center
    }

    .ammo-plus-benefits-2 li {
        display: flex;
        flex-direction: column;
        padding: 1rem .5rem
    }

    .ammo-plus-benefits-2 ul h3 {
        padding: .45em 0;
        background-color: #e5e5e5;
        font-family: 'Agency Gothic CT';
        font-weight: bold;
        font-size: 2em;
        text-transform: uppercase;
        margin: -1rem -.5rem 1rem
    }

        .ammo-plus-benefits-2 ul h3 img {
            width: auto;
            height: 1em;
            display: inline-block;
            vertical-align: middle
        }

    .ammo-plus-benefits-2 ul p {
        flex: 1;
        align-content: center;
        line-height: 1;
        margin: 0
    }

    .ammo-plus-benefits-2 ul span {
        display: inline-block
    }

@media (min-width:47rem) {
    .ammo-plus-benefits-2 ul {
        flex-direction: row;
        border: .25rem solid #e5e5e5
    }

    .ammo-plus-benefits-2 li {
        flex: 1
    }

    .ammo-plus-benefits-2 p {
        padding: 1.5rem 0;
        position: relative;
        margin: .5rem 0
    }

    .ammo-plus-benefits-2 li:not(:last-child) p::after {
        display: block;
        border-right: .15rem solid #e5e5e5;
        position: absolute;
        top: 0;
        bottom: 0;
        right: -.5rem;
        content: ""
    }
}




/*--- members ----------------------------------------------*/
.ammo-plus-members {
}

    /*--- steps ---*/
    .ammo-plus-members ol {
        display: none;
        background-color: #e5e5e5;
        text-align: center
    }

        .ammo-plus-members ol li {
            padding: 2rem clamp(.5rem, 3vw, 4rem)
        }

            .ammo-plus-members ol li:not(:last-of-type) {
            }

                .ammo-plus-members ol li:not(:last-of-type)::after {
                    display: block;
                    width: 1em;
                    height: 1em;
                    background: url('double-chevron.svg') no-repeat center / cover;
                    font-size: 2em;
                    margin: 2rem auto -2rem;
                    rotate: 90deg;
                    filter: invert(1) brightness(.5);
                    content: ""
                }

        .ammo-plus-members ol h3 {
            display: flex;
            justify-content: center;
            align-items: center;
            gap: .75em;
            padding: 0;
            font-size: 2.3rem;
            color: #ce202e;
            text-transform: uppercase;
            margin: 0 0 1rem
        }

            .ammo-plus-members ol h3 span {
                box-sizing: content-box;
                display: flex;
                justify-content: center;
                align-items: center;
                width: 1em;
                height: 1em;
                padding: .4em;
                background-color: #808080;
                border-radius: 50%;
                font-size: 1.2em;
                color: #fff
            }

        .ammo-plus-members ol p {
            font-size: clamp(1rem, 5vw, 1.4rem);
            font-weight: 600;
            margin: 0
        }

@media (min-width:44rem) {
    .ammo-plus-members ol {
        display: flex
    }

    .ammo-plus-members li {
        flex: 33.33333333%
    }

    .ammo-plus-members ol li:not(:last-of-type)::after {
        display: none
    }
}

@media (min-width:60rem) {
    .ammo-plus-members ol {
    }

        .ammo-plus-members ol li {
            position: relative
        }

            .ammo-plus-members ol li:not(:last-of-type)::after {
                display: block;
                position: absolute;
                top: calc(50% - .5em);
                right: -.5em;
                rotate: 0deg
            }
}


/*--- members ---*/
.ammo-plus-members ul {
    padding: 2rem clamp(.5rem, 2vw, 2rem) 0;
    border: 2px solid #e5e5e5
}

    .ammo-plus-members ul li {
        display: flex;
        flex-direction: column;
        gap: .25em;
        font-size: 1.9rem;
        text-align: center;
        font-weight: 600;
        color: #757575
    }

        .ammo-plus-members ul li:not(:last-child) {
            border-bottom: 2px solid #e5e5e5;
            margin-bottom: 2rem
        }

    .ammo-plus-members ul img {
        margin: 0 auto
    }

    .ammo-plus-members ul li > div:nth-of-type(1) {
        height: 1em;
        font-size: 1.6em;
        position: relative;
        margin: 0 0 1rem;
        overflow: hidden
    }

        .ammo-plus-members ul li > div:nth-of-type(1)::before {
            display: block;
            height: 200%;
            content: ""
        }

        .ammo-plus-members ul li > div:nth-of-type(1)::after {
            display: block;
            color: #ce202e;
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            margin: auto;
            content: "\2605\2605\2605\2605\2605"
        }

    .ammo-plus-members ul li > div:nth-of-type(2) {
        margin: 0 0 1rem
    }

    .ammo-plus-members ul li > div:nth-of-type(3), .ammo-plus-members ul li > div:nth-of-type(4) {
        text-transform: uppercase;
        font-weight: bold
    }

    .ammo-plus-members ul li > div:nth-of-type(4), .ammo-plus-members ul i {
        font-style: normal;
        color: #ce202e
    }

    .ammo-plus-members ul li > div:nth-of-type(4) {
        font-weight: 800;
        margin: 0 0 1rem
    }

    .ammo-plus-members ul p {
        font-size: .8em
    }

@media (min-width:44rem) {
    .ammo-plus-members ul {
        display: flex;
        padding: 2rem 0 1rem
    }

        .ammo-plus-members ul li {
            flex: 33.33333333%;
            padding: 0 clamp(.5rem, 1vw, 2rem);
            margin: 0 !important
        }

            .ammo-plus-members ul li:not(:last-child) {
                border: 0;
                border-right: 2px solid #e5e5e5
            }
}




/*--- benefits 3 ----------------------------------------------*/
.ammo-plus-benefits-3 {
}

    /*--- top group ---------------*/
    .ammo-plus-benefits-3 > div {
        padding: 2rem clamp(1rem, 28.8vw + -17rem, 10rem) 1rem;
        box-shadow: 0 0 1.5rem rgba(0,0,0,.4);
        margin: 0 0 1rem
    }

    .ammo-plus-benefits-3 h2 {
        font-family: 'Agency Gothic CT';
        font-size: clamp(4rem, 7vw, 5rem);
        margin-bottom: .1em
    }

    .ammo-plus-benefits-3 > div > p {
        font-size: clamp(1.2rem, 2vw, 1.5rem);
        font-weight: bold;
        text-align: center
    }

        .ammo-plus-benefits-3 > div > p i {
            font-style: normal;
            color: #ce202e
        }

    /*--- list ---*/
    .ammo-plus-benefits-3 ul {
        display: flex;
        flex-direction: column;
        border-bottom: .2rem solid #e5e5e5;
        font-size: clamp(1.4rem, 2vw, 1.6rem);
        font-weight: bold;
        color: #757575;
        text-align: center;
        margin: 0 0 2rem
    }

    .ammo-plus-benefits-3 li:not(:last-child) {
        border-bottom: .2rem solid #ce202e
    }

    .ammo-plus-benefits-3 ul h3 {
        font-family: 'Agency Gothic CT';
        font-size: 2em
    }

    .ammo-plus-benefits-3 ul b {
        text-transform: uppercase;
        color: #ce202e
    }

@media (min-width:55rem) {
    .ammo-plus-benefits-3 ul {
        flex-direction: row
    }

    .ammo-plus-benefits-3 li {
        flex: 1;
        padding: 0 clamp(1rem, 4vw + -2.2rem, 2rem)
    }

    .ammo-plus-benefits-3 li {
        position: relative
    }

        .ammo-plus-benefits-3 li:not(:last-child) {
            border: 0
        }

            .ammo-plus-benefits-3 li:not(:last-child):after {
                display: block;
                border-right: .2rem solid #ce202e;
                position: absolute;
                top: 3em;
                bottom: 1em;
                right: -.1em;
                content: ""
            }
}


/*--- rotator ---*/
.ammo-plus-benefits-3 > div > h3 {
    font-size: clamp(2rem, 3vw, 3rem);
    font-weight: 600;
    text-align: center;
    color: #757575;
    text-transform: uppercase;
    margin: 0 0 1rem
}

.ammo-plus-benefits-3 .ammo-plus-winners {
    margin: 0 0 2rem
}

    /*--- slides ---*/
    .ammo-plus-benefits-3 .ammo-plus-winners .slick-slide > div > div {
        display: grid !important;
        gap: .5em clamp(1rem, 5vw, 4rem);
        padding: 0 2rem;
        font-size: clamp(1.2rem, 3vw, 1.6rem);
        color: #757575;
        font-weight: 600
    }

        .ammo-plus-benefits-3 .ammo-plus-winners .slick-slide > div > div img {
            grid-row: 1/4;
            align-self: center;
            display: block;
            width: 22rem;
            margin: 0 auto
        }

        .ammo-plus-benefits-3 .ammo-plus-winners .slick-slide > div > div div:first-of-type {
            align-self: end;
            font-size: 1.4em;
            text-transform: uppercase
        }

        .ammo-plus-benefits-3 .ammo-plus-winners .slick-slide > div > div div:last-of-type {
            font-size: 1.1em
        }

        .ammo-plus-benefits-3 .ammo-plus-winners .slick-slide > div > div div i {
            font-style: normal;
            color: #ce202e
        }

        .ammo-plus-benefits-3 .ammo-plus-winners .slick-slide > div > div p {
            align-self: center
        }

    /*--- nav ---*/
    .ammo-plus-benefits-3 .ammo-plus-winners .slick-arrow {
        width: 4em;
        background-color: transparent;
        background: url('double-chevron.svg') no-repeat center / 50% auto;
        border-radius: 0;
        filter: invert(18%) sepia(97%) saturate(2551%) hue-rotate(341deg) brightness(91%) contrast(97%);
        margin-top: -2em
    }

        .ammo-plus-benefits-3 .ammo-plus-winners .slick-arrow::after {
            display: none
        }

    .ammo-plus-benefits-3 .ammo-plus-winners .slick-prev {
        rotate: 180deg
    }

@media (min-width:45rem) {
    .ammo-plus-benefits-3 .ammo-plus-winners .slick-slide > div > div {
        grid-template-columns: max-content 1fr;
        grid-template-rows: 1fr auto 3fr
    }
}

@media (min-width:68rem) {
    .ammo-plus-benefits-3 .ammo-plus-winners .slick-slide > div > div {
        padding: 0
    }

    .ammo-plus-benefits-3 .ammo-plus-winners .slick-prev {
        left: -6em
    }

    .ammo-plus-benefits-3 .ammo-plus-winners .slick-next {
        right: -6em
    }
}

/*--- banner image ---*/
.ammo-plus-benefits-3 > div > img {
    display: block;
    width: 84rem;
    border: 1px solid #ddd;
    margin: 0 auto 1rem
}

/*--- note ---*/
.ammo-plus-benefits-3 > small {
    display: block;
    max-width: 78rem;
    font-size: 1rem;
    line-height: 1.4;
    font-style: italic;
    color: #ce202e;
    font-weight: 600;
    text-align: center;
    margin: 0 auto 1rem
}

    .ammo-plus-benefits-3 > small b:last-of-type {
        font-style: normal;
        text-transform: uppercase
    }




/*--- faq ----------------------------------------------*/
.ammo-plus-faq {
}

    .ammo-plus-faq h2 {
        margin-bottom: 1em
    }


    /*--- questions ---*/
    .ammo-plus-faq dl {
        padding: 0 0 1.5rem;
        border-bottom: 1px solid #d9d9d9;
        margin: 0 0 2rem
    }

    .ammo-plus-faq dt {
    }

        .ammo-plus-faq dt button {
            width: 100%;
            padding: .5em 1em .5em 0;
            background-color: transparent;
            font-size: clamp(1.3rem, 2.5vw, 2rem);
            color: #757575;
            text-transform: none;
            font-weight: 600;
            text-align: left;
            position: relative;
            margin: 0
        }

            .ammo-plus-faq dt button i {
                font-style: normal;
                font-weight: 600;
                color: #ce202e
            }

            .ammo-plus-faq dt button::after {
                display: block;
                font-size: 1.2em;
                color: #ce202e;
                position: absolute;
                top: calc(50% - .5em);
                right: 0;
                transition: rotate .2s;
                content: "+"
            }

            .ammo-plus-faq dt button:hover, .ammo-plus-faq dt button:focus {
                color: #ce202e
            }

                .ammo-plus-faq dt button:hover::after, .ammo-plus-faq dt button:focus::after {
                    border-left-color: #ce202e
                }

        /*--- open state ---*/
        .ammo-plus-faq dt:has(+ dd.open) button::after {
        }

    /*--- answers ---*/
    .ammo-plus-faq dd {
        visibility: hidden;
        height: 0;
        overflow: hidden;
        font-size: 1.2rem;
        margin: 0 0 clamp(.5rem, 2vw, 1rem);
        transition: visibility .2s, height .2s
    }

        /*--- open state ---*/
        .ammo-plus-faq dd.open {
            visibility: visible;
            height: auto;
            transition-delay: 0s, 0s
        }

    /*--- note ---*/
    .ammo-plus-faq > p {
        max-width: 100rem;
        font-size: clamp(1.2rem, 2vw, 1.4rem);
        text-align: center;
        margin-left: auto;
        margin-right: auto
    }




/*--- join ----------------------------------------------*/
.ammo-plus-join {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: clamp(1rem, 5vw, 4rem) clamp(.5rem, 5vw, 4rem) 2rem;
    border: 3px solid #ce202e;
    box-shadow: 0 0 .5em rgba(0,0,0,.3), inset 0 0 .5em rgba(0,0,0,.3);
    text-align: center
}

    .ammo-plus-join h2 {
        color: #000;
        text-transform: none;
        font-weight: bold
    }

    .ammo-plus-join p {
        font-size: clamp(1.3rem, 2vw, 1.5rem)
    }

    /*--- join ---*/
    .ammo-plus-join .button-style-link {
    }
