/* Noor Naksha v1.3.0 — canonical homepage, Woo dynamic sections, premium controls */
:root{
  --nn-page-bg:#fffdf9;
  --nn-surface-bg:#fff;
  --nn-header-bg:#fffdf9;
  --nn-muted-color:#777168;
  --nn-border-color:#e7ded2;
  --nn-link-color:#6a5434;
  --nn-link-hover-color:#b78842;
  --nn-primary-button-bg:#0b3a2e;
  --nn-primary-button-text:#fff;
  --nn-primary-button-hover:#123f32;
  --nn-secondary-button-bg:#fffdf9;
  --nn-secondary-button-text:#102a23;
  --nn-footer-bg:#063a2f;
  --nn-footer-text:#f6f0e5;
  --nn-footer-link:#fff;
  --nn-hero-overlay:#f9f5ed;
  --nn-category-badge-bg:#0b3a2e;
  --nn-category-badge-text:#fff;
  --nn-nav-active-bg:#0b3a2e;
  --nn-nav-active-text:#fff;
  --nn-nav-hover-bg:#f4eee4;
  --nn-nav-hover-text:#0b3a2e;
  --nn-header-cta-bg:#b78842;
  --nn-header-cta-text:#fff;
  --nn-nav-item-x:12px;
  --nn-nav-item-y:10px;
  --nn-nav-radius:3px;
  --nn-header-icon-size:20px;
  --nn-header-action-gap:12px;
  --nn-header-cta-x:17px;
  --nn-header-cta-y:12px;
  --nn-header-cta-radius:7px;
  --nn-cat-ref-cols-d:6;
  --nn-cat-ref-cols-t:3;
  --nn-cat-ref-cols-m:2;
  --nn-cat-ref-img-h:168px;
  --nn-product-cols-d:6;
  --nn-product-cols-t:3;
  --nn-product-cols-m:2;
  --nn-product-img-h:250px;
  --nn-footer-logo-d:240px;
  --nn-footer-logo-t:210px;
  --nn-footer-logo-m:190px;
  --nn-footer-brand-gap:14px;
  --nn-footer-pad-top:34px;
  --nn-footer-pad-bottom:18px;
  --nn-social-gap:9px;
  --nn-social-radius:5px;
  --nn-body-line-height:155%;
  --nn-heading-line-height:100%;
  --nn-section-title-t:32px;
  --nn-section-title-m:29px;
  --nn-nav-font:"Manrope","Noto Sans Bengali",Arial,sans-serif;
  --nn-nav-letter-spacing:0em;
}

