/* Noor Naksha v1.6.0 — category controls, focus preview, CTA/footer alignment */

/* Category: v1.6 responsive gap is authoritative; legacy --nn-category-gap no longer drives layout. */
.nn-category-carousel-enabled{position:relative}
.nn-category-carousel-enabled [data-nn-category-track-v16]{scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-y;cursor:grab}
.nn-category-carousel-enabled [data-nn-category-track-v16]::-webkit-scrollbar{display:none}
.nn-category-carousel-enabled.is-dragging [data-nn-category-track-v16]{cursor:grabbing;scroll-behavior:auto!important;user-select:none}
.nn-category-layout-showcase .nn-category-carousel-enabled .nn-category-track{display:flex;gap:var(--nn-cat-gap-d)!important;overflow-x:auto;scroll-snap-type:x mandatory;padding:0}
.nn-category-layout-showcase .nn-category-carousel-enabled .nn-category-showcase-card{flex:0 0 calc((100% - (var(--nn-cat-gap-d) * (var(--nn-cat-visible-d) - 1)) - var(--nn-cat-peek-d)) / var(--nn-cat-visible-d))!important}
.nn-category-layout-reference .nn-category-reference-wrap.nn-category-carousel-enabled{position:relative;overflow:hidden}
.nn-category-layout-reference .nn-category-carousel-enabled .nn-category-reference-grid{display:flex!important;grid-template-columns:none!important;gap:var(--nn-cat-gap-d)!important;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px}
.nn-category-layout-reference .nn-category-carousel-enabled .nn-category-card-reference{flex:0 0 calc((100% - (var(--nn-cat-gap-d) * (var(--nn-cat-ref-cols-d) - 1)) - var(--nn-cat-peek-d)) / var(--nn-cat-ref-cols-d));min-width:0;scroll-snap-align:start}
.nn-category-fallback-initial{position:relative;z-index:2}
.nn-category-showcase-image:not(.nn-category-no-image)>.nn-category-fallback-initial,.nn-category-image:not(.nn-category-no-image)>.nn-category-fallback-initial{display:none!important}


.nn-category-layout-showcase .nn-category-stage:not(.nn-category-carousel-enabled) .nn-category-track{overflow:visible!important;flex-wrap:wrap;gap:var(--nn-cat-gap-d)!important;scroll-snap-type:none!important}
.nn-category-layout-showcase .nn-category-stage:not(.nn-category-carousel-enabled) .nn-category-showcase-card{flex:0 0 calc((100% - (var(--nn-cat-gap-d) * (var(--nn-cat-visible-d) - 1))) / var(--nn-cat-visible-d))!important}
@media(min-width:721px) and (max-width:1024px){.nn-category-layout-showcase .nn-category-stage:not(.nn-category-carousel-enabled) .nn-category-track{gap:var(--nn-cat-gap-t)!important}.nn-category-layout-showcase .nn-category-stage:not(.nn-category-carousel-enabled) .nn-category-showcase-card{flex-basis:calc((100% - (var(--nn-cat-gap-t) * (var(--nn-cat-visible-t) - 1))) / var(--nn-cat-visible-t))!important}}
@media(max-width:720px){.nn-category-layout-showcase .nn-category-stage:not(.nn-category-carousel-enabled) .nn-category-track{gap:var(--nn-cat-gap-m)!important}.nn-category-layout-showcase .nn-category-stage:not(.nn-category-carousel-enabled) .nn-category-showcase-card{flex-basis:calc((100% - (var(--nn-cat-gap-m) * (var(--nn-cat-visible-m) - 1))) / var(--nn-cat-visible-m))!important}}

