/* Shared catalog sizing and product cards. */
:root{--nomad-sidebar-width:220px;--nomad-catalog-gap:24px}
@media(min-width:701px){
html body #nc-page .nc-layout,html body #nt-page .nt-layout,html body #np-page .np-layout{grid-template-columns:var(--nomad-sidebar-width) minmax(0,1fr)!important;gap:var(--nomad-catalog-gap)!important;max-width:1229px;padding:32px 24px 40px}
html body :is(#nc-page .nc-sidebar,#nt-page .nt-sidebar,#np-page .np-sidebar){width:var(--nomad-sidebar-width)!important;min-width:0;max-width:var(--nomad-sidebar-width)}
html body.type-category .sidebar-left,html body.ns-live .sidebar-left{width:var(--nomad-sidebar-width)!important;flex:0 0 var(--nomad-sidebar-width)!important;min-width:0}
html body.ns-live #content-wrapper{grid-template-columns:var(--nomad-sidebar-width) minmax(0,1fr)!important;gap:var(--nomad-catalog-gap)!important}
}
html body :is(#nc-page .nc-box,#nt-page .nt-box,#np-page .np-box,.ns-side-box){padding:18px 14px!important;box-sizing:border-box;min-width:0}
html body :is(#nc-page .nc-sidebar h2,#nt-page .nt-sidebar h2,#np-page .np-sidebar h2,.ns-side-box h2){font-size:22px!important;line-height:1.25}
html body :is(#nc-page .nc-select-box,#nt-page .nt-select-box){min-height:180px;margin-bottom:16px}
html body :is(#nc-page .nc-select-box select,#nt-page .nt-select-box select){width:100%;height:46px;font-size:16px!important;padding:8px 24px 8px 8px!important;min-width:0}
html body :is(#nc-page .nc-select-box p,#nt-page .nt-select-box p){font-size:15px;margin-top:12px}
html body :is(#nc-page .nc-branch,#nt-page .nt-branch){width:72px;height:55px;right:10px;bottom:10px}
html body :is(#nc-page .nc-filter-heading,#nt-page .nt-filter-heading,#np-page .np-filter-heading){display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:8px;align-items:center;padding-bottom:14px}
html body :is(#nc-page .nc-filter-heading>svg,#nt-page .nt-filter-heading>svg,#np-page .np-filter-heading>svg){width:24px;height:24px}
html body :is(#nc-page .nc-clear-link,#nt-page .nt-clear-link,#np-page .np-clear){font-size:13px!important}
html body :is(#nc-page .nc-filter>summary,#nt-page .nt-filter>summary,#np-page .np-price-filter>summary){font-size:19px!important;padding:14px 0 10px}
html body :is(#nc-page .nc-price-inputs,#nt-page .nt-price-inputs,#np-page .np-price-inputs){display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:5px}
html body :is(#nc-page .nc-price-inputs input,#nt-page .nt-price-inputs input,#np-page .np-price-inputs input){width:100%;min-width:0;height:42px;font-size:14px!important;padding:8px 5px!important}
html body :is(#nc-page .nc-choice,#nt-page .nt-choice){font-size:14px!important;gap:5px;padding:8px 5px;min-height:42px;box-sizing:border-box}
html body :is(#nc-page .nc-tastes,#nt-page .nt-tastes){display:grid;grid-template-columns:1fr!important;gap:8px}
html body :is(#nc-page .nc-stock,#nt-page .nt-stock,#np-page .np-stock){font-size:16px;gap:8px}
html body :is(#nc-page .nc-reset-button,#nt-page .nt-reset-button,#np-page .np-reset-button){width:100%;min-width:0;min-height:44px;height:auto;font-size:16px!important;padding:8px!important;gap:8px}
/* Hero text centered vertically within its own banner. */
html body #nc-page.nc-category-page .nc-intro{height:auto!important;min-height:270px;display:flex;flex-direction:column;justify-content:center;padding:42px 0 24px;position:relative;box-sizing:border-box}
html body #nc-page.nc-category-page .nc-breadcrumb{position:absolute;left:0;top:0;margin:0;font-size:15px}
html body #nc-page.nc-category-page .nc-intro h1{font-size:clamp(30px,3.5vw,46px)!important;line-height:1.12;margin:0;max-width:78%;position:relative;z-index:1;overflow-wrap:normal}
html body #nc-page.nc-category-page .nc-intro p{font-size:20px;line-height:1.4;max-width:70%;position:relative;z-index:1;margin:0}
html body #nc-page.nc-category-page .nc-title-line{margin:16px 0}
html body #nc-page.nc-category-page .nc-hero{width:270px;height:auto;top:50%;transform:translateY(-50%);right:-24px;opacity:.55;pointer-events:none}
/* Vertical product cards, two per row. */
html body :is(#nc-page .nc-product-grid,#nt-page .nt-product-grid){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px;align-items:stretch}
html body :is(#nc-page .nc-product,#nt-page .nt-product){display:flex!important;flex-direction:column;align-items:stretch;justify-content:flex-start;grid-template-columns:none!important;min-width:0;min-height:0;padding:22px 20px!important;gap:16px;border:1px solid #e2dbd1;border-radius:10px;background:#fbf9f5;text-align:center;box-sizing:border-box}
html body :is(#nc-page .nc-product-image,#nt-page .nt-product-image){display:flex;align-items:center;justify-content:center;width:100%;height:210px;min-width:0;margin:0!important}
html body :is(#nc-page .nc-product-image img,#nt-page .nt-product-image img){width:100%!important;max-width:260px;height:210px!important;object-fit:contain;display:block;margin:0 auto}
html body :is(#nc-page .nc-product-copy,#nt-page .nt-product-copy){display:flex;flex-direction:column;flex:1;min-width:0;width:100%}
html body :is(#nc-page .nc-product h3,#nt-page .nt-product h3){font-size:24px!important;line-height:1.25;min-height:60px;margin:0 0 12px!important;overflow-wrap:anywhere}
html body :is(#nc-page .nc-price,#nt-page .nt-price){font-size:25px;line-height:1.3;margin:0 0 20px!important}
html body :is(#nc-page .nc-detail,#nt-page .nt-detail){display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;margin-top:auto;font-size:20px;gap:14px;box-sizing:border-box;border-radius:6px}
@media(max-width:1000px){
html body :is(#nc-page .nc-product,#nt-page .nt-product){padding:18px 12px!important;gap:12px}
html body :is(#nc-page .nc-product-image,#nt-page .nt-product-image,#nc-page .nc-product-image img,#nt-page .nt-product-image img){height:175px!important}
html body :is(#nc-page .nc-product h3,#nt-page .nt-product h3){font-size:20px!important;min-height:50px}
html body #nc-page.nc-category-page .nc-intro{min-height:260px}
html body #nc-page.nc-category-page .nc-hero{width:220px;opacity:.35}
}
@media(max-width:700px){
html body :is(#nc-page .nc-layout,#nt-page .nt-layout,#np-page .np-layout){padding:22px 16px 30px!important;gap:20px!important}
html body :is(#nc-page .nc-sidebar,#nt-page .nt-sidebar,#np-page .np-sidebar){width:100%!important;max-width:none}
html body :is(#nc-page .nc-product-grid,#nt-page .nt-product-grid){gap:12px!important}
html body :is(#nc-page .nc-product,#nt-page .nt-product){padding:14px 10px!important}
html body :is(#nc-page .nc-product-image,#nt-page .nt-product-image,#nc-page .nc-product-image img,#nt-page .nt-product-image img){height:145px!important}
html body :is(#nc-page .nc-product h3,#nt-page .nt-product h3){font-size:18px!important;min-height:46px}
html body :is(#nc-page .nc-price,#nt-page .nt-price){font-size:21px;margin-bottom:14px!important}
html body :is(#nc-page .nc-detail,#nt-page .nt-detail){font-size:17px;gap:8px;min-height:44px}
html body #nc-page.nc-category-page .nc-intro{min-height:230px}
html body #nc-page.nc-category-page .nc-intro h1{font-size:32px!important;max-width:90%}
html body #nc-page.nc-category-page .nc-intro p{font-size:17px;max-width:88%}
}
/* Native Shoptet catalog cards use the same grid when no custom catalog is active. */
html body.type-category .products-block{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px}
html body.type-category .products-block>.product{width:100%!important;float:none;min-width:0;padding:0!important;border:1px solid #e2dbd1;border-radius:10px;background:#fbf9f5}
html body.type-category .products-block>.product>.p{display:flex!important;flex-direction:column;align-items:stretch;text-align:center;height:100%;padding:20px!important;box-sizing:border-box}
html body.type-category .products-block .p>.image{width:100%!important;height:210px;display:flex;align-items:center;justify-content:center;margin:0 0 16px!important}
html body.type-category .products-block .p>.image img{width:100%;height:210px;object-fit:contain;max-width:260px}
html body.type-category .products-block .p-in{display:flex!important;flex-direction:column;flex:1;width:100%!important;padding:0!important}
html body.type-category .products-block .name{font-size:24px!important;line-height:1.25;min-height:60px;display:block}
html body.type-category .products-block .p-bottom{margin-top:auto;width:100%}
@media(max-width:700px){html body.type-category .products-block{gap:12px}html body.type-category .products-block>.product>.p{padding:14px 10px!important}html body.type-category .products-block .name{font-size:18px!important}html body.type-category .products-block .p>.image,html body.type-category .products-block .p>.image img{height:145px}}
html body :is(#nc-page .nc-product-copy,#nt-page .nt-product-copy){text-align:center!important}
html body :is(#nc-page .nc-detail,#nt-page .nt-detail){width:100%!important;max-width:none!important;min-height:48px!important;justify-content:center!important;font-size:20px!important}
html body :is(#nc-page .nc-price,#nt-page .nt-price){font-size:25px!important}
@media(max-width:700px){html body :is(#nc-page .nc-detail,#nt-page .nt-detail){font-size:17px!important;min-height:44px!important}html body :is(#nc-page .nc-price,#nt-page .nt-price){font-size:21px!important}}
html body :is(#nc-page .nc-product h3,#nt-page .nt-product h3,#nc-page .nc-product h3 a,#nt-page .nt-product h3 a,#nc-page .nc-price,#nt-page .nt-price){text-align:center!important}

/* Coffee tablet grid and complete catalog. */
@media(min-width:701px) and (max-width:1100px){html body #nc-page #nc-results{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px}html body #nc-page #nc-results .nc-product{padding:16px 10px!important}html body #nc-page #nc-results .nc-product h3{font-size:18px!important;min-height:68px}html body #nc-page #nc-results .nc-product-image,html body #nc-page #nc-results .nc-product-image img{height:145px!important}}
@media(min-width:600px){html body #nc-page.nc-show-all #nc-results{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
html body #nc-page #nc-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:24px}
html body #nc-page #nc-pagination>div{display:flex;gap:6px;flex-wrap:wrap}
html body #nc-page .nc-show-all-button,html body #nc-page .nc-apply-filter{background:#faf8f3;color:#506331;border:1px solid #61743e;border-radius:6px;min-height:44px;padding:10px 16px;font:600 17px/1.2 "Source Sans 3",Arial,sans-serif;cursor:pointer}
html body #nc-page .nc-apply-filter{width:100%;margin-top:14px;background:#506331;color:#fff}
html body.nomad-coffee-product .sidebar-left{width:220px!important;min-width:0;float:none}
html body.nomad-coffee-product #nc-page .nc-sidebar{width:100%!important}
@media(min-width:701px){html body.nomad-coffee-product #content-wrapper>.content-wrapper-in{display:grid!important;grid-template-columns:220px minmax(0,1fr);gap:24px;align-items:start}html body.nomad-coffee-product #content-wrapper>.content-wrapper-in>main{width:100%!important;min-width:0;float:none;padding-left:0!important}}
@media(max-width:700px){html body.nomad-coffee-product .sidebar-left{width:100%!important;display:block!important;margin-bottom:24px}html body.nomad-coffee-product #content-wrapper>.content-wrapper-in{display:flex;flex-direction:column}html body.nomad-coffee-product #content-wrapper>.content-wrapper-in>main{width:100%!important;padding:0}}
html body #nc-page #nc-pagination .nc-show-all-button{width:auto!important;min-width:145px!important;height:auto!important;min-height:44px!important;white-space:nowrap!important;font-size:17px!important;padding:10px 16px!important}
html body #nc-page .nomad-benefits svg{width:66px!important;height:66px!important;stroke-width:1!important}
@media(max-width:1000px){html body #nc-page .nomad-benefits svg{width:52px!important;height:52px!important}}