body{background:var(--nn-page-bg);color:var(--nn-body-color);line-height:var(--nn-body-line-height)}
a{transition:color .18s ease,background-color .18s ease,border-color .18s ease,opacity .18s ease,transform .18s ease}
.nn-mainbar{background:var(--nn-header-bg);border-bottom-color:var(--nn-border-color)}
.nn-section{background:var(--nn-page-bg)}
.nn-section h1,.nn-section h2,.nn-section h3,.nn-hero h1{line-height:var(--nn-heading-line-height)}
.nn-text-link{color:var(--nn-link-color)}
.nn-text-link:hover{color:var(--nn-link-hover-color)}
.nn-editor-empty-state{border:1px dashed var(--nn-gold);background:#fff8e8;color:#72551f;padding:14px 16px;border-radius:7px;font-size:13px;margin:14px 0}

/* Header / navigation */
.nn-mainbar-inner{grid-template-columns:minmax(150px,var(--nn-logo-width)) minmax(0,1fr) auto;gap:clamp(14px,2vw,32px)}
.nn-brand{overflow:visible}
.nn-brand-link{max-width:var(--nn-logo-width);width:100%;display:flex;align-items:center;min-width:0}
.nn-logo{display:block!important;width:100%!important;height:auto!important;max-width:var(--nn-logo-width)!important;max-height:calc(var(--nn-header-height) - 18px)!important;object-fit:contain;object-position:left center}
.nn-logo-mobile{display:none!important}
.nn-primary-nav{min-width:0;justify-self:center}
.nn-nav-list{gap:var(--nn-nav-gap);font-family:var(--nn-nav-font);font-size:var(--nn-nav-size);font-weight:var(--nn-nav-weight);letter-spacing:var(--nn-nav-letter-spacing);color:var(--nn-nav-color);white-space:nowrap}
.nn-nav-list>li>a{padding:var(--nn-nav-item-y) var(--nn-nav-item-x);border-radius:var(--nn-nav-radius);line-height:1.15;position:relative}
.nn-nav-list>li>a:hover,.nn-nav-list>li:focus-within>a{background:var(--nn-nav-hover-bg);color:var(--nn-nav-hover-text)}
.nn-nav-list .sub-menu{top:calc(100% + 16px);left:0;border-color:var(--nn-border-color);background:var(--nn-surface-bg)}
.nn-nav-list .sub-menu a{padding:9px 11px}
.nn-auto-categories>a:after,.nn-nav-list .menu-item-has-children>a:after{content:"⌄";display:inline-block;margin-left:6px;font-size:.8em;line-height:1;transform:translateY(-1px)}
.nn-header-actions{gap:var(--nn-header-action-gap)}
.nn-icon-button .nn-icon{width:var(--nn-header-icon-size);height:var(--nn-header-icon-size)}
.nn-order-button{background:var(--nn-header-cta-bg);color:var(--nn-header-cta-text);padding:var(--nn-header-cta-y) var(--nn-header-cta-x);border-radius:var(--nn-header-cta-radius);box-shadow:0 8px 20px rgba(80,54,22,.12);white-space:nowrap}
.nn-order-button:hover{filter:brightness(.96);transform:translateY(-1px)}
.nn-mobile-nav-list .nn-current-menu-item>a,.nn-mobile-nav-list .current-menu-item>a{color:var(--nn-green);font-weight:700}

/* Top bar */
.nn-topbar-item-hide-mobile{display:inline-flex}

/* Hero — seamless text/image blend */
.nn-native-slider,.nn-hero-static{background:var(--nn-page-bg)}
.nn-native-slide .nn-hero-grid,.nn-hero-static .nn-hero-grid{grid-template-columns:44.5% 55.5%;min-height:510px;isolation:isolate}
.nn-native-slide .nn-hero-copy,.nn-hero-static .nn-hero-copy{
  min-height:510px;
  padding:58px clamp(130px,12vw,210px) 44px max(var(--nn-pad-desktop),calc((100vw - var(--nn-shell))/2 + var(--nn-pad-desktop)));
  margin-right:clamp(-190px,-11vw,-135px);
  z-index:4;
  background:linear-gradient(90deg,
    color-mix(in srgb,var(--nn-hero-overlay) 100%,transparent) 0%,
    color-mix(in srgb,var(--nn-hero-overlay) 98%,transparent) 52%,
    color-mix(in srgb,var(--nn-hero-overlay) 86%,transparent) 72%,
    color-mix(in srgb,var(--nn-hero-overlay) 45%,transparent) 88%,
    transparent 100%);
}
.nn-native-slide .nn-hero-art,.nn-hero-static .nn-hero-art{min-height:510px;margin-left:-1px;background-position:center center}
.nn-native-slide .nn-hero-art:before,.nn-hero-static .nn-hero-art:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,color-mix(in srgb,var(--nn-hero-overlay) 36%,transparent) 0%,transparent 26%);pointer-events:none}
.nn-native-slide .nn-hero-art:after,.nn-hero-static .nn-hero-art:after{background:linear-gradient(90deg,color-mix(in srgb,var(--nn-hero-overlay) 12%,transparent),transparent 26%,rgba(255,255,255,.03))}
.nn-hero-copy h1{max-width:610px}
.nn-hero-lead{max-width:560px}
.nn-btn-primary{background:var(--nn-primary-button-bg);color:var(--nn-primary-button-text);border-color:var(--nn-primary-button-bg)}
.nn-btn-primary:hover{background:var(--nn-primary-button-hover);border-color:var(--nn-primary-button-hover)}
.nn-btn-outline{background:color-mix(in srgb,var(--nn-secondary-button-bg) 74%,transparent);color:var(--nn-secondary-button-text)}

