/* ==========================================
   NORLANDS — MY ACCOUNT
========================================== */

.nl-account-dashboard{
    width: 100%;
}

/* HEADER */
.nl-account-head{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 24px;
}

.nl-account-kicker{
    display: block;
    margin-bottom: 5px;
    color: #9a9200;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .07em;
}

.nl-account-head h2{
    margin: 0;
    color: #102016;
    font-size: clamp(34px, 3.2vw, 50px);
    line-height: 1;
    font-weight: 600;
}

.nl-shop-link{
    margin-top: 5px;
    color: #111 !important;
    text-decoration: none !important;
    white-space: nowrap;
    transition: transform .25s ease;
}

.nl-shop-link:hover{
    transform: translateX(4px);
}


/* ==========================================
   ACTION CARDS
========================================== */

.nl-account-actions{
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 30px;
}

.nl-account-action{
    min-width: 0;
    min-height: 88px;

    padding: 15px 16px;

    display: flex;
    flex-direction: column;
    justify-content: space-between;

    background: #f2f3ee;
    border: 1px solid #e5e6e0;
    border-radius: 0 !important;

    color: #111 !important;
    text-decoration: none !important;

    transition:
        transform .25s ease,
        background .25s ease,
        box-shadow .25s ease;
}

.nl-account-action:hover{
    transform: translateY(-4px);
    background: #eceee8;
    box-shadow: 0 8px 20px rgba(0,0,0,.06);
}

.nl-account-action strong{
    display: block;
    margin-bottom: 3px;

    color: #102016;

    font-size: 15px;
    line-height: 1.2;
    font-weight: 600;
}

.nl-account-action div > span{
    display: block;

    color: #74746d;

    font-size: 12px;
    line-height: 1.3;
}

.nl-action-arrow{
    margin-top: 10px;

    font-size: 18px;
    line-height: 1;

    transition: transform .25s ease;
}

.nl-account-action:hover .nl-action-arrow{
    transform: translateX(4px);
}


/* LOGOUT */

.nl-account-logout{
    background: #334c2c;
    border-color: #334c2c;
}

.nl-account-logout:hover{
    background: #293e24;
}

.nl-account-logout strong,
.nl-account-logout .nl-action-arrow{
    color: #fff;
}

.nl-account-logout div > span{
    color: rgba(255,255,255,.65);
}


/* ==========================================
   RECENT ORDER
========================================== */

.nl-recent-order{
    margin-top: 0;
}

.nl-recent-order h3{
    margin: 0 0 12px;

    color: #102016;

    font-size: 19px;
    font-weight: 600;
}

.nl-recent-order-card{
    display: grid;
    grid-template-columns: 1.2fr 1fr auto;
    align-items: center;
    gap: 24px;

    min-height: 105px;

    padding: 17px 20px;

    background: #fff;

    border: 1px solid #dedfd8;
    border-radius: 0 !important;
}

