
/* ASN Academy Lock 76 — Commerce UX, Checkout V2 & Contextual Currency */

/* ---------- Contextual currency ---------- */
.asn-currency-context{
    display:flex;
    align-items:center;
    gap:10px;
    min-height:42px;
}
.asn-currency-context__label{
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.055em;
    text-transform:uppercase;
    color:#627168;
}
.asn-currency-context__mount{
    display:flex;
    align-items:center;
    min-height:38px;
}
.asn-currency-context__mount:empty:after{
    content:"Prices shown in available currency";
    display:inline-flex;
    align-items:center;
    min-height:36px;
    padding:0 11px;
    border:1px solid #dbe4de;
    border-radius:999px;
    background:#fff;
    color:#66736b;
    font-size:.75rem;
}
.asn-currency-context__mount .asn-relocated-currency{
    position:static!important;
    inset:auto!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    transform:none!important;
    margin:0!important;
    z-index:auto!important;
    width:auto!important;
    max-width:none!important;
    height:auto!important;
    box-shadow:none!important;
}
.asn-currency-context__mount .asn-relocated-currency ul,
.asn-currency-context__mount .asn-relocated-currency>div{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    gap:4px!important;
    margin:0!important;
}
.asn-currency-context__mount .asn-relocated-currency a,
.asn-currency-context__mount .asn-relocated-currency button,
.asn-currency-context__mount .asn-relocated-currency li,
.asn-currency-context__mount .asn-relocated-currency [role="button"]{
    min-height:36px!important;
    height:auto!important;
    width:auto!important;
    padding:8px 11px!important;
    border-radius:999px!important;
    font-size:.78rem!important;
    line-height:1.2!important;
    white-space:nowrap!important;
}
.asn-currency-hidden-by-asn{display:none!important}
.asn-shop-currency-row{display:flex;justify-content:flex-end;margin:0 0 15px}
.asn-course-market__commerce-tools{display:flex;justify-content:flex-end;margin-bottom:12px}
.asn-course-detail__purchase>.asn-currency-context{justify-content:space-between;padding:14px 20px;border-bottom:1px solid #e5ece7;background:#f8fbf9}

/* ---------- Checkout V2 ---------- */
.asn-checkout-brand-page{
    overflow:hidden;
    background:#f6f9f7;
}
.asn-checkout-v2-hero{
    padding:52px 0 46px;
    background:
        radial-gradient(circle at 86% 10%,rgba(217,165,38,.12),transparent 24%),
        linear-gradient(135deg,#073d2c,#0d5b3a);
    color:#fff;
}
.asn-checkout-v2-hero .asn-container,
.asn-checkout-v2-content>.asn-container{
    width:min(1420px,calc(100% - 48px))!important;
    max-width:1420px!important;
    margin-inline:auto!important;
    padding-inline:0!important;
}
.asn-checkout-v2-hero__grid{
    display:grid;
    grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr);
    gap:38px;
    align-items:end;
}
.asn-checkout-v2-hero h1{
    max-width:850px;
    margin:.45rem 0 .8rem;
    color:#fff;
    font-size:clamp(2.7rem,5vw,4.8rem);
    line-height:.98;
    letter-spacing:-.05em;
}
.asn-checkout-v2-hero p{
    max-width:760px;
    margin:0;
    color:rgba(255,255,255,.8);
    font-size:1rem;
    line-height:1.7;
}
.asn-checkout-v2-steps{
    display:flex;
    justify-content:flex-end;
    gap:8px;
    flex-wrap:wrap;
}
.asn-checkout-v2-steps span{
    display:flex;
    align-items:center;
    gap:7px;
    padding:8px 11px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:999px;
    color:rgba(255,255,255,.75);
    font-size:.76rem;
}
.asn-checkout-v2-steps b{
    display:grid;
    place-items:center;
    width:22px;
    height:22px;
    border-radius:50%;
    background:rgba(255,255,255,.1);
}
.asn-checkout-v2-steps .is-current{
    background:#fff;
    color:#0d5b3a;
}
.asn-checkout-v2-steps .is-current b{background:#eaf4ee}

.asn-checkout-v2-content{padding:38px 0 82px}
.asn-checkout-v2-intro{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);
    gap:28px;
    align-items:center;
    margin-bottom:22px;
}
.asn-checkout-v2-intro h2{
    margin:.35rem 0 0;
    max-width:720px;
    color:#17291e;
    font-size:clamp(1.8rem,3.2vw,3rem);
    line-height:1.05;
    letter-spacing:-.03em;
}
.asn-checkout-v2-account-note{
    padding:17px 18px;
    border:1px solid #dce7df;
    border-radius:15px;
    background:#fff;
}
.asn-checkout-v2-account-note strong{display:block;color:#17462f}
.asn-checkout-v2-account-note p{margin:.35rem 0 0;color:#66736b;line-height:1.55;font-size:.86rem}
.asn-checkout-v2-account-note a{color:#0d5b3a;font-weight:850}

.asn-checkout-v2-main{
    width:100%;
    min-width:0;
    padding:26px!important;
    border:1px solid #dfe7e1;
    border-radius:22px;
    background:#fff;
    box-shadow:0 10px 34px rgba(24,65,43,.05);
    overflow:visible;
}
/* Neutralize page/block margins responsible for left clipping. */
.asn-checkout-v2-main .entry-content,
.asn-checkout-v2-main .wp-block-post-content,
.asn-checkout-v2-main .woocommerce,
.asn-checkout-v2-main .wp-block-woocommerce-checkout{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    box-sizing:border-box!important;
}
.asn-checkout-v2-main .wc-block-checkout,
.asn-checkout-v2-main .wc-block-components-main,
.asn-checkout-v2-main .wc-block-components-sidebar{
    box-sizing:border-box!important;
}
.asn-checkout-v2-main .wc-block-checkout{
    gap:28px!important;
}
.asn-checkout-v2-main .wc-block-components-main{
    padding-left:0!important;
    padding-right:12px!important;
}
.asn-checkout-v2-main .wc-block-components-sidebar{
    padding:22px!important;
    border:1px solid #dfe7e1!important;
    border-radius:18px!important;
    background:#fbfdfc!important;
}
.asn-checkout-v2-main .wc-block-components-checkout-step{
    padding-left:0!important;
    margin-left:0!important;
}
.asn-checkout-v2-main .wc-block-components-checkout-step__heading,
.asn-checkout-v2-main .wc-block-components-checkout-step__container{
    margin-left:0!important;
    padding-left:0!important;
}
.asn-checkout-v2-main .wc-block-components-checkout-step__title{
    color:#17291e!important;
    font-size:1.35rem!important;
    font-weight:800!important;
}
.asn-checkout-v2-main .wc-block-components-title{
    color:#17291e!important;
}
.asn-checkout-v2-main .wc-block-components-text-input input,
.asn-checkout-v2-main .wc-block-components-combobox .components-combobox-control__input,
.asn-checkout-v2-main .wc-block-components-address-form input,
.asn-checkout-v2-main select{
    min-height:50px!important;
    border:1px solid #d5dfd8!important;
    border-radius:11px!important;
    background:#fff!important;
}
.asn-checkout-v2-main .wc-block-components-button{
    min-height:52px!important;
    border-radius:999px!important;
    background:#0d5b3a!important;
    color:#fff!important;
    font-weight:900!important;
}
.asn-checkout-v2-main .wc-block-components-order-summary{
    border-radius:14px!important;
}
.asn-checkout-v2-main .wc-block-components-totals-wrapper{
    border-color:#e4ebe6!important;
}

/* Classic checkout fallback */
.asn-checkout-v2-main .woocommerce-checkout{
    width:100%!important;
}
.asn-checkout-v2-main .woocommerce-billing-fields,
.asn-checkout-v2-main .woocommerce-additional-fields,
.asn-checkout-v2-main #order_review{
    min-width:0;
}
.asn-checkout-v2-main .woocommerce form .form-row input.input-text,
.asn-checkout-v2-main .woocommerce form .form-row textarea,
.asn-checkout-v2-main .woocommerce form .form-row select{
    min-height:50px;
    border:1px solid #d5dfd8;
    border-radius:11px;
    padding:10px 12px;
}
.asn-checkout-v2-main #payment{
    border-radius:16px!important;
    background:#f3f8f5!important;
}
.asn-checkout-v2-main #place_order{
    min-height:52px;
    border-radius:999px!important;
    background:#0d5b3a!important;
    color:#fff!important;
    font-weight:900!important;
}

.asn-checkout-v2-assurance{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:12px;
    margin-top:18px;
}
.asn-checkout-v2-assurance article{
    padding:18px;
    border:1px solid #dfe7e1;
    border-radius:16px;
    background:#fff;
}
.asn-checkout-v2-assurance span{
    color:#9b741b;
    font-size:.7rem;
    font-weight:900;
}
.asn-checkout-v2-assurance h3{margin:.45rem 0;font-size:1rem;color:#173126}
.asn-checkout-v2-assurance p{margin:0;color:#6d7971;font-size:.8rem;line-height:1.55}

/* Currency is intentionally not visible as a floating site-level widget in cart/checkout. */
.asn-branded-cart .asn-relocated-currency,
.asn-branded-checkout .asn-relocated-currency,
.asn-cart-brand-page [data-asn-currency-slot],
.asn-checkout-brand-page [data-asn-currency-slot]{display:none!important}

@media(max-width:1050px){
    .asn-checkout-v2-hero__grid,.asn-checkout-v2-intro{grid-template-columns:1fr}
    .asn-checkout-v2-steps{justify-content:flex-start}
    .asn-checkout-v2-assurance{grid-template-columns:1fr 1fr}
    .asn-checkout-v2-main .wc-block-checkout{display:block!important}
    .asn-checkout-v2-main .wc-block-components-main{width:100%!important;padding-right:0!important}
    .asn-checkout-v2-main .wc-block-components-sidebar{width:100%!important;margin-top:22px!important}
}
@media(max-width:700px){
    .asn-checkout-v2-hero .asn-container,
    .asn-checkout-v2-content>.asn-container{width:min(100% - 24px,1420px)!important}
    .asn-checkout-v2-hero{padding:38px 0}
    .asn-checkout-v2-main{padding:16px!important;border-radius:16px}
    .asn-checkout-v2-assurance{grid-template-columns:1fr}
}