/* Reference category row */
.nn-category-layout-reference{padding:18px 0 20px;border-bottom:1px solid var(--nn-border-color)}
.nn-category-layout-reference .nn-section-head{margin-bottom:16px;align-items:flex-end}
.nn-category-layout-reference .nn-section-head h2{font-size:var(--nn-section-title-size)}
.nn-category-reference-grid{display:grid;grid-template-columns:repeat(var(--nn-cat-ref-cols-d),minmax(0,1fr));gap:16px}
.nn-category-card-reference{display:block;min-width:0;background:var(--nn-surface-bg);border:1px solid var(--nn-border-color);border-radius:8px;overflow:hidden;text-align:center;box-shadow:0 5px 18px rgba(30,42,35,.025)}
.nn-category-card-reference:hover{transform:translateY(-2px);box-shadow:0 11px 26px rgba(30,42,35,.07)}
.nn-category-card-reference .nn-category-image{height:var(--nn-cat-ref-img-h);background-color:#e9ddcd;background-size:cover;background-position:center;display:grid;place-items:center;overflow:hidden}
.nn-category-no-image>span{font-family:var(--nn-serif);font-size:50px;color:var(--nn-gold);opacity:.7}
.nn-category-card-reference .nn-category-meta{display:block;padding:10px 8px 11px}
.nn-category-card-reference .nn-category-meta strong{display:block;font-size:13px;line-height:1.25;margin:0 0 4px;color:var(--nn-ink);font-weight:600}
.nn-category-card-reference .nn-category-meta small{display:flex;justify-content:center;align-items:center;gap:5px;color:var(--nn-muted-color);font-size:10px;line-height:1}
.nn-category-card-reference .nn-category-meta small .nn-icon{width:10px;height:10px}

/* Optional large showcase retained */
.nn-category-layout-showcase .nn-category-showcase-label{background:var(--nn-category-badge-bg);color:var(--nn-category-badge-text)}
.nn-category-layout-showcase .nn-category-heading-box{background:var(--nn-surface-bg)}

/* WooCommerce product row */
.nn-products-section{padding:16px 0 24px}
.nn-product-grid{grid-template-columns:repeat(var(--nn-product-cols-d),minmax(0,1fr));gap:16px}
.nn-product-image{height:var(--nn-product-img-h);background-color:#eee2d4;border-radius:8px;background-position:center;background-size:cover}
.nn-product-info{padding:9px 2px 0}
.nn-product-info h3{font-size:var(--nn-product-title-size);font-weight:600;line-height:1.35;margin:0 0 5px}
.nn-price{font-size:var(--nn-price-size)}
.nn-rating-row .star-rating{font-size:11px;width:5.4em;margin:0;color:#d99c2d}
.nn-rating-row{min-height:15px}

/* Canonical custom CTA */
.nn-custom-banner-wrap{padding:10px 0 12px}
.nn-custom-banner{min-height:188px;border-radius:9px;background:radial-gradient(circle at 12% 50%,rgba(208,171,110,.16),transparent 20%),linear-gradient(110deg,var(--nn-green),#034438);grid-template-columns:210px minmax(0,1fr) 420px;padding:24px 36px}
.nn-custom-emblem{border-color:var(--nn-gold);color:var(--nn-gold)}
.nn-custom-copy .nn-eyebrow{color:#e3bf82}
.nn-custom-copy h2{color:#fff}
.nn-custom-steps .nn-step-icon,.nn-custom-steps>.nn-icon{color:#e0b36e}

/* Trust strip */
.nn-trust-section{padding:16px 0 22px}
.nn-trust-title{color:var(--nn-ink)}
.nn-trust-grid .nn-icon{color:var(--nn-ink)}

/* Testimonials */
.nn-testimonials{background:linear-gradient(90deg,#fbf7f0,#f6efe5);border-top:1px solid var(--nn-border-color)}
.nn-testimonial-card{background:rgba(255,255,255,.75);border-color:rgba(211,198,181,.55)}

/* Footer: fixed logo markup + reference proportions */
.nn-footer{background:var(--nn-footer-bg);color:var(--nn-footer-text);padding:var(--nn-footer-pad-top) 0 var(--nn-footer-pad-bottom)}
.nn-footer-grid{grid-template-columns:1.55fr .78fr .92fr 1.05fr 1.45fr;gap:38px;align-items:start}
.nn-footer-brand{display:flex;flex-direction:column;gap:var(--nn-footer-brand-gap);min-width:0}
.nn-footer-brand-left{align-items:flex-start;text-align:left}.nn-footer-brand-center{align-items:center;text-align:center}.nn-footer-brand-right{align-items:flex-end;text-align:right}
.nn-footer-logo-link{display:block;max-width:var(--nn-footer-logo-d);width:100%;line-height:0}
.nn-footer-logo{display:block!important;width:100%!important;height:auto!important;max-width:var(--nn-footer-logo-d)!important;max-height:92px!important;object-fit:contain;object-position:left center}
.nn-footer-brand-center .nn-footer-logo{object-position:center}.nn-footer-brand-right .nn-footer-logo{object-position:right center}
.nn-footer-fallback-brand{display:flex;align-items:center;gap:11px;color:#fff}
.nn-footer-tagline{margin:0!important;color:#b9c9c3!important;font-size:10px!important}
.nn-footer h3{color:#fff;font-size:11px}
.nn-footer-links a,.nn-footer p,.nn-footer .nn-newsletter p{color:var(--nn-footer-text)}
.nn-footer a{color:var(--nn-footer-link)}
.nn-footer a:hover{color:var(--nn-gold-soft)}
.nn-socials{display:flex;gap:var(--nn-social-gap);align-items:center;flex-wrap:wrap}
.nn-social-link{width:28px!important;height:28px!important;border:1px solid var(--nn-social-border)!important;border-radius:var(--nn-social-radius)!important;background:var(--nn-social-bg)!important;color:var(--nn-social-color)!important;display:grid!important;place-items:center;overflow:hidden}
.nn-social-link:hover{background:var(--nn-social-hover-bg)!important;color:var(--nn-social-hover-color)!important}
.nn-social-link .nn-icon{width:var(--nn-social-size)!important;height:var(--nn-social-size)!important}
.nn-social-custom-icon{width:var(--nn-social-size)!important;height:var(--nn-social-size)!important;object-fit:contain!important}
.nn-footer-contact{display:flex;align-items:center;gap:7px;margin:7px 0!important}
.nn-footer-bottom{color:color-mix(in srgb,var(--nn-footer-text) 62%,transparent)}

/* Elementor content should never be forced into a theme box */
.nn-home-content{width:100%;margin:0;padding:0}
.nn-home-content>.elementor,.nn-elementor-fullwidth>.elementor{width:100%;max-width:none}
.nn-elementor-fullwidth{min-height:40vh}

/* Better responsive behavior */
@media(max-width:1200px){
  .nn-mainbar-inner{gap:14px}
  .nn-nav-list{gap:min(var(--nn-nav-gap),18px)}
  .nn-order-button{display:inline-flex}
  .nn-native-slide .nn-hero-copy,.nn-hero-static .nn-hero-copy{padding-right:150px;margin-right:-125px}
  .nn-footer-grid{gap:28px}
}
@media(max-width:992px){
  .nn-category-reference-grid{grid-template-columns:repeat(var(--nn-cat-ref-cols-t),minmax(0,1fr))}
  .nn-product-grid{grid-template-columns:repeat(var(--nn-product-cols-t),minmax(0,1fr))}
  .nn-product-image{height:min(var(--nn-product-img-h),300px)}
  .nn-native-slide .nn-hero-grid,.nn-hero-static .nn-hero-grid{grid-template-columns:48% 52%;min-height:500px}
  .nn-native-slide .nn-hero-copy,.nn-hero-static .nn-hero-copy{min-height:500px;padding:46px 120px 40px var(--nn-pad-tablet);margin-right:-100px}
  .nn-native-slide .nn-hero-art,.nn-hero-static .nn-hero-art{min-height:500px}
  .nn-section h2,.nn-testimonial-title h2{font-size:var(--nn-section-title-t)}
  .nn-custom-banner{grid-template-columns:140px minmax(0,1fr);gap:22px}
  .nn-custom-steps{grid-column:1/-1;max-width:660px;width:100%;justify-self:center}
  .nn-footer-grid{grid-template-columns:1.35fr 1fr 1fr;gap:30px}
  .nn-newsletter{grid-column:2/4}
  .nn-footer-logo-link{max-width:var(--nn-footer-logo-t)}
  .nn-footer-logo{max-width:var(--nn-footer-logo-t)!important}
}
@media(max-width:720px){
  .nn-topbar-item-hide-mobile,.nn-social-hide-mobile{display:none!important}
  .nn-logo-mobile{display:block!important}
  .nn-brand-link.has-mobile-logo .nn-logo-desktop{display:none!important}
  .nn-mainbar-inner{height:68px}
  .nn-header-actions{gap:5px}
  .nn-header-actions .nn-order-button{display:none}
  .nn-native-slide .nn-hero-grid,.nn-hero-static .nn-hero-grid{grid-template-columns:1fr;min-height:610px}
  .nn-native-slide .nn-hero-art,.nn-hero-static .nn-hero-art{grid-area:1/1;min-height:610px;margin:0;background-image:var(--nn-hero-mobile-image,var(--nn-hero-image));background-position:center}
  .nn-native-slide .nn-hero-copy,.nn-hero-static .nn-hero-copy{grid-area:1/1;min-height:610px;margin:0;padding:230px var(--nn-pad-mobile) 58px;background:linear-gradient(180deg,transparent 0%,color-mix(in srgb,var(--nn-hero-overlay) 22%,transparent) 34%,color-mix(in srgb,var(--nn-hero-overlay) 92%,transparent) 68%,var(--nn-hero-overlay) 100%)}
  .nn-hero-benefits{grid-template-columns:repeat(3,minmax(0,1fr))}
  .nn-category-layout-reference .nn-section-head,.nn-products-section .nn-section-head{gap:12px}
  .nn-category-reference-wrap{overflow:hidden}
  .nn-category-reference-grid{display:grid;grid-template-columns:repeat(var(--nn-cat-ref-cols-m),minmax(0,1fr));gap:12px}
  .nn-category-card-reference .nn-category-image{height:min(var(--nn-cat-ref-img-h),170px)}
  .nn-product-grid{grid-template-columns:repeat(var(--nn-product-cols-m),minmax(0,1fr));gap:12px}
  .nn-product-image{height:min(var(--nn-product-img-h),235px)}
  .nn-section h2,.nn-testimonial-title h2{font-size:var(--nn-section-title-m)}
  .nn-custom-banner{grid-template-columns:1fr;padding:26px 22px}
  .nn-custom-emblem{display:none}
  .nn-custom-steps{grid-column:auto}
  .nn-trust-grid{grid-template-columns:repeat(2,1fr)}
  .nn-testimonial-grid{grid-template-columns:1fr}
  .nn-testimonial-title{grid-column:auto}
  .nn-footer-grid{grid-template-columns:1fr 1fr;gap:26px}
  .nn-footer-brand{grid-column:1/-1}
  .nn-newsletter{grid-column:1/-1}
  .nn-footer-logo-link{max-width:var(--nn-footer-logo-m)}
  .nn-footer-logo{max-width:var(--nn-footer-logo-m)!important;max-height:78px!important}
}
@media(max-width:480px){
  .nn-category-reference-grid{grid-template-columns:repeat(var(--nn-cat-ref-cols-m),minmax(0,1fr))}
  .nn-category-card-reference .nn-category-meta strong{font-size:12px}
  .nn-category-layout-reference .nn-section-head,.nn-products-section .nn-section-head{align-items:flex-end}
  .nn-text-link{font-size:9px}
  .nn-product-image{height:min(var(--nn-product-img-h),190px)}
  .nn-footer-grid{grid-template-columns:1fr}
  .nn-footer-brand,.nn-newsletter{grid-column:auto}
}
.nn-custom-emblem.has-custom-image{border:0;border-radius:0;transform:none;width:170px;height:160px;overflow:visible}
.nn-custom-emblem-image{width:100%!important;height:100%!important;object-fit:contain;object-position:center}
