/*
Theme Name: Nur Pur
Theme URI: https://nur-pur.ch
Description: Eigenes Theme für Nur Pur – handgemachte Produkte für bewussten Genuss
Version: 1.0
Author: Miro
Text Domain: nurpur
*/

/* ── Reset ────────────────────────────────────────────── */
@font-face{font-family:"Brittany Signature";src:url("assets/fonts/BrittanySignature.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:"Nunito Sans",sans-serif;font-size:16px;line-height:1.5;color:#6B4A2E;background:#FDF8F2;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:#6B4A2E;text-decoration:none}
ul{list-style:none}

/* ── Page Layout ──────────────────────────────────────── */
.np-page{display:flex;flex-direction:column;min-height:100vh}
.np-main{flex:1}
.woocommerce-cart .np-main,.woocommerce-checkout .np-main,.woocommerce-account .np-main{padding:40px 100px}
.woocommerce-cart .np-main>*,.woocommerce-checkout .np-main>*,.woocommerce-account .np-main>*{max-width:1400px;margin:0 auto}
.woocommerce-cart .wp-block-woocommerce-cart.alignwide,.woocommerce-checkout .wp-block-woocommerce-checkout.alignwide{max-width:1400px;margin:0 auto;width:100%}

/* ── Header ──────────────────────────────────────────── */
.np-header{background:#FFF;border-bottom:1px solid #EDE4D6;padding:30px 100px 50px}
.np-header-inner{display:flex;align-items:center;justify-content:space-between;max-width:1400px;margin:0 auto;flex-wrap:wrap;row-gap:12px}
.np-logo{display:flex;align-items:center;text-decoration:none;flex-shrink:0;margin-right:50px}
.np-logo-img{height:48px;width:auto;display:block}
.np-nav{flex:1;display:flex;justify-content:center}
.np-nav-list{display:flex;gap:32px;align-items:center;list-style:none}
.np-nav-list a{font-weight:600;font-size:0.9rem;color:#6B4A2E;padding:8px 0;transition:color 0.2s;text-decoration:none}
.np-nav-list a:hover{color:#B78759}
.np-nav-list .current-menu-item a,.np-nav-list .current_page_item a{font-weight:700;border-bottom:2px solid #6B4A2E}
.np-nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:8px;flex-direction:column;gap:5px}
.np-header-btn{background:#B78759;color:#FFF!important;padding:10px 24px;border-radius:8px;font-size:0.85rem;font-weight:600;white-space:nowrap;transition:background 0.2s;text-decoration:none;margin-left:24px}
.np-header-btn:hover{background:#8A6241;color:#FFF!important}
.np-header-actions{display:flex;align-items:center;gap:16px;margin-left:24px}
.np-header-icon{color:#6B4A2E;position:relative;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;transition:background 0.2s}
.np-header-icon:hover{background:#DCC5A8;color:#8A6241}
.np-header-icon .np-icon{width:22px;height:22px}
.np-cart-badge{position:absolute;top:-2px;right:-2px;background:#B78759;color:#FFF;border-radius:50%;font-size:0.65rem;font-weight:700;width:16px;height:16px;display:flex;align-items:center;justify-content:center;line-height:1}
.np-icon{width:24px;height:24px;color:#8A6241;flex-shrink:0}
.np-cat-icon{width:20px;height:20px;color:inherit;flex-shrink:0}
.np-home-step-icon{width:32px;height:32px;color:#6B4A2E;flex-shrink:0}
.np-footer-icon{width:20px;height:20px;color:#8A6241;flex-shrink:0}
.np-footer-social-icon{width:22px;height:22px;color:#8A6241}
.np-nav-toggle span{display:block;width:24px;height:2px;background:#6B4A2E;border-radius:2px;transition:0.3s}

/* ── Footer ──────────────────────────────────────────── */
.np-footer{background:#F5EBDD;border-top:1px solid #DCC5A8;padding:40px 100px 0;margin-top:auto}
.np-footer-inner{display:grid;grid-template-columns:1.5fr 1.2fr 1fr 1fr;gap:40px;max-width:1400px;margin:0 auto;padding-bottom:24px}
.np-footer-logo{height:65px;width:auto;display:block;margin-bottom:8px}
.np-footer-tagline{font-family:"Brittany Signature","Cormorant Garamond",serif;font-size:1.3rem;color:#8A6241;margin:0 0 4px}
.np-footer-subline{font-size:0.85rem;color:#8A6241;margin:0 0 16px;line-height:1.4}
.np-footer-social{display:flex;gap:12px}
.np-footer-social a{color:#8A6241;transition:color 0.2s;display:flex}
.np-footer-social a:hover{color:#6B4A2E}
.np-footer-social svg{width:22px;height:22px}
.np-footer-col h4{font-family:"Cormorant Garamond",serif;font-size:1.1rem;font-weight:600;color:#6B4A2E;margin-bottom:12px}
.np-footer-col p,.np-footer-col li{font-size:0.85rem;color:#8A6241;line-height:1.8}
.np-footer-col a{color:#8A6241;transition:color 0.2s}
.np-footer-col a:hover{color:#6B4A2E}
.np-footer-contact{list-style:none;padding:0}
.np-footer-contact li{display:flex;align-items:flex-start;gap:8px;margin-bottom:6px;font-size:0.85rem;color:#8A6241;line-height:1.4}
.np-footer-icon{width:16px;height:16px;flex-shrink:0;margin-top:2px;color:#6B4A2E}
.np-footer-bottom{text-align:center;padding:16px 0;font-size:0.8rem;color:#B78759;border-top:1px solid #EDE4D6}

/* ── Category Filter ──────────────────────────────────── */
.np-cat-filter{background:#FFF;border-bottom:1px solid #EDE4D6;padding:0 100px}
.np-cat-filter-inner{display:flex;gap:4px;max-width:1400px;margin:0 auto;padding:12px 0}
.np-cat-filter-item{font-size:0.85rem;font-weight:600;color:#6B4A2E;padding:8px 16px;border-radius:8px;text-decoration:none;transition:all 0.2s;white-space:nowrap;text-align:center;flex:1;display:flex;align-items:center;justify-content:center;gap:6px}
.np-cat-icon{width:16px;height:16px;flex-shrink:0}
.np-cat-filter-item:hover{background:#F5EBDD}
.np-cat-filter-item.active{background:#B78759;color:#FFF}
.np-cat-filter-select{display:none}

/* ── Hero ────────────────────────────────────────────── */
.np-shop-hero{background:linear-gradient(135deg,#FDF8F2 0%,#F5EBDD 100%);padding:0 100px}
.np-shop-hero-inner{display:flex;align-items:center;min-height:0;max-width:1400px;margin:0 auto}
.np-shop-hero-text{flex:0 0 45%;padding:15px 0;display:flex;flex-direction:column;justify-content:center}
.np-shop-hero-text h1{font-family:"Cormorant Garamond",serif;font-weight:700;font-size:clamp(2rem,4vw,3.2rem);line-height:1.15;color:#6B4A2E;margin:0 0 6px;max-width:480px}
.np-shop-hero-text p{font-size:clamp(0.85rem,0.85rem+((1vw-0.2rem)*0.4),1.1rem);line-height:1.5;color:#8A6241;margin:0 0 20px;max-width:420px}
.np-divider{width:50px;height:2px;border:none;background:#B78759;margin:10px 0}
.np-shop-hero-img{flex:1;display:flex;align-items:stretch;height:320px;overflow:hidden;position:relative}
.np-shop-hero-img::before{content:"";position:absolute;inset:0 auto 0 -1px;width:72%;z-index:2;pointer-events:none;background:linear-gradient(90deg,#F8F2E9 0%,#F7F0E6 18%,rgba(247,240,230,.96) 32%,rgba(247,240,230,.66) 58%,rgba(247,240,230,.22) 82%,rgba(247,240,230,0) 100%)}
.np-shop-hero-img img{object-fit:cover;width:100%;height:100%;max-height:320px;display:block;border-radius:0}
.np-shop-hero-placeholder{background:#F0EAE0;width:100%;min-height:200px}
.np-shop-hero--small{min-height:auto;padding:40px 100px}
.np-shop-hero--small .np-shop-hero-text{flex:1;padding:20px 0}
.np-shop-hero--small .np-shop-hero-text h1{max-width:none}

/* ── Shop Bar ─────────────────────────────────────────── */
.np-shop-bar{display:flex;align-items:center;justify-content:space-between;padding:24px 0 12px;max-width:1400px;margin:0 auto}
.np-shop-bar-text{font-size:0.85rem;color:#8A6241;margin:0}
.np-shop-bar-right{display:flex;align-items:center;gap:16px}
.np-shop-bar-count{font-size:0.85rem;color:#8A6241;font-weight:600}
.np-shop-bar-sort{padding:8px 12px;border:1px solid #DCC5A8;border-radius:8px;background:#FFF;color:#6B4A2E;font-size:0.85rem;font-family:"Nunito Sans",sans-serif;font-weight:600;appearance:auto}

/* ── Shop Banner ──────────────────────────────────────── */
.np-shop-banner{padding:40px 100px;background:#FFF}
.np-shop-banner-inner{display:flex;align-items:stretch;max-width:1400px;margin:0 auto;background:#F5EBDD;border-radius:16px;overflow:hidden}
.np-shop-banner-img{flex:0 0 40%;min-height:300px}
.np-shop-banner-img img{width:100%;height:100%;object-fit:cover;display:block}
.np-shop-banner-text{flex:1;padding:40px 48px;display:flex;flex-direction:column;justify-content:center}
.np-shop-banner-text h2{font-family:"Cormorant Garamond",serif;font-size:clamp(1.5rem,3vw,2.2rem);font-weight:700;color:#6B4A2E;margin:0 0 8px}
.np-shop-banner-text p{font-size:0.95rem;color:#8A6241;line-height:1.5;margin:0 0 20px;max-width:480px}
.np-shop-banner-btn{display:inline-block;background:#B78759;color:#FFF;padding:12px 28px;border-radius:8px;font-size:0.9rem;font-weight:600;text-decoration:none;transition:background 0.2s;align-self:flex-start}
.np-shop-banner-btn:hover{background:#8A6241;color:#FFF}

/* ── Product USPs ────────────────────────────────────── */
.np-product-usps{background:#FFF;padding:0 100px}
.np-product-usps-inner{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;max-width:1400px;margin:0 auto;padding:20px 0;gap:0;border-top:1px solid #EDE4D6}
.np-product-usp{display:flex;align-items:center;justify-content:center;gap:10px;padding:0 32px;flex:1 1 0;min-width:200px}
.np-product-usp .np-icon{width:28px;height:28px;color:#B78759;flex-shrink:0}
.np-product-usp span{font-size:0.9rem;font-weight:600;color:#6B4A2E;white-space:nowrap}
.np-product-usp-sep{width:1px;height:32px;background:#DCC5A8;flex-shrink:0}

/* ── Shop Grids ──────────────────────────────────────── */
.np-shop-section{padding:0 100px;background:#FFF}
.np-shop-section:first-of-type{padding-top:0}
.np-shop-section:last-of-type{padding-bottom:40px}
.np-shop-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:40px 0;max-width:1400px;margin:0 auto}
.np-shop-section:first-of-type .np-shop-grid{padding-top:0}

/* ── Cards ───────────────────────────────────────────── */
.np-card{background:#FFF;border-radius:16px;overflow:hidden;border:1px solid #DCC5A8;text-decoration:none;display:flex;flex-direction:column;transition:transform 0.2s ease}
.np-card:hover{transform:translateY(-3px)}
.np-card img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;margin:0;border-radius:0}
.np-card-img-placeholder{background:#F0EAE0;width:100%;min-height:200px;display:block}
.np-card-label{padding:14px;flex:1}
.np-card-label h3{font-family:"Nunito Sans",sans-serif;font-size:0.95rem;font-weight:600;color:#6B4A2E;margin:0 0 4px;line-height:1.3}
.np-card-label p{font-size:0.85rem;color:#8A6241;margin:0;line-height:1.4}

/* ── Single Product ──────────────────────────────────── */
.np-breadcrumb-bar{background:#FFF;border-bottom:1px solid #EDE4D6;padding:0 100px}
.np-breadcrumb-inner{max-width:1400px;margin:0 auto;padding:12px 0}
.np-breadcrumb{font-size:0.85rem;color:#8A6241}
.np-breadcrumb a{color:#8A6241}
.np-breadcrumb a:hover{color:#6B4A2E}
.np-breadcrumb-sep{margin:0 6px;color:#DCC5A8}
.np-breadcrumb span:last-child{color:#6B4A2E;font-weight:600}

.np-product{padding:40px 100px;background:#FFF}
.np-product-inner{display:grid;grid-template-columns:1fr 1fr;gap:60px;max-width:1400px;margin:0 auto}
.np-product-gallery{display:flex;flex-direction:column;gap:16px}
.np-product-main-img{width:100%;border-radius:16px;border:1px solid #EDE4D6}
.np-product-img-placeholder{background:#F0EAE0;width:100%;min-height:400px;border-radius:16px}
.np-product-thumbs{display:flex;gap:8px;flex-wrap:wrap}
.np-product-thumbs img{width:80px;height:80px;object-fit:cover;border-radius:8px;border:1px solid #EDE4D6;cursor:pointer;transition:opacity 0.2s}
.np-product-thumbs img:hover{opacity:0.8}
.np-product-features{display:flex;gap:16px;margin-top:8px;flex-wrap:wrap}
.np-product-feature{display:flex;align-items:center;gap:8px;background:#FDF8F2;border-radius:10px;padding:12px 16px;flex:1;min-width:140px}
.np-product-feature svg{width:20px;height:20px;flex-shrink:0}
.np-product-feature span{font-size:0.75rem;font-weight:600;color:#6B4A2E;line-height:1.2}
.np-product-info{display:flex;flex-direction:column}
.np-product-back{font-size:0.85rem;color:#B78759;margin-bottom:8px;transition:color 0.2s}
.np-product-back:hover{color:#8A6241}
.np-product-title{font-family:"Cormorant Garamond",serif;font-size:clamp(1.8rem,4vw,2.8rem);font-weight:700;color:#6B4A2E;margin-bottom:4px}
.np-product-subtitle{font-size:0.95rem;color:#8A6241;margin-bottom:12px;line-height:1.4}
.np-product-price{font-size:1.3rem;font-weight:600;color:#B78759;margin-bottom:20px}
.np-product-desc{margin-bottom:24px}
.np-product-desc p{font-size:0.9rem;color:#8A6241;line-height:1.6;margin-bottom:8px}
.np-product-cart{margin-bottom:0}
.np-product-cart .cart{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.np-product-cart .quantity input{width:60px;padding:10px;border:1px solid #DCC5A8;border-radius:8px;font-size:1rem;text-align:center;background:#FFF;color:#6B4A2E}
.np-product-cart .single_add_to_cart_button{background:#B78759;color:#FFF;border:none;padding:12px 32px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background 0.2s}
.np-product-cart .single_add_to_cart_button:hover{background:#8A6241}

.np-product-ingredients{background:#F5EBDD;padding:32px 0;margin:0}
.np-product-ingredients-inner{max-width:1200px;margin:0 auto;padding:0 24px}
.np-product-ingredients-title{font-family:'Cormorant Garamond',serif;font-size:1.5rem;color:#6B4A2E;margin-bottom:20px}
.np-product-ingredients-row{display:flex;gap:16px;padding:12px 0;border-bottom:1px solid #DCC5A8}
.np-product-ingredients-row:last-child{border-bottom:none}
.np-product-ingredients-label{font-weight:600;color:#6B4A2E;min-width:120px;flex-shrink:0}
.np-product-ingredients-value{color:#8A6241;line-height:1.6}

/* ── Related Products ────────────────────────────────── */
.np-related-section{background:#FFF;padding:0 100px 40px}
.np-related-inner{max-width:1400px;margin:0 auto}
.np-related-title{font-family:"Cormorant Garamond",serif;font-size:1.5rem;font-weight:700;color:#6B4A2E;margin:0 0 20px;padding-top:20px;border-top:1px solid #EDE4D6;text-align:center}
.np-related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.np-related-card{display:flex;flex-direction:column;background:#FFF;border-radius:12px;overflow:hidden;border:1px solid #EDE4D6;text-decoration:none;transition:transform 0.2s}
.np-related-card:hover{transform:translateY(-2px)}
.np-related-card img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}
.np-related-card-placeholder{background:#F0EAE0;width:100%;aspect-ratio:1/1}
.np-related-card-label{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;font-size:0.85rem;color:#6B4A2E;font-weight:600}
.np-related-card-label span:last-child{color:#B78759}
.np-related-all{display:block;text-align:center;margin-top:20px;font-size:0.9rem;font-weight:600;color:#B78759;transition:color 0.2s}
.np-related-all:hover{color:#8A6241}

/* ── Recipes ─────────────────────────────────────────── */
.np-recipe{padding:40px 100px;background:#FFF}
.np-recipe-inner{max-width:800px;margin:0 auto}
.np-recipe-title{font-family:"Cormorant Garamond",serif;font-size:clamp(1.8rem,4vw,2.8rem);font-weight:700;color:#6B4A2E;margin-bottom:24px}
.np-recipe-content{font-size:0.95rem;color:#8A6241;line-height:1.7}
.np-recipe-content h2{font-family:"Cormorant Garamond",serif;font-size:1.3rem;font-weight:700;color:#6B4A2E;margin-top:24px;margin-bottom:8px}
.np-recipe-content ul{padding-left:20px;margin-bottom:16px}
.np-recipe-content ul li{margin-bottom:4px}
.np-recipe-content p{margin-bottom:12px}
.np-recipe-back{display:inline-block;margin-top:24px;font-size:0.9rem;font-weight:600;color:#B78759;transition:color 0.2s}
.np-recipe-back:hover{color:#8A6241}
.np-recipes-archive{padding:40px 100px;background:#FFF}
.np-recipes-archive-inner{max-width:1400px;margin:0 auto}
.np-recipes-archive-title{font-family:"Cormorant Garamond",serif;font-size:clamp(1.8rem,4vw,2.8rem);font-weight:700;color:#6B4A2E;margin-bottom:8px;text-align:center}
.np-recipes-archive-desc{font-size:0.95rem;color:#8A6241;margin-bottom:32px;text-align:center}

/* ── Homepage ────────────────────────────────────────── */
.np-home-hero{background:linear-gradient(135deg,#FDF8F2 0%,#F5EBDD 100%);padding:0 100px}
.np-home-hero-inner{display:flex;align-items:center;max-width:1400px;margin:0 auto;min-height:50vh}
.np-home-hero-text{flex:0 0 50%;padding:60px 0}
.np-home-hero-text h1{font-family:"Cormorant Garamond",serif;font-size:clamp(2.2rem,5vw,3.8rem);font-weight:700;color:#6B4A2E;line-height:1.1;margin:0 0 16px}
.np-home-hero-text p{font-size:clamp(0.9rem,1vw,1.05rem);color:#8A6241;line-height:1.6;margin:0 0 32px;max-width:520px}
.np-home-hero-btns{display:flex;gap:16px;flex-wrap:wrap}
.np-home-hero-btn{display:inline-block;padding:14px 32px;border-radius:8px;font-size:0.9rem;font-weight:600;text-decoration:none;transition:all 0.2s}
.np-home-hero-btn--primary{background:#B78759;color:#FFF}
.np-home-hero-btn--primary:hover{background:#8A6241;color:#FFF}
.np-home-hero-btn--secondary{background:transparent;color:#6B4A2E;border:2px solid #DCC5A8}
.np-home-hero-btn--secondary:hover{background:#F5EBDD;border-color:#8A6241}
.np-home-hero-img{flex:1;display:flex;align-items:center;justify-content:center}
.np-home-hero-img img{max-width:100%;max-height:50vh;border-radius:16px;object-fit:cover}

.np-home-usps{background:#FFF;padding:0 100px}
.np-home-usps-inner{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:0;max-width:1400px;margin:0 auto;padding:24px 0}
.np-home-usp{display:flex;align-items:center;justify-content:center;gap:10px;padding:0 32px;flex:1 1 0;min-width:200px}
.np-home-usp .np-icon{width:26px;height:26px;color:#B78759;flex-shrink:0}
.np-home-usp span{font-size:0.9rem;font-weight:600;color:#6B4A2E;white-space:nowrap}
.np-home-usp-sep{width:1px;height:28px;background:#DCC5A8;flex-shrink:0}

.np-home-cards{background:#FFF;padding:0 100px 40px}
.np-home-cards-inner{display:grid;grid-template-columns:1fr 1fr;gap:32px;max-width:1400px;margin:0 auto}
.np-home-card{display:flex;flex-direction:row;border-radius:16px;overflow:hidden;border:1px solid #EDE4D6;text-decoration:none;transition:transform 0.2s;background:#FFF}
.np-home-card:hover{transform:translateY(-3px)}
.np-home-card-img{flex:0 0 45%;aspect-ratio:auto;overflow:hidden;min-height:200px}
.np-home-card-img img{width:100%;height:100%;object-fit:cover}
.np-home-card-text{flex:1;padding:32px;display:flex;flex-direction:column;justify-content:center}
.np-home-card-text h2{font-family:"Cormorant Garamond",serif;font-size:1.3rem;font-weight:700;color:#6B4A2E;margin:0 0 8px}
.np-home-card-text p{font-size:0.9rem;color:#8A6241;line-height:1.5;margin:0 0 16px}
.np-home-card-link{font-size:0.9rem;font-weight:600;color:#B78759}

.np-home-categories{background:#FFF;padding:0 100px 60px}
.np-home-categories-inner{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;max-width:1400px;margin:0 auto}
.np-home-cat{display:flex;flex-direction:column;border-radius:12px;overflow:hidden;border:1px solid #EDE4D6;text-decoration:none;transition:transform 0.2s}
.np-home-cat:hover{transform:translateY(-2px)}
.np-home-cat-img{aspect-ratio:1/1;overflow:hidden}
.np-home-cat-img img{width:100%;height:100%;object-fit:cover}
.np-home-cat-label{display:flex;justify-content:space-between;align-items:center;padding:12px 14px}
.np-home-cat-label span:first-child{font-size:0.9rem;font-weight:600;color:#6B4A2E}
.np-home-cat-label span:last-child{color:#B78759;font-weight:600}

.np-home-info{background:#FDF8F2;padding:60px 100px}
.np-home-info-inner{display:grid;grid-template-columns:1fr 1fr;gap:60px;max-width:1400px;margin:0 auto}
.np-home-info-col h2{font-family:"Cormorant Garamond",serif;font-size:1.5rem;font-weight:700;color:#6B4A2E;margin:0 0 16px}
.np-home-info-col p{font-size:0.95rem;color:#8A6241;line-height:1.6;margin:0 0 20px}
.np-home-info-link{font-size:0.9rem;font-weight:600;color:#B78759;text-decoration:none}
.np-home-info-link:hover{color:#8A6241}
.np-home-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;position:relative;--step-gap:48px}
.np-home-step-wrap{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;position:relative}
.np-home-step-num{width:32px;height:32px;border-radius:50%;background:#B78759;color:#FFF;display:flex;align-items:center;justify-content:center;font-size:0.85rem;font-weight:700;flex-shrink:0}
.np-home-step-icon{width:36px;height:36px;flex-shrink:0}
.np-home-step-wrap strong{font-size:1rem;color:#6B4A2E}
.np-home-step-wrap p{font-size:0.85rem;color:#8A6241;margin:0;line-height:1.4;max-width:200px}
.np-home-step-wrap+.np-home-step-wrap::before{content:"";position:absolute;top:20px;left:calc(-1 * var(--step-gap,32px));width:var(--step-gap,32px);height:2px;background:repeating-linear-gradient(90deg,#DCC5A8,#DCC5A8 6px,transparent 6px,transparent 12px)}
.np-home-step-wrap+.np-home-step-wrap::after{content:"";position:absolute;top:15px;left:-8px;width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:10px solid #DCC5A8}

/* ── Responsive ──────────────────────────────────────── */
@media(max-width:1100px){
.np-shop-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:1100px){
.np-header{padding:12px 40px 4px}
.np-header-inner{flex-wrap:wrap;gap:12px}
.np-nav{flex:1 1 100%;order:3}
.np-nav-list{display:none;position:absolute;top:100%;left:0;right:0;background:#FFF;flex-direction:column;padding:16px 40px;border-bottom:1px solid #EDE4D6;z-index:100;gap:0}
.np-nav-list.open{display:flex}
.np-nav-list li a{display:block;padding:12px 0}
.np-nav{position:relative}
.np-nav-toggle{display:flex}
.np-header-btn{margin-left:auto}
.np-cat-filter{padding:0 40px}
.np-cat-filter-inner{display:none}
.np-cat-filter-select{display:block;width:100%;padding:10px 16px;border:1px solid #DCC5A8;border-radius:8px;background:#FFF;color:#6B4A2E;font-size:0.9rem;font-weight:600;font-family:"Nunito Sans",sans-serif;appearance:auto;margin:12px 0}
.np-shop-hero{padding:0 40px}
.np-shop-hero-inner{flex-direction:column-reverse;min-height:auto}
.np-shop-hero-text{flex:none;padding:40px 0}
.np-shop-hero-text h1,.np-shop-hero-text p{max-width:none}
.np-shop-hero-img{height:180px}
.np-shop-hero-img img{min-height:180px;max-height:22vh}
.np-shop-hero--small{padding:30px 40px}
.np-shop-section{padding:0 40px}
.np-shop-grid{grid-template-columns:repeat(2,1fr);padding:24px 0}
.np-footer{padding:30px 40px 0}
.np-footer-inner{grid-template-columns:1fr 1fr;gap:24px}
.np-product{padding:30px 40px}
.np-product-inner{grid-template-columns:1fr;gap:30px}

/* Tablet Layout Breaks */
.np-shop-banner{padding:30px 40px}
.np-shop-banner-inner{flex-direction:column}
.np-shop-banner-img{min-height:240px}
.np-shop-banner-text{padding:30px 24px}
.np-product-usps{padding:0 40px}
.np-breadcrumb-bar{padding:0 40px}
.np-related-section{padding:0 40px 30px}
.np-related-grid{grid-template-columns:repeat(2,1fr)}
.np-recipe{padding:30px 40px}
.np-recipes-archive{padding:30px 40px}
.np-home-hero{padding:0 40px}
.np-home-hero-inner{flex-direction:column-reverse;min-height:auto}
.np-home-hero-text{flex:none;padding:40px 0 20px}
.np-home-hero-img img{max-height:45vh}
.np-home-usps{padding:0 40px}
.np-home-cards{padding:0 40px 30px}
.np-home-cards-inner{grid-template-columns:1fr;gap:24px}
.np-home-card{flex-direction:column}
.np-home-card-img{flex:none;width:100%}
.np-home-card-text{padding:24px}
.np-home-categories{padding:0 40px 40px}
.np-home-categories-inner{grid-template-columns:repeat(2,1fr);gap:16px}
.np-home-info{padding:40px 40px}
.np-home-info-inner{grid-template-columns:1fr;gap:30px}
.np-home-steps{grid-template-columns:1fr;gap:20px}
.np-home-step-wrap+.np-home-step-wrap::before,.np-home-step-wrap+.np-home-step-wrap::after{display:none}
.np-product-usp{padding:8px 16px;min-width:auto}
.np-home-usp{padding:8px 16px;min-width:auto}
}
@media(max-width:768px){
.np-nav-list{display:none;position:absolute;top:100%;left:0;right:0;background:#FDF8F2;flex-direction:column;padding:16px 40px;border-bottom:1px solid #EDE4D6;z-index:100}
.np-nav-list.open{display:flex}
.np-nav{position:relative}
.np-nav-toggle{display:flex}
}
@media(max-width:550px){
.np-header{padding:12px 20px 4px}
.np-shop-hero{padding:0 20px}
.np-shop-hero--small{padding:20px}
.np-shop-section{padding:0 20px}
.np-shop-grid{grid-template-columns:1fr;padding:16px 0}
.np-shop-banner{padding:30px 20px}
.np-product-usps{padding:0 20px}
.np-breadcrumb-bar{padding:0 20px}
.np-related-section{padding:0 20px 30px}
.np-recipe{padding:30px 20px}
.np-recipes-archive{padding:30px 20px}
.np-home-hero{padding:0 20px}
.np-home-usps{padding:0 20px}
.np-home-cards{padding:0 20px 30px}
.np-home-categories{padding:0 20px 40px}
.np-home-info{padding:40px 20px}
.np-cat-filter{padding:0 20px}
.np-footer{padding:24px 20px 0}
.np-footer-inner{grid-template-columns:1fr;gap:20px}
.np-product{padding:20px}

/* Mobile Layout Breaks */
.np-shop-hero-inner{flex-direction:column-reverse}
.np-shop-hero-text{padding:30px 0}
.np-shop-hero-img{height:150px}
.np-shop-hero-img img{min-height:150px;max-height:20vh}
.np-shop-banner-inner{flex-direction:column}
.np-shop-banner-img{min-height:200px}
.np-shop-banner-text{padding:24px 20px}
.np-home-hero-inner{flex-direction:column-reverse;min-height:auto}
.np-home-hero-text{flex:none;padding:40px 0 20px}
.np-home-hero-img img{max-height:40vh}
.np-home-cards-inner{grid-template-columns:1fr;gap:20px}
.np-home-card{flex-direction:column}
.np-home-card-img{flex:none;width:100%}
.np-home-card-text{padding:20px}
.np-home-categories-inner{grid-template-columns:1fr 1fr;gap:12px}
.np-home-info-inner{grid-template-columns:1fr;gap:30px}
.np-home-steps{grid-template-columns:1fr;gap:20px}
.np-home-step-wrap+.np-home-step-wrap::before,.np-home-step-wrap+.np-home-step-wrap::after{display:none}
.np-product-usps-inner{padding:16px 0}
.np-product-usp{padding:8px 12px;min-width:auto}
.np-home-usps-inner{padding:16px 0}
.np-home-usp{padding:8px 12px;min-width:auto}
}

/* Legal pages */
.np-legal-wrap{padding:60px 100px;background:#FFF}
.np-legal-inner{max-width:900px;margin:0 auto}
.np-legal-title{font-family:'Cormorant Garamond',serif!important;font-size:2rem;font-weight:700;color:#6B4A2E;margin:0 0 32px}
.np-legal-content h2{font-family:'Cormorant Garamond',serif!important;font-size:1.4rem;font-weight:700;color:#6B4A2E;margin:32px 0 12px}
.np-legal-content h3{font-family:'Cormorant Garamond',serif!important;font-size:1.1rem;font-weight:600;color:#6B4A2E;margin:24px 0 8px}
.np-legal-content h4{font-family:'Nunito Sans',sans-serif!important;font-size:0.95rem;font-weight:600;color:#6B4A2E;margin:16px 0 6px}
.np-legal-content p{font-family:'Nunito Sans',sans-serif;font-size:0.9rem;color:#8A6241;line-height:1.7;margin:0 0 12px}
.np-legal-content ul{list-style:disc;padding-left:20px;margin:0 0 16px}
.np-legal-content li{font-family:'Nunito Sans',sans-serif;font-size:0.9rem;color:#8A6241;line-height:1.6;margin-bottom:4px}
.np-legal-content a{color:#B78759;text-decoration:none}
.np-legal-content a:hover{text-decoration:underline}
.np-legal-content hr{border:none;border-top:1px solid #EDE4D6;margin:24px 0}
.np-legal-content strong{color:#6B4A2E}
@media(max-width:768px){.np-legal-wrap{padding:40px 20px}.woocommerce-cart .np-main,.woocommerce-checkout .np-main,.woocommerce-account .np-main{padding:40px 20px}}


/* ── Mobile hardening: inline-section fixes ───────────── */
@media(max-width:768px){
html,body{max-width:100%;overflow-x:hidden}
.np-header,.np-cat-filter,.np-shop-hero,.np-shop-section,.np-shop-banner,.np-product-usps,.np-breadcrumb-bar,.np-related-section,.np-recipe,.np-recipes-archive,.np-home-hero,.np-home-usps,.np-home-cards,.np-home-categories,.np-home-info,.np-product,.np-footer,.np-legal-wrap{padding-left:16px!important;padding-right:16px!important}
.np-home-info[style],.np-shop-banner[style],.np-home-categories[style],.np-home-cards[style],.np-home-usps[style]{padding-left:16px!important;padding-right:16px!important}
.np-home-info-inner,.np-home-info-inner[style],.np-home-cards-inner,.np-home-categories-inner,.np-home-categories-inner[style],.np-shop-grid,.np-related-grid,.np-product-inner{width:100%!important;max-width:100%!important;grid-template-columns:1fr!important;gap:20px!important}
.np-home-info-inner[style*="grid-template-columns"],.np-home-categories-inner[style*="grid-template-columns"],.np-home-steps[style*="grid-template-columns"]{grid-template-columns:1fr!important}
.np-home-steps,.np-home-steps[style]{grid-template-columns:1fr!important;gap:20px!important;--step-gap:0!important}
.np-home-step-wrap+.np-home-step-wrap::before,.np-home-step-wrap+.np-home-step-wrap::after{display:none!important}
.np-home-usps-inner,.np-home-usps-inner[style],.np-product-usps-inner{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;width:100%!important;max-width:100%!important}
.np-home-usp,.np-product-usp{justify-content:flex-start!important;padding:8px 0!important;min-width:0!important}
.np-home-usp-sep,.np-product-usp-sep{display:none!important}
.np-home-card,.np-shop-banner-inner{width:100%!important;max-width:100%!important;min-width:0!important}
.np-home-card-img,.np-shop-banner-img{min-height:180px!important}
.np-home-card-text,.np-shop-banner-text{padding:20px!important}
.np-home-cat,.np-card,.np-home-step-wrap{min-width:0!important;width:100%!important}
.np-home-cat-label{min-width:0!important;word-break:normal;overflow-wrap:anywhere}
.np-home-info form,.np-home-info form[style],.np-home-info form>div,.np-home-info div[style*="grid-template-columns:1fr 1fr"],.np-home-info div[style*="grid-template-columns:1fr 0.8fr"],.np-home-info div[style*="grid-template-columns:1fr 1fr 1fr"]{display:grid!important;grid-template-columns:1fr!important;width:100%!important;max-width:100%!important;gap:12px!important}
.np-home-info input,.np-home-info textarea,.np-home-info select,.np-home-info button{width:100%!important;max-width:100%!important;min-width:0!important}
.np-home-hero-text h1,.np-shop-hero-text h1{font-size:clamp(2rem,11vw,2.7rem)!important;overflow-wrap:balance}
.np-home-hero-text p,.np-shop-hero-text p,.np-shop-banner-text p{max-width:100%!important}
}
@media(max-width:420px){
.np-header,.np-cat-filter,.np-shop-hero,.np-shop-section,.np-shop-banner,.np-product-usps,.np-breadcrumb-bar,.np-related-section,.np-recipe,.np-recipes-archive,.np-home-hero,.np-home-usps,.np-home-cards,.np-home-categories,.np-home-info,.np-product,.np-footer,.np-legal-wrap{padding-left:12px!important;padding-right:12px!important}
.np-home-info[style],.np-shop-banner[style],.np-home-categories[style],.np-home-cards[style],.np-home-usps[style]{padding-left:12px!important;padding-right:12px!important}
.np-home-card-text,.np-shop-banner-text{padding:18px!important}
}