/* Badge position is now wired per device. */
@media(min-width:1025px){
 .nn-category-showcase-card.nn-overlay-d-left .nn-category-showcase-label{left:24px!important;right:auto!important;transform:none!important;text-align:left}
 .nn-category-showcase-card.nn-overlay-d-center .nn-category-showcase-label{left:50%!important;right:auto!important;transform:translateX(-50%)!important;text-align:center}
 .nn-category-showcase-card.nn-overlay-d-right .nn-category-showcase-label{right:24px!important;left:auto!important;transform:none!important;text-align:right}
}
@media(min-width:721px) and (max-width:1024px){
 .nn-category-layout-showcase .nn-category-carousel-enabled .nn-category-track,.nn-category-layout-reference .nn-category-carousel-enabled .nn-category-reference-grid{gap:var(--nn-cat-gap-t)!important}
 .nn-category-layout-showcase .nn-category-carousel-enabled .nn-category-showcase-card{flex-basis:calc((100% - (var(--nn-cat-gap-t) * (var(--nn-cat-visible-t) - 1)) - var(--nn-cat-peek-t)) / var(--nn-cat-visible-t))!important}
 .nn-category-layout-reference .nn-category-carousel-enabled .nn-category-card-reference{flex-basis:calc((100% - (var(--nn-cat-gap-t) * (var(--nn-cat-ref-cols-t) - 1)) - var(--nn-cat-peek-t)) / var(--nn-cat-ref-cols-t))!important}
 .nn-category-showcase-card.nn-overlay-t-left .nn-category-showcase-label{left:20px!important;right:auto!important;transform:none!important;text-align:left}
 .nn-category-showcase-card.nn-overlay-t-center .nn-category-showcase-label{left:50%!important;right:auto!important;transform:translateX(-50%)!important;text-align:center}
 .nn-category-showcase-card.nn-overlay-t-right .nn-category-showcase-label{right:20px!important;left:auto!important;transform:none!important;text-align:right}
}
@media(max-width:720px){
 .nn-category-layout-showcase .nn-category-carousel-enabled .nn-category-track,.nn-category-layout-reference .nn-category-carousel-enabled .nn-category-reference-grid{gap:var(--nn-cat-gap-m)!important}
 .nn-category-layout-showcase .nn-category-carousel-enabled .nn-category-showcase-card{flex-basis:calc((100% - (var(--nn-cat-gap-m) * (var(--nn-cat-visible-m) - 1)) - var(--nn-cat-peek-m)) / var(--nn-cat-visible-m))!important}
 .nn-category-layout-reference .nn-category-carousel-enabled .nn-category-card-reference{flex-basis:calc((100% - (var(--nn-cat-gap-m) * (var(--nn-cat-ref-cols-m) - 1)) - var(--nn-cat-peek-m)) / var(--nn-cat-ref-cols-m))!important;min-width:0!important}
 .nn-category-showcase-card.nn-overlay-m-left .nn-category-showcase-label{left:16px!important;right:auto!important;transform:none!important;text-align:left}
 .nn-category-showcase-card.nn-overlay-m-center .nn-category-showcase-label{left:50%!important;right:auto!important;transform:translateX(-50%)!important;text-align:center}
 .nn-category-showcase-card.nn-overlay-m-right .nn-category-showcase-label{right:16px!important;left:auto!important;transform:none!important;text-align:right}
}