.nl-recent-order-info,
.nl-recent-order-product{
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.nl-recent-order-info strong,
.nl-recent-order-product strong{
    color: #102016;

    font-size: 15px;
    font-weight: 600;
}

.nl-recent-order-info > span:not(.nl-order-status),
.nl-recent-order-product > span{
    color: #74746d;

    font-size: 13px;
}

.nl-order-status{
    width: max-content;

    margin-bottom: 3px;
    padding: 4px 8px;

    background: #fff1bd;

    color: #756000;

    font-size: 11px;
    font-weight: 600;

    border-radius: 0 !important;
}

.nl-view-order{
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 42px;
    padding: 0 18px;

    background: #dedc00;

    color: #111 !important;
    text-decoration: none !important;

    font-size: 14px;
    font-weight: 600;

    border-radius: 0 !important;

    transition:
        transform .25s ease,
        background .25s ease;
}

.nl-view-order:hover{
    transform: translateY(-2px);
    background: #cfcd00;
}


/* NO ORDERS */

.nl-no-orders{
    padding: 18px 20px;

    background: #f3f4ef;

    border: 1px solid #e3e4df;
    border-radius: 0;
}


/* ==========================================
   RESPONSIVE
========================================== */

@media (max-width: 1200px){

    .nl-account-actions{
        grid-template-columns: repeat(3, 1fr);
    }

}

@media (max-width: 767px){

    .nl-account-head{
        flex-direction: column;
        gap: 12px;
    }

    .nl-account-head h2{
        font-size: 36px;
    }

    .nl-account-actions{
        grid-template-columns: repeat(2, 1fr);
    }

    .nl-recent-order-card{
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .nl-view-order{
        width: 100%;
    }

}

@media (max-width: 480px){

    .nl-account-actions{
        grid-template-columns: 1fr;
    }

}
/* ==========================================
   NORLANDS — ORDERS PAGE
========================================== */

.nl-orders-page{
    width: 100%;
    padding: 34px 32px 28px;

    background: #fff;
    border: 1px solid #dedfd8;
    border-radius: 18px;
}


/* HEADER */

.nl-orders-header{
    margin-bottom: 30px;
}

.nl-orders-kicker{
    display: block;
    margin-bottom: 7px;

    color: #928b00;

    font-size: 13px;
    font-weight: 700;
    letter-spacing: .08em;
}

.nl-orders-header h2{
    margin: 0;

    color: #102016;

    font-size: clamp(38px, 4vw, 56px);
    line-height: 1;
    font-weight: 600;
}


/* TABLE */

.nl-orders-table-wrap{
    width: 100%;
}

.nl-orders-table-head,
.nl-order-row{
    display: grid;

    grid-template-columns:
        1.05fr
        .9fr
        1.45fr
        .75fr
        .75fr
        .45fr;

    align-items: center;
    column-gap: 20px;
}


/* HEADER ROW */

.nl-orders-table-head{
    padding: 12px 14px 16px;

    border-bottom: 1px solid #dedfd8;

    color: #66675f;

    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
}


/* ORDER ROW */

.nl-order-row{
    min-height: 64px;

    padding: 14px;

    border-bottom: 1px solid #e2e3dd;

    transition: background .25s ease;
}

.nl-order-row:hover{
    background: #f8f8f4;
}


/* TEXT */

.nl-order-number a{
    color: #111 !important;

    font-size: 14px;
    font-weight: 500;

    text-decoration: none !important;
}

.nl-order-number a:hover{
    text-decoration: underline !important;
}

.nl-order-date,
.nl-order-products,
.nl-order-total{
    color: #171717;

    font-size: 14px;
    line-height: 1.4;
}

.nl-order-total{
    font-weight: 500;
}


/* STATUS */

.nl-status-badge{
    display: inline-flex;
    align-items: center;

    width: max-content;

    padding: 5px 9px;

    font-size: 11px;
    line-height: 1;
    font-weight: 600;

    border-radius: 50px;
}


/* ON HOLD */

.nl-status-badge.status-on-hold{
    background: #fff0bd;
    color: #786000;
}


/* PROCESSING */

.nl-status-badge.status-processing{
    background: #fff0bd;
    color: #786000;
}


/* COMPLETED */

.nl-status-badge.status-completed{
    background: #dff1e3;
    color: #176629;
}


/* CANCELLED / FAILED */

.nl-status-badge.status-cancelled,
.nl-status-badge.status-failed{
    background: #f5dfdf;
    color: #8e2828;
}


/* REFUNDED */

.nl-status-badge.status-refunded{
    background: #e8e8e8;
    color: #555;
}


/* ACTION BUTTON */

.nl-order-action{
    display: flex;
    justify-content: flex-end;
}

.nl-order-button{
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 36px;
    padding: 0 13px;

    background: #dedc00;

    color: #111 !important;

    font-size: 13px;
    font-weight: 600;

    text-decoration: none !important;

    border-radius: 0 !important;

    transition:
        transform .2s ease,
        background .2s ease;
}

.nl-order-button:hover{
    background: #cecc00;
    transform: translateY(-2px);
}


/* PAGINATION */

.nl-orders-pagination{
    display: flex;
    justify-content: flex-end;
    gap: 10px;

    margin-top: 22px;
}

.nl-pagination-button{
    padding: 10px 15px;

    background: #f1f2ed;

    color: #111 !important;

    text-decoration: none !important;

    border: 1px solid #dedfd8;
}


/* EMPTY STATE */

.nl-orders-empty{
    padding: 28px;

    background: #f3f4ef;
}

.nl-orders-empty h3{
    margin: 0 0 7px;

    color: #102016;
}

.nl-orders-empty p{
    margin-bottom: 15px;
}


/* ==========================================
   TABLET
========================================== */

@media (max-width: 1024px){

    .nl-orders-page{
        padding: 28px 22px;
    }

    .nl-orders-table-head,
    .nl-order-row{
        grid-template-columns:
            1fr
            .85fr
            1.3fr
            .8fr
            .75fr
            .5fr;

        column-gap: 12px;
    }

}


/* ==========================================
   MOBILE
========================================== */

@media (max-width: 767px){

    .nl-orders-page{
        padding: 24px 18px;
        border-radius: 12px;
    }

    .nl-orders-header h2{
        font-size: 38px;
    }

    .nl-orders-table-head{
        display: none;
    }

    .nl-order-row{
        display: grid;

        grid-template-columns: 1fr 1fr;

        gap: 12px 15px;

        padding: 18px 0;
    }

    .nl-order-number,
    .nl-order-products,
    .nl-order-status{
        grid-column: 1 / -1;
    }

    .nl-order-action{
        justify-content: flex-start;
    }

}
/* ==========================================
   MY ACCOUNT LAYOUT WIDTH FIX
========================================== */

.woocommerce-account .woocommerce-MyAccount{
    display: grid;
    grid-template-columns: 240px minmax(0, 1fr);
    gap: 32px;
    align-items: start;
}

.woocommerce-account .woocommerce-MyAccount-navigation{
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
}

.woocommerce-account .woocommerce-MyAccount-content{
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}

.nl-orders-page{
    width: 100%;
    max-width: none !important;
}

.nl-orders-table-wrap{
    width: 100%;
}

.nl-orders-table-head,
.nl-order-row{
    grid-template-columns:
        1.1fr
        0.9fr
        1.8fr
        0.9fr
        0.9fr
        0.7fr;
}

/* Mobile */
@media (max-width: 991px){
    .woocommerce-account .woocommerce-MyAccount{
        grid-template-columns: 1fr;
    }
}
/* ==========================================
   NORLANDS — SAVED ADDRESSES
========================================== */

.nl-address-page{
    width: 100%;
    padding: 30px 32px 28px;

    background: #fff;
    border: 1px solid #dedfd8;
    border-radius: 18px;
}


/* HEADER */

.nl-address-header{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;

    margin-bottom: 28px;
}

.nl-address-kicker{
    display: block;
    margin-bottom: 6px;

    color: #928b00;

    font-size: 13px;
    font-weight: 700;
    letter-spacing: .08em;
}

.nl-address-header h2{
    margin: 0;

    color: #102016;

    font-size: clamp(38px, 4vw, 56px);
    line-height: 1;
    font-weight: 600;
}

.nl-add-address-top{
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 46px;
    padding: 0 20px;

    background: #dedc00;

    color: #111 !important;
    text-decoration: none !important;

    font-size: 14px;
    font-weight: 600;

    border-radius: 0 !important;

    transition:
        transform .25s ease,
        background .25s ease;
}

.nl-add-address-top:hover{
    transform: translateY(-2px);
    background: #cecc00;
}


/* GRID */

.nl-address-grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
}


/* CARD */

.nl-address-card{
    min-height: 170px;

    padding: 22px;

    display: flex;
    flex-direction: column;
    justify-content: space-between;

    background: #fff;

    border: 1px solid #dedfd8;
    border-radius: 14px;
}

.nl-address-card-title{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 7px;

    margin-bottom: 14px;
}

.nl-address-card-title strong{
    color: #102016;

    font-size: 16px;
    font-weight: 600;
}

.nl-address-default{
    display: inline-flex;
    align-items: center;

    padding: 4px 7px;

    background: #f1f2ed;

    color: #4f5149;

    font-size: 10px;
    font-weight: 600;

    border-radius: 50px;
}


/* ADDRESS */

.nl-address-content{
    margin-bottom: 18px;

    color: #1f201d;

    font-size: 14px;
    line-height: 1.55;
}

.nl-address-content address{
    margin: 0;
    font-style: normal;
}

.nl-address-content p{
    margin: 0;
}


/* EDIT BUTTON */

.nl-edit-address{
    display: inline-flex;
    width: max-content;

    padding: 5px 7px;

    background: #dedc00;

    color: #111 !important;
    text-decoration: none !important;

    font-size: 13px;
    font-weight: 600;

    border-radius: 0 !important;

    transition:
        transform .2s ease,
        background .2s ease;
}

.nl-edit-address:hover{
    transform: translateY(-2px);
    background: #cecc00;
}


/* ADD ANOTHER ADDRESS CARD */

.nl-address-add-card{
    border-style: dashed;

    justify-content: center;
}

.nl-address-add-card > div{
    width: 100%;
}

.nl-address-add-card strong{
    display: block;

    margin-bottom: 5px;

    color: #102016;

    font-size: 16px;
    font-weight: 600;
}

.nl-address-add-card p{
    max-width: 410px;

    margin: 0 0 16px;

    color: #33352f;

    font-size: 14px;
    line-height: 1.45;
}


/* TABLET */

@media (max-width: 900px){

    .nl-address-page{
        padding: 26px 22px;
    }

    .nl-address-grid{
        grid-template-columns: 1fr;
    }

}


/* MOBILE */

@media (max-width: 600px){

    .nl-address-header{
        flex-direction: column;
        gap: 16px;
    }

    .nl-address-header h2{
        font-size: 38px;
    }

    .nl-add-address-top{
        width: 100%;
    }

    .nl-address-card{
        min-height: auto;
        padding: 18px;
    }

}
/* ==========================================
   NORLANDS — MY ACCOUNT NAVIGATION
========================================== */

.nl-account-nav{
    width:100%;
    padding:22px;

    background:#fff;
    border:1px solid #e1e2dc;
    border-radius:0 !important;

    font-family:"Satoshi", sans-serif;
}


/* USER */

.nl-account-user{
    display:flex;
    align-items:center;
    gap:12px;

    padding-bottom:18px;
    margin-bottom:18px;

    border-bottom:1px solid #e3e4de;
}

.nl-account-avatar{
    width:52px;
    height:52px;

    display:flex;
    align-items:center;
    justify-content:center;

    flex:0 0 52px;

    background:#334c2c;
    color:#fff;

    font-family:"Satoshi", sans-serif;
    font-size:16px;
    font-weight:700;

    border-radius:0 !important;
}

.nl-account-user-info{
    display:flex;
    flex-direction:column;
    gap:2px;

    min-width:0;
}

.nl-account-user-info strong{
    color:#102016;

    font-family:"Satoshi", sans-serif;
    font-size:16px;
    font-weight:600;
    line-height:1.2;
}

.nl-account-user-info span{
    color:#77786f;

    font-family:"Satoshi", sans-serif;
    font-size:13px;
}


/* MENU */

.nl-account-menu{
    display:flex;
    flex-direction:column;
    gap:7px;
}

.nl-account-menu-item{
    width:100%;
    min-height:48px;

    display:flex;
    align-items:center;

    padding:0 15px;

    background:#dedc00;

    color:#111 !important;
    text-decoration:none !important;

    font-family:"Satoshi", sans-serif;
    font-size:15px;
    font-weight:500;

    border:1px solid transparent;
    border-radius:0 !important;

    transition:
        transform .2s ease,
        background .2s ease,
        color .2s ease;
}

.nl-account-menu-item:hover{
    transform:translateX(3px);
    background:#cfcd00;
}

.nl-account-menu-item.is-active{
    background:#334c2c;
    color:#fff !important;
    font-weight:600;
}


/* BOTTOM */

.nl-account-nav-bottom{
    margin-top:16px;
    padding-top:16px;

    border-top:1px solid #e3e4de;
}

.nl-continue-shopping{
    width:100%;
    min-height:50px;

    display:flex;
    align-items:center;
    justify-content:center;

    padding:0 14px;

    background:#dedc00;

    color:#111 !important;
    text-decoration:none !important;

    font-family:"Satoshi", sans-serif;
    font-size:15px;
    font-weight:600;

    border-radius:0 !important;

    transition:
        transform .2s ease,
        background .2s ease;
}

.nl-continue-shopping:hover{
    transform:translateY(-2px);
    background:#cfcd00;
}


/* REMOVE WOODMART DEFAULT STYLES */

.woocommerce-account .woocommerce-MyAccount-navigation ul{
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation li{
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation li a{
    border-radius:0 !important;
}


/* TABLET / MOBILE */

@media(max-width:991px){

    .nl-account-nav{
        padding:18px;
    }

}

@media(max-width:767px){

    .nl-account-menu{
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:8px;
    }

    .nl-account-menu-item{
        min-height:46px;
    }

}

@media(max-width:480px){

    .nl-account-menu{
        grid-template-columns:1fr;
    }

}
/* ==========================================
   DASHBOARD STAT CARDS
========================================== */

.nl-dashboard-stats{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:12px;
    margin:28px 0 34px;
}

.nl-stat-box{
    min-height:105px;
    padding:20px;

    display:flex;
    flex-direction:column;
    justify-content:center;

    background:#f2f3ee;
    border:1px solid #e1e2dc;
    border-radius:0 !important;

    color:#102016 !important;
    text-decoration:none !important;

    transition:
        transform .25s ease,
        background .25s ease;
}

.nl-stat-box:hover{
    transform:translateY(-4px);
    background:#e9ebe4;
}

.nl-stat-box strong{
    display:block;

    margin-bottom:8px;

    font-family:"Satoshi", sans-serif;
    font-size:30px;
    line-height:1;
    font-weight:600;

    color:#102016;
}

.nl-stat-box span{
    font-family:"Satoshi", sans-serif;
    font-size:13px;
    color:#6f7169;
}


/* TABLET */
@media(max-width:900px){

    .nl-dashboard-stats{
        grid-template-columns:repeat(2,1fr);
    }

}


/* MOBILE */
@media(max-width:480px){

    .nl-dashboard-stats{
        grid-template-columns:1fr 1fr;
        gap:8px;
    }

    .nl-stat-box{
        min-height:90px;
        padding:16px;
    }

    .nl-stat-box strong{
        font-size:26px;
    }

}
/* ==========================================
   NORLANDS MY ACCOUNT — CLEAN LAYOUT
========================================== */


/* REMOVE "MY ACCOUNT" TITLE */
.woocommerce-account .woocommerce-MyAccount-navigation > h2,
.woocommerce-account .woocommerce-MyAccount-navigation > h3,
.woocommerce-account .woocommerce-MyAccount-navigation > h4,
.woocommerce-account .woocommerce-MyAccount-title,
.woocommerce-account .wd-my-account-sidebar .title,
.woocommerce-account .wd-my-account-sidebar .wd-heading{
    display: none !important;
}


/* REMOVE EXTRA HORIZONTAL / VERTICAL LINES */
.woocommerce-account .woocommerce-MyAccount,
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce-account .wd-my-account-sidebar{
    border-top: 0 !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
    border-left: 0 !important;
}


/* REMOVE GENERATED LINES */
.woocommerce-account .woocommerce-MyAccount-navigation::before,
.woocommerce-account .woocommerce-MyAccount-navigation::after,
.woocommerce-account .woocommerce-MyAccount-content::before,
.woocommerce-account .woocommerce-MyAccount-content::after,
.woocommerce-account .wd-my-account-sidebar::before,
.woocommerce-account .wd-my-account-sidebar::after{
    display: none !important;
    content: none !important;
}


/* REMOVE TITLE SPACING */
.woocommerce-account .woocommerce-MyAccount-navigation{
    padding-top: 0 !important;
}


/* ==========================================
   RIGHT SIDE — NO RADIUS
========================================== */

.woocommerce-account .woocommerce-MyAccount-content,
.nl-account-dashboard,
.nl-orders-page,
.nl-address-page{
    border-radius: 0 !important;
}


/* ADDRESS CARDS */
.nl-address-card{
    border-radius: 0 !important;
}


/* ORDER / RECENT ORDER */
.nl-recent-order-card{
    border-radius: 0 !important;
}


/* LEFT NAVIGATION */
.nl-account-nav{
    border-radius: 0 !important;
}


/* KEEP CLEAN GAP BETWEEN LEFT & RIGHT */
.woocommerce-account .woocommerce-MyAccount{
    gap: 32px !important;
}
/* ==================================================
   NORLANDS MY ACCOUNT — RESPONSIVE STRUCTURE
================================================== */


/* =========================
   TABLET + MOBILE
========================= */

@media (max-width: 991px){

    /* Main My Account Layout */
    .woocommerce-account .woocommerce-MyAccount{
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        gap: 30px !important;
    }


    /* CONTENT FIRST */
    .woocommerce-account .woocommerce-MyAccount-content{
        order: 1 !important;

        width: 100% !important;
        max-width: 100% !important;

        margin: 0 !important;
        padding: 0 !important;

        float: none !important;
    }


    /* NAVIGATION AFTER CONTENT */
    .woocommerce-account .woocommerce-MyAccount-navigation,
    .woocommerce-account .nl-account-nav{
        order: 2 !important;

        width: 100% !important;
        max-width: 100% !important;

        margin: 0 !important;

        float: none !important;
    }


    /* REMOVE DESKTOP SIDE LINES */
    .woocommerce-account .woocommerce-MyAccount-navigation,
    .woocommerce-account .woocommerce-MyAccount-content{
        border-left: 0 !important;
        border-right: 0 !important;
    }


    /* Dashboard header */
    .nl-account-head{
        width: 100%;
    }


    /* Stats */
    .nl-dashboard-stats{
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }


    /* Orders */
    .nl-orders-page{
        width: 100%;
        max-width: 100%;
    }


    /* Addresses */
    .nl-address-page{
        width: 100%;
        max-width: 100%;
    }


    /* Navigation */
    .nl-account-nav{
        width: 100%;
        padding: 20px;
    }

}



/* =========================
   MOBILE
========================= */

@media (max-width: 767px){

    .woocommerce-account .woocommerce-MyAccount{
        gap: 24px !important;
    }


    /* Dashboard heading */
    .nl-account-head{
        flex-direction: column;
        gap: 14px;
    }

    .nl-account-head h2{
        font-size: 38px !important;
        line-height: 1.05;
    }

    .nl-shop-link{
        margin-top: 0;
    }


    /* Dashboard Stats */
    .nl-dashboard-stats{
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .nl-stat-box{
        min-height: 90px;
        padding: 16px;
    }


    /* Recent Order */
    .nl-recent-order-card{
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;

        gap: 16px !important;

        width: 100%;
        padding: 18px;
    }

    .nl-view-order{
        width: 100%;
    }


    /* Addresses */
    .nl-address-grid{
        grid-template-columns: 1fr !important;
    }

    .nl-address-header{
        flex-direction: column;
    }

    .nl-add-address-top{
        width: 100%;
    }


    /* NAV MENU — 2 COLUMN */
    .nl-account-menu{
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    .nl-account-menu-item{
        width: 100% !important;
        min-width: 0 !important;

        padding: 13px 14px !important;
    }

}
/* ==========================================
   MOBILE ACCOUNT ORDER
   CONTENT FIRST / NAVIGATION SECOND
========================================== */

@media (max-width: 991px){

    /* Elementor WooCommerce My Account wrapper */
    .elementor-widget-woocommerce-my-account .e-my-account-tab,
    .woocommerce-account .e-my-account-tab{
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
    }

    /* PAGE CONTENT FIRST */
    .elementor-widget-woocommerce-my-account .woocommerce-MyAccount-content,
    .woocommerce-account .woocommerce-MyAccount-content{
        order: 1 !important;

        width: 100% !important;
        max-width: 100% !important;

        margin: 0 !important;
        float: none !important;
    }

    /* NAVIGATION AFTER CONTENT */
    .elementor-widget-woocommerce-my-account .woocommerce-MyAccount-navigation,
    .woocommerce-account .woocommerce-MyAccount-navigation,
    .elementor-widget-woocommerce-my-account .nl-account-nav,
    .woocommerce-account .nl-account-nav{
        order: 2 !important;

        width: 100% !important;
        max-width: 100% !important;

        margin: 30px 0 0 !important;
        float: none !important;
    }

}
/* ==========================================
   MY ACCOUNT — SPACING REFINEMENT
========================================== */

/* More breathing room above user profile */
.nl-account-nav{
    padding-top: 30px !important;
}

/* User profile spacing */
.nl-account-user{
    margin-top: 0 !important;
    margin-bottom: 20px !important;
}


/* DESKTOP — Bring navigation closer to content */
@media (min-width: 992px){

    .woocommerce-account .woocommerce-MyAccount{
        gap: 20px !important;
    }

}


/* TABLET + MOBILE */
@media (max-width: 991px){

    .nl-account-nav{
        padding-top: 28px !important;
    }

    .nl-account-user{
        margin-bottom: 20px !important;
    }

}
/* ==========================================
   PROFILE TOP INNER SPACING
========================================== */

.woocommerce-account .woocommerce-MyAccount-navigation.nl-account-nav{
    padding: 28px 24px 24px !important;
    box-sizing: border-box !important;
}

/* Force profile away from top edge */
.woocommerce-account .nl-account-nav .nl-account-user{
    margin: 0 0 20px 0 !important;
    padding: 0 0 18px 0 !important;
}

/* Mobile */
@media (max-width: 991px){

    .woocommerce-account .woocommerce-MyAccount-navigation.nl-account-nav{
        padding-top: 28px !important;
    }

}
/* REQUIRED REGISTRATION */

.nl-auth-field .required,
.nl-captcha-label .required{
    color:#c62828;
}

#nl-register-errors{
    margin-bottom:18px;
}

#nl-register-errors .woocommerce-error{
    margin:0;
    padding:14px 18px 14px 38px;

    background:#fff3f3;
    border:1px solid #d9a8a8;
    border-radius:0;

    color:#8c1d1d;
}

.nl-register-captcha{
    margin:0 0 22px;
}

.nl-captcha-label{
    display:block;
    margin-bottom:9px;

    font-family:"Satoshi",sans-serif;
    font-size:13px;
    font-weight:500;

    color:#222;
}
