/* Duc Nhan grocery storefront. Native Shoptet forms and product data retained. */
body.dn-modern{--dn-green:#195d30;--dn-ink:#23352b;--dn-soft:#f1f7f1;--dn-line:#dce5dd;font-family:Roboto,Arial,sans-serif;color:var(--dn-ink)}
.dn-modern h1,.dn-modern h2,.dn-modern h3,.dn-modern h4,.dn-modern #header{font-family:Roboto,Arial,sans-serif}
.dn-modern a:focus-visible,.dn-modern button:focus-visible,.dn-modern summary:focus-visible{outline:3px solid #7ac566;outline-offset:3px}
.dn-modern #header{background:#f4f6f4;border-top:2px solid #cbe9c7;box-shadow:none;border-bottom:1px solid var(--dn-line)}
.dn-modern .dn-delivery{display:flex;align-items:center;gap:9px;color:var(--dn-ink);text-decoration:none!important;line-height:1.35;font-size:12px;flex-shrink:0}
.dn-delivery svg{width:25px;height:25px;color:var(--dn-green);flex-shrink:0}
.dn-delivery strong,.dn-delivery small{display:block}.dn-delivery strong{font-size:13px}.dn-delivery small{color:var(--dn-green);font-size:12px;margin-top:3px;font-weight:600}
.dn-modern #header .search-input{background:#fff!important;border:1px solid #d7dfd8!important;border-radius:10px!important;height:46px!important;padding:10px 62px 10px 16px!important;color:#23352b;box-shadow:none!important;font-size:15px}
.dn-modern #header .search-input:focus{border-color:#4c9354!important;box-shadow:0 0 0 3px #195d3010!important}
.dn-modern #header .search-form fieldset{padding:0;margin:0;border:0;position:relative}
.dn-modern #header .search-form .btn{background:#2e7d37!important;color:#fff!important;border:0!important;border-radius:0 9px 9px 0!important;right:1px!important;top:1px!important;height:44px!important;width:54px!important;min-width:0;padding:0!important;box-shadow:none!important}
.dn-modern #header .search-form .btn:before{color:#fff!important;font-size:19px!important}
.dn-modern .dn-categories{position:relative;flex:0 0 auto;color:var(--dn-ink)}
.dn-categories summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:9px;border-radius:10px;padding:12px 15px;background:var(--dn-green);color:white;font-size:14px;font-weight:700;min-height:44px}
.dn-categories summary::-webkit-details-marker{display:none}.dn-categories summary svg{width:19px;height:19px}
.dn-categories summary:after{content:'⌄';margin-left:10px;font-size:18px;line-height:1}
.dn-categories[open] summary{background:#124923}
.dn-categories__links{position:absolute;top:calc(100% + 10px);left:0;width:540px;max-width:calc(100vw - 48px);padding:12px;display:grid;grid-template-columns:1fr 1fr;gap:3px;background:#fff;border:1px solid var(--dn-line);border-radius:16px;box-shadow:0 16px 40px #1d392b24;z-index:1050}
.dn-categories__links a{display:flex;align-items:center;padding:13px 14px;color:var(--dn-ink);font-size:14px;font-weight:600;border-radius:9px;text-decoration:none!important}
.dn-categories__links a:hover{background:#eef6ec;color:var(--dn-green)}
.dn-modern .dn-footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 28px;padding:22px 16px;border-bottom:1px solid #dce5dd;font-size:13px}
.dn-footer-links a{color:#33543c;text-decoration:none!important}.dn-footer-links a:hover{color:#195d30}
.dn-modern .dn-mobile-cart{display:none}
/* Promotion rail lives in a native, editable homepage banner slot. */
.dn-modern .banners-row:has(.dn-promos){display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:20px 28px 0!important;background:#f0f8ef}
.dn-modern .banners-row:has(.dn-promos)>div,.dn-modern .banners-row:has(.dn-promos) .banner-wrapper{float:none!important;display:block!important;width:100%!important;max-width:none!important;padding:0!important;margin:0!important}
.dn-modern .banners-row:has(.dn-promos) .banner{height:auto!important;min-height:0!important;max-height:none!important;width:100%!important;padding:0!important;background:none!important;overflow:visible!important}
.dn-promos{max-width:1600px;margin:0 auto;min-width:0}
.dn-promo-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;min-width:0}
.dn-modern .dn-promo-card{display:block!important;position:relative;overflow:hidden;border-radius:18px;background:#153d26;min-width:0;aspect-ratio:4/5;text-decoration:none!important;isolation:isolate}
.dn-modern .dn-promo-card img{display:block!important;width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important;margin:0!important;transition:transform .25s ease}
@media(hover:hover){.dn-modern .dn-promo-card:hover img{transform:scale(1.015)}}
.dn-promo-card:focus-visible{outline-offset:5px}
.dn-promo-help{display:none;text-align:right;color:#426247;font-size:12px;margin:10px 0 0}
.dn-modern .benefitBanner.position--benefitHomepage{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:0!important;padding:26px 36px!important;width:100%!important;max-width:none!important;background:#f0f8ef;border:0;border-radius:0}
.dn-modern .benefitBanner.position--benefitHomepage .benefitBanner__item{display:flex!important;align-items:center!important;justify-content:center;text-align:left;padding:0!important;margin:0!important;width:auto!important;gap:12px;border:0!important}
.dn-modern .benefitBanner.position--benefitHomepage .benefitBanner__picture{width:32px!important;min-width:32px!important;max-width:32px!important;height:32px!important;margin:0!important}
.dn-modern .benefitBanner.position--benefitHomepage .benefitBanner__img{width:32px!important;height:32px!important;object-fit:contain}
.dn-modern .benefitBanner.position--benefitHomepage .benefitBanner__content{padding:0!important;margin:0!important}
.dn-modern .benefitBanner.position--benefitHomepage .benefitBanner__title{font:700 14px/1.4 Roboto,Arial,sans-serif!important;text-transform:none!important;color:#244b2d!important}
.dn-modern .benefitBanner.position--benefitHomepage .benefitBanner__data{font-size:12px!important;color:#536d57;line-height:1.45;margin-top:4px}
@media(min-width:768px){
 .dn-modern .top-navigation-bar{display:none!important}
 .dn-modern #header>.container{width:100%!important;max-width:1660px!important;padding:0 28px!important}
 .dn-modern #header .header-top{display:flex!important;align-items:center!important;gap:24px!important;height:84px!important;min-height:0!important;padding:12px 0!important;margin:0!important}
 .dn-modern #header .site-name-wrapper{flex:0 0 164px!important;width:164px!important;max-width:none!important;margin:0!important;padding:0!important}
 .dn-modern #header .site-name{padding:0!important;margin:0!important}
 .dn-modern #header .site-name img{width:164px!important;max-width:164px!important;height:auto!important;max-height:48px!important;object-fit:contain}
 .dn-modern #header .search{position:relative!important;display:block!important;flex:1 1 auto!important;width:auto!important;max-width:none!important;padding:0!important;margin:0!important}
 .dn-modern #header .navigation-buttons{display:flex!important;align-items:center!important;gap:15px;padding:0!important;position:static!important;flex:0 0 auto!important;width:auto!important;margin:0!important}
 .dn-modern #header .navigation-buttons .top-nav-button-login{display:flex!important;align-items:center;justify-content:center;gap:8px;background:#e7ece7!important;border:0!important;border-radius:22px!important;min-height:40px!important;padding:8px 13px!important;font:700 14px/1.3 Roboto,Arial,sans-serif!important;color:#253c2c!important;white-space:nowrap;box-shadow:none!important}
 .dn-modern #header .top-nav-button-login:before{font-size:23px!important;color:#244c2d!important;margin:0!important}
 .dn-modern #header .top-nav-button-login:after{display:none!important}
 .dn-modern #header .cart-count{background:transparent!important;border:0!important;display:flex!important;align-items:center;gap:7px;padding:6px 0!important;min-height:44px;box-shadow:none!important;color:#24402c!important;font-size:14px!important}
 .dn-modern #header .cart-count:before{font-size:28px!important;color:#24402c!important;margin:0!important}.dn-modern #header .cart-count:after{display:none!important}
 .dn-modern #header .cart-price{display:inline!important;font-weight:700!important;white-space:nowrap}
 .dn-modern #header .languagesMenu{margin:0!important;padding:0!important;border:0!important;font-size:12px!important;color:#24402c!important}
 .dn-modern #header .languagesMenu__box{border:0!important}.dn-modern #header .languagesMenu__header{color:#24402c!important}
 .dn-modern #navigation{display:block!important;position:relative!important;top:auto!important;left:auto!important;width:100%!important;max-width:none!important;height:auto!important;min-height:0!important;overflow:visible!important;background:transparent!important;padding:0 0 12px!important;border:0!important;transform:none!important;z-index:101}
 .dn-modern #navigation .navigation-in{display:flex!important;align-items:center;gap:10px;padding:0!important;background:transparent!important;width:100%!important;overflow:visible!important;height:auto!important}
 .dn-modern #navigation .navigation-in>.menu-level-1{display:flex!important;align-items:center;gap:8px;flex:1;min-width:0;width:auto!important;height:auto!important;padding:0!important;margin:0!important}
 .dn-modern #navigation .navigation-in>.menu-level-1>li{display:none!important}
 .dn-modern #navigation .navigation-in>.menu-level-1>li.dn-quick{display:block!important;float:none!important;flex:0 0 auto!important;margin:0!important;padding:0!important;border:0!important}
 .dn-modern #navigation .navigation-in>.menu-level-1>li.dn-quick>a{height:44px!important;min-height:0!important;display:flex!important;align-items:center;gap:8px;padding:10px 14px!important;background:#e8ede8!important;border-radius:10px!important;text-transform:none!important;color:#2c4030!important;font:600 14px/1.3 Roboto,Arial,sans-serif!important;text-decoration:none!important;white-space:nowrap}
 .dn-modern #navigation .navigation-in>.menu-level-1>li.dn-quick>a b{font-weight:600!important}.dn-modern #navigation .dn-quick a:hover{background:#dcebd9!important}
 .dn-modern #navigation .navigation-in>.menu-level-1>.menu-item-737{order:-1}.dn-modern #navigation .menu-item-737>a:before{content:'%';font-weight:900;font-size:19px;color:#2e7d37}
 .dn-modern #navigation .navigationActions,.dn-modern #navigation .navigation-in-bottom,.dn-modern #navigation .navigation-close,.dn-modern #header .menu-helper{display:none!important}
}
@media(min-width:768px) and (max-width:1150px){.dn-modern .dn-delivery{display:none}.dn-modern #header .header-top{gap:20px!important}.dn-modern #navigation .navigation-in>.menu-level-1>li.menu-item-731{display:none!important}.dn-modern #navigation .navigation-in>.menu-level-1>li.dn-quick>a{font-size:13px!important;padding:10px!important}.dn-modern #header .languagesMenu{display:none!important}}
@media(max-width:767px){
 .dn-modern .top-navigation-bar{background:#f4f6f4!important;border-top:2px solid #cbe9c7;box-shadow:0 1px 0 #dce5dd!important}
 .dn-modern .top-navigation-bar>.container{min-height:62px!important;padding:8px 14px!important}
 .dn-modern .top-navigation-bar .site-name img{width:145px!important;max-width:145px!important;height:auto!important;max-height:44px!important}
 .dn-modern .top-navigation-bar .responsive-tools{display:flex;align-items:center;gap:3px}
 .dn-modern .top-navigation-bar .responsive-tools>a{color:#195d30!important;min-width:40px!important;min-height:44px!important;padding:0!important;margin:0!important}
 .dn-modern .top-navigation-bar .responsive-tools>a[data-target=search]{display:none!important}
 .dn-modern .top-navigation-bar .responsive-tools .dn-mobile-cart{display:flex!important;align-items:center;justify-content:center}.dn-mobile-cart svg{width:25px;height:25px}.dn-modern .dn-mobile-cart:before,.dn-modern .dn-mobile-cart:after{display:none!important}
 .dn-modern #header{border:0!important;background:#f4f6f4!important;box-shadow:none!important}
 .dn-modern #header .header-top{padding:10px 14px 13px!important;background:#f4f6f4!important}
 .dn-modern #header .search{padding:0!important;margin:0!important}
 .dn-modern .dn-delivery,.dn-modern .dn-categories{display:none!important}
 .dn-modern .banners-row:has(.dn-promos){padding:16px 0 0!important}
 .dn-promo-track{display:grid!important;grid-template-columns:none!important;grid-auto-flow:column;grid-auto-columns:82%;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:14px;padding:0 14px 6px;scrollbar-width:none;overscroll-behavior-x:contain}
 .dn-promo-track::-webkit-scrollbar{display:none}.dn-modern .dn-promo-card{scroll-snap-align:start;border-radius:16px}
 .dn-promo-help{display:block;padding-right:16px;margin:5px 0 0}
 .dn-modern .benefitBanner.position--benefitHomepage{grid-template-columns:1fr 1fr;gap:18px 12px;padding:20px 16px!important}
 .dn-modern .benefitBanner.position--benefitHomepage .benefitBanner__item{align-items:flex-start!important;justify-content:flex-start;gap:8px}
 .dn-modern .benefitBanner.position--benefitHomepage .benefitBanner__title{font-size:12px!important}.dn-modern .benefitBanner.position--benefitHomepage .benefitBanner__data{font-size:11px!important}
 .dn-modern .benefitBanner.position--benefitHomepage .benefitBanner__picture,.dn-modern .benefitBanner.position--benefitHomepage .benefitBanner__img{width:26px!important;min-width:26px!important;max-width:26px!important;height:26px!important}
 .dn-modern #navigation{background:#fff!important;color:#24402c!important}.dn-modern #navigation .menu-level-1>li>a{font-family:Roboto,Arial,sans-serif!important;text-transform:none!important;color:#24402c!important}
}
@media(prefers-reduced-motion:reduce){.dn-modern .dn-promo-card img{transition:none}}
/* Apollo uses an additional wrapper and absolute navigation positioning. */
.dn-modern .banners-top-block:has(.dn-promos){background:#f0f8ef;padding:20px 28px 0!important;margin:0!important;width:100%!important}
.dn-modern .banners-top-block:has(.dn-promos)>.container{display:flex!important;flex-direction:column;width:100%!important;max-width:1600px!important;padding:0!important;margin:0 auto!important}
.dn-modern .next-to-carousel-banners:has(.dn-promos){order:-1;display:block!important;width:100%!important;padding:0!important;margin:0!important}
.dn-modern .next-to-carousel-banners:has(.dn-promos)>.banner-wrapper{display:block!important;width:100%!important;float:none!important;margin:0!important;padding:0!important;flex:none!important}
.dn-modern .next-to-carousel-banners .banner-wrapper:has(.dn-promos)>span{display:block!important;width:100%!important;padding:0!important;margin:0!important}
.dn-modern #header .search-form .btn{font-size:0!important}
.dn-modern #header .top-nav-button-login{text-transform:none!important}
@media(min-width:768px){
 .dn-modern #navigation .navigation-in{position:static!important}
 .dn-modern #navigation .navigation-in>.menu-level-1>li.dn-quick,.dn-modern #navigation .navigation-in>.menu-level-1>li.dn-quick>a{visibility:visible!important}
}
@media(max-width:767px){.dn-modern .banners-top-block:has(.dn-promos){padding:16px 0 0!important}.dn-modern .banners-top-block .benefitBanner.position--benefitHomepage{padding:20px 16px!important}}
/* Shoptet's carousel-free homepage uses .banners-row inside the main content. */
.dn-modern.type-index .content-wrapper.products-group{max-width:1660px!important;width:100%!important;margin-top:0!important;padding:20px 28px 0!important}
.dn-modern.type-index .content-wrapper.products-group .content-wrapper-in,.dn-modern.type-index .content-wrapper.products-group main.content{padding:0!important;margin:0!important;width:100%!important}
.dn-modern .banners-row:has(.dn-promos){display:flex!important;flex-direction:column;padding:0!important}
.dn-modern .banners-row:has(.dn-promos)>.next-to-carousel-banners{order:-1}
.dn-modern .banners-row:has(.dn-promos)>.benefitBanner.position--benefitHomepage{display:grid!important;order:1;padding:24px 18px!important}
@media(max-width:767px){.dn-modern.type-index .content-wrapper.products-group{padding:14px 0 0!important}.dn-modern .banners-row:has(.dn-promos)>.benefitBanner.position--benefitHomepage{padding:20px 16px!important}}

/* Compact mobile header keeps Apollo's native cart and responsive tools. */
@media(max-width:767px){
 .dn-modern .top-navigation-bar{height:64px!important}
 .dn-modern .top-navigation-bar>.container{display:flex!important;align-items:center!important;justify-content:space-between;height:62px!important;min-height:62px!important;padding:6px 14px!important;gap:8px}
 .dn-modern .top-navigation-bar .site-name{position:static!important;display:flex!important;align-items:center;width:145px!important;flex:0 1 145px;height:50px!important}
 .dn-modern .top-navigation-tools{position:static!important;width:auto!important;margin:0 0 0 auto!important;flex:0 0 auto}
 .dn-modern .top-navigation-bar .responsive-tools{margin:0!important;gap:0!important;width:auto!important;height:48px!important}
 .dn-modern .top-navigation-bar .responsive-tools>a{width:44px!important;min-width:44px!important;height:48px!important}
 .dn-modern .top-navigation-bar .responsive-tools .dn-mobile-cart{display:none!important}
 .dn-modern .responsive-tools .click-cart{margin:0!important;padding:0!important;width:44px!important;height:48px!important}
 .dn-modern .responsive-tools .cart-count{display:flex!important;align-items:center;justify-content:center;width:44px!important;min-width:44px!important;height:48px!important;padding:0!important;background:transparent!important;color:#195d30!important;border:0!important}
 .dn-modern .responsive-tools .cart-price{display:none!important}
 .dn-modern #header{top:64px!important}
 .dn-modern #header>.container{padding:0!important;width:100%!important}
 .dn-modern #header .header-top{width:100%!important}
 .dn-modern .overall-wrapper{padding-top:133px!important}
 .dn-modern.type-index .content-wrapper:has(.dn-promos){width:100%!important;max-width:none!important;padding:14px 16px 0!important}
 .dn-modern.type-index .banners-row:has(.dn-promos){width:calc(100% + 32px)!important;max-width:none!important;margin:0 -16px!important}
 .dn-modern.type-index .benefitBanner.position--benefitHomepage{width:calc(100% + 32px)!important;margin:0 -16px!important}
 .dn-modern .banners-row:has(.dn-promos)>.benefitBanner.position--benefitHomepage{width:100%!important;margin:0!important}
 .dn-modern .benefitBanner.position--benefitHomepage .benefitBanner__item{flex-direction:row!important}
}
