/* ==========================================
   PURE AMINOS AGE VERIFICATION
========================================== */

/* Overlay */
#avp-overlay{
    background:rgba(16,35,63,.45)!important;
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
}

/* Popup */
#avp-popup{
    width:560px!important;
    max-width:92%!important;
    padding:0px 0px 0px!important;
    border-radius:24px!important;
    background:#fff!important;
    border:none!important;
    box-shadow:
        0 30px 80px rgba(16,35,63,.18),
        0 0 70px rgba(70,146,246,.12)!important;
}

/* =========================
   LOGO
========================= */

.avp-logo-wrapper{
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    width:100% !important;
    margin:0 auto 15px !important;
}

.avp-logo-wrapper img{
    display:block !important;

    /* Increase this number until you're happy */
    height:180px !important;

    width:auto !important;
    max-width:none !important;
    max-height:none !important;

    margin:0 auto !important;

    /* Fine tune horizontal alignment */
    transform:translateX(-8px);
}
/* ---------- TITLE ---------- */

.avp-title{
    font-size:35px!important;
    font-weight:700!important;
    color:#10233F!important;
    line-height:1.05!important;
    text-align:center!important;
    margin-bottom:22px!important;
}

/* ---------- SUBTITLE ---------- */

.avp-subtitle{
    max-width:430px!important;
    margin:0 auto 35px!important;
    text-align:center!important;
    font-size:17px!important;
    line-height:1.8!important;
    color:#667085!important;
}

/* ---------- BUTTONS ---------- */

.avp-btn-group{
    display:flex!important;
    justify-content:center!important;
    gap:18px!important;
}

.avp-btn{
    width:185px!important;
    height:58px!important;
    border-radius:14px!important;
    font-size:17px!important;
    font-weight:600!important;
    transition:.25s ease!important;
}

/* Enter */

.avp-btn-primary{
    background:#4692F6!important;
    border:2px solid #4692F6!important;
    color:#fff!important;
    box-shadow:0 12px 25px rgba(70,146,246,.30)!important;
}

.avp-btn-primary:hover{
    background:#2F80ED!important;
    transform:translateY(-2px);
    box-shadow:0 15px 35px rgba(70,146,246,.45)!important;
}

/* Exit */

.avp-btn-outline{
    background:#fff!important;
    border:2px solid #10233F!important;
    color:#10233F!important;
}

.avp-btn-outline:hover{
    background:#F7FAFF!important;
    border-color:#4692F6!important;
    color:#4692F6!important;
    transform:translateY(-2px);
}

/* Remove green browser outline */

.avp-btn:focus,
.avp-btn:active,
.avp-btn:focus-visible{
    outline:none!important;
    box-shadow:none!important;
}

/* Checkbox */

.avp-remember-wrapper{
    margin-top:22px!important;
    text-align:center!important;
}

.avp-remember-wrapper input{
    accent-color:#4692F6!important;
}

/* Warning */

.avp-warning{
    margin-top:20px!important;
    color:#8B95A5!important;
    font-size:13px!important;
    text-align:center!important;
}
/* Advanced Age Verification Mobile */
@media (max-width: 768px){

.avp-popup{
    width:90vw !important;
    max-width:420px !important;
}

.avp-popup-inner{
    padding:24px 20px !important;
}

.avp-title{
    font-size:32px !important;
    line-height:1.15 !important;
    margin-bottom:18px !important;
}

.avp-subtitle{
    font-size:16px !important;
    line-height:1.6 !important;
    max-width:100% !important;
}

.avp-btn-group button{
    width:100% !important;
    min-height:52px !important;
    font-size:16px !important;
}
}
/* Fix logo being cut off on mobile */
@media (max-width: 768px) {

.avp-logo-wrapper{
    padding-top: 10px !important;
    margin-bottom: 20px !important;
    overflow: visible !important;
}

.avp-logo-wrapper img{
    max-width: 180px !important;
    height: auto !important;
    max-height: 80px !important;
    object-fit: contain !important;
    display: block;
    margin: 0 auto;
}

}
.pa-faq-category {
    margin: 40px 0 18px;
    padding-bottom: 10px;
    border-bottom: 2px solid rgba(18,63,206,.08);
    font-size: 1.35rem;
    font-weight: 700;
    color: #123FCE;
}
/* ONLY the "View all products" button */
.pa-section-head a.pa-button--secondary[href*="/shop"]{
    background:#123FCE !important;
    color:#fff !important;
    border:2px solid #123FCE !important;
}

