
:root{
    --kpac-navy:#061a36;
    --kpac-navy-2:#0a315f;
    --kpac-blue:#0f53b9;
    --kpac-gold:#c99f4f;
    --kpac-gold-light:#ead6aa;
    --kpac-soft:#f6f7fa;
    --kpac-ink:#17253a;
    --kpac-muted:#6f7b8d;
    --kpac-border:#e2e6ec;
    --kpac-shadow:0 20px 60px rgba(6,26,54,.1);
}
body.kpac-site-active{
    background:#fff;
    color:var(--kpac-ink);
}
.kpac-home{
    width:100%;
    overflow:hidden;
    font-family:"DM Sans",Arial,sans-serif;
}
.kpac-home *{
    box-sizing:border-box;
}
.kpac-wrap{
    width:min(1220px,calc(100% - 48px));
    margin:0 auto;
}
.kpac-utility{
    background:var(--kpac-navy);
    color:#fff;
    border-bottom:1px solid rgba(201,159,79,.4);
}
.kpac-utility .kpac-wrap{
    min-height:36px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    font-size:10px;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.kpac-utility b{
    color:var(--kpac-gold);
}
.kpac-brand-header{
    background:#fff;
    border-bottom:1px solid var(--kpac-border);
}
.kpac-brand-grid{
    min-height:95px;
    display:grid;
    grid-template-columns:260px 1fr 170px;
    align-items:center;
    gap:30px;
}
.kpac-brand{
    display:flex;
    align-items:center;
    gap:13px;
}
.kpac-crown{
    color:var(--kpac-gold);
    font-size:42px;
}
.kpac-brand>div{
    display:flex;
    flex-direction:column;
}
.kpac-brand strong{
    color:var(--kpac-navy);
    font:800 19px "Manrope";
    letter-spacing:.18em;
}
.kpac-brand small{
    color:var(--kpac-gold);
    font-size:8px;
    letter-spacing:.2em;
}
.kpac-header-links{
    display:flex;
    justify-content:flex-end;
    gap:20px;
}
.kpac-header-links a{
    color:var(--kpac-navy);
    text-decoration:none;
    font-size:12px;
    font-weight:800;
}
.kpac-search{
    position:relative;
    display:flex;
    align-items:center;
    overflow:hidden;
    border:1px solid #aeb9c7;
    border-radius:30px;
    background:#fff;
    box-shadow:0 8px 25px rgba(6,26,54,.06);
}
.kpac-search>span{
    position:absolute;
    left:16px;
    color:var(--kpac-muted);
    font-size:21px;
}
.kpac-search input{
    width:100%;
    min-height:52px;
    padding:0 14px 0 45px;
    border:0;
    outline:0;
    background:transparent;
}
.kpac-search button{
    min-height:52px;
    padding:0 22px;
    border:0;
    background:linear-gradient(135deg,var(--kpac-blue),var(--kpac-navy-2));
    color:#fff;
    font-weight:800;
}
.kpac-nav{
    background:var(--kpac-navy);
}
.kpac-menu{
    min-height:52px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:34px;
    margin:0;
    padding:0;
    list-style:none;
}
.kpac-menu a{
    color:#fff;
    text-decoration:none;
    font-size:10px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.kpac-menu a:hover{
    color:var(--kpac-gold-light);
}
.kpac-hero{
    position:relative;
    background:
        radial-gradient(circle at 78% 35%,rgba(49,124,195,.26),transparent 30%),
        linear-gradient(135deg,#04142d,#0b2f5d 62%,#0d4778);
    color:#fff;
}
.kpac-hero::after{
    content:"";
    position:absolute;
    inset:0;
    opacity:.12;
    background-image:
        linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);
    background-size:52px 52px;
}
.kpac-hero-grid{
    position:relative;
    z-index:2;
    min-height:650px;
    display:grid;
    grid-template-columns:1.02fr .98fr;
    align-items:center;
    gap:65px;
    padding:80px 0;
}
.kpac-kicker{
    color:var(--kpac-gold);
    font-size:11px;
    font-weight:800;
    letter-spacing:.18em;
}
.kpac-hero-copy h1,
.kpac-heading h2,
.kpac-quality h2,
.kpac-faq h2,
.kpac-footer-cta h2{
    font-family:"Manrope";
    letter-spacing:-.04em;
}
.kpac-hero-copy h1{
    margin:12px 0 4px;
    color:#fff;
    font-size:clamp(54px,6vw,82px);
    line-height:.98;
}
.kpac-hero-copy h2{
    margin:0 0 22px;
    color:var(--kpac-gold-light);
    font:600 clamp(24px,3vw,36px) "Manrope";
}
.kpac-hero-copy p{
    max-width:650px;
    color:#d2dce8;
    font-size:18px;
}
.kpac-hero-actions{
    display:flex;
    gap:12px;
    margin-top:30px;
}
.kpac-btn{
    min-height:52px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 25px;
    border-radius:5px;
    text-decoration:none;
    font-size:11px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.kpac-btn.primary{
    background:linear-gradient(135deg,#d7ad57,#b8822d);
    color:#fff;
}
.kpac-btn.secondary{
    border:1px solid rgba(255,255,255,.7);
    color:#fff;
}
.kpac-hero-facts{
    display:flex;
    gap:34px;
    margin-top:38px;
}
.kpac-hero-facts div{
    display:flex;
    flex-direction:column;
}
.kpac-hero-facts strong{
    color:#fff;
    font:800 24px "Manrope";
}
.kpac-hero-facts span{
    color:#aebdd0;
    font-size:10px;
    text-transform:uppercase;
}
.kpac-vials{
    min-height:430px;
    display:flex;
    align-items:flex-end;
    justify-content:center;
    gap:18px;
}
.kpac-vial{
    width:118px;
    filter:drop-shadow(0 24px 24px rgba(0,0,0,.28));
}
.kpac-vial.main{
    transform:translateY(-20px);
}
.kpac-cap{
    width:96px;
    height:34px;
    margin:0 auto;
    border-radius:11px 11px 4px 4px;
    background:linear-gradient(#081c36,#1d385a);
    border-bottom:2px solid var(--kpac-gold);
}
.kpac-glass{
    width:118px;
    height:250px;
    border:2px solid rgba(255,255,255,.65);
    border-radius:15px 15px 24px 24px;
    background:linear-gradient(90deg,rgba(255,255,255,.92),rgba(209,225,239,.7),rgba(255,255,255,.96));
    display:flex;
    align-items:center;
    justify-content:center;
}
.kpac-label{
    width:98px;
    min-height:190px;
    padding:12px 7px;
    background:#fff;
    border-bottom:7px solid var(--kpac-navy);
    text-align:center;
    color:var(--kpac-navy);
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
}
.kpac-label>span{
    color:var(--kpac-gold);
    font-size:20px;
}
.kpac-label b{
    font-size:16px;
    letter-spacing:.16em;
}
.kpac-label strong{
    margin-top:9px;
    font:800 18px "Manrope";
}
.kpac-label em{
    color:var(--kpac-gold);
    font-style:normal;
    font-weight:800;
}
.kpac-label small{
    margin-top:5px;
    font-size:6px;
    letter-spacing:.07em;
}
.kpac-trust{
    background:#fff;
    border-bottom:1px solid var(--kpac-border);
}
.kpac-trust-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
}
.kpac-trust article{
    min-height:110px;
    padding:20px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    border-right:1px solid var(--kpac-border);
}
.kpac-trust article:last-child{
    border-right:0;
}
.kpac-trust article>span{
    font-size:27px;
}
.kpac-trust strong{
    margin-top:7px;
    color:var(--kpac-navy);
    font-size:12px;
    text-transform:uppercase;
}
.kpac-trust small{
    margin-top:4px;
    color:var(--kpac-muted);
    font-size:10px;
}
.kpac-section{
    padding:95px 0;
}
.kpac-categories{
    background:var(--kpac-soft);
}
.kpac-heading{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:28px;
    margin-bottom:42px;
}
.kpac-heading h2{
    margin:8px 0 4px;
    color:var(--kpac-navy);
    font-size:clamp(36px,4.7vw,56px);
}
.kpac-heading p{
    margin:0;
    color:var(--kpac-muted);
}
.kpac-heading>a{
    color:var(--kpac-gold);
    text-decoration:none;
    font-weight:800;
}
.kpac-category-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px;
}
.kpac-category-card{
    position:relative;
    min-height:185px;
    padding:24px;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    background:#fff;
    border:1px solid #e4ded2;
    border-top:4px solid var(--kpac-gold);
    border-radius:10px;
    text-decoration:none;
    box-shadow:0 10px 30px rgba(6,26,54,.05);
}
.kpac-category-card>span{
    position:absolute;
    top:22px;
    left:24px;
    color:var(--kpac-gold);
    font-weight:800;
}
.kpac-category-card h3{
    margin:0;
    color:var(--kpac-navy);
    font:800 22px "Manrope";
}
.kpac-category-card p{
    margin:5px 0 0;
    color:var(--kpac-muted);
}
.kpac-category-card i{
    position:absolute;
    right:22px;
    bottom:22px;
    color:var(--kpac-gold);
    font-style:normal;
}
.kpac-product-grid ul.products{
    display:grid!important;
    grid-template-columns:repeat(4,1fr)!important;
    gap:22px!important;
}
.kpac-product-grid ul.products li.product,
body.kpac-site-active .woocommerce ul.products li.product{
    width:100%!important;
    margin:0!important;
    padding-bottom:22px!important;
    border:1px solid var(--kpac-border);
    border-top:3px solid var(--kpac-gold);
    border-radius:10px;
    overflow:hidden;
    background:#fff;
    box-shadow:0 10px 30px rgba(6,26,54,.05);
}
body.kpac-site-active .woocommerce ul.products li.product img{
    margin:0!important;
    width:100%;
    aspect-ratio:1/1;
    object-fit:cover;
    background:linear-gradient(#fafcfe,#edf3f8);
}
body.kpac-site-active .woocommerce-loop-product__title{
    padding:18px 17px 4px!important;
    color:var(--kpac-navy)!important;
    font:700 16px "Manrope"!important;
}
.kpac-strength,
.kpac-purity{
    padding:0 17px;
    color:var(--kpac-gold);
    font-size:10px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.07em;
}
body.kpac-site-active .woocommerce ul.products li.product .price{
    padding:0 17px;
    color:var(--kpac-blue)!important;
    font-weight:800!important;
}
body.kpac-site-active .woocommerce ul.products li.product .button{
    margin:13px 17px 0!important;
    background:var(--kpac-navy)!important;
    color:#fff!important;
    border-radius:5px!important;
}
.kpac-quality{
    background:linear-gradient(135deg,#05172f,#0a315f);
    color:#fff;
}
.kpac-quality-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:75px;
    align-items:center;
}
.kpac-quality h2{
    margin:10px 0 18px;
    color:#fff;
    font-size:clamp(40px,5vw,60px);
    line-height:1.06;
}
.kpac-quality-copy p{
    color:#c6d2df;
    font-size:17px;
}
.kpac-quality-copy ul{
    padding:0;
    list-style:none;
}
.kpac-quality-copy li{
    padding:11px 0;
    border-bottom:1px solid rgba(255,255,255,.12);
}
.kpac-quality-copy li::before{
    content:"✓";
    color:var(--kpac-gold);
    margin-right:10px;
}
.kpac-document{
    background:#fff;
    color:var(--kpac-navy);
    padding:30px;
    border:1px solid var(--kpac-gold);
    box-shadow:0 30px 80px rgba(0,0,0,.25);
}
.kpac-document-header{
    display:flex;
    align-items:center;
    gap:13px;
    padding-bottom:17px;
    border-bottom:2px solid var(--kpac-gold);
}
.kpac-document-header>span{
    color:var(--kpac-gold);
    font-size:36px;
}
.kpac-document-header strong{
    display:block;
}
.kpac-document-header small{
    color:var(--kpac-muted);
}
.kpac-document-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    margin-top:17px;
}
.kpac-document-grid span,
.kpac-document-grid strong{
    padding:12px 0;
    border-bottom:1px solid #e7e2d8;
}
.kpac-document-grid span{
    color:var(--kpac-muted);
}
.kpac-faq{
    background:#fff;
}
.kpac-faq-grid{
    display:grid;
    grid-template-columns:.8fr 1.2fr;
    gap:80px;
}
.kpac-faq h2{
    color:var(--kpac-navy);
    font-size:clamp(38px,4.7vw,56px);
}
.kpac-faq p{
    color:var(--kpac-muted);
}
.kpac-accordion details{
    padding:20px 0;
    border-top:1px solid var(--kpac-border);
}
.kpac-accordion details:last-child{
    border-bottom:1px solid var(--kpac-border);
}
.kpac-accordion summary{
    cursor:pointer;
    color:var(--kpac-navy);
    font-weight:800;
}
.kpac-accordion summary::after{
    content:"+";
    float:right;
    color:var(--kpac-gold);
}
.kpac-accordion details[open] summary::after{
    content:"–";
}
.kpac-footer-cta{
    background:linear-gradient(135deg,#05172f,#0a315f);
    color:#fff;
    border-top:2px solid var(--kpac-gold);
}
.kpac-footer-cta .kpac-wrap{
    min-height:200px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
}
.kpac-footer-cta h2{
    margin:8px 0 0;
    color:#fff;
    font-size:38px;
}
.kpac-footer-cta p{
    margin:4px 0 0;
    color:var(--kpac-gold-light);
}
body.kpac-site-active.single-product .woocommerce div.product{
    border-top:4px solid var(--kpac-gold);
    border-radius:10px;
    box-shadow:var(--kpac-shadow);
}
.kpac-single-data{
    display:grid;
    grid-template-columns:1fr 1fr;
    margin:18px 0;
    border:1px solid rgba(201,159,79,.45);
    border-radius:8px;
    overflow:hidden;
}
.kpac-single-data>div{
    min-height:72px;
    padding:14px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    border-right:1px solid #eee7db;
    border-bottom:1px solid #eee7db;
}
.kpac-single-data span{
    color:var(--kpac-muted);
    font-size:10px;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.kpac-single-data strong,
.kpac-single-data a{
    margin-top:4px;
    color:var(--kpac-navy);
    font-weight:800;
    text-decoration:none;
}
.kpac-research-notice{
    margin-top:18px;
    padding:15px;
    background:linear-gradient(90deg,#fffaf0,#f4f8ff);
    border-left:4px solid var(--kpac-gold);
    font-size:12px;
}
.kpac-reveal{
    opacity:0;
    transform:translateY(20px);
    transition:.65s;
}
.kpac-reveal.visible{
    opacity:1;
    transform:none;
}
@media(max-width:1050px){
    .kpac-brand-grid{
        grid-template-columns:220px 1fr auto;
    }
    .kpac-hero-grid,
    .kpac-quality-grid,
    .kpac-faq-grid{
        grid-template-columns:1fr;
    }
    .kpac-category-grid{
        grid-template-columns:repeat(2,1fr);
    }
    .kpac-product-grid ul.products{
        grid-template-columns:repeat(2,1fr)!important;
    }
    .kpac-vials{
        min-height:380px;
    }
}
@media(max-width:760px){
    .kpac-wrap{
        width:min(100% - 28px,1220px);
    }
    .kpac-utility .kpac-wrap{
        font-size:8px;
    }
    .kpac-utility span:last-child,
    .kpac-utility b:last-of-type{
        display:none;
    }
    .kpac-brand-grid{
        min-height:72px;
        grid-template-columns:1fr auto;
    }
    .kpac-header-search{
        grid-column:1/-1;
        padding-bottom:10px;
    }
    .kpac-header-links{
        grid-row:1;
        grid-column:2;
    }
    .kpac-menu{
        overflow-x:auto;
        justify-content:flex-start;
        gap:22px;
        padding:0 14px;
        white-space:nowrap;
    }
    .kpac-hero-grid{
        min-height:auto;
        padding:58px 0 42px;
    }
    .kpac-hero-copy h1{
        font-size:46px;
    }
    .kpac-hero-copy h2{
        font-size:26px;
    }
    .kpac-hero-actions{
        flex-direction:column;
    }
    .kpac-hero-facts{
        flex-wrap:wrap;
        gap:20px 28px;
    }
    .kpac-vials{
        min-height:290px;
        gap:9px;
    }
    .kpac-vial{
        width:84px;
    }
    .kpac-cap{
        width:70px;
        height:25px;
    }
    .kpac-glass{
        width:84px;
        height:190px;
    }
    .kpac-label{
        width:70px;
        min-height:148px;
        padding:8px 4px;
    }
    .kpac-label b{
        font-size:11px;
    }
    .kpac-label strong{
        font-size:13px;
    }
    .kpac-label small{
        font-size:5px;
    }
    .kpac-trust-grid,
    .kpac-category-grid{
        grid-template-columns:1fr;
    }
    .kpac-section{
        padding:70px 0;
    }
    .kpac-heading{
        flex-direction:column;
        align-items:flex-start;
    }
    .kpac-product-grid ul.products{
        grid-template-columns:1fr!important;
    }
    .kpac-footer-cta .kpac-wrap{
        padding:35px 0;
        flex-direction:column;
        align-items:flex-start;
    }
    .kpac-single-data{
        grid-template-columns:1fr;
    }
}


/* V2 premium polish */
.home.kpac-site-active .site-header,
.home.kpac-site-active .site-footer,
.home.kpac-site-active .entry-header{display:none!important}
.home.kpac-site-active .ast-container,
.home.kpac-site-active .site-content,
.home.kpac-site-active #content,
.home.kpac-site-active #primary,
.home.kpac-site-active .content-area{max-width:none!important;width:100%!important;margin:0!important;padding:0!important}
.home.kpac-site-active .entry-content{margin:0!important}

.kpac-brand-header{position:sticky;top:0;z-index:100;box-shadow:0 10px 35px rgba(6,26,54,.08)}
.admin-bar .kpac-brand-header{top:32px}
.kpac-brand-grid{min-height:108px}
.kpac-crown{font-size:48px;filter:drop-shadow(0 8px 18px rgba(201,159,79,.2))}
.kpac-brand strong{font-size:22px}
.kpac-header-search .kpac-search,
.kpac-header-search .kpac-search input,
.kpac-header-search .kpac-search button{min-height:56px}
.kpac-nav .kpac-menu{min-height:56px}

.kpac-hero{min-height:720px}
.kpac-hero-grid{min-height:720px;grid-template-columns:.95fr 1.05fr;gap:80px;padding:90px 0}
.kpac-hero-copy h1{font-size:clamp(58px,6.3vw,88px)}
.kpac-hero-copy h2{font-size:clamp(27px,3.2vw,40px)}
.kpac-hero-copy p{font-size:19px;line-height:1.75}
.kpac-btn{min-height:56px;padding:0 29px}
.kpac-vials{min-height:500px;gap:22px}
.kpac-vial{width:138px}
.kpac-vial.main{transform:translateY(-28px) scale(1.04)}
.kpac-cap{width:112px;height:40px}
.kpac-glass{width:138px;height:292px}
.kpac-label{width:116px;min-height:224px}
.kpac-label b{font-size:19px}
.kpac-label strong{font-size:21px}

.kpac-section{padding:110px 0}
.kpac-heading h2{font-size:clamp(40px,5vw,60px)}
.kpac-category-card{min-height:210px;padding:28px;transition:.25s}
.kpac-category-card:hover{transform:translateY(-6px);box-shadow:0 22px 55px rgba(6,26,54,.11)}
.kpac-category-card h3{font-size:25px}

.kpac-product-grid ul.products{gap:26px!important}
.kpac-product-grid ul.products li.product,
body.kpac-site-active .woocommerce ul.products li.product{border-radius:14px;box-shadow:0 14px 40px rgba(6,26,54,.07);transition:.25s}
.kpac-product-grid ul.products li.product:hover,
body.kpac-site-active .woocommerce ul.products li.product:hover{transform:translateY(-7px);box-shadow:0 24px 60px rgba(6,26,54,.12)}
body.kpac-site-active .woocommerce-loop-product__title{font-size:18px!important}
body.kpac-site-active .woocommerce ul.products li.product .button{width:calc(100% - 34px);min-height:46px;display:flex!important;align-items:center;justify-content:center}

.kpac-quality{position:relative}
.kpac-quality::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,transparent,var(--kpac-gold),transparent)}
.kpac-document{border-radius:12px}
.kpac-accordion summary{font-size:17px}

.kpac-premium-footer{background:#04142a;color:#fff;border-top:3px solid var(--kpac-gold);padding:80px 0 28px}
.kpac-premium-footer-grid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:60px}
.kpac-premium-footer-brand p{max-width:460px;color:#9dacbf}
.kpac-premium-footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:8px}
.kpac-premium-footer h3{margin:0 0 10px;color:var(--kpac-gold-light);font-size:11px;letter-spacing:.14em}
.kpac-premium-footer a{color:#d7e0eb;text-decoration:none;font-size:13px}
.kpac-footer-search{margin-top:22px}.kpac-footer-search .kpac-search{background:#fff}
.kpac-footer-trust{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:45px;padding:20px 0;border-top:1px solid rgba(201,159,79,.28);border-bottom:1px solid rgba(201,159,79,.28)}
.kpac-footer-trust span{text-align:center;color:#dbe4ee;font-size:12px}
.kpac-footer-notice{margin-top:28px;color:#9eacbe;font-size:12px}.kpac-footer-notice strong{color:#fff}
.kpac-footer-bottom{display:flex;justify-content:space-between;margin-top:25px;color:#7f8da0;font-size:11px}

@media(max-width:1050px){.kpac-premium-footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){
.admin-bar .kpac-brand-header{top:46px}
.kpac-brand-grid{min-height:82px}
.kpac-crown{font-size:36px}.kpac-brand strong{font-size:17px}
.kpac-hero{min-height:auto}.kpac-hero-grid{min-height:auto;padding:64px 0 48px;gap:28px}
.kpac-hero-copy h1{font-size:48px}.kpac-hero-copy h2{font-size:27px}
.kpac-vials{min-height:320px}.kpac-vial{width:90px}.kpac-cap{width:74px;height:27px}.kpac-glass{width:90px;height:205px}.kpac-label{width:75px;min-height:160px}
.kpac-label b{font-size:12px}.kpac-label strong{font-size:14px}
.kpac-section{padding:78px 0}
.kpac-premium-footer-grid,.kpac-footer-trust{grid-template-columns:1fr}
.kpac-footer-bottom{flex-direction:column;gap:7px}
}


/* =========================================================
   V3 — complete site-wide premium styling
   ========================================================= */

/* Global Astra neutralisation */
body.kpac-site-active .site-header,
body.kpac-site-active .site-footer{
    display:none!important;
}
body.kpac-site-active .ast-container,
body.kpac-site-active .site-content,
body.kpac-site-active #content,
body.kpac-site-active #primary,
body.kpac-site-active .content-area{
    max-width:none!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
}
body.kpac-site-active .ast-container{
    display:block!important;
}
body.kpac-site-active .entry-content{
    margin:0!important;
}
.kpac-global-content{
    min-height:55vh;
}
.kpac-brand-link{
    text-decoration:none;
}

/* Generic content pages */
body.kpac-site-active:not(.home) .site-main,
body.kpac-site-active:not(.home) #main,
body.kpac-site-active:not(.home) .entry-content{
    width:min(1220px,calc(100% - 48px));
    margin:0 auto!important;
}
body.kpac-site-active:not(.home) .site-main,
body.kpac-site-active:not(.home) #main{
    padding:64px 0 90px;
}
body.kpac-site-active:not(.home) article.page,
body.kpac-site-active:not(.home) article.post{
    background:#fff;
    border:1px solid var(--kpac-border);
    border-top:4px solid var(--kpac-gold);
    border-radius:12px;
    box-shadow:0 15px 45px rgba(6,26,54,.07);
    padding:40px;
}
body.kpac-site-active:not(.home) .entry-title{
    color:var(--kpac-navy);
    font:800 clamp(36px,4.5vw,56px) "Manrope";
    letter-spacing:-.04em;
}

/* Breadcrumbs */
.kpac-breadcrumb{
    width:min(1220px,calc(100% - 48px));
    margin:0 auto 24px!important;
    padding-top:24px;
    color:var(--kpac-muted);
    font-size:12px;
}
.kpac-breadcrumb a{
    color:var(--kpac-blue);
}
.kpac-breadcrumb-sep{
    margin:0 9px;
    color:var(--kpac-gold);
}

/* Shop hero */
.kpac-shop-hero{
    margin:-64px 0 45px;
    padding:70px 0;
    background:
        radial-gradient(circle at 82% 25%,rgba(49,124,195,.22),transparent 28%),
        linear-gradient(135deg,#04142d,#0b2f5d 62%,#0d4778);
    color:#fff;
    border-bottom:3px solid var(--kpac-gold);
}
.kpac-shop-hero h1{
    margin:10px 0 12px;
    color:#fff;
    font:800 clamp(44px,5vw,66px) "Manrope";
    letter-spacing:-.04em;
}
.kpac-shop-hero p{
    max-width:700px;
    color:#d4ddea;
    font-size:17px;
}
.kpac-shop-hero .kpac-search{
    max-width:720px;
    margin-top:25px;
}

/* Shop layout and controls */
body.kpac-site-active.woocommerce-shop .site-main,
body.kpac-site-active.tax-product_cat .site-main,
body.kpac-site-active.tax-product_tag .site-main{
    width:100%!important;
    max-width:none!important;
}
body.kpac-site-active.woocommerce-shop .woocommerce,
body.kpac-site-active.tax-product_cat .woocommerce,
body.kpac-site-active.tax-product_tag .woocommerce{
    width:min(1220px,calc(100% - 48px));
    margin:0 auto;
}
body.kpac-site-active .woocommerce-products-header__title{
    color:var(--kpac-navy);
    font:800 46px "Manrope";
}
body.kpac-site-active .woocommerce-result-count{
    color:var(--kpac-muted);
}
body.kpac-site-active .woocommerce-ordering select{
    min-height:46px;
    padding:0 40px 0 14px;
    border:1px solid var(--kpac-border);
    border-radius:7px;
    background:#fff;
}
body.kpac-site-active .woocommerce ul.products{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:24px!important;
    clear:both;
}
body.kpac-site-active .woocommerce ul.products::before,
body.kpac-site-active .woocommerce ul.products::after{
    display:none!important;
}
body.kpac-site-active .woocommerce ul.products li.product{
    float:none!important;
    width:100%!important;
    margin:0!important;
}
body.kpac-site-active .woocommerce nav.woocommerce-pagination{
    margin-top:40px;
}
body.kpac-site-active .woocommerce nav.woocommerce-pagination ul{
    border:0;
}
body.kpac-site-active .woocommerce nav.woocommerce-pagination ul li{
    border:0;
    margin:0 4px;
}
body.kpac-site-active .woocommerce nav.woocommerce-pagination ul li a,
body.kpac-site-active .woocommerce nav.woocommerce-pagination ul li span{
    min-width:42px;
    min-height:42px;
    display:grid;
    place-items:center;
    border-radius:6px;
    background:#fff;
    border:1px solid var(--kpac-border);
}
body.kpac-site-active .woocommerce nav.woocommerce-pagination ul li span.current{
    background:var(--kpac-navy);
    color:#fff;
    border-color:var(--kpac-gold);
}

/* Product page */
body.kpac-site-active.single-product .site-main{
    width:min(1220px,calc(100% - 48px))!important;
    margin:0 auto!important;
}
.kpac-product-topline{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
    margin-bottom:18px;
}
.kpac-product-topline span{
    min-height:46px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#f7f9fc;
    border:1px solid var(--kpac-border);
    border-radius:7px;
    color:var(--kpac-navy);
    font-size:11px;
    font-weight:800;
}
body.kpac-site-active.single-product .woocommerce div.product{
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:48px;
    padding:42px!important;
}
body.kpac-site-active.single-product .woocommerce div.product div.images,
body.kpac-site-active.single-product .woocommerce div.product div.summary{
    width:100%!important;
    float:none!important;
}
body.kpac-site-active.single-product .woocommerce div.product div.images .woocommerce-product-gallery__wrapper{
    background:linear-gradient(#fafcfe,#edf3f8);
    border-radius:10px;
    overflow:hidden;
}
body.kpac-site-active.single-product .woocommerce div.product div.summary{
    position:sticky;
    top:180px;
    align-self:start;
}
body.kpac-site-active.single-product .product_title{
    font-size:clamp(40px,4.5vw,58px)!important;
    line-height:1.03;
}
body.kpac-site-active.single-product div.product p.price{
    color:var(--kpac-gold)!important;
    font-size:28px!important;
}
body.kpac-site-active.single-product form.cart{
    display:flex;
    gap:12px;
}
body.kpac-site-active.single-product form.cart .quantity .qty{
    min-height:52px;
    width:78px;
    border:1px solid var(--kpac-border);
    border-radius:6px;
}
body.kpac-site-active.single-product form.cart .single_add_to_cart_button{
    flex:1;
    min-height:52px;
}
body.kpac-site-active.single-product .woocommerce-tabs,
body.kpac-site-active.single-product .related.products{
    grid-column:1/-1;
}
body.kpac-site-active.single-product .woocommerce-tabs ul.tabs{
    padding:0!important;
    border-bottom:1px solid var(--kpac-border);
}
body.kpac-site-active.single-product .woocommerce-tabs ul.tabs::before{
    display:none!important;
}
body.kpac-site-active.single-product .woocommerce-tabs ul.tabs li{
    border:0!important;
    background:transparent!important;
}
body.kpac-site-active.single-product .woocommerce-tabs ul.tabs li.active a{
    color:var(--kpac-navy)!important;
    border-bottom:3px solid var(--kpac-gold);
}
body.kpac-site-active.single-product .related.products>h2{
    color:var(--kpac-navy);
    font:800 36px "Manrope";
}

/* Basket */
.kpac-page-intro{
    margin-bottom:32px;
}
.kpac-page-intro h1{
    margin:8px 0 6px;
    color:var(--kpac-navy);
    font:800 clamp(40px,5vw,58px) "Manrope";
}
.kpac-page-intro p{
    color:var(--kpac-muted);
}
body.kpac-site-active.woocommerce-cart .site-main,
body.kpac-site-active.woocommerce-checkout .site-main,
body.kpac-site-active.woocommerce-account .site-main{
    width:min(1220px,calc(100% - 48px))!important;
    margin:0 auto!important;
}
body.kpac-site-active .woocommerce-cart-form,
body.kpac-site-active .cart_totals,
body.kpac-site-active .woocommerce-checkout-review-order,
body.kpac-site-active .woocommerce-billing-fields,
body.kpac-site-active .woocommerce-additional-fields,
body.kpac-site-active .woocommerce-form-login,
body.kpac-site-active .woocommerce-form-register,
body.kpac-site-active .woocommerce-MyAccount-navigation,
body.kpac-site-active .woocommerce-MyAccount-content{
    background:#fff;
    border:1px solid var(--kpac-border);
    border-top:3px solid var(--kpac-gold);
    border-radius:10px;
    padding:26px;
    box-shadow:0 12px 35px rgba(6,26,54,.06);
}
body.kpac-site-active table.shop_table{
    border-collapse:separate;
    border-spacing:0;
    border:1px solid var(--kpac-border);
    border-radius:9px;
    overflow:hidden;
}
body.kpac-site-active table.shop_table th{
    background:#f5f7fa;
    color:var(--kpac-navy);
}
body.kpac-site-active .woocommerce a.button,
body.kpac-site-active .woocommerce button.button,
body.kpac-site-active .woocommerce input.button{
    background:var(--kpac-navy)!important;
    color:#fff!important;
    border:1px solid var(--kpac-gold)!important;
    border-radius:6px!important;
}
body.kpac-site-active .woocommerce a.button.alt,
body.kpac-site-active .woocommerce button.button.alt,
body.kpac-site-active .woocommerce input.button.alt{
    background:linear-gradient(135deg,var(--kpac-blue),var(--kpac-navy))!important;
}
body.kpac-site-active .woocommerce input.input-text,
body.kpac-site-active .woocommerce textarea,
body.kpac-site-active .woocommerce select{
    min-height:48px;
    border:1px solid #d8dfe8;
    border-radius:6px;
    background:#fff;
}
body.kpac-site-active .woocommerce textarea{
    min-height:120px;
}

/* Checkout */
body.kpac-site-active.woocommerce-checkout form.checkout{
    display:grid;
    grid-template-columns:1fr .9fr;
    gap:28px;
}
body.kpac-site-active.woocommerce-checkout #customer_details,
body.kpac-site-active.woocommerce-checkout #order_review_heading,
body.kpac-site-active.woocommerce-checkout #order_review{
    width:100%!important;
    float:none!important;
}
body.kpac-site-active.woocommerce-checkout #order_review_heading,
body.kpac-site-active.woocommerce-checkout #order_review{
    grid-column:2;
}
body.kpac-site-active.woocommerce-checkout #customer_details{
    grid-row:1/3;
}
body.kpac-site-active .woocommerce-checkout-payment{
    background:#f7f9fc!important;
    border:1px solid var(--kpac-border);
}

/* My Account */
body.kpac-site-active .woocommerce-MyAccount-navigation{
    width:27%;
}
body.kpac-site-active .woocommerce-MyAccount-content{
    width:70%;
}
body.kpac-site-active .woocommerce-MyAccount-navigation ul{
    margin:0;
    padding:0;
    list-style:none;
}
body.kpac-site-active .woocommerce-MyAccount-navigation li{
    border-bottom:1px solid var(--kpac-border);
}
body.kpac-site-active .woocommerce-MyAccount-navigation li a{
    display:block;
    padding:13px 0;
    color:var(--kpac-navy);
    text-decoration:none;
    font-weight:700;
}
body.kpac-site-active .woocommerce-MyAccount-navigation li.is-active a{
    color:var(--kpac-gold);
}

/* Notices */
body.kpac-site-active .woocommerce-message,
body.kpac-site-active .woocommerce-info,
body.kpac-site-active .woocommerce-error{
    border-top-color:var(--kpac-gold);
    background:#fffaf0;
    color:var(--kpac-navy);
    border-radius:6px;
}

/* Responsive */
@media(max-width:1050px){
    body.kpac-site-active .woocommerce ul.products{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
    body.kpac-site-active.single-product .woocommerce div.product{
        grid-template-columns:1fr;
    }
    body.kpac-site-active.single-product .woocommerce div.product div.summary{
        position:static;
    }
    body.kpac-site-active.woocommerce-checkout form.checkout{
        grid-template-columns:1fr;
    }
    body.kpac-site-active.woocommerce-checkout #customer_details,
    body.kpac-site-active.woocommerce-checkout #order_review_heading,
    body.kpac-site-active.woocommerce-checkout #order_review{
        grid-column:1;
        grid-row:auto;
    }
}
@media(max-width:760px){
    body.kpac-site-active:not(.home) .site-main,
    body.kpac-site-active:not(.home) #main,
    body.kpac-site-active:not(.home) .entry-content,
    body.kpac-site-active.woocommerce-shop .woocommerce,
    body.kpac-site-active.tax-product_cat .woocommerce,
    body.kpac-site-active.tax-product_tag .woocommerce,
    body.kpac-site-active.single-product .site-main,
    body.kpac-site-active.woocommerce-cart .site-main,
    body.kpac-site-active.woocommerce-checkout .site-main,
    body.kpac-site-active.woocommerce-account .site-main{
        width:min(100% - 28px,1220px)!important;
    }
    .kpac-shop-hero{
        margin:-64px 0 35px;
        padding:50px 0;
    }
    body.kpac-site-active .woocommerce ul.products{
        grid-template-columns:1fr!important;
    }
    .kpac-product-topline{
        grid-template-columns:1fr;
    }
    body.kpac-site-active.single-product .woocommerce div.product{
        padding:20px!important;
    }
    body.kpac-site-active.single-product form.cart{
        position:sticky;
        bottom:10px;
        z-index:20;
        padding:10px;
        background:rgba(255,255,255,.96);
        border:1px solid var(--kpac-border);
        border-radius:8px;
        box-shadow:0 15px 40px rgba(6,26,54,.16);
    }
    body.kpac-site-active .woocommerce-MyAccount-navigation,
    body.kpac-site-active .woocommerce-MyAccount-content{
        width:100%;
        float:none;
        margin-bottom:20px;
    }
}
