/* Niknaman frontend visual fixes v3
   - icon reliability
   - readable contrast/typography
   - adaptive category menu
   - compact premium purchase/category sections
   - contact page refinement
   - distinct homepage section surfaces
*/

@font-face{
    font-family:"bootstrap-icons-fixed";
    font-style:normal;
    font-weight:400;
    font-display:block;
    src:url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/fonts/bootstrap-icons.woff2") format("woff2");
}

:root{
    --nr-muted:#655f54;
    --nr-ink-soft:#454139;
    --nr-sage:#eef2eb;
    --nr-sage-strong:#dde5d8;
    --nr-warm:#fbf7ee;
}

/* Body copy should stay comfortably readable without inflating headings. */
body.nr-site-body{font-size:16px;line-height:1.82;color:var(--nr-ink)}
body.nr-site-body .text-muted{color:#6b655b!important}
.nr-section-head p,.nr-section-heading p,.nr-content-lead,.nr-rich-content,
.nr-trust-card p,.nr-process-card p,.nr-contact-card p,.nr-catalog-card p{color:#686156}
.nr-section-link{font-size:14px;font-weight:750}
.nr-trust-row .nr-trust-card{padding:15px 16px}
.nr-trust-row .nr-trust-card strong{font-size:14px!important;line-height:1.55}
.nr-trust-row .nr-trust-card small{font-size:12.5px!important;line-height:1.55;color:#6b6459!important}
.nr-button{font-size:14.5px}
.nr-nav-link{font-size:14px}
.nr-mobile-dock__item{font-size:11px!important}
.nr-mobile-drawer__header small{font-size:12px!important}

/* Ensure Bootstrap icon glyphs remain visible when the external fallback face is used. */
.bi::before,[class^="bi-"]::before,[class*=" bi-"]::before{
    display:inline-block!important;
    font-family:"bootstrap-icons-fixed"!important;
    font-style:normal!important;
    font-weight:400!important;
    opacity:1!important;
    visibility:visible!important;
}

/* ===== Desktop category dropdown: size follows content, no empty mega-menu desert. ===== */
@media(min-width:1200px){
    .nr-category-dropdown{position:relative!important}
    .nr-category-menu{
        inset:auto auto auto 0!important;
        right:0!important;
        left:auto!important;
        top:100%!important;
        padding:14px!important;
        border-radius:0 0 18px 18px!important;
        max-width:calc(100vw - 32px)!important;
        min-width:0!important;
    }
    .nr-category-menu--single{width:360px!important}
    .nr-category-menu--compact{width:620px!important}
    .nr-category-menu--wide{width:min(900px,calc(100vw - 32px))!important}
    .nr-category-menu--single .nr-mega-menu,
    .nr-category-menu--compact .nr-mega-menu{grid-template-columns:minmax(0,1fr)!important}
    .nr-category-menu--single .nr-mega-menu__aside,
    .nr-category-menu--compact .nr-mega-menu__aside{display:none!important}
    .nr-category-menu--single .nr-category-menu__grid{grid-template-columns:1fr!important}
    .nr-category-menu--compact .nr-category-menu__grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important}
    .nr-category-menu--wide .nr-category-menu__grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
    .nr-category-menu__grid{gap:10px 18px!important}
    .nr-category-menu__group{padding:7px 9px;border-radius:12px}
    .nr-category-menu__group:hover{background:#faf7f0}
    .nr-category-menu__title{font-size:14.5px!important;padding:4px 0 7px!important}
    .nr-category-menu__item{font-size:13.5px!important;padding:4px 0!important}
    .nr-mega-menu{gap:14px!important}
    .nr-mega-menu__aside{padding-right:14px!important}
}

/* ===== Home: purchase path / trust access ===== */
.nr-home-commerce-section{
    padding:30px 0 34px!important;
    background:linear-gradient(180deg,#fff 0,#fbfaf7 100%);
    border-block:1px solid #eee9dd;
}
.nr-home-commerce-section .nr-section-head{margin-bottom:14px}
.nr-home-commerce-section .nr-section-title{max-width:850px;font-size:clamp(20px,2.1vw,27px)}
.nr-home-page .nr-commerce-paths{gap:14px}
.nr-home-page .nr-commerce-card{
    min-height:0!important;
    padding:20px 22px!important;
    border-radius:20px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:18px!important;
}
.nr-home-page .nr-commerce-card>div:first-child{
    display:grid;
    grid-template-columns:48px minmax(0,1fr);
    column-gap:14px;
    align-items:start;
}
.nr-home-page .nr-commerce-card__icon{grid-row:1/3;width:48px;height:48px;margin:0!important}
.nr-home-page .nr-commerce-card h2{font-size:18px!important;line-height:1.6;margin:0 0 4px!important}
.nr-home-page .nr-commerce-card p{font-size:14.5px!important;line-height:1.85!important;color:#625c52!important;max-width:680px}
.nr-home-page .nr-commerce-card--wholesale p{color:#e2dacd!important}
.nr-home-page .nr-commerce-card--wholesale h2{color:#fff}
.nr-home-page .nr-commerce-card__actions{margin:0!important;flex-wrap:nowrap!important}
.nr-home-page .nr-commerce-card__actions .nr-button{white-space:nowrap;min-height:42px}

.nr-proof-grid{gap:12px}
.nr-proof-card{padding:16px!important;gap:12px!important;min-height:92px;align-items:center!important}
.nr-proof-card>i{margin:0!important}
.nr-proof-card strong{font-size:14px!important;line-height:1.55}
.nr-proof-card span{font-size:13px!important;line-height:1.7!important;color:#686156!important;margin-top:4px!important}

/* ===== Home: short product path ===== */
.nr-home-category-section{
    background:#fff;
    padding:36px 0!important;
}
.nr-home-category-section .nr-section-head{margin-bottom:16px}
.nr-home-category-section .nr-category-grid{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:12px!important;
}
.nr-home-category-section .nr-category-card{
    min-height:104px!important;
    padding:12px 13px!important;
    border-radius:18px!important;
    display:grid!important;
    grid-template-columns:58px minmax(0,1fr) 30px!important;
    align-items:center!important;
    gap:12px!important;
    background:linear-gradient(145deg,#fff,#fbfaf6)!important;
    border-color:#e7e1d5!important;
    box-shadow:0 5px 20px rgba(38,31,18,.035);
}
.nr-home-category-section .nr-category-card:hover{
    transform:translateY(-3px)!important;
    border-color:#d4c29b!important;
    box-shadow:0 12px 30px rgba(38,31,18,.08)!important;
}
.nr-home-category-section .nr-category-card__media{
    width:58px!important;height:58px!important;flex-basis:58px!important;
    border-radius:15px!important;background:#f1ede4!important;
}
.nr-home-category-section .nr-category-card__copy{min-width:0;display:block!important}
.nr-home-category-section .nr-category-card h3{font-size:15px!important;line-height:1.55!important;margin:0!important}
.nr-home-category-section .nr-category-card__copy>span{font-size:13px!important;color:#756d60!important;margin-top:3px!important;display:block}
.nr-home-category-section .nr-category-card__arrow{
    width:30px;height:30px;border-radius:10px;display:grid!important;place-items:center;
    background:#f4eee1;color:var(--nr-gold-strong);transition:.2s;
}
.nr-home-category-section .nr-category-card:hover .nr-category-card__arrow{background:var(--nr-dark);color:#fff;transform:translateX(-2px)}

/* ===== Product cards and filters: no unreadably small metadata ===== */
.nr-product-card__meta{font-size:13px!important;color:#746b5d!important}
.nr-product-card h2,.nr-product-card h3{font-size:15.5px!important;line-height:1.7!important}
.nr-product-card__price{font-size:14px!important}
.nr-availability{font-size:11.5px!important;padding:6px 9px!important}
.nr-list-toolbar{min-height:62px}
.nr-sort-pills__label,.nr-sort-pills a,.nr-list-count{font-size:13px!important}
.nr-filter-chip{font-size:12.5px!important}
.nr-product-listing .item-box .title h6{font-size:14px!important;font-weight:800!important;color:#312d27}
.nr-product-listing .item-box .form-check-label,
.nr-product-listing .item-box .form-label,
.nr-product-listing .item-box .form-control,
.nr-product-listing .item-box .form-select,
.nr-product-listing .item-box .btn{font-size:13.5px!important}
.nr-product-listing .item-box .fw-bold{font-size:12.5px!important;color:#6d6558}

/* ===== Separate homepage visual zones ===== */
.nr-home-banner-section{
    background:#fff!important;
    padding:34px 0!important;
    border-block:1px solid #eee9df;
}
.nr-home-banner-section .nr-banner-card{
    background:#f7f4ed!important;
    border-color:#e1dacd!important;
    box-shadow:0 10px 32px rgba(38,31,18,.06);
}
.nr-home-best-section{
    position:relative;
    background:linear-gradient(180deg,var(--nr-sage) 0,#f5f7f3 100%)!important;
    border-block:1px solid var(--nr-sage-strong);
}
.nr-home-best-section .nr-product-card{background:rgba(255,255,255,.94)}
.nr-home-best-section .nr-eyebrow{color:#5f744f}
.nr-home-best-section .nr-eyebrow:before{background:#7d946a}

/* ===== Public page headers: compact, premium, less empty height. ===== */
.nr-content-page .nr-content-hero{padding:26px 30px!important}
.nr-content-page .nr-content-title{font-size:clamp(29px,3vw,42px)!important;margin:.25rem 0 .65rem!important}
.nr-content-page .nr-content-lead{font-size:14.5px!important;line-height:1.85!important}
.nr-page-hero{padding:24px 28px!important}
.nr-page-title{font-size:clamp(27px,2.8vw,38px)!important}
.nr-page-hero__icon{width:64px!important;height:64px!important;flex-basis:64px!important;border-radius:18px!important;font-size:26px!important}

/* ===== Contact: smaller hero and a useful right-side information panel ===== */
.nr-contact-hero{padding:24px 28px!important}
.nr-contact-hero .nr-content-title{font-size:clamp(28px,3vw,42px)!important;margin:.25rem 0 .6rem!important}
.nr-contact-hero .nr-content-lead{font-size:14.5px!important;line-height:1.85!important}
.nr-contact-hero .nr-content-actions{margin-top:14px!important}
.nr-contact-hero .nr-business-metric{min-height:82px;padding:12px 14px!important}
.nr-contact-hero .nr-business-metric span{font-size:13px!important}

.nr-contact-layout--premium{
    grid-template-columns:minmax(320px,.85fr) minmax(0,1.35fr)!important;
    gap:18px!important;
    align-items:stretch;
}
.nr-contact-panel,.nr-map-card{
    border:1px solid var(--nr-border);
    border-radius:24px;
    background:#fff;
    box-shadow:0 10px 34px rgba(38,31,18,.055);
    overflow:hidden;
}
.nr-contact-panel{padding:22px}
.nr-contact-panel__head{padding:2px 2px 17px;border-bottom:1px solid #eee9df;margin-bottom:14px}
.nr-contact-panel__head h2,.nr-map-card__head h2{font-size:18px;line-height:1.55;font-weight:850;margin:0}
.nr-contact-panel__head p{font-size:13.5px;line-height:1.8;color:#71695c;margin:7px 0 0}
.nr-contact-methods{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.nr-contact-methods .nr-contact-card{
    min-width:0;padding:13px!important;border-radius:16px!important;box-shadow:none!important;
    background:#fbfaf7!important;gap:10px!important;align-items:center!important;
}
.nr-contact-methods .nr-contact-card--address{grid-column:1/-1;align-items:flex-start!important}
.nr-contact-methods .nr-contact-card__icon{width:40px;height:40px;flex:0 0 40px;border-radius:12px!important;font-size:17px!important}
.nr-contact-card__copy{min-width:0}
.nr-contact-methods .nr-contact-card h3{font-size:13px!important;margin:0 0 2px!important;color:#746b5d}
.nr-contact-methods .nr-contact-card p,.nr-contact-methods .nr-contact-card a{font-size:14px!important;line-height:1.65!important;margin:0!important;color:#26231e!important;font-weight:750!important}
.nr-contact-methods .nr-contact-card small{font-size:12px;color:#7c7468}
.nr-contact-social{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:15px;padding-top:14px;border-top:1px solid #eee9df}
.nr-contact-social>span{font-size:13px;font-weight:750;color:#625b50}
.nr-contact-social .nr-social-inline{justify-content:flex-end!important}
.nr-contact-social .nr-social-inline a{width:38px;height:38px}

.nr-map-card{padding:0;display:flex;flex-direction:column}
.nr-map-card__head{min-height:82px;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:linear-gradient(135deg,#fff,#fbf5e9);border-bottom:1px solid #ece5d8}
.nr-map-card__head .nr-eyebrow{margin-bottom:3px}
.nr-map-card__icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--nr-dark);color:#e3c273;font-size:19px}
.nr-map-card .nr-map-frame{border:0!important;border-radius:0!important;min-height:360px!important;flex:1}
.nr-map-card .nr-map-frame iframe{min-height:360px!important}
.nr-map-empty{min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px;color:#625d54}
.nr-map-empty>i{width:58px;height:58px;border-radius:18px;background:#f0ebe1;color:#8f6928;display:grid;place-items:center;font-size:25px;margin-bottom:12px}
.nr-map-empty strong{font-size:15px;color:#2e2a24}
.nr-map-empty p{font-size:13px;color:#746d62;margin:6px 0 0}

/* ===== Dark/gold surface contrast ===== */
.nr-commerce-card--wholesale,.nr-business-cta,.nr-footer{color:#fff}
.nr-commerce-card--wholesale .nr-eyebrow,.nr-business-cta .nr-eyebrow--light,.nr-footer .nr-eyebrow--light{color:#f4d894!important}
.nr-business-cta p{color:#e1dbd0!important;font-size:14.5px!important}
.nr-footer-cta p{color:#fff!important;text-shadow:0 1px 1px rgba(70,44,6,.14)}
.nr-footer-links a{color:#e0d9cd!important}
.nr-footer-contact>a,.nr-footer-contact>div{color:#eee7dc!important}
.nr-footer-contact small{color:#c1b9ac!important}
.nr-footer-address{color:#e1d9cc!important}
.nr-footer-bottom p,.nr-back-to-top{color:#c9c0b2!important}
.nr-brand--footer .nr-brand__copy small{color:#d0c7ba!important}

/* Wholesale four-step cards stay readable. */
.nr-wholesale-process .nr-process-card h3{font-size:16px!important}
.nr-wholesale-process .nr-process-card p{font-size:14px!important;line-height:1.85!important;color:#655f55!important}

@media(max-width:1199.98px){
    .nr-home-category-section .nr-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
    .nr-contact-layout--premium{grid-template-columns:1fr 1.2fr!important}
}

@media(max-width:991.98px){
    .nr-home-page .nr-commerce-card{grid-template-columns:1fr!important}
    .nr-home-page .nr-commerce-card__actions{margin-top:2px!important;justify-content:flex-start}
    .nr-home-category-section .nr-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
    .nr-contact-layout--premium{grid-template-columns:1fr!important}
    .nr-contact-methods{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:767.98px){
    body.nr-site-body{font-size:15.5px}
    .nr-trust-row .nr-trust-card{padding:12px!important;gap:9px!important}
    .nr-trust-row .nr-trust-card strong{font-size:13px!important}
    .nr-trust-row .nr-trust-card small{font-size:11.5px!important}
    .nr-proof-card{min-height:0;padding:13px!important}
    .nr-proof-card strong{font-size:13.5px!important}
    .nr-proof-card span{font-size:12.5px!important}
    .nr-home-page .nr-commerce-card{padding:17px!important}
    .nr-home-page .nr-commerce-card>div:first-child{grid-template-columns:44px minmax(0,1fr)}
    .nr-home-page .nr-commerce-card h2{font-size:16.5px!important}
    .nr-home-page .nr-commerce-card p{font-size:13.5px!important}
    .nr-home-page .nr-commerce-card__actions{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%}
    .nr-home-category-section{padding:30px 0!important}
    .nr-home-category-section .nr-category-card{grid-template-columns:50px minmax(0,1fr) 28px!important;min-height:88px!important;padding:10px!important;gap:9px!important}
    .nr-home-category-section .nr-category-card__media{width:50px!important;height:50px!important;flex-basis:50px!important}
    .nr-home-category-section .nr-category-card h3{font-size:14px!important}
    .nr-home-category-section .nr-category-card__copy>span{font-size:12px!important}
    .nr-product-card__meta{font-size:12px!important}
    .nr-product-card h2,.nr-product-card h3{font-size:14px!important}
    .nr-product-card__price{font-size:13px!important}
    .nr-contact-hero{padding:18px!important}
    .nr-contact-methods{grid-template-columns:1fr 1fr}
    .nr-contact-panel{padding:16px}
    .nr-map-card .nr-map-frame,.nr-map-card .nr-map-frame iframe,.nr-map-empty{min-height:300px!important}
}

@media(max-width:575.98px){
    .nr-home-commerce-section .nr-section-title{font-size:19px}
    .nr-proof-grid{grid-template-columns:1fr!important}
    .nr-proof-card{display:grid!important;grid-template-columns:38px minmax(0,1fr)!important}
    .nr-home-page .nr-commerce-card__actions{grid-template-columns:1fr!important}
    .nr-home-category-section .nr-category-grid{grid-template-columns:1fr!important}
    .nr-home-category-section .nr-category-card{min-height:84px!important}
    .nr-contact-methods{grid-template-columns:1fr}
    .nr-contact-methods .nr-contact-card--address{grid-column:auto}
    .nr-contact-social{align-items:flex-start;flex-direction:column}
    .nr-contact-social .nr-social-inline{justify-content:flex-start!important}
    .nr-home-banner-section{padding:26px 0!important}
}