.pa-section-head a.pa-button--secondary[href*="/shop"]:hover{
    background:#0E33A8 !important;
    border-color:#0E33A8 !important;
    color:#fff !important;
}
.pure-alt-payment-notice {
    background: #f5faff;
    border: 1px solid #6EB8FF;
    border-left: 4px solid #3b82f6;
    border-radius: 8px;
    padding: 16px 18px;
    margin: 0 0 20px;
    font-size: 14px;
    line-height: 1.6;
}

.pure-alt-payment-notice h4 {
    margin: 0 0 8px;
    font-size: 16px;
    color: #1e3a5f;
}

.pure-alt-payment-notice p {
    margin: 0;
}

.pure-alt-payment-notice a {
    color: #2563eb;
    text-decoration: none;
    font-weight: 600;
}

.pure-alt-payment-notice a:hover {
    text-decoration: underline;
}
/* ==========================================
   Certificates of Analysis
========================================== */
.coa-title {
    font-size: 72px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: -3px;
    color: #13294B;
    text-align: center;
}
.coa-intro{
    max-width:760px;
    margin:0 auto 80px;
    text-align:center;
    font-size:1.05rem;
    line-height:1.9;
    color:#6C7B8A;
}

.coa-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:36px;
    max-width:1200px;
    margin:0 auto;
}

.coa-card{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;

    min-height:290px;

    padding:36px 32px;

    background:#fff;

    border:1px solid #edf2f8;
    border-radius:24px;

    box-shadow:
        0 12px 30px rgba(16,35,63,.05),
        0 2px 8px rgba(16,35,63,.03);

    transition:.3s ease;
}

.coa-card:hover{
    transform:translateY(-8px);
    box-shadow:
        0 28px 60px rgba(16,35,63,.12);
}
}

.coa-card:hover{
    transform:translateY(-6px);
    border-color:#D8E7FA;
    box-shadow:
        0 18px 45px rgba(16,35,63,.08),
        0 6px 16px rgba(16,35,63,.04);
}

.coa-icon{
    width:56px;
    height:56px;
    margin-bottom:18px;
    border-radius:50%;
    background:#EEF5FF;
    color:#2563EB;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:.75rem;
    font-weight:700;
    letter-spacing:1px;
}

.coa-card h3{
    margin:0 0 14px;
    font-size:1.8rem;
    font-weight:700;
    color:#10233F;
}

.coa-card p{
    margin:0 0 30px;
    color:#6C7B8A;
    line-height:1.6;
    font-size:.95rem;
    max-width:240px;
}

.coa-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:175px;
    height:50px;
    padding:0 26px;
    background:#2563EB;
    color:#fff;
    text-decoration:none;
    border-radius:999px;
    font-weight:600;
    font-size:.95rem;
    transition:.2s ease;
}

.coa-btn:hover{
    background:#1D4ED8;
    color:#fff;
    transform:translateY(-2px);
}

.coa-btn:visited{
    color:#fff;
}

@media (max-width:1100px){

    .coa-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

}

@media (max-width:768px){

    .coa-container{
        padding:10px 16px 60px;
    }

    .coa-title{
        font-size:2.4rem;
    }

    .coa-intro{
        font-size:1rem;
        margin-bottom:50px;
    }

    .coa-grid{
        grid-template-columns:1fr;
        gap:24px;
    }

    .coa-card{
        min-height:240px;
        padding:35px 24px;
    }

    .coa-card h3{
        font-size:1.6rem;
    }

}
#primary .coa-title{
    width:100% !important;
    text-align:center !important;
    font-size:64px !important;
    margin:0 auto 30px !important;
}

#primary .coa-intro{
    text-align:center !important;
    max-width:760px;
    margin:0 auto 70px;
}
.coa-header{
    width:100%;
    max-width:900px;
    margin:0 auto 70px;
    text-align:center;
}

.coa-header .coa-title{
    display:block;
    width:100%;
    margin:0 0 24px;
    font-size:64px !important;
    font-weight:800;
    line-height:1.05;
    text-align:center !important;
    color:#10233F;
}

.coa-header .coa-intro{
    margin:0 auto;
    max-width:760px;
    font-size:18px;
    line-height:1.9;
    color:#6C7B8A;
    text-align:center;
}
.coa-btn{
    border-radius:999px;
    min-width:210px;
    height:56px;
    font-size:1rem;
}