/* Category nav: only shown by JS when scrolling exists. */
.nn-category-carousel-nav[hidden]{display:none!important}
.nn-category-carousel-nav{position:absolute;z-index:8;pointer-events:none;display:flex;align-items:center;justify-content:center;gap:8px}
.nn-category-carousel-nav>*{pointer-events:auto}
.nn-category-nav-middle{inset:0}
.nn-category-nav-middle .nn-category-prev{position:absolute;left:16px;top:50%;transform:translateY(-50%)}
.nn-category-nav-middle .nn-category-next{position:absolute;right:16px;top:50%;transform:translateY(-50%)}
.nn-category-nav-middle .nn-category-dots{position:absolute;left:50%;bottom:14px;transform:translateX(-50%)}
.nn-category-nav-bottom{left:50%;bottom:10px;transform:translateX(-50%);background:rgba(255,253,249,.88);padding:5px 8px;border-radius:999px}
.nn-category-carousel-nav .nn-category-arrow{position:static;width:42px;height:42px;transform:none;border-radius:50%;border:1px solid rgba(11,58,46,.18);background:rgba(255,253,249,.94);color:var(--nn-green);font-size:28px;display:grid;place-items:center;box-shadow:0 8px 18px rgba(20,40,34,.08)}
.nn-category-nav-style-minimal .nn-category-arrow{background:transparent;box-shadow:none;border-color:transparent}
.nn-category-dots{display:flex;align-items:center;gap:6px}
.nn-category-dot{width:7px;height:7px;border:0;padding:0;border-radius:999px;background:#bfc1bc;transition:.2s ease}
.nn-category-dot.is-active{width:22px;background:var(--nn-gold)}

/* CTA separator: align to icon center, not the full label block. */
.nn-custom-steps-v15{align-items:start!important}
.nn-cta-separator{position:relative;align-self:start!important;width:var(--nn-cta-arrow-length-d);height:var(--nn-cta-arrow-thickness-d);margin-top:calc((var(--nn-cta-icon-size-d) - var(--nn-cta-arrow-thickness-d))/2 + var(--nn-cta-arrow-offset-d));color:var(--nn-cta-icon-color)!important}
.nn-cta-separator-arrow .nn-icon,.nn-cta-separator-line i{display:none!important}
.nn-cta-separator:before{content:"";position:absolute;left:0;right:0;top:50%;height:var(--nn-cta-arrow-thickness-d);background:currentColor;border-radius:999px;transform:translateY(-50%)}
.nn-cta-separator-arrow:after{content:"";position:absolute;right:0;top:50%;width:8px;height:8px;border-top:var(--nn-cta-arrow-thickness-d) solid currentColor;border-right:var(--nn-cta-arrow-thickness-d) solid currentColor;transform:translateY(-50%) rotate(45deg)}
.nn-cta-separator-line:after{display:none}
@media(min-width:721px) and (max-width:1024px){.nn-cta-separator{width:var(--nn-cta-arrow-length-t);height:var(--nn-cta-arrow-thickness-t);margin-top:calc((var(--nn-cta-icon-size-t) - var(--nn-cta-arrow-thickness-t))/2 + var(--nn-cta-arrow-offset-t))}.nn-cta-separator:before{height:var(--nn-cta-arrow-thickness-t)}.nn-cta-separator-arrow:after{border-width:var(--nn-cta-arrow-thickness-t) var(--nn-cta-arrow-thickness-t) 0 0}}
@media(max-width:720px){.nn-cta-separator{display:block!important;width:var(--nn-cta-arrow-length-m);height:var(--nn-cta-arrow-thickness-m);margin-top:calc((var(--nn-cta-icon-size-m) - var(--nn-cta-arrow-thickness-m))/2 + var(--nn-cta-arrow-offset-m))}.nn-cta-separator:before{height:var(--nn-cta-arrow-thickness-m)}.nn-cta-separator-arrow:after{border-width:var(--nn-cta-arrow-thickness-m) var(--nn-cta-arrow-thickness-m) 0 0}}

/* Footer branding stack alignment. */
.nn-footer-brand{gap:0!important;width:100%;max-width:var(--nn-footer-brand-width-d)}
.nn-footer-logo-link{margin:0 0 var(--nn-footer-logo-tag-gap-d)!important;width:min(100%,var(--nn-footer-logo-d))!important}
.nn-footer-tagline{margin:0 0 var(--nn-footer-tag-contact-gap-d)!important;max-width:100%}
.nn-footer-brand-contact{width:100%;gap:var(--nn-footer-contact-gap-d)!important}
.nn-footer-brand-contact-item{display:flex!important;align-items:center!important;width:fit-content;max-width:100%;gap:8px!important;line-height:1.45}
.nn-footer-brand-contact-item .nn-icon{width:var(--nn-footer-contact-icon-d)!important;height:var(--nn-footer-contact-icon-d)!important;min-width:var(--nn-footer-contact-icon-d)!important;margin:0!important;align-self:flex-start;transform:translateY(.16em)}
.nn-footer-brand-contact-item span{min-width:0;overflow-wrap:anywhere}
.nn-footer-brand-d-left .nn-footer-brand-contact{align-items:flex-start;text-align:left}.nn-footer-brand-d-center .nn-footer-brand-contact{align-items:center;text-align:center}.nn-footer-brand-d-right .nn-footer-brand-contact{align-items:flex-end;text-align:right}
@media(min-width:721px) and (max-width:1024px){.nn-footer-brand{max-width:var(--nn-footer-brand-width-t)}.nn-footer-logo-link{margin-bottom:var(--nn-footer-logo-tag-gap-t)!important}.nn-footer-tagline{margin-bottom:var(--nn-footer-tag-contact-gap-t)!important}.nn-footer-brand-contact-item .nn-icon{width:var(--nn-footer-contact-icon-t)!important;height:var(--nn-footer-contact-icon-t)!important;min-width:var(--nn-footer-contact-icon-t)!important}.nn-footer-brand-t-left .nn-footer-brand-contact{align-items:flex-start;text-align:left}.nn-footer-brand-t-center .nn-footer-brand-contact{align-items:center;text-align:center}.nn-footer-brand-t-right .nn-footer-brand-contact{align-items:flex-end;text-align:right}}
@media(max-width:720px){.nn-footer-brand{max-width:min(100%,var(--nn-footer-brand-width-m))}.nn-footer-logo-link{margin-bottom:var(--nn-footer-logo-tag-gap-m)!important}.nn-footer-tagline{margin-bottom:var(--nn-footer-tag-contact-gap-m)!important}.nn-footer-brand-contact-item .nn-icon{width:var(--nn-footer-contact-icon-m)!important;height:var(--nn-footer-contact-icon-m)!important;min-width:var(--nn-footer-contact-icon-m)!important}.nn-footer-brand-m-left .nn-footer-brand-contact{align-items:flex-start;text-align:left}.nn-footer-brand-m-center .nn-footer-brand-contact{align-items:center;text-align:center}.nn-footer-brand-m-right .nn-footer-brand-contact{align-items:flex-end;text-align:right}}

/* Customizer Focus Preview target. */
@keyframes nnFocusPulse{0%,100%{box-shadow:0 0 0 0 rgba(201,149,69,0)}35%{box-shadow:0 0 0 5px rgba(201,149,69,.38),0 0 0 10px rgba(201,149,69,.12)}}
.nn-focus-preview-target{position:relative!important;outline:2px solid rgba(201,149,69,.92)!important;outline-offset:4px!important;animation:nnFocusPulse 1.1s ease 1!important;z-index:15}
