/* ==========================================================
   Nong Thai Duong - design tokens
   Values lifted verbatim from Figma "Nông Thái Dương"
   file 37LVWXHH5q8LP9XWukt5tO, frame 02_Homepage_Box_Layout.
   ========================================================== */
@font-face{font-family:'Fz Poppins';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/fz-poppins-400.ttf?ver=2') format('truetype')}
@font-face{font-family:'Fz Poppins';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/fz-poppins-500.ttf?ver=2') format('truetype')}
@font-face{font-family:'Fz Poppins';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/fz-poppins-600.ttf?ver=2') format('truetype')}
@font-face{font-family:'Fz Poppins';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/fz-poppins-700.ttf?ver=2') format('truetype')}
:root{
  /* brand */
  --ntd-lime:#CFDD28;
  --ntd-lime-dark:#bccb1f;
  --ntd-green-900:#1E5132;
  --ntd-green-800:#2C742F;
  --ntd-green-600:#45A36A;
  --ntd-green-400:#72B88E;
  --ntd-green-500:#45A36A;
  --ntd-green-50:#eef4ee;
  --ntd-success-dark:#2C742F;
  --ntd-success-bright:#84D187;
  --ntd-cart-hover:#00B207;
  --ntd-action-hover:#00B207;
  /* gray scale */
  --ntd-gray-900:#1A1A1A;
  --ntd-gray-800:#333333;
  --ntd-gray-700:#4D4D4D;
  --ntd-gray-600:#666666;
  --ntd-gray-400:#999999;
  --ntd-gray-200:#CCCCCC;
  --ntd-gray-100:#E6E6E6;
  --ntd-gray-50:#F2F2F2;
  --ntd-overlay-gray:rgba(77,77,77,.42);
  /* semantic aliases used across the theme */
  --ntd-ink:var(--ntd-gray-900);
  --ntd-body:var(--ntd-gray-700);
  --ntd-muted:var(--ntd-gray-400);
  --ntd-border:var(--ntd-gray-100);
  --ntd-bg:#ffffff;
  --ntd-bg-soft:#f7f8f5;
  --ntd-star:#f5a623;
  --ntd-radius:6px;
  --ntd-radius-lg:16px;
  --ntd-container:1320px;
  --ntd-gap:32px;
  --ntd-font:'Fz Poppins','Poppins',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
}

/* ---------- reset-ish ---------- */
*,*::before,*::after{box-sizing:border-box}
html,body{max-width:100%;overflow-x:clip}
body{margin:0;font-family:var(--ntd-font);font-size:14px;line-height:1.5;color:var(--ntd-body);background:var(--ntd-bg);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4,h5{margin:0 0 .5em;color:var(--ntd-ink);font-weight:600;line-height:1.25}
h1{font-size:40px}h2{font-size:32px}h3{font-size:22px}h4{font-size:18px}
p{margin:0 0 1em}
ul{margin:0;padding:0;list-style:none}
button{font-family:inherit}

/* ---------- layout ----------
   Figma canvas is 1920 wide with 300px side gutters => 1320px of content.
   min() keeps that exact at >=1368px and gutters it below. */
.ntd-container{width:min(var(--ntd-container),100% - 48px);margin-inline:auto}
.ntd-section{padding:56px 0}
.ntd-section__title{text-align:center;font-size:32px;margin-bottom:32px}
.ntd-grid{display:grid;gap:24px}
.ntd-grid--4{grid-template-columns:repeat(4,1fr)}
.ntd-grid--3{grid-template-columns:repeat(3,1fr)}
.ntd-grid--2{grid-template-columns:repeat(2,1fr)}

/* ---------- buttons ---------- */
.ntd-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:999px;border:0;font-weight:600;font-size:14px;cursor:pointer;transition:.18s ease}
.ntd-btn--lime{background:var(--ntd-lime);color:var(--ntd-green-900)}
.ntd-btn--lime:hover{background:var(--ntd-lime-dark)}
.ntd-btn--green{background:var(--ntd-green-900);color:#fff}
.ntd-btn--green:hover{background:var(--ntd-green-800)}
.ntd-btn--white{background:#fff;color:var(--ntd-green-900)}
.ntd-btn--sm{padding:9px 18px;font-size:14px}

/* ==========================================================
   TOPBAR  - Figma node 93:6450 "Small One"  (h 42)
   ========================================================== */
.ntd-topbar{background:var(--ntd-lime);color:var(--ntd-green-900);box-shadow:0 1px 0 #e5e5e5}
.ntd-topbar .ntd-container{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0}
.ntd-topbar,.ntd-topbar a{font-size:12px;line-height:1.3;color:var(--ntd-green-900)}
.ntd-topbar__left{display:flex;align-items:center;gap:8px}
.ntd-topbar__left img{width:16px;height:19px;margin:-.5px;flex:none}
.ntd-topbar__right{display:flex;align-items:center;gap:20px}
.ntd-topbar__sel{display:flex;align-items:center;gap:6px;text-align:center}
.ntd-topbar__lang .gt_selector{border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;padding:0 20px 0 0;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5'%3E%3Cpath d='M0 0l4 5 4-5z' fill='%231E5132'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right center}
.ntd-topbar__sel img{width:8px;height:4.5px;margin:-.5px;flex:none}
.ntd-topbar__sep{width:1px;height:15px;background:currentColor;opacity:.35;flex:none}
.ntd-topbar__account{display:flex;gap:4px}

/* ==========================================================
   HEADER  - Figma node 93:6470 "Midle"  (h 93, white)
   Absolute offsets are Figma x minus the 300px gutter.
   ========================================================== */
.ntd-header{background:#fff}
.ntd-header .ntd-container{position:relative;height:93px}

.ntd-logo{position:absolute;left:0;top:13px;width:121px;height:66px;display:block}
.ntd-logo img,.ntd-logo svg{width:121px;height:66px;object-fit:contain}
.ntd-logo .custom-logo-link,.ntd-logo .custom-logo{width:121px;height:66px;object-fit:contain}

.ntd-search{position:absolute;left:411px;top:24px;display:flex;align-items:center;border:1px solid var(--ntd-gray-100);border-radius:6px;overflow:hidden;background:#fff}
.ntd-search__field{display:flex;align-items:center;gap:8px;padding:12px 18px;width:312px;flex:none}
.ntd-search__field img{width:20px;height:20px;padding:1.75px;box-sizing:border-box;object-fit:contain;flex:none}
.ntd-search input[type=search],.ntd-search input[type=text]{border:0;outline:0;background:transparent;width:100%;min-width:0;font:400 14px/1.5 var(--ntd-font);color:var(--ntd-gray-900);padding:0;-webkit-appearance:none}
.ntd-search input::placeholder{color:var(--ntd-gray-400);opacity:1}
.ntd-search button{background:var(--ntd-lime);color:var(--ntd-green-900);border:0;padding:14px 24px;font:700 14px/normal var(--ntd-font);cursor:pointer;white-space:nowrap;align-self:stretch}
.ntd-search button:hover{background:var(--ntd-lime-dark)}

.ntd-header__actions{position:absolute;left:1129px;top:29.5px;display:flex;align-items:center;gap:16px}
.ntd-header__wish{width:32px;height:32px;display:block;flex:none}
.ntd-header__sep{width:1px;height:24px;background:var(--ntd-gray-100);flex:none}
.ntd-cart{display:flex;align-items:center;gap:12px}
.ntd-cart__ico{position:relative;width:34px;height:34px;flex:none}
.ntd-cart__ico img{width:34px;height:34px}
.ntd-cart__badge{position:absolute;left:18px;top:-2px;width:18px;height:18px;border-radius:16px;background:var(--ntd-success-dark);border:1px solid #fff;color:#fff;font:500 10px/16px var(--ntd-font);text-align:center}
.ntd-cart__meta{display:flex;flex-direction:column;gap:7px;white-space:nowrap}
.ntd-cart__meta small{font:400 11px/1.2 var(--ntd-font);color:var(--ntd-gray-700)}
.ntd-cart__meta strong{font:500 14px/1 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-cart__meta .woocommerce-Price-currencySymbol{text-decoration:underline}

/* ==========================================================
   NAV  - Figma node 93:6423 "Navigation"
   Green bar is 1320 wide on a white page, height 64.
   ========================================================== */
.ntd-nav{background:#fff}
.ntd-nav .ntd-container{position:relative;display:flex;align-items:center;gap:32px;height:64px;background:var(--ntd-green-900)}

.ntd-nav__menu{display:flex;align-items:center;gap:32px;margin-left:40px;position:relative}
body.home .ntd-nav__menu{height:64px}
body.home .ntd-nav__menu>li{height:100%;display:flex;align-items:center}
body.home .ntd-nav__menu::before{content:"";position:absolute;left:-40px;top:50%;width:8px;height:64px;background:var(--ntd-lime);transform:translateY(-50%)}
.ntd-nav__menu>li{position:relative}
.ntd-nav__menu>li>a{display:flex;align-items:center;gap:4px;font:500 16px/normal var(--ntd-font);color:#fff;white-space:nowrap}
.ntd-nav__menu>li.menu-item-has-children>a::after{content:"";width:16px;height:16px;flex:none;background:currentColor;-webkit-mask:url(../img/icons/chevron-16.svg) center no-repeat;mask:url(../img/icons/chevron-16.svg) center no-repeat;-webkit-mask-size:10.8333px 6.16667px;mask-size:10.8333px 6.16667px}
.ntd-nav__menu>li>a:hover{color:var(--ntd-lime)}
.ntd-nav__menu .sub-menu{position:absolute;top:100%;left:0;width:min(280px,calc(100vw - 32px));min-width:0;background:#fff;border:1px solid var(--ntd-gray-100);border-radius:0 0 var(--ntd-radius) var(--ntd-radius);box-shadow:0 12px 32px rgba(0,0,0,.12);padding:0;display:none;z-index:60}
.ntd-nav__menu li:hover>.sub-menu,.ntd-nav__menu li:focus-within>.sub-menu{display:block}
.ntd-nav__menu .sub-menu a{display:flex;align-items:center;gap:14px;min-height:52px;padding:12px 16px;color:var(--ntd-ink);font-size:16px;line-height:1.4;white-space:normal}
.ntd-nav__menu .sub-menu a:hover,
.ntd-nav__menu .sub-menu a:focus-visible,
.ntd-nav__menu .sub-menu .current-menu-item>a{background:var(--ntd-green-600);color:#fff}
.ntd-nav__menu .sub-menu .ntd-menu-category>a{min-height:52px}
.ntd-nav__menu .sub-menu .ntd-menu-category--has-theme-icon:not(.ntd-menu-category--has-icon)>a::before,
.ntd-mobilenav__menu .sub-menu .ntd-menu-category--has-theme-icon:not(.ntd-menu-category--has-icon)>a::before{content:"";display:block;width:24px;height:24px;flex:0 0 24px;background-color:var(--ntd-gray-400);-webkit-mask:var(--ntd-menu-category-icon) center/contain no-repeat;mask:var(--ntd-menu-category-icon) center/contain no-repeat}
.ntd-nav__menu .sub-menu .ntd-menu-category--has-theme-icon:not(.ntd-menu-category--has-icon)>a:hover::before,
.ntd-nav__menu .sub-menu .ntd-menu-category--has-theme-icon:not(.ntd-menu-category--has-icon)>a:focus-visible::before,
.ntd-nav__menu .sub-menu .ntd-menu-category--has-theme-icon:not(.ntd-menu-category--has-icon).current-menu-item>a::before{background-color:#fff}
.ntd-menu-category__icon{display:block;width:24px;height:24px;flex:0 0 24px;object-fit:contain}
.ntd-menu-category__icon--monochrome{transition:filter .18s ease}
.ntd-nav__menu .sub-menu a:hover .ntd-menu-category__icon--monochrome,
.ntd-nav__menu .sub-menu a:focus-visible .ntd-menu-category__icon--monochrome,
.ntd-nav__menu .sub-menu .current-menu-item>a .ntd-menu-category__icon--monochrome{filter:brightness(0) invert(1)}
.ntd-menu-category--hat-giong-ngo{--ntd-menu-category-icon:url(../img/cat/hat-giong-ngo.svg)}
.ntd-menu-category--hat-giong-lua{--ntd-menu-category-icon:url(../img/cat/hat-giong-lua.svg)}
.ntd-menu-category--thuoc-tru-chuot{--ntd-menu-category-icon:url(../img/cat/thuoc-tru-chuot.svg)}
.ntd-menu-category--thuoc-tru-sau{--ntd-menu-category-icon:url(../img/cat/thuoc-tru-sau.svg)}
.ntd-menu-category--thuoc-tru-benh{--ntd-menu-category-icon:url(../img/cat/thuoc-tru-benh.svg)}
.ntd-menu-category--thuoc-tru-co{--ntd-menu-category-icon:url(../img/cat/thuoc-tru-co.svg)}
.ntd-menu-category--thuoc-bo-tro{--ntd-menu-category-icon:url(../img/cat/thuoc-bo-tro.svg)}
.ntd-menu-category--phan-bon{--ntd-menu-category-icon:url(../img/cat/phan-bon.svg)}
.ntd-nav__menu .sub-menu .ntd-menu-all-categories>a{min-height:52px;border-top:1px solid var(--ntd-gray-100)}
.ntd-nav__menu .sub-menu .ntd-menu-all-categories>a::before,
.ntd-mobilenav__menu .sub-menu .ntd-menu-all-categories>a::before{content:"";display:block;width:24px;height:24px;flex:0 0 24px;background-color:var(--ntd-gray-400);-webkit-mask:url(../img/icons/plus-solid.svg) center/contain no-repeat;mask:url(../img/icons/plus-solid.svg) center/contain no-repeat}
.ntd-nav__menu .sub-menu .ntd-menu-all-categories>a:hover,
.ntd-nav__menu .sub-menu .ntd-menu-all-categories>a:focus-visible{background:var(--ntd-green-600);color:#fff}
.ntd-nav__menu .sub-menu .ntd-menu-all-categories>a:hover::before,
.ntd-nav__menu .sub-menu .ntd-menu-all-categories>a:focus-visible::before,
.ntd-nav__menu .sub-menu .ntd-menu-all-categories.current-menu-item>a::before{background-color:#fff}

.ntd-nav__phone{margin-left:auto;padding-right:10.5px;display:flex;align-items:center;gap:8px;color:#fff;font:500 14px/1.5 var(--ntd-font);white-space:nowrap}
.ntd-nav__phone img{width:28px;height:28px;padding:3.205px;box-sizing:border-box;object-fit:contain;flex:none}

.ntd-nav__burger{
  display:none;align-items:center;justify-content:center;width:44px;height:44px;
  padding:0;border:0;background:transparent;color:var(--ntd-lime);cursor:pointer;
}
.ntd-nav__burger-icon{display:block;width:28px;height:24px;background:currentColor;mask:url(../img/icons/menu.svg) center/contain no-repeat;-webkit-mask:url(../img/icons/menu.svg) center/contain no-repeat}

/* Inner pages swap the green bar for Figma's white "Nav Links" row
   (1920x60, no category button, gray links, dark phone). Home keeps green. */
body:not(.home) .ntd-nav{box-shadow:inset 0 1px 0 var(--ntd-gray-100)}
body:not(.home) .ntd-nav .ntd-container{height:60px;background:none}
body:not(.home) .ntd-nav__menu>li>a{font-size:14px;color:var(--ntd-gray-600)}
body:not(.home) .ntd-nav__menu>li>a:hover,
body:not(.home) .ntd-nav__menu>li.current-menu-item>a,
body:not(.home) .ntd-nav__menu>li.current_page_item>a,
body:not(.home) .ntd-nav__menu>li.current-menu-ancestor>a{color:var(--ntd-green-900)}
body:not(.home) .ntd-nav__phone{color:var(--ntd-gray-900)}

/* ==========================================================
   HERO - Figma node 118:6310, full-width 1320 x 573 banner
   ========================================================== */
.ntd-hero{padding:13px 0 0}
.ntd-hero__inner{display:grid;grid-template-columns:minmax(0,1fr);gap:0}
.ntd-hero__banner{position:relative;width:100%;max-width:100%;height:auto;aspect-ratio:1320 / 573;border-radius:8px;overflow:hidden;background:var(--ntd-green-900)}

/* Complete Figma exports keep the banner ratio stable at every viewport. */
.ntd-hero__slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .55s ease}
.ntd-hero__slide.is-active{opacity:1;visibility:visible}
.ntd-hero__banner:not([data-slider]) .ntd-hero__slide{opacity:1;visibility:visible}
.ntd-hero__slide:focus-visible{outline:3px solid var(--ntd-lime);outline-offset:-3px}
.ntd-hero__slide img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 40%}
.ntd-hero__dots{position:absolute;left:50%;bottom:15.7%;z-index:3;display:flex;align-items:center;gap:8px;transform:translateX(-50%)}
.ntd-hero__dot{width:10px;height:10px;margin:0;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.35);cursor:pointer;transition:background-color .2s ease,transform .2s ease}
.ntd-hero__dot:hover{background:rgba(255,255,255,.75)}
.ntd-hero__dot.is-active{background:#fff;transform:scale(1.1)}
.ntd-hero__dot:focus-visible{outline:2px solid #fff;outline-offset:3px}

@media (prefers-reduced-motion:reduce){
	.ntd-hero__slide{transition:none}
	.ntd-hero__dot{transition:none}
}

@media (max-width:560px){
	.ntd-hero__dots{gap:6px}
	.ntd-hero__dot{width:8px;height:8px}
}

/* ==========================================================
   FEATURE STRIP  - Figma node 93:6307
   4 x 312 + 3 x 24 gap = 1320
   ========================================================== */
.ntd-features{display:flex;gap:24px;align-items:stretch;background:#fff;box-shadow:inset 0 -.5px 0 0 #ccc}
.ntd-feature{display:flex;align-items:center;gap:16px;padding:30px 0;width:312px;flex:none;position:relative;background:#fff}
.ntd-feature:hover{box-shadow:inset 0 -3px 0 0 #00B207}
.ntd-feature__ico{width:72px;height:72px;border-radius:5000px;background:#EDF2EE;display:grid;place-items:center;flex:none;padding:var(--pad);transition:background .18s}
.ntd-feature:hover .ntd-feature__ico{background:var(--ntd-green-900)}
.ntd-feature:hover .ntd-feature__ico img{filter:brightness(0) invert(1)}
.ntd-feature__ico img{width:var(--s);height:var(--s);object-fit:contain}
.ntd-feature__info{display:flex;flex-direction:column;gap:8px;justify-content:center}
.ntd-feature strong{display:block;width:224px;font:600 18px/normal var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-feature small{display:block;width:237px;font:400 14px/1.5 var(--ntd-font);color:var(--ntd-gray-400)}

/* Desktop Figma layout: float the benefits card over the hero while retaining
   its original flow space below, so the next section keeps its breathing room. */
@media (min-width:1368px){
	.ntd-nav__menu{gap:64px}
	.ntd-features{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr) minmax(0,1.04fr) minmax(0,.96fr);gap:4px;width:min(1263px,calc(100% - 57px));margin-inline:auto;padding:16px 8px 16px 22px;box-sizing:border-box;position:relative;z-index:5;transform:translateY(-72px);overflow:hidden;border-radius:8px;box-shadow:0 10px 28px rgba(20,32,22,.16)}
	.ntd-feature{width:auto;min-width:0;padding:14px 0;gap:12px}
	.ntd-feature__ico{width:68px;height:68px}
	.ntd-feature::after{content:"";position:absolute;inset-inline:0;bottom:-16px;height:3px;background:var(--ntd-action-hover);opacity:0;pointer-events:none;transition:opacity .18s ease}
	.ntd-feature:hover{box-shadow:none}
	.ntd-feature:hover::after{opacity:1}
	.ntd-feature__info{min-width:0;flex:1}
	.ntd-feature strong,.ntd-feature small{width:auto}
}

/* ==========================================================
   PROMO BANNERS - Figma node 93:6259
   ========================================================== */
.ntd-promos{display:flex;gap:32px;padding:48px 0}
.ntd-promos__link{position:relative;display:block;flex:1 1 0;min-width:0;overflow:hidden;aspect-ratio:657 / 536}
.ntd-promos__link img{position:absolute;inset:0;display:block;width:100%;max-width:100%;height:100%;object-fit:fill}
.ntd-promos__link:focus-visible{outline:2px solid var(--ntd-green-600);outline-offset:-2px}

.ntd-countdown{
  aspect-ratio:644 / 536;
  background:var(--ntd-green-900) var(--ntd-countdown-image, url(../img/home/countdown-bg.png)) center/cover no-repeat;
  color:#fff;text-align:center
}
.ntd-countdown__kicker{position:absolute;top:6.5%;left:0;right:0;font:500 clamp(11px,1.1vw,14px)/1 var(--ntd-font);letter-spacing:.42px;text-transform:uppercase}
.ntd-countdown__title{position:absolute;top:12.1%;left:5%;right:5%;font:700 clamp(28px,2.8vw,40px)/1.2 var(--ntd-font);color:#fff;white-space:nowrap}
.ntd-countdown__clock{position:absolute;top:22.6%;left:22%;right:22%;display:flex;align-items:flex-start;justify-content:center;gap:clamp(2px,1vw,8px)}
.ntd-countdown__unit{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:clamp(32px,4vw,56px)}
.ntd-countdown__unit b{font:400 clamp(18px,1.7vw,24px)/1.5 var(--ntd-font);color:#fff}
.ntd-countdown__unit small{font:400 clamp(9px,.85vw,12px)/1 var(--ntd-font);color:rgba(255,255,255,.8);letter-spacing:.36px;white-space:nowrap}
.ntd-countdown__sep{font:400 clamp(18px,1.7vw,24px)/1.5 var(--ntd-font);color:rgba(255,255,255,.6)}
.ntd-countdown__cta{position:absolute;top:35.3%;left:50%;display:inline-flex;align-items:center;justify-content:center;gap:10px;width:min(162px,42%);height:clamp(38px,3.2vw,45px);border-radius:999px;background:#fff;color:#00B207;font:700 clamp(12px,1.05vw,15px)/1.2 var(--ntd-font);transform:translateX(-50%);white-space:nowrap}
.ntd-countdown__cta span{font-size:20px;font-weight:400;line-height:1}

/* ==========================================================
   CATEGORY GRID  - Figma node 93:6234
   4 x 303 + 3 x 36 gap = 1320; rows 24 apart.
   ========================================================== */
.ntd-cats{padding:56px 0}
.ntd-cats__title{margin:0 0 34px;font:700 36px/1.2 var(--ntd-font);color:var(--ntd-gray-900);text-align:center}
.ntd-cat-grid{display:grid;grid-template-columns:repeat(4,303px);gap:24px 36px;justify-content:space-between}

.ntd-cat-card{width:303px;background:#fff;box-shadow:inset 0 0 0 1px var(--ntd-gray-100);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:16px 0 24px;transition:box-shadow .18s}
.ntd-cat-card:hover{box-shadow:inset 0 0 0 1px var(--ntd-success-dark),0 0 6px rgba(32,181,38,.32)}
.ntd-cat-card:hover .ntd-cat-card__name{color:var(--ntd-success-dark)}
.ntd-cat-card__name{width:200px;text-align:center;font:600 18px/1.5 var(--ntd-font);color:var(--ntd-gray-900)}

/* Figma stacks two artwork layers inside a 190x130 clip (node 93:6238) */
.ntd-cat-card__img{position:relative;width:190px;height:130px;overflow:hidden;flex:none;display:block}
.ntd-cat-card__img img{position:absolute;max-width:none}
.ntd-cat-card__img .l-1{left:9.85%;top:-14.23%;width:80.54%;height:117.72%}
.ntd-cat-card__img .l-2{left:11.67%;top:-5.82%;width:76.12%;height:111.25%}
.ntd-cat-card__img .l-own{inset:0;width:100%;height:100%;object-fit:contain}

/* rating row - real 16px stars from Figma node 93:5993 */
.ntd-rating{display:flex;align-items:center;gap:0}
.ntd-rating img{width:16px;height:16px;display:block;flex:none}

/* ==========================================================
   PRODUCT CARD  - Figma node 93:5979 (248x339)
   image 248x246 full width; info padded 16; name y264, price y288,
   rating y312; cart button 40px at right:16.
   ========================================================== */
.ntd-featured{padding:56px 0}
.ntd-featured__title{margin:0 0 36px;font:700 36px/1.2 var(--ntd-font);color:var(--ntd-gray-900);text-align:center}

.ntd-products{display:flex;gap:20px;align-items:flex-start}

.ntd-product{position:relative;width:248px;height:339px;flex:none;background:#fff;box-shadow:inset 0 0 0 1px var(--ntd-gray-100);transition:box-shadow .18s}
.ntd-product:hover{box-shadow:inset 0 0 0 1px var(--ntd-success-dark),0 0 6px rgba(32,181,38,.32)}
.ntd-product__thumb{position:absolute;left:0;top:0;width:100%;height:246px;display:block;overflow:hidden}
.ntd-product__thumb img{width:100%;height:100%;object-fit:contain}

.ntd-product__title{position:absolute;left:16px;top:264px;width:180px;display:block;font:400 16px/1.5 var(--ntd-font);color:var(--ntd-gray-700);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;transition:color .18s ease,font-weight .18s ease}
.ntd-product:hover .ntd-product__title,.ntd-product__title:hover,.ntd-product__title:focus-visible{font-weight:700;color:var(--ntd-green-900)}
.ntd-product__price{position:absolute;left:16px;top:288px;font:700 16px/1.5 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-product__price del{font-weight:400;color:var(--ntd-gray-400);margin-right:6px}
.ntd-product__price ins{text-decoration:none}
.ntd-product .ntd-rating{position:absolute;left:16px;top:312px}
.ntd-product .ntd-rating img{width:12px;height:12px}

/* add-to-cart is the 40px circle on the right of the info block */
.ntd-product__badge{position:absolute;left:16px;top:16px;z-index:4;min-width:90px;height:27px;padding:0 10px;border-radius:4px;background:#EA4B48;color:#fff;font:500 12px/1.4 var(--ntd-font);display:inline-flex;align-items:center;justify-content:center}
.ntd-product__actions{position:absolute;inset:0;z-index:3;pointer-events:none}
.ntd-product__hover{position:absolute;top:20px;right:20px;display:flex;flex-direction:column;gap:8px;opacity:0;transition:opacity .18s ease;pointer-events:none}
.ntd-product:hover .ntd-product__hover,.ntd-product__actions:focus-within .ntd-product__hover,.ntd-mini:hover .ntd-product__hover{opacity:1;pointer-events:auto}
.ntd-product__act{width:40px;height:40px;min-width:40px;padding:0;border:0;border-radius:50%;background:#fff;color:var(--ntd-gray-900);display:grid;place-items:center;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.12);transition:background .18s ease,color .18s ease,transform .18s ease}
.ntd-product__act:hover,.ntd-product__act:focus-visible{background:var(--ntd-green-900);color:#fff;transform:translateY(-1px)}
.ntd-product__qv:hover,.ntd-product__qv:focus-visible,
.ntd-wishtoggle:hover,.ntd-wishtoggle:focus-visible{background:var(--ntd-action-hover);color:#fff}
.ntd-product__act svg{width:18px;height:18px;display:block}
.ntd-product__actions>.ntd-product__cart{position:absolute;right:16px;bottom:16px;pointer-events:auto;background:var(--ntd-gray-50);color:var(--ntd-gray-900)}
.ntd-product__cart:hover,.ntd-product__cart:focus-within{background:var(--ntd-green-900);color:#fff;transform:translateY(-1px)}
.ntd-product__cart a{position:relative;display:grid;width:40px;height:40px;place-items:center;align-items:center;justify-items:center;padding:0;margin:0;color:inherit;font-size:0;line-height:0;text-decoration:none}
.ntd-product__cart a::after{content:"";position:absolute;top:50%;left:50%;display:block;width:20px;height:20px;margin:0;background:url(../img/icons/bag.svg) center/contain no-repeat;filter:brightness(0) saturate(100%);transform:translate(-50%,-50%)}
.ntd-product__cart:hover a::after,.ntd-product__cart:focus-within a::after{filter:brightness(0) invert(1)}
.ntd-product__cart .added_to_cart{display:none!important}

/* ---------- exported deal card (248x335, Figma 93:5967) ---------- */
.ntd-deal--image{display:block;width:248px;height:335px;margin-top:2px;flex:none;overflow:hidden}
.ntd-deal__image{display:block;width:100%;height:100%;object-fit:cover}
.ntd-deal--image:focus-visible{outline:2px solid var(--ntd-green-600);outline-offset:3px}

/* ==========================================================
   COLLECTION COLUMNS  - Figma nodes 93:5983 / 6045 / 6116
   4 x 312 + 3 x 24 gap = 1320; rows 116 tall, 16 apart.
   ========================================================== */
.ntd-collections{display:flex;gap:24px;align-items:flex-start;margin-top:24px}
.ntd-collection{width:312px;flex:none}
.ntd-collection__title{margin:0 0 16px;font:600 18px/1.5 var(--ntd-font);color:var(--ntd-gray-900)}

.ntd-mini{position:relative;display:block;width:312px;height:116px;background:#fff;box-shadow:inset 0 0 0 1px var(--ntd-gray-100);margin-bottom:16px;transition:box-shadow .18s}
.ntd-mini:last-child{margin-bottom:0}
.ntd-mini:hover{box-shadow:inset 0 0 0 1px var(--ntd-success-dark)}
.ntd-mini__thumb{position:absolute;left:0;top:0;width:112px;height:112px;display:grid;place-items:center;overflow:hidden}
.ntd-mini__thumb img{width:102px;height:102px;object-fit:contain}
.ntd-mini__info{position:absolute;left:124px;top:0;right:12px}
.ntd-mini__title{display:block;margin-top:24px;font:400 16px/1.5 var(--ntd-font);color:var(--ntd-gray-700);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ntd-mini:hover .ntd-mini__title,.ntd-mini__title:hover,.ntd-mini__info:focus-visible .ntd-mini__title{font-weight:700;color:var(--ntd-green-900)}
.ntd-mini__price{display:block;font:700 16px/1.5 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-mini__price del{font-weight:400;color:var(--ntd-gray-400);margin-right:6px}
.ntd-mini__price ins{text-decoration:none}
.ntd-mini .ntd-rating{margin-top:6px}
.ntd-mini:hover .ntd-mini__price,.ntd-mini:hover .ntd-rating{visibility:hidden;opacity:0}
.ntd-mini .ntd-product__hover{top:52px;left:124px;right:auto;flex-direction:row;gap:8px}
.ntd-mini .ntd-product__act{width:40px;height:40px;min-width:40px}
.ntd-mini .ntd-product__act svg{width:18px;height:18px}
.ntd-mini .ntd-product__cart{background:#fff;color:var(--ntd-gray-900)}
.ntd-mini .ntd-product__cart:hover,.ntd-mini .ntd-product__cart:focus-within{background:var(--ntd-cart-hover);color:#fff}
.ntd-mini .ntd-product__cart:hover a::after,.ntd-mini .ntd-product__cart:focus-within a::after{filter:brightness(0) invert(1)}

/* Home product cards show every action only when a real hover device is available. */
@media (hover:hover) and (pointer:fine){
	body.home .ntd-product:hover .ntd-product__hover,
	body.home .ntd-mini:hover .ntd-product__hover{opacity:1;pointer-events:auto}
	body.home .ntd-product:hover .ntd-product__cart,
	body.home .ntd-mini:hover .ntd-product__cart{opacity:1;pointer-events:auto}
}

.ntd-mini--direct{text-decoration:none;color:inherit;cursor:pointer}
.ntd-mini--direct:hover{box-shadow:inset 0 0 0 1px var(--ntd-gray-100)}
.ntd-mini--direct:hover .ntd-mini__title{font-weight:400;color:var(--ntd-gray-700)}
.ntd-mini--direct:focus-visible{outline:2px solid var(--ntd-green-600);outline-offset:2px}

/* Shop sale cards keep their information visible on hover. */
.ntd-shopbar__sale .ntd-mini--direct:hover{
  box-shadow:inset 0 0 0 1px var(--ntd-success-dark),0 0 6px rgba(32,181,38,.32)
}
.ntd-shopbar__sale .ntd-mini--direct:hover .ntd-mini__price,
.ntd-shopbar__sale .ntd-mini--direct:hover .ntd-rating{
  visibility:visible;
  opacity:1
}

/* ---------- voucher banner (312x423, Figma 93:6187) ----------
   Artwork is one outlined SVG (lettering included); copy lives in the DOM
   as screen-reader text. */
.ntd-voucher{position:relative;display:block;width:312px;height:423px;flex:none;overflow:hidden}
.ntd-voucher__art{width:312px;height:423px;display:block}
.ntd-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* ==========================================================
   VIDEO BAND  - Figma node 93:5955 (1320x396)
   ========================================================== */
.ntd-video{position:relative;width:100%;height:396px;overflow:hidden;margin:56px 0}
.ntd-video__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ntd-video__scrim{position:absolute;inset:0;background:#002C02;opacity:.7}
.ntd-video__title{position:absolute;left:0;right:0;top:108px;margin:0;font:600 28px/1.5 var(--ntd-font);color:#fff;text-align:center}
/* circle r40.75 centred at (660,256) => 81.5 box, top 215.25 */
.ntd-video__play{position:absolute;left:50%;top:215.25px;transform:translateX(-50%);width:81.5px;height:81.5px;display:grid;place-items:center;padding:0;border:0;background:transparent;cursor:pointer;transition:transform .18s}
.ntd-video__play svg{width:81.5px;height:81.5px;display:block}
.ntd-video__play:hover,.ntd-video__play:focus-visible{transform:translateX(-50%) scale(1.06)}

/* ---------- video placeholder modal ---------- */
.ntd-video-modal{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:24px;background:rgba(0,44,2,.78);opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}
.ntd-video-modal.is-open{opacity:1;visibility:visible}
.ntd-video-modal[hidden]{display:none}
.ntd-video-modal__inner{position:relative;width:min(960px,100%);background:#000;box-shadow:0 20px 70px rgba(0,0,0,.4)}
.ntd-video-modal__media{aspect-ratio:16/9;overflow:hidden;background:#000}
.ntd-video-modal__media video,.ntd-video-modal__media iframe{display:block;width:100%;height:100%;border:0}
.ntd-video-modal__close{position:absolute;top:10px;right:10px;z-index:2;width:40px;height:40px;border:1px solid rgba(255,255,255,.7);border-radius:50%;background:rgba(0,0,0,.45);color:#fff;font-size:28px;line-height:1;cursor:pointer}
.ntd-video-modal__close:hover,.ntd-video-modal__close:focus-visible{background:#fff;color:var(--ntd-green-900)}

/* ==========================================================
   TEAM  - Figma node 93:5948 (1320x469)
   4 x 312 + 3 x 24 = 1320; card 312x368, photo 312x280, info 88.
   ========================================================== */
.ntd-team{padding:56px 0}
.ntd-team__title{margin:0 0 36px;font:700 36px/1.2 var(--ntd-font);color:var(--ntd-gray-900);text-align:center}
.ntd-team__grid{display:flex;gap:24px;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:none}
.ntd-team__grid::-webkit-scrollbar{display:none}

/* Carousel arrows — 45px circles, Figma "Aoorw". */
.ntd-carousel{position:relative}
/* Only the About design carries these; home stays as signed off. */
.ntd-carousel__arrow{display:none;place-items:center;width:45px;height:45px;padding:0;border:0;border-radius:50%;background:#fff;color:var(--ntd-gray-900);cursor:pointer;transition:.18s}
.ntd-about__team .ntd-carousel__arrow,.ntd-about__quotes .ntd-carousel__arrow{display:grid}
.ntd-carousel__arrow:hover{background:var(--ntd-success-dark);color:#fff}
.ntd-carousel__arrow[disabled]{opacity:.45;cursor:default}
.ntd-carousel__arrow[disabled]:hover{background:#fff;color:var(--ntd-gray-900)}
.ntd-testimonials__head .ntd-carousel__arrow--next[disabled]:hover{background:#20B526;color:#fff}
.ntd-team__carousel .ntd-carousel__arrow{position:absolute;top:140px;z-index:2}
.ntd-team__carousel .ntd-carousel__arrow--prev{left:-56px}
.ntd-team__carousel .ntd-carousel__arrow--next{right:-56px}
.ntd-member{position:relative;width:312px;height:368px;flex:none;background:#fff;box-shadow:inset 0 0 0 1px var(--ntd-gray-100);overflow:hidden}
.ntd-member__photo{position:relative;display:block;width:312px;height:280px;overflow:hidden}
.ntd-member__photo>img{width:100%;height:100%;object-fit:cover;display:block}
.ntd-member__photo::after{content:"";position:absolute;inset:0;z-index:0;background:var(--ntd-overlay-gray);opacity:0;pointer-events:none;transition:opacity .18s ease}
.ntd-member__social{position:absolute;left:0;right:0;top:50%;z-index:1;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;gap:8px;opacity:0;transition:opacity .18s}
.ntd-member:hover .ntd-member__photo::after,.ntd-member:focus-within .ntd-member__photo::after{opacity:1}
.ntd-member:hover .ntd-member__social,.ntd-member:focus-within .ntd-member__social{opacity:1}
.ntd-member__social .ntd-social{color:#fff}
.ntd-member__social .ntd-social:hover{background:var(--ntd-lime);color:var(--ntd-green-900)}
.ntd-member__info{display:block;padding:20px 24px}
.ntd-member__info strong{display:block;font:600 18px/1.5 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-member__info small{display:block;font:400 14px/1.5 var(--ntd-font);color:var(--ntd-gray-400)}

/* ==========================================================
   TESTIMONIALS  - Figma node 93:5869 (1320x432, bg #CFDD28)
   padding 60, 3 cards 384x233, 24px gaps.
   ========================================================== */
.ntd-testimonials{padding:0 0 56px}
.ntd-testimonials__inner{width:100%;height:432px;background:var(--ntd-lime);padding:60px;box-sizing:border-box}
.ntd-testimonials__title{margin:0 0 36px;font:700 30px/1.2 var(--ntd-font);color:var(--ntd-gray-900);text-align:center}
.ntd-testimonials__head{display:flex;align-items:center;gap:16px}
.ntd-testimonials__head .ntd-testimonials__title{flex:1;margin:0 0 36px}
.ntd-testimonials__head .ntd-carousel__arrow{margin-bottom:36px;background:var(--ntd-gray-50)}
.ntd-testimonials__head .ntd-carousel__arrow--next{background:#20B526;color:#fff}
.ntd-testimonials__head .ntd-carousel__arrow--next:hover{background:var(--ntd-success-dark)}
.ntd-testimonials__grid{display:flex;gap:24px;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:none}
.ntd-testimonials__grid::-webkit-scrollbar{display:none}
.ntd-quote{position:relative;width:384px;height:233px;flex:none;margin:0;background:#fff;padding:24px}
.ntd-quote__mark{display:block;margin-bottom:12px}
.ntd-quote blockquote{margin:0;font:400 14px/1.6 var(--ntd-font);color:var(--ntd-gray-700)}
.ntd-quote figcaption{position:absolute;left:24px;right:24px;bottom:24px;display:flex;align-items:center;gap:12px}
.ntd-quote__avatar{width:56px;height:56px;border-radius:50%;object-fit:cover;flex:none}
.ntd-quote__who{display:flex;flex-direction:column}
.ntd-quote__who strong{font:600 15px/1.4 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-quote__who small{font:400 13px/1.4 var(--ntd-font);color:var(--ntd-gray-400)}
.ntd-quote .ntd-rating{margin-left:auto}
.ntd-quote .ntd-rating img{width:14px;height:14px}

/* ==========================================================
   SHOP ARCHIVE  - Figma node 93:6601 "07_Shop 1"
   sidebar 312 + 24 gap + grid 984 (3 x 312 + 2 x 24) = 1320
   card 312x407 r8, image 312x302 full width.
   ========================================================== */
.ntd-crumb{background:var(--ntd-green-900);height:120px;display:flex;align-items:center}
.ntd-crumb .ntd-container{display:flex;align-items:center}
.ntd-crumb__nav{display:flex;align-items:center;gap:12px;font:400 16px/1.5 var(--ntd-font);color:#fff}
.ntd-crumb__nav a{display:flex;align-items:center;gap:12px;color:#fff}
.ntd-crumb__nav a:hover{color:var(--ntd-lime)}
.ntd-crumb__nav .ntd-crumb__here{color:var(--ntd-lime)}
.ntd-crumb__home{width:20px;height:20px;flex:none}

/* Figma puts the page heading in the content, not in the band (cart, checkout). */
.ntd-pagetitle{margin:0 0 24px;text-align:center;font:600 32px/1.2 var(--ntd-font);color:var(--ntd-ink)}

.ntd-shop{padding:56px 0}
.ntd-shop__title{margin:0 0 24px;font:600 32px/1.2 var(--ntd-font);color:var(--ntd-ink)}
.ntd-shop__grid{display:grid;grid-template-columns:312px minmax(0,1fr);gap:24px;align-items:start}

/* ---------- sidebar ---------- */
.ntd-shopbar{width:312px}
.ntd-shopbar__head{display:none}
.ntd-shopbar__close{border:0;background:transparent;color:var(--ntd-gray-700);font-size:28px;line-height:1;padding:4px;cursor:pointer}
.ntd-shopbar__h{margin:0 0 16px;font:600 20px/1.4 var(--ntd-font);color:var(--ntd-gray-900)}

/* Sections are <details>; heading 20/600 with the chevron on the right,
   1px #E6E6E6 rules between them. */
.ntd-filter__sec{padding-bottom:24px}
.ntd-filter__sec+.ntd-filter__sec{border-top:1px solid var(--ntd-gray-100);padding-top:24px}
.ntd-filter__h{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 20px;font:600 20px/1.5 var(--ntd-font);color:var(--ntd-gray-900);cursor:pointer;list-style:none}
.ntd-filter__h::-webkit-details-marker{display:none}
.ntd-filter__h::after{content:"";width:24px;height:24px;flex:none;background:currentColor;-webkit-mask:url(../img/icons/chevron-16.svg) center no-repeat;mask:url(../img/icons/chevron-16.svg) center no-repeat;-webkit-mask-size:16px 9.1px;mask-size:16px 9.1px;transition:transform .18s}
details[open]>.ntd-filter__h::after{transform:rotate(180deg)}

/* Category rows: 20px radio + 8 gap, 10px vertical padding (row = 41). */
.ntd-filter__cats a{display:flex;align-items:center;gap:8px;padding:10px 0;font:500 14px/1.5 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-filter__cats em{font-style:normal;color:var(--ntd-gray-400)}
.ntd-radio{width:20px;height:20px;flex:none;border-radius:50%;box-shadow:inset 0 0 0 1px var(--ntd-gray-200);display:grid;place-items:center}
.ntd-filter__cats a:hover .ntd-radio,.ntd-filter__cats .is-active .ntd-radio{box-shadow:inset 0 0 0 2px var(--ntd-green-900)}
.ntd-filter__cats .is-active .ntd-radio::after{content:"";width:10px;height:10px;border-radius:50%;background:var(--ntd-green-900)}

.ntd-filter__rating label{display:flex;align-items:center;gap:8px;padding:10px 0;cursor:pointer;font:500 14px/1.5 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-filter__rating .ntd-rating{gap:4px}
.ntd-filter__rating .ntd-rating img{width:16px;height:16px}
.ntd-check{-webkit-appearance:none;appearance:none;width:20px;height:20px;flex:none;margin:0;border-radius:4px;background:#fff;box-shadow:inset 0 0 0 1px var(--ntd-gray-200);cursor:pointer}
.ntd-check:checked{box-shadow:none;background:var(--ntd-green-900) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 9' fill='none'%3E%3Cpath d='M1 4.5 4.5 8 11 1' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/12px 9px no-repeat}
.ntd-check:focus-visible{outline:2px solid var(--ntd-green-600);outline-offset:2px}

/* Track 6px r15, active segment green, two 18px white handles (2px green). */
.ntd-range{position:relative;height:18px;margin:0 0 16px}
.ntd-range__track,.ntd-range__fill{position:absolute;top:6px;height:6px;border-radius:15px}
.ntd-range__track{left:0;right:0;background:var(--ntd-gray-100)}
.ntd-range__fill{background:var(--ntd-green-900)}
.ntd-range input[type=range]{position:absolute;top:0;left:0;width:100%;height:18px;margin:0;padding:0;border:0;background:none;pointer-events:none;-webkit-appearance:none;appearance:none}
.ntd-range input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;box-sizing:border-box;border-radius:50%;background:#fff;border:2px solid var(--ntd-green-900);pointer-events:auto;cursor:pointer}
.ntd-range input[type=range]::-moz-range-thumb{width:18px;height:18px;box-sizing:border-box;border-radius:50%;background:#fff;border:2px solid var(--ntd-green-900);pointer-events:auto;cursor:pointer}
.ntd-range input[type=range]::-moz-range-track{background:none;border:0}
.ntd-range__out{margin:0;font:400 14px/1.5 var(--ntd-font);color:var(--ntd-gray-400)}
.ntd-range__out strong{font-weight:600;color:var(--ntd-gray-900)}

/* tag pills: h33 r16, #F2F2F2, active #1E5132 */
.ntd-tags{display:flex;flex-wrap:wrap;gap:8px}
.ntd-tag{display:inline-flex;align-items:center;height:33px;padding:0 16px;border-radius:30px;background:var(--ntd-gray-50);font:400 14px/1 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-tag:hover,.ntd-tag.is-active{background:var(--ntd-green-900);color:#fff}

.ntd-voucher--rail{width:312px;height:423px;border-radius:10px;margin-bottom:32px}
.ntd-voucher--rail .ntd-voucher__art{border-radius:10px}
.ntd-shopbar__sale{display:flex;flex-direction:column;gap:16px}
.ntd-shopbar__sale .ntd-mini{width:312px}
.ntd-shop-sale--after{display:none}
.ntd-shop-sale__title{margin:0 0 20px;font:600 24px/1.3 var(--ntd-font);color:var(--ntd-gray-900)}

/* ---------- toolbar ---------- */
.ntd-shop__top{display:grid;grid-template-columns:312px minmax(0,1fr);gap:24px;align-items:center;margin-bottom:24px}
.ntd-shop__filter{justify-self:start;display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 20px;border:0;border-radius:20px;background:var(--ntd-green-900);color:#fff;font:600 14px/1.2 var(--ntd-font);cursor:pointer}
.ntd-shop__filter:hover{background:var(--ntd-green-800)}
.ntd-shop__filter img{width:24px;height:24px;flex:none}
.ntd-shop__sort{display:flex;align-items:center;gap:12px}
.ntd-shop__sortlabel{font:400 14px/1.5 var(--ntd-font);color:var(--ntd-gray-600)}
.ntd-shop__sort .woocommerce-ordering{margin:0}
.ntd-shop__sort select{height:45px;border:1px solid var(--ntd-gray-100);border-radius:6px;padding:0 12px;font:400 14px/1 var(--ntd-font);color:var(--ntd-gray-900);background:#fff}
.ntd-shop__count{margin:0 0 0 auto;font:400 14px/1.5 var(--ntd-font);color:var(--ntd-gray-400)}
.ntd-shop__count strong{font-weight:600;color:var(--ntd-gray-900)}
.ntd-shop__count{margin:0 0 0 auto;font:400 14px/1.5 var(--ntd-font);color:var(--ntd-gray-400)}

/* ---------- grid ---------- */
.ntd-shop .ntd-shop__main ul.products{display:grid;grid-template-columns:repeat(3,312px);gap:24px;margin:0;padding:0;list-style:none;justify-content:start}
.ntd-shop .ntd-shop__main ul.products li.product{margin:0;width:auto;max-width:none;float:none}

.ntd-product--shop{width:312px;height:407px;border-radius:8px}
.ntd-product--shop .ntd-product__thumb{left:0;top:0;width:100%;height:302px;border-radius:4px}
.ntd-product--shop .ntd-product__title{top:323px;width:230px}
.ntd-product--shop .ntd-product__price{top:347px}
.ntd-product--shop .ntd-rating{top:375px}
/* sale badge: 90x27 r4 #EA4B48 at (16,16) */
.ntd-product__badge{left:16px;top:16px;min-width:90px;height:27px;display:inline-flex;align-items:center;justify-content:center;padding:0 10px;border-radius:4px;background:#EA4B48}

/* ---------- pagination ---------- */
.ntd-shop .navigation.ntd-pager{margin-top:40px}
.ntd-shop .nav-links{display:flex;align-items:center;justify-content:center;gap:8px}
.ntd-shop .page-numbers{display:grid;place-items:center;min-width:40px;height:40px;padding:0 10px;border-radius:20px;background:var(--ntd-gray-50);font:500 14px/1 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-shop .page-numbers.current,.ntd-shop .page-numbers:hover{background:var(--ntd-green-900);color:#fff}
.ntd-shop .page-numbers.dots{background:transparent}
.ntd-shop__empty{padding:40px 0;font-size:16px;color:var(--ntd-gray-700)}

@media (max-width:1367px){
  .ntd-shop__grid,.ntd-shop__top{grid-template-columns:1fr}
  .ntd-shopbar,.ntd-voucher--rail,.ntd-shopbar__sale .ntd-mini{width:100%}
  .ntd-shop .ntd-shop__main ul.products{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
  .ntd-product--shop{width:auto}
  .ntd-shop__top{display:flex;flex-wrap:wrap;align-items:center;gap:16px}
  .ntd-shop__filter{order:1;justify-self:auto;margin-left:auto}
  .ntd-shop__sort{order:2;flex:1 1 100%;min-width:0}
  .ntd-shopbar{
    position:fixed;
    top:0;
    right:0;
    bottom:0;
    left:auto;
    z-index:100;
    width:min(380px,calc(100% - 24px));
    padding:24px;
    box-sizing:border-box;
    overflow-y:auto;
    background:#fff;
    box-shadow:-8px 0 40px rgba(20,32,22,.18);
    transform:translateX(105%);
    visibility:hidden;
    pointer-events:none;
    transition:transform .22s ease,visibility .22s ease
  }
  .ntd-shopbar.is-open{transform:translateX(0);visibility:visible;pointer-events:auto}
  .ntd-shopbar__head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}
  .ntd-shopbar__head h2{margin:0;font:600 24px/1.3 var(--ntd-font);color:var(--ntd-gray-900)}
  .ntd-shopbar .ntd-voucher--rail,.ntd-shopbar__sale-block{display:none}
  .ntd-shop-sale--after{display:block;margin-top:40px}
  body.admin-bar .ntd-shopbar{top:32px}
}

@media screen and (max-width:782px){
  body.admin-bar .ntd-shopbar{top:46px}
}

/* ==========================================================
   SINGLE PRODUCT  - Figma 93:7545
   gallery: thumbs 80 + 12 + main 556 = 648 | 24 gap | summary 648 = 1320
   ========================================================== */
.ntd-pdp{padding:56px 0}
.ntd-pdp__cols{display:grid;grid-template-columns:648px 648px;gap:24px;align-items:start}
.ntd-pdp__gallery{display:grid;grid-template-columns:80px 556px;gap:12px;align-items:start}
.ntd-pdp__thumbs{display:flex;flex-direction:column;gap:12px}
.ntd-pdp__thumb{width:80px;height:90px;padding:0;border:1px solid var(--ntd-gray-100);border-radius:2px;background:#fff;cursor:pointer;overflow:hidden}
.ntd-pdp__thumb.is-active{border-color:var(--ntd-green-900)}
.ntd-pdp__thumb img{width:100%;height:100%;object-fit:contain;display:block}
.ntd-pdp__main{position:relative;width:556px;height:556px;border:1px solid var(--ntd-gray-100);border-radius:4px;overflow:hidden;display:grid;place-items:center}
.ntd-pdp__main img{width:100%;height:100%;object-fit:contain}
/* sale flag 92x27 r14 #EA4B48 */
.ntd-pdp__sale{position:absolute;left:24px;top:24px;z-index:2;display:inline-flex;align-items:center;min-width:92px;height:27px;padding:0 12px;border-radius:14px;background:#EA4B48;color:#fff;font:500 12px/1 var(--ntd-font);justify-content:center}

.ntd-pdp__summary{width:648px;min-width:0}
.ntd-pdp__head{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.ntd-pdp__title{min-width:0;margin:0;font:600 28px/1.3 var(--ntd-font);color:var(--ntd-gray-900);overflow-wrap:anywhere}
/* stock pill 86x29 r4 #20B526 */
.ntd-pdp__stock{display:inline-flex;align-items:center;justify-content:center;min-width:86px;height:29px;padding:0 12px;border-radius:4px;background:rgba(32,181,38,.2);color:var(--ntd-success-dark);font:500 13px/1 var(--ntd-font);white-space:nowrap}
.ntd-pdp__stock.is-out{background:var(--ntd-gray-400)}
.ntd-pdp__meta{display:flex;align-items:center;gap:8px;margin-bottom:16px;font:400 14px/1.5 var(--ntd-font);color:var(--ntd-gray-400)}
.ntd-pdp__meta .ntd-rating img{width:16px;height:16px}
.ntd-pdp__sep{opacity:.5}
.ntd-pdp__price{margin-bottom:20px;font:700 24px/1.4 var(--ntd-font);color:var(--ntd-green-600)}
.ntd-pdp__price del{font-weight:400;font-size:.7em;color:var(--ntd-gray-400);margin-right:8px}
.ntd-pdp__price ins{text-decoration:none}

.ntd-pdp__brandrow{display:flex;align-items:center;gap:12px;padding:16px 0;border-top:1px solid var(--ntd-gray-100);border-bottom:1px solid var(--ntd-gray-100);margin-bottom:20px;font:400 14px/1.5 var(--ntd-font);color:var(--ntd-gray-700)}
.ntd-pdp__brand{display:grid;place-items:center;width:68px;height:55px;border:1px solid var(--ntd-gray-100);border-radius:4px}
.ntd-pdp__brand img{width:60px;height:33px;object-fit:contain}
.ntd-pdp__sharegroup{display:flex;align-items:center;gap:5px;margin-left:auto}
.ntd-pdp__sharelabel{margin-left:0}
.ntd-pdp__share{display:flex;align-items:center;gap:5px}
.ntd-pdp__excerpt{margin-bottom:24px;font:400 14px/1.7 var(--ntd-font);color:var(--ntd-gray-700)}
.ntd-pdp__excerpt p{margin:0 0 .8em}

/* buy row: qty 123x49 r24 | add-to-cart 447x51 r26 | wishlist 52x52 */
.ntd-pdp__buy{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
/* stock is already shown as the pill next to the title - don't repeat it here */
.ntd-pdp__buy p.stock,.ntd-pdp form.cart p.stock{display:none}
.ntd-pdp .quantity{display:inline-flex;align-items:center;justify-content:space-between;width:123px;height:49px;padding:0 4px;border:1px solid var(--ntd-gray-100);border-radius:24px;box-sizing:border-box}
.ntd-pdp .quantity input.qty{width:45px;border:0;outline:0;text-align:center;font:600 15px/1 var(--ntd-font);color:var(--ntd-gray-900);-moz-appearance:textfield;background:transparent}
.ntd-pdp .quantity input.qty::-webkit-outer-spin-button,.ntd-pdp .quantity input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.ntd-pdp form.cart{display:flex;align-items:center;gap:12px;margin:0}
.ntd-pdp .single_add_to_cart_button{width:447px;height:51px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:26px;background:var(--ntd-lime);color:var(--ntd-green-900);font:700 15px/1 var(--ntd-font);cursor:pointer;padding:0}
.ntd-pdp .single_add_to_cart_button:hover{background:var(--ntd-lime-dark)}

.ntd-pdp__taxo{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;margin:24px 0 0;font:400 14px/1.6 var(--ntd-font);color:var(--ntd-gray-700)}
.ntd-pdp__taxo dt{color:var(--ntd-gray-400)}
.ntd-pdp__taxo dd{margin:0}
.ntd-pdp__taxo a{color:var(--ntd-gray-700)}
.ntd-pdp__taxo a:hover{color:var(--ntd-gray-900);text-decoration:underline}

/* ---------- tabs ---------- */
.ntd-pdp .woocommerce-tabs{margin-top:56px}
.ntd-pdp .woocommerce-tabs ul.tabs{display:flex;justify-content:center;gap:40px;margin:0 0 32px;padding:0;list-style:none;border-bottom:1px solid var(--ntd-gray-100)}
.ntd-pdp .woocommerce-tabs ul.tabs::before,.ntd-pdp .woocommerce-tabs ul.tabs::after{display:none}
.ntd-pdp .woocommerce-tabs ul.tabs li{margin:0;padding:0;background:none;border:0;border-radius:0}
.ntd-pdp .woocommerce-tabs ul.tabs li a{display:block;padding:16px 0;font:600 16px/1.4 var(--ntd-font);color:var(--ntd-gray-400)}
.ntd-pdp .woocommerce-tabs ul.tabs li.active a,.ntd-pdp .woocommerce-tabs ul.tabs li a:hover{color:var(--ntd-gray-900);box-shadow:inset 0 -2px 0 var(--ntd-green-600)}
.ntd-pdp .woocommerce-Tabs-panel{font:400 14px/1.8 var(--ntd-font);color:var(--ntd-gray-700)}
.ntd-pdp .woocommerce-Tabs-panel h2{font-size:20px;margin-bottom:16px}

/* "Thông tin chi tiết" — Figma 93:7983: spec list left, 576x300 video right. */
.ntd-details{display:grid;grid-template-columns:minmax(0,1fr) 576px;gap:24px;align-items:start}
.ntd-details__list{margin:0;display:flex;flex-direction:column;gap:20px}
.ntd-details__row{display:flex;gap:16px;font:400 14px/1 var(--ntd-font)}
.ntd-details__row dt{width:110px;flex:none;color:var(--ntd-gray-900);font-weight:500}
.ntd-details__row dd{margin:0;color:var(--ntd-gray-700)}
.ntd-details__row dd em{font-style:normal;color:var(--ntd-gray-400)}
.ntd-details__row dd a{color:var(--ntd-gray-700)}
.ntd-details__row dd a:hover{color:var(--ntd-gray-900);text-decoration:underline}

.ntd-detailvideo{position:relative;width:100%;aspect-ratio:576/300;border-radius:6px;overflow:hidden;background:var(--ntd-gray-50)}
.ntd-detailvideo__el{width:100%;height:100%;object-fit:cover;display:block}
.ntd-detailvideo__play{position:absolute;inset:0;margin:auto;width:50px;height:50px;padding:0;border:0;background:none;cursor:pointer;transition:transform .18s}
.ntd-detailvideo__play:hover{transform:scale(1.08)}
.ntd-detailvideo.is-playing .ntd-detailvideo__play{display:none}

.ntd-details__feats{display:flex;gap:24px;margin:20px 0 0;padding:20px 24px;border:1px solid var(--ntd-gray-100);border-radius:6px}
.ntd-details__feats li{display:flex;align-items:center;gap:12px;flex:1}
.ntd-details__featicon{display:grid;place-items:center;width:24px;height:24px;flex:none}
.ntd-details__feats strong{display:block;font:600 14px/1.5 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-details__feats small{display:block;font:400 12px/1.5 var(--ntd-font);color:var(--ntd-gray-400)}

/* Reviews — Figma 93:8231. List 760 wide, items 20 apart with a 1px rule,
   each item stacking a 52px header (avatar 40 + name + stars, date right)
   over the body text. */
.ntd-reviews .woocommerce-Reviews-title{margin:0 0 24px;font:600 20px/1.4 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-reviews .commentlist{margin:0;padding:0;list-style:none}
.ntd-review{padding:0 0 20px;margin:0 0 20px;border-bottom:1px solid var(--ntd-gray-100)}
.ntd-review:last-child{border-bottom:0}
.ntd-review__body{display:flex;flex-direction:column;gap:12px}
.ntd-review__head{display:flex;align-items:center;gap:12px;min-height:52px}
/* Woo absolutely-positions the avatar from a #id selector, which drops it on
   top of the author name — reset at matching specificity. */
.woocommerce #reviews #comments ol.commentlist li img.avatar,
.ntd-review__avatar{position:static;float:none;width:40px;height:40px;padding:0;margin:0;border:0;border-radius:50%;flex:none;object-fit:cover;background:var(--ntd-gray-50)}
.ntd-review__who{display:flex;flex-direction:column;gap:4px;min-width:0}
.ntd-review__author{font:600 16px/1.4 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-review__who .ntd-rating img{width:14px;height:14px}
.ntd-review__date{margin-left:auto;flex:none;font:400 14px/1.5 var(--ntd-font);color:var(--ntd-gray-400)}
.ntd-review__text{font:400 14px/1.5 var(--ntd-font);color:var(--ntd-gray-700)}
.ntd-review__text p{margin:0}
.ntd-review[hidden]{display:none}

/* Ghost pill, 138x45 in the design. */
.ntd-reviews__more{display:block;margin:0 0 32px;padding:14px 32px;border:0;border-radius:30px;background:var(--ntd-green-50);color:var(--ntd-green-900);font:600 14px/1 var(--ntd-font);cursor:pointer}
.ntd-reviews__more:hover{background:#e2ebe3}

/* Review form — the design frame stops at the list, so keep it plain and
   on-theme rather than WooCommerce's default. */
.ntd-reviews .comment-reply-title{display:block;margin:0 0 16px;font:600 18px/1.4 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-reviews .comment-form{display:flex;flex-direction:column;gap:16px;max-width:760px}
.ntd-reviews .comment-form p{margin:0}
.ntd-reviews .comment-form label{display:block;margin-bottom:8px;font:500 14px/1.5 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-reviews .comment-form input[type=text],
.ntd-reviews .comment-form input[type=email],
.ntd-reviews .comment-form textarea{width:100%;box-sizing:border-box;padding:12px 16px;border:1px solid var(--ntd-gray-100);border-radius:8px;font:400 14px/1.5 var(--ntd-font);color:var(--ntd-gray-900);background:#fff;outline:0}
.ntd-reviews .comment-form input:focus,.ntd-reviews .comment-form textarea:focus{border-color:var(--ntd-green-600)}
.ntd-reviews .comment-form textarea{min-height:120px;resize:vertical}
.ntd-reviews .comment-form-rating .stars a{color:var(--ntd-star)}
.ntd-reviews .comment-form .submit{align-self:flex-start;height:45px;padding:0 32px;border:0;border-radius:30px;background:var(--ntd-green-900);color:#fff;font:600 14px/1 var(--ntd-font);cursor:pointer}
.ntd-reviews .comment-form .submit:hover{background:var(--ntd-green-800)}
.ntd-reviews .woocommerce-noreviews{margin:0 0 24px;font:400 14px/1.5 var(--ntd-font);color:var(--ntd-gray-400)}
.ntd-pdp .shop_attributes th{text-align:left;padding:10px 16px 10px 0;color:var(--ntd-gray-900);font-weight:600}
.ntd-pdp .shop_attributes td{padding:10px 0}

/* ---------- related ---------- */
.ntd-pdp .related{margin-top:56px}
.ntd-pdp .related>h2{margin:0 0 32px;font:700 32px/1.2 var(--ntd-font);color:var(--ntd-gray-900);text-align:center}
.ntd-pdp .related ul.products{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin:0;padding:0;list-style:none}
.ntd-pdp .related ul.products li.product{min-width:0;margin:0;width:auto;max-width:none;float:none}
.ntd-add-to-cart__feedback{flex:1 0 100%;min-height:20px;margin:0;color:var(--ntd-gray-700);font:400 13px/1.5 var(--ntd-font)}
.ntd-add-to-cart__feedback.is-success{color:var(--ntd-success-dark)}
.ntd-add-to-cart__feedback.is-error{color:#b42318}

@media (max-width:1367px){
  .ntd-pdp__cols{grid-template-columns:1fr}
  .ntd-pdp__gallery{grid-template-columns:80px minmax(0,1fr)}
  .ntd-pdp__main,.ntd-pdp__summary{width:auto}
  .ntd-pdp__main{height:auto;aspect-ratio:1/1}
  .ntd-pdp .single_add_to_cart_button{width:auto;flex:1}
  .ntd-pdp .related ul.products{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
}

/* ==========================================================
   SHARED BUTTONS for the inner pages
   ========================================================== */
.ntd-btn2{display:inline-flex;align-items:center;justify-content:center;height:45px;padding:0 28px;border-radius:22.5px;border:0;font:600 14px/1 var(--ntd-font);cursor:pointer;white-space:nowrap;transition:.18s}
.ntd-btn2--green{background:var(--ntd-green-900);color:#fff}
.ntd-btn2--green:hover{background:var(--ntd-green-800)}
.ntd-btn2--lime{background:var(--ntd-lime);color:var(--ntd-green-900)}
.ntd-btn2--lime:hover{background:var(--ntd-lime-dark)}
.ntd-btn2--ghost{background:var(--ntd-gray-50);color:var(--ntd-gray-900)}
.ntd-btn2--ghost:hover{background:var(--ntd-gray-100)}

/* ==========================================================
   CART  - Figma node 93:9099 (868 + 28 + 424 = 1320)
   ========================================================== */
.ntd-cartpage{padding:8px 0 56px}
.ntd-cartpage__cols{display:grid;grid-template-columns:872px 424px;gap:24px;align-items:start}
.ntd-cartpage__main{min-width:0}

.ntd-carttable{width:100%;border-collapse:collapse;border:1px solid var(--ntd-gray-100);border-radius:8px;overflow:hidden}
.ntd-carttable th{padding:16px 20px;text-align:left;background:var(--ntd-gray-50);font:600 13px/1.4 var(--ntd-font);color:var(--ntd-gray-900);text-transform:uppercase;letter-spacing:.4px}
.ntd-carttable td{padding:20px;border-top:1px solid var(--ntd-gray-100);vertical-align:middle;font:400 14px/1.5 var(--ntd-font);color:var(--ntd-gray-700)}
.ntd-cartrow{display:flex;align-items:center;gap:16px}
.ntd-cartrow__thumb{width:100px;height:100px;flex:none;display:grid;place-items:center;overflow:hidden;border-radius:4px;background:var(--ntd-gray-50)}
.ntd-cartrow__thumb img{width:100%;height:100%;object-fit:contain}
.ntd-cartrow__name a{color:var(--ntd-gray-900);font-weight:500}
.ntd-cartrow__name a:hover{color:var(--ntd-green-600)}
.ntd-carttable__total{font-weight:700;color:var(--ntd-gray-900)}
.ntd-carttable__rm{width:48px;text-align:center}
.ntd-carttable .remove{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--ntd-gray-50);color:var(--ntd-gray-400);font-size:16px;line-height:1}
.ntd-carttable .remove:hover{background:#EA4B48;color:#fff}
.ntd-carttable .quantity{display:inline-flex;align-items:center;width:110px;height:40px;border:1px solid var(--ntd-gray-100);border-radius:20px;padding:0 8px;box-sizing:border-box}
.ntd-carttable .quantity{justify-content:space-between;gap:0}
.ntd-carttable .quantity .ntd-qty__btn{
  display:grid;place-items:center;width:24px;height:24px;flex:none;padding:0;
  border:0;border-radius:50%;background:transparent;color:var(--ntd-gray-600);
  font:600 18px/1 var(--ntd-font);cursor:pointer;
}
.ntd-carttable .quantity .ntd-qty__btn:hover{background:var(--ntd-gray-50);color:var(--ntd-green-900)}
.ntd-carttable .quantity input.qty{width:36px;flex:1;border:0;outline:0;text-align:center;background:transparent;font:600 14px/1 var(--ntd-font);color:var(--ntd-gray-900);-moz-appearance:textfield}
.ntd-carttable .quantity input.qty::-webkit-outer-spin-button,
.ntd-carttable .quantity input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}

.ntd-cartpage__actions{display:flex;justify-content:space-between;margin-top:24px;padding:0 20px}
.ntd-cartpage__actions .ntd-btn2{min-width:195px;height:45px;border-radius:22px}
.ntd-voucherform{display:flex;align-items:center;gap:12px;width:827px;max-width:100%;height:91px;margin-top:24px;padding:0 24px;border:1px solid var(--ntd-gray-100);border-radius:8px;box-sizing:border-box}
.ntd-voucherform label{font:600 14px/1 var(--ntd-font);color:var(--ntd-gray-900);white-space:nowrap}
.ntd-voucherform .ntd-btn2{width:149px;height:52px;border-radius:26px}
.ntd-voucherform input{flex:1;min-width:0;max-width:530px;height:51px;padding:0 20px;border:1px solid var(--ntd-gray-100);border-radius:26px;font:400 14px/1 var(--ntd-font);outline:0}
.ntd-voucherform input:focus{border-color:var(--ntd-green-600)}

.ntd-totals{width:424px;padding:24px;border:1px solid var(--ntd-gray-100);border-radius:8px;box-sizing:border-box}
.ntd-totals__title{margin:0 0 20px;font:600 20px/1.4 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-totals__row{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--ntd-gray-100);font:400 14px/1.5 var(--ntd-font);color:var(--ntd-gray-700)}
.ntd-totals__row strong{color:var(--ntd-gray-900);font-weight:600}
.ntd-totals__row--grand{border-bottom:0;font-size:16px}
.ntd-totals__row--grand strong{font-size:18px;font-weight:700}
.ntd-totals__go{margin-top:16px}
.ntd-totals__go .checkout-button,.ntd-totals__go .button{display:flex;align-items:center;justify-content:center;width:100%;height:48px;border-radius:24px;background:var(--ntd-lime);color:var(--ntd-green-900);font:700 15px/1 var(--ntd-font);padding:0}
.ntd-totals__go .checkout-button:hover{background:var(--ntd-lime-dark)}

.ntd-cartempty{padding:64px 0;text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px}
.ntd-cartempty img{width:48px;height:48px;opacity:.4}
.ntd-cartempty__msg{margin:0;font:400 16px/1.6 var(--ntd-font);color:var(--ntd-gray-700)}

/* WooCommerce ships its own button + remove-link colours; these beat them. */
.ntd-cartpage .ntd-totals__go a.checkout-button,
.ntd-cartpage .ntd-totals__go .button,
.woocommerce .ntd-totals__go a.checkout-button{
  display:flex;align-items:center;justify-content:center;width:376px;max-width:100%;height:51px;
  border-radius:26px;background:var(--ntd-lime);color:var(--ntd-green-900);
  font:700 15px/1 var(--ntd-font);padding:0;text-decoration:none;border:0;
}
.ntd-cartpage .ntd-totals__go a.checkout-button:hover,
.woocommerce .ntd-totals__go a.checkout-button:hover{background:var(--ntd-lime-dark);color:var(--ntd-green-900)}

.woocommerce .ntd-carttable a.remove,
.ntd-carttable a.remove{
  display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;
  background:var(--ntd-gray-50);color:var(--ntd-gray-400);font-size:16px;line-height:1;
  text-decoration:none;font-weight:400;
}
.woocommerce .ntd-carttable a.remove:hover,
.ntd-carttable a.remove:hover{background:#EA4B48;color:#fff}

/* ==========================================================
   BLOG  - Figma "17_Blog_List" / "18_Single_Blog"
   ========================================================== */
.ntd-bloglist,.ntd-blogsingle{padding:56px 0}
.ntd-bloglist__title{margin:0 0 24px;font:600 32px/1.2 var(--ntd-font);color:var(--ntd-ink)}
.ntd-bloglist__cols{display:grid;grid-template-columns:424px minmax(0,1fr);gap:24px;align-items:start}
.ntd-blogbar{width:424px}
.ntd-blogbar__search{display:flex;align-items:center;height:48px;border:1px solid var(--ntd-gray-100);border-radius:6px;overflow:hidden;margin-bottom:32px}
.ntd-blogbar__search input{flex:1;min-width:0;border:0;outline:0;padding:13px 16px;font:400 14px/1.5 var(--ntd-font)}
.ntd-blogbar__search button{border:0;background:var(--ntd-lime);padding:0 18px;height:46px;cursor:pointer;display:grid;place-items:center}
.ntd-blogbar__search img{width:20px;height:20px;padding:1.75px;box-sizing:border-box;object-fit:contain}
.ntd-blogbar__h{margin:0 0 16px;font:600 20px/1.4 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-blogbar__cats{display:flex;flex-direction:column;gap:14px;margin-bottom:32px}
.ntd-blogbar__cats a{display:flex;justify-content:space-between;font:400 15px/1.5 var(--ntd-font);color:var(--ntd-gray-700)}
.ntd-blogbar__cats a:hover{color:var(--ntd-green-600)}
.ntd-blogbar__cats em{font-style:normal;color:var(--ntd-gray-400)}
.ntd-blogbar__recent{display:flex;flex-direction:column;gap:16px;margin-bottom:32px}
.ntd-blogbar__recent a{display:flex;gap:12px;align-items:center}
.ntd-blogbar__recent .thumb{width:100px;height:77px;flex:none;border-radius:6px;overflow:hidden}
.ntd-blogbar__recent .thumb img{width:100%;height:100%;object-fit:cover}
.ntd-blogbar__recent strong{display:block;font:500 14px/1.4 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-blogbar__recent small{font:400 12px/1.4 var(--ntd-font);color:var(--ntd-gray-400)}
.ntd-blogbar__recent a:hover strong{color:var(--ntd-green-600)}

/* Sort + result count above the cards (Figma 17_Blog_List). */
.ntd-blogtop{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}
.ntd-blogtop__sort{display:flex;align-items:center;gap:12px;margin:0}
.ntd-blogtop__sort label{font:400 14px/1.5 var(--ntd-font);color:var(--ntd-gray-600)}
.ntd-blogtop__sort select{height:45px;border:1px solid var(--ntd-gray-100);border-radius:6px;padding:0 12px;font:400 14px/1 var(--ntd-font);color:var(--ntd-gray-900);background:#fff;cursor:pointer}
.ntd-blogtop__count{margin:0;font:400 14px/1.5 var(--ntd-font);color:var(--ntd-gray-400)}
.ntd-blogtop__count strong{font-weight:600;color:var(--ntd-gray-900)}

.ntd-posts{display:grid;grid-template-columns:repeat(2,424px);gap:24px;justify-content:start}
.ntd-post{background:#fff;box-shadow:inset 0 0 0 1px var(--ntd-gray-100);border-radius:6px;overflow:hidden;display:flex;flex-direction:column}
.ntd-post__thumb{position:relative;display:block;aspect-ratio:424/324;overflow:hidden;background:var(--ntd-gray-50)}
.ntd-post__thumb img{width:100%;height:100%;object-fit:cover}
/* 69x58 white badge, inset 24 from the bottom-left of the image. */
.ntd-post__date{position:absolute;left:24px;bottom:24px;display:grid;place-content:center;width:69px;height:58px;border-radius:4px;background:rgba(255,255,255,.85);color:var(--ntd-gray-900);text-align:center}
.ntd-post__date strong{display:block;font:600 22px/1.2 var(--ntd-font)}
.ntd-post__date small{display:block;font:500 11px/1.4 var(--ntd-font);text-transform:uppercase;letter-spacing:.4px}
.ntd-post__body{padding:24px;display:flex;flex-direction:column;gap:20px;flex:1}
.ntd-post__title{margin:0;font:600 20px/1.4 var(--ntd-font)}
.ntd-post__title a{color:var(--ntd-gray-900)}
.ntd-post__title a:hover{color:var(--ntd-green-600)}
.ntd-post__more{margin-top:auto;display:inline-flex;align-items:center;gap:10px;font:600 15px/1.5 var(--ntd-font);color:var(--ntd-green-900)}
.ntd-post__more svg{transition:transform .18s}
.ntd-post__more:hover svg{transform:translateX(4px)}

/* Shared category / author / comments strip. */
.ntd-postmeta{display:flex;flex-wrap:wrap;align-items:center;gap:20px;font:400 14px/1.5 var(--ntd-font);color:var(--ntd-gray-600)}
.ntd-postmeta__item{display:inline-flex;align-items:center;gap:8px}
.ntd-postmeta__item svg{flex:none;color:var(--ntd-gray-400)}
.ntd-postmeta__item a{color:inherit}
.ntd-postmeta__item a:hover{color:var(--ntd-green-900)}

/* Single post: article left, 424 sidebar right (Figma 93:10205). */
.ntd-blogsingle .ntd-bloglist__cols{grid-template-columns:minmax(0,1fr) 424px}
.ntd-blogsingle__main{min-width:0}
.ntd-blogsingle__hero{border-radius:8px;overflow:hidden;margin-bottom:24px}
.ntd-blogsingle__main .ntd-postmeta{margin-bottom:16px}
.ntd-blogsingle__title{margin:0 0 24px;font:700 40px/1.25 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-blogsingle__by{display:flex;align-items:center;gap:16px;padding-bottom:24px;margin-bottom:24px;border-bottom:1px solid var(--ntd-gray-100)}
.ntd-blogsingle__avatar{width:56px;height:56px;border-radius:50%;flex:none;object-fit:cover;background:var(--ntd-gray-50)}
.ntd-blogsingle__who{display:flex;flex-direction:column;gap:4px;min-width:0}
.ntd-blogsingle__who strong{font:600 16px/1.4 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-blogsingle__who small{font:400 14px/1.5 var(--ntd-font);color:var(--ntd-gray-400)}
.ntd-blogsingle__share{margin-left:auto;display:flex;align-items:center;gap:5px}
.ntd-blogsingle__share .ntd-social{color:var(--ntd-gray-700)}
.ntd-blogsingle__share .ntd-social:hover{background:var(--ntd-green-900);color:#fff}
.ntd-blogsingle__content{font:400 18px/1.6 var(--ntd-font);color:var(--ntd-gray-700)}
.ntd-blogsingle__content p{margin:0 0 24px}

/* Comments — Figma 93:10310: form first, then the list, each entry an avatar
   beside "Tên • ngày" with a 1px rule between. */
.ntd-comments{margin-top:40px;padding-top:32px;border-top:1px solid var(--ntd-gray-100)}
.ntd-comments__title{margin:0 0 20px;font:600 24px/1.3 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-comments .comment-respond{margin-bottom:40px}
.ntd-comments .comment-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ntd-comments .comment-form p{margin:0}
.ntd-comments .comment-form-comment,
.ntd-comments .comment-form-cookies-consent,
.ntd-comments .form-submit,
.ntd-comments .logged-in-as,
.ntd-comments .comment-notes{grid-column:1/-1}
.ntd-comments .comment-form label{display:block;margin-bottom:8px;font:500 14px/1.5 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-comments .comment-form input[type=text],
.ntd-comments .comment-form input[type=email],
.ntd-comments .comment-form input[type=url],
.ntd-comments .comment-form textarea{width:100%;box-sizing:border-box;padding:12px 16px;border:1px solid var(--ntd-gray-100);border-radius:8px;font:400 14px/1.5 var(--ntd-font);color:var(--ntd-gray-900);background:#fff;outline:0}
.ntd-comments .comment-form input:focus,.ntd-comments .comment-form textarea:focus{border-color:var(--ntd-green-600)}
.ntd-comments .comment-form textarea{min-height:140px;resize:vertical}
.ntd-comments .comment-form-cookies-consent{display:flex;align-items:center;gap:10px}
.ntd-comments .comment-form-cookies-consent label{margin:0;font-weight:400;color:var(--ntd-gray-700)}
.ntd-comments .logged-in-as,.ntd-comments .comment-notes{margin:0;font:400 14px/1.6 var(--ntd-font);color:var(--ntd-gray-400)}
.ntd-comments .logged-in-as a{color:var(--ntd-green-900)}
.ntd-comments .form-submit{margin:0}
.ntd-comments .comment-form .submit{justify-self:start}

.ntd-comments__list{margin:0;padding:0;list-style:none}
.ntd-comments__list ol.children{margin:20px 0 0 60px;padding:0;list-style:none}
.ntd-comment{padding:0 0 20px;margin:0 0 20px;border-bottom:1px solid var(--ntd-gray-100)}
.ntd-comment:last-child{border-bottom:0;margin-bottom:0}
.ntd-comments__more{display:inline-flex;align-items:center;justify-content:center;min-width:154px;height:52px;margin-top:20px;padding:0 32px;border:2px solid var(--ntd-green-900);border-radius:26px;background:#fff;color:var(--ntd-green-900);font:600 14px/1 var(--ntd-font);cursor:pointer;transition:.18s}
.ntd-comments__more:hover,.ntd-comments__more:focus-visible{background:var(--ntd-green-900);color:#fff}
.ntd-comment__body{display:flex;align-items:flex-start;gap:16px}
.ntd-comment__avatar{width:48px;height:48px;border-radius:50%;flex:none;object-fit:cover;background:var(--ntd-gray-50)}
.ntd-comment__main{min-width:0;flex:1}
.ntd-comment__head{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 8px;font:400 14px/1.5 var(--ntd-font)}
.ntd-comment__author{font:600 16px/1.4 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-comment__sep,.ntd-comment__date{color:var(--ntd-gray-400)}
.ntd-comment__text{font:400 14px/1.5 var(--ntd-font);color:var(--ntd-gray-700)}
.ntd-comment__text p{margin:0 0 8px}
.ntd-comment__text p:last-child{margin:0}
.ntd-comment__reply a{display:inline-block;margin-top:8px;font:600 14px/1.5 var(--ntd-font);color:var(--ntd-green-900)}
.ntd-blogsingle__content h2,.ntd-blogsingle__content h3{color:var(--ntd-gray-900);margin:1.6em 0 .6em}
.ntd-blogsingle__content img{border-radius:8px;margin:1em 0}

.ntd-bloglist .navigation.pagination,.ntd-shop .navigation.pagination{margin-top:40px}
.ntd-bloglist .nav-links{display:flex;align-items:center;justify-content:center;gap:8px}
.ntd-bloglist .page-numbers{display:grid;place-items:center;min-width:40px;height:40px;padding:0 10px;border-radius:20px;background:var(--ntd-gray-50);font:500 14px/1 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-bloglist .page-numbers.current,.ntd-bloglist .page-numbers:hover{background:var(--ntd-green-900);color:#fff}

/* ==========================================================
   ABOUT / CONTACT / FAQ / 404 / WISHLIST
   ========================================================== */
/* ABOUT - Figma node 93:10590. Alternating photo/text bands; team on lime and
   testimonials on white, the inverse of the home page. */
.ntd-about{--ntd-about-content-width:960px}
.ntd-about .ntd-container{width:min(var(--ntd-about-content-width),100% - 48px)}
.ntd-about__band{padding:56px 0 28px}
.ntd-about__band--alt{padding:0;background:#fff}
.ntd-about__cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:32px;align-items:center}
.ntd-about__cols--flip{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;min-height:490px}
.ntd-about__txt{min-width:0}
.ntd-about__name{margin:0 0 24px;font:700 40px/1.2 var(--ntd-font);color:var(--ntd-gray-900);letter-spacing:-.5px}
.ntd-about__name span{display:block}
.ntd-about__h2{margin:0 0 16px;font:700 40px/1.2 var(--ntd-font);color:var(--ntd-green-900)}
.ntd-about__txt p{margin:0 0 8px;font:400 14px/1.42 var(--ntd-font);color:var(--ntd-gray-600)}
.ntd-about__intro-emphasis{margin-top:0!important;color:var(--ntd-gray-700)!important}
.ntd-about__pillar{margin-bottom:24px}
.ntd-about__pillar:last-child{margin-bottom:0}
.ntd-about__pillar h3{display:flex;align-items:center;gap:12px;margin:0 0 8px;font:700 24px/1.25 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-about__mark{width:29px;height:29px;flex:none}
.ntd-about__pillar p{margin:0;font:400 14px/1.45 var(--ntd-font);color:var(--ntd-gray-600)}
.ntd-about__photo{margin:0;border-radius:0;overflow:hidden}
.ntd-about__photo img{width:100%;height:100%;object-fit:cover;display:block}
.ntd-about__photo--right{height:385px}
.ntd-about__photo--left{position:relative;width:calc(100% + 206px);height:490px;margin-left:calc((var(--ntd-about-content-width) - 100vw) / 2)}
.ntd-about__photo--left::after{content:"";position:absolute;inset:0 0 0 auto;width:34%;background:linear-gradient(90deg,rgba(255,255,255,0),#fff 92%);pointer-events:none}
/* the delivery shot is a cut-out on transparency - don't crop or round it */
.ntd-about__photo--cut{border-radius:0;overflow:visible;background:transparent}
.ntd-about__photo--cut img{object-fit:contain}
/* Figma pairs each line with its category glyph in a 72px pale circle
   (18 padding). Glyphs are masks so one file set serves the grey shop
   sidebar and this green treatment. */
.ntd-about__lines{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;margin:28px 0 24px;align-items:center}
.ntd-about__lines>ul{display:contents}
.ntd-about__lines li{display:flex;align-items:center;gap:16px;font:500 14px/1.5 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-about__cta{justify-self:start;gap:12px;text-transform:uppercase;letter-spacing:.3px}
.ntd-about__ico{display:block;width:54px;height:54px;border-radius:50%;background:#E8F4E9;flex:none;position:relative}
.ntd-about__ico::before{content:"";position:absolute;inset:0;margin:auto;width:24px;height:24px;background:var(--ntd-green-900);-webkit-mask:var(--ntd-cat-icon) center/contain no-repeat;mask:var(--ntd-cat-icon) center/contain no-repeat}
.ntd-about__ico--thuoc-tru-sau{--ntd-cat-icon:url(../img/cat/thuoc-tru-sau.svg)}
.ntd-about__ico--thuoc-tru-chuot{--ntd-cat-icon:url(../img/cat/thuoc-tru-chuot.svg)}
.ntd-about__ico--thuoc-tru-benh{--ntd-cat-icon:url(../img/cat/thuoc-tru-benh.svg)}
.ntd-about__ico--thuoc-tru-oc{--ntd-cat-icon:url(../img/cat/thuoc-tru-oc.svg)}
.ntd-about__ico--thuoc-tru-co{--ntd-cat-icon:url(../img/cat/thuoc-tru-co.svg)}
.ntd-about__team{background:var(--ntd-lime)}
.ntd-about__team .ntd-team{padding:64px 0}
.ntd-about__quotes .ntd-testimonials{padding:64px 0}
.ntd-about__quotes .ntd-testimonials__inner{background:transparent;height:auto;padding:0}
.ntd-about__quotes .ntd-quote{box-shadow:inset 0 0 0 1px var(--ntd-gray-100);width:auto;flex:1;min-width:0;height:256px;padding:26px}
.ntd-about__quotes .ntd-testimonials__grid{gap:26px;overflow:visible}
.ntd-about__quotes .ntd-testimonials__title{text-align:left}
.ntd-about__quotes .ntd-quote figcaption{left:26px;right:26px;bottom:26px;flex-wrap:wrap;row-gap:6px}
.ntd-about__quotes .ntd-quote__who{min-width:0}
.ntd-about__quotes .ntd-quote__who strong,
.ntd-about__quotes .ntd-quote__who small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ==========================================================
   CONTACT  - Figma node 93:11139 "20_Contact"
   One white card (info column + form) then a full-bleed map band.
   ========================================================== */
.ntd-contact{padding:56px 0 0}
.ntd-contact__card{display:grid;grid-template-columns:320px minmax(0,1fr);gap:0;background:#fff;box-shadow:inset 0 0 0 1px var(--ntd-gray-100);border-radius:8px;overflow:hidden;margin-bottom:56px}
.ntd-contact__info{display:flex;flex-direction:column;gap:32px;padding:40px 32px;border-right:1px solid var(--ntd-gray-100);text-align:center}
.ntd-contact__item{display:flex;flex-direction:column;align-items:center;gap:14px}
.ntd-contact__ico{display:grid;place-items:center;width:51px;height:51px;flex:none}
.ntd-contact__ico img{display:block;width:51px;height:51px;object-fit:contain}
.ntd-contact__item p{margin:0;font:400 14px/1.7 var(--ntd-font);color:var(--ntd-gray-800)}
.ntd-contact__item a{color:inherit}
/* Hovering the block greens its text — the address is not a link, so a rule on
   the anchor alone would skip it. */
.ntd-contact__item:hover p,.ntd-contact__item a:focus-visible{color:var(--ntd-green-600)}

.ntd-contact__formwrap{padding:40px}
.ntd-contact__formtitle{margin:0 0 10px;font:700 26px/1.3 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-contact__lead{margin:0 0 24px;font:400 14px/1.7 var(--ntd-font);color:var(--ntd-gray-700)}
.ntd-contactform__row{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}
.ntd-contactform p{margin:0 0 18px}
.ntd-contactform label{display:block;margin-bottom:8px;font:500 14px/1.4 var(--ntd-font);color:var(--ntd-gray-900)}
/* Figma "Input Field": 49 tall, 1px border, radius 6, label as placeholder. */
.ntd-contactform input,.ntd-contactform textarea{width:100%;height:49px;padding:0 16px;border:1px solid var(--ntd-gray-100);border-radius:6px;background:#fff;font:400 14px/1.5 var(--ntd-font);color:var(--ntd-gray-900);outline:0;box-sizing:border-box}
.ntd-contactform input::placeholder,.ntd-contactform textarea::placeholder{color:var(--ntd-gray-400)}
.ntd-contactform input:focus,.ntd-contactform textarea:focus{border-color:var(--ntd-green-600)}
.ntd-contactform textarea{height:auto;min-height:96px;padding:14px 16px;resize:vertical}

.ntd-contact__map{position:relative;width:100%;height:420px;background:var(--ntd-gray-50)}
.ntd-contact__map iframe{width:100%;height:100%;border:0;display:block}
.ntd-contact__maplink{position:absolute;right:24px;top:24px;z-index:2;display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:6px;background:var(--ntd-green);color:#fff;font-weight:600;text-decoration:none;box-shadow:0 4px 12px rgba(0,0,0,.18)}
.ntd-contact__maplink:hover,.ntd-contact__maplink:focus-visible{background:var(--ntd-lime);color:var(--ntd-green)}

/* FAQ - Figma node 93:12762. Accordion 648 wide on the left, photo right. */
.ntd-faq{padding:56px 0}
.ntd-faq__cols{display:grid;grid-template-columns:648px minmax(0,1fr);gap:24px;align-items:center;min-width:0;max-width:100%}
.ntd-faq__left{min-width:0}
.ntd-faq__photo{margin:0}
.ntd-faq__photo img{width:100%;height:auto;display:block;object-fit:contain}
/* Figma 27_FAQs: title 48/120 uppercase, rows 648x56 on #F2F2F2 r6 with a
   32px plus; the open row turns white with a green outline. */
.ntd-faq__title{margin:0 0 32px;font:600 48px/1.2 var(--ntd-font);color:var(--ntd-gray-900);text-transform:uppercase}
.ntd-faq__list{display:flex;flex-direction:column;gap:12px;min-width:0;max-width:100%}
.ntd-faq__list details{width:100%;min-width:0;max-width:100%;border:1px solid transparent;border-radius:6px;background:var(--ntd-gray-50);overflow:hidden;transition:background .18s}
.ntd-faq__list details summary{list-style:none;cursor:pointer;min-width:0;min-height:56px;padding:12px 12px 12px 16px;box-sizing:border-box;font:500 16px/1.5 var(--ntd-font);color:var(--ntd-gray-900);display:flex;justify-content:space-between;align-items:center;gap:16px;overflow-wrap:anywhere}
.ntd-faq__list details summary::-webkit-details-marker{display:none}
.ntd-faq__list details summary::after{content:"+";display:grid;place-items:center;width:32px;height:32px;flex:none;border-radius:6px;background:#fff;font:400 20px/1 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-faq__list details[open]{background:#fff;border-color:var(--ntd-success-bright)}
.ntd-faq__list details[open] summary{color:var(--ntd-green-600);border-bottom:1px solid var(--ntd-success-bright)}
.ntd-faq__list details[open] summary::after{content:"–";background:var(--ntd-gray-50)}
.ntd-faq__list details>:not(summary){min-width:0;max-width:100%;margin:0 16px;padding:16px 0;font:400 14px/1.5 var(--ntd-font);color:var(--ntd-gray-700);overflow-wrap:anywhere}
.ntd-faq__list details>:not(summary)+:not(summary){margin-top:8px}
.ntd-faq__list details>:not(summary):last-child{margin-bottom:0}

.ntd-404{padding:80px 0;text-align:center}
.ntd-404__art{display:block;margin:0 auto 16px;width:585px;max-width:100%;height:auto}
.ntd-404__title{margin:16px 0 12px;font:700 28px/1.3 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-404__text{margin:0 0 28px;font:400 15px/1.7 var(--ntd-font);color:var(--ntd-gray-700)}

/* Wishlist — Figma "Yêu thích": centred title over one bordered card whose
   last row is the share strip. */
.ntd-wishlist{padding:56px 0}
.ntd-wishlist__title{margin:0 0 28px;font:700 28px/1.3 var(--ntd-font);color:var(--ntd-gray-900);text-align:center}
.ntd-wishcard{border:1px solid var(--ntd-gray-100);border-radius:8px;overflow:hidden}
.ntd-wishtable{width:100%;border-collapse:collapse}
.ntd-wishtable th{padding:16px 24px;text-align:left;background:#fff;border-bottom:1px solid var(--ntd-gray-100);font:500 13px/1.4 var(--ntd-font);color:var(--ntd-gray-600);text-transform:uppercase;letter-spacing:.4px}
.ntd-wishtable td{padding:16px 24px;border-top:1px solid var(--ntd-gray-100);vertical-align:middle;font:400 14px/1.5 var(--ntd-font)}
.ntd-wishtable tbody tr:first-child td{border-top:0}
.ntd-wishtable__prod a{display:flex;align-items:center;gap:16px;color:var(--ntd-gray-900);font-weight:500}
.ntd-wishtable__thumb{width:64px;height:64px;flex:none;border-radius:4px;overflow:hidden;background:var(--ntd-gray-50);display:grid;place-items:center}
.ntd-wishtable__thumb img{width:100%;height:100%;object-fit:contain}
.ntd-wishtable__price{font-weight:600;color:var(--ntd-gray-900)}
.ntd-wishtable__price del{font-weight:400;color:var(--ntd-gray-400)}
.ntd-wishtable__price ins{text-decoration:none}

/* Status is a pill, not coloured text. */
.ntd-wishtable__stock span{display:inline-flex;align-items:center;height:30px;padding:0 12px;border-radius:4px;font:500 13px/1 var(--ntd-font)}
.ntd-wishtable__stock .is-in{background:#DEF9EC;color:#20B526}
.ntd-wishtable__stock .is-out{background:#FDEAEA;color:#EA4B48}

.ntd-wishtable__add{text-align:right}
.ntd-wishtable__add .ntd-btn2{min-width:158px;height:40px;border-radius:20px}
.ntd-wishlist-add[aria-busy="true"]{background:var(--ntd-green-600);color:#fff;opacity:.9;pointer-events:none}
.ntd-btn2--off{background:var(--ntd-gray-50);color:var(--ntd-gray-400);cursor:not-allowed}

.ntd-wishtable__rm{width:64px;text-align:right}
.ntd-wishremove{display:grid;place-items:center;width:26px;height:26px;padding:0;border:0;border-radius:50%;box-shadow:inset 0 0 0 1px var(--ntd-gray-200);background:none;color:var(--ntd-gray-400);cursor:pointer}
.ntd-wishremove:hover{background:#EA4B48;color:#fff;box-shadow:none}

.ntd-wishshare{display:flex;align-items:center;gap:5px;padding:16px 24px;border-top:1px solid var(--ntd-gray-100);font:400 14px/1.5 var(--ntd-font);color:var(--ntd-gray-700)}
.ntd-wishshare>span{margin-right:5px}
.ntd-wishshare .ntd-social{color:var(--ntd-gray-700)}
.ntd-wishshare .ntd-social:hover{background:var(--ntd-green-900);color:#fff}
.ntd-wishlist__empty{margin:0;text-align:center;font:400 15px/1.7 var(--ntd-font);color:var(--ntd-gray-700)}
.ntd-wishlist__empty a{color:var(--ntd-green-600);font-weight:600}
.ntd-wishtoggle.is-on{background:#EA4B48;color:#fff}

@media (max-width:1367px){
  .ntd-cartpage__cols{grid-template-columns:1fr}
  .ntd-totals{width:auto}
  .ntd-bloglist__cols,.ntd-blogsingle .ntd-bloglist__cols{grid-template-columns:1fr}
  .ntd-blogbar{width:auto}
  .ntd-posts{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
  .ntd-contact__card{grid-template-columns:1fr}
  .ntd-faq__cols{grid-template-columns:1fr}
  .ntd-contact__info{border-right:0;border-bottom:1px solid var(--ntd-gray-100)}
  .ntd-about__cols,.ntd-about__cols--flip{grid-template-columns:1fr;gap:32px}
  .ntd-about__cols--flip .ntd-about__photo{order:-1}
}
@media (max-width:768px){
  .ntd-posts{grid-template-columns:1fr}
  .ntd-cartpage,.ntd-cartpage__cols,.ntd-cartpage__main,.ntd-cartpage__side{width:100%;min-width:0}
  .ntd-carttable{display:block;width:100%;min-width:0;table-layout:fixed}
  .ntd-carttable tbody{display:block;width:100%;min-width:0}
  .ntd-carttable thead{display:none}
  .ntd-carttable td{display:flex;align-items:center;width:100%;min-width:0;box-sizing:border-box;justify-content:space-between;gap:16px;border-top:0}
  .ntd-carttable tr{display:block;width:100%;box-sizing:border-box;border-top:1px solid var(--ntd-gray-100)}
  .ntd-carttable td::before{content:attr(data-title);font-weight:600;color:var(--ntd-gray-900)}
  .ntd-carttable__prod{display:block!important}
  .ntd-carttable__prod::before{display:none}
  .ntd-cartrow{width:100%;min-width:0}
  .ntd-cartrow__name{min-width:0;overflow-wrap:anywhere}
  .ntd-cartrow__name a{display:block;overflow-wrap:anywhere}
  .ntd-carttable__rm{justify-content:flex-end;padding-top:8px;padding-bottom:12px}
  .ntd-cartpage__actions{flex-wrap:wrap;gap:12px;margin-top:16px;padding:0}
  .ntd-cartpage__actions .ntd-btn2{flex:1 1 100%;min-width:0}
  .ntd-voucherform{flex-direction:column;align-items:stretch;width:100%;height:auto;min-height:0;margin-top:16px;padding:16px;gap:12px}
  .ntd-voucherform label,.ntd-voucherform input,.ntd-voucherform .ntd-btn2{width:100%;max-width:none}
  .ntd-voucherform input{flex:none}
  .ntd-totals{width:100%;max-width:100%;min-width:0;padding:20px 16px}
  .ntd-totals__row{align-items:flex-start}
  .ntd-totals__row>*{min-width:0}
  .ntd-totals__row span:first-child{flex:1 1 auto;overflow-wrap:anywhere}
  .ntd-totals__row strong{flex:0 1 auto;text-align:right;overflow-wrap:anywhere}
  .ntd-wishcard{width:100%;box-sizing:border-box}
  .ntd-wishtable{display:block;width:100%;min-width:0}
  .ntd-wishtable thead{display:none}
  .ntd-wishtable tbody{display:block;width:100%;min-width:0}
  .ntd-wishtable tbody tr{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"product remove" "price price" "stock stock" "add add";gap:0 12px;width:100%;padding:16px;box-sizing:border-box;border-top:1px solid var(--ntd-gray-100)}
  .ntd-wishtable tbody tr:first-child{border-top:0}
  .ntd-wishtable td{display:block;width:100%;min-width:0;box-sizing:border-box;padding:8px 0;border-top:0}
  .ntd-wishtable__prod{grid-area:product;padding-top:0!important}
  .ntd-wishtable__prod a{min-width:0;gap:12px}
  .ntd-wishtable__prod a>span:last-child{min-width:0;overflow-wrap:anywhere}
  .ntd-wishtable__price{grid-area:price;display:flex!important;align-items:center;justify-content:space-between;gap:12px}
  .ntd-wishtable__price::before{content:"Giá";font-weight:600;color:var(--ntd-gray-900)}
  .ntd-wishtable__stock{grid-area:stock;display:flex!important;align-items:center;justify-content:space-between;gap:12px}
  .ntd-wishtable__stock::before{content:"Trạng thái";font-weight:600;color:var(--ntd-gray-900)}
  .ntd-wishtable__add{grid-area:add;padding-bottom:0!important;text-align:left}
  .ntd-wishtable__add .ntd-btn2{display:flex;width:100%;min-width:0}
  .ntd-wishtable__rm{grid-area:remove;display:block!important;width:auto;text-align:right;padding:0!important}
  .ntd-wishremove{width:32px;height:32px;min-width:32px}
}

/* ==========================================================
   PARTNER LOGOS  - Figma node 93:5725 (1320x152, 60px inset)
   Real vector logos, each at its own Figma width and x offset.
   ========================================================== */
.ntd-logos{height:152px;background:#fff;box-shadow:inset 0 0 0 1px var(--ntd-gray-100);display:flex;align-items:center;justify-content:space-around;padding:60px 60px;gap:0}
.ntd-logos__item{width:auto;height:32px;max-width:none;object-fit:contain;flex:none}
.ntd-logos__sep{width:1px;height:32px;background:var(--ntd-gray-200);flex:none}

/* ==========================================================
   FOOTER
   ========================================================== */
/* ==========================================================
   NEWSLETTER  - Figma node 93:6511  (full-bleed, h 120)
   ========================================================== */
.ntd-newsletter{background:var(--ntd-green-900);color:#fff;height:120px}
.ntd-newsletter .ntd-container{position:relative;height:120px}

.ntd-newsletter__txt{position:absolute;left:-5px;top:24px;display:flex;align-items:center;gap:26px}
.ntd-newsletter__txt img{width:56px;height:56px;padding:7px;box-sizing:border-box;object-fit:contain;flex:none}
.ntd-newsletter__txt p{margin:0;font:500 24px/1.5 var(--ntd-font);color:#fff}

.ntd-newsletter__group{position:absolute;left:660px;top:34px;display:flex;align-items:center;gap:24px}

/* the pill: 460x52 white field with the lime button flush to its right edge */
.ntd-subscribe{position:relative;width:460px;height:52px;flex:none}
.ntd-subscribe input[type=email]{width:100%;height:52px;border:0;outline:0;background:#fff;border-radius:46px;padding:14px 160px 14px 24px;font:400 16px/1.5 var(--ntd-font);color:var(--ntd-gray-900)}
.ntd-subscribe input[type=email]::placeholder{color:var(--ntd-gray-400);opacity:1}
.ntd-subscribe button{position:absolute;right:0;top:0;height:52px;border:0;border-radius:43px;background:var(--ntd-lime);color:var(--ntd-green-900);font:600 16px/20px var(--ntd-font);padding:16px 40px;cursor:pointer}
.ntd-subscribe button:hover{background:var(--ntd-lime-dark)}
.ntd-subscribe__msg{position:absolute;top:calc(100% + 6px);left:24px;margin:0;font-size:13px}

.ntd-newsletter__social{display:flex;gap:8px}

/* Social glyphs are masks, so one file serves every context and the coloured
   circle behind Facebook can be a hover state instead of a baked-in shape. */
.ntd-social{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;flex:none;transition:background .18s,color .18s}
.ntd-social::before{content:"";width:40px;height:40px;background:currentColor;-webkit-mask:var(--ntd-social-icon) center/40px 40px no-repeat;mask:var(--ntd-social-icon) center/40px 40px no-repeat}
.ntd-social--sm{width:32px;height:32px}
.ntd-social--sm::before{width:32px;height:32px;-webkit-mask-size:32px 32px;mask-size:32px 32px}
.ntd-social--facebook{--ntd-social-icon:url(../img/icons/share-facebook.svg)}
.ntd-social--twitter{--ntd-social-icon:url(../img/icons/share-twitter.svg)}
.ntd-social--pinterest{--ntd-social-icon:url(../img/icons/share-pinterest.svg)}
.ntd-social--instagram{--ntd-social-icon:url(../img/icons/share-instagram.svg)}
.ntd-newsletter__social .ntd-social{color:#B3B3B3}
.ntd-newsletter__social .ntd-social:hover{background:var(--ntd-lime);color:var(--ntd-green-900)}
.ntd-qv__share .ntd-social,.ntd-pdp__share .ntd-social{color:var(--ntd-gray-700)}
.ntd-qv__share .ntd-social:hover,.ntd-pdp__share .ntd-social:hover{background:var(--ntd-green-900);color:#fff}

/* ==========================================================
   FOOTER  - Figma node 93:6532 (link area) + 93:6586 (copyright)
   Column offsets are Figma x minus the 300px page gutter.
   ========================================================== */
.ntd-footer{background:#fff}
.ntd-footer__main{background:var(--ntd-gray-50,#F2F2F2);height:314px}
.ntd-footer__main .ntd-container{position:relative;height:314px}

.ntd-footer__col{position:absolute;top:60px;display:flex;flex-direction:column;gap:16px;align-items:flex-start}
.ntd-footer__col--brand {left:0}
.ntd-footer__col--help  {left:467px}
.ntd-footer__col--policy{left:666.75px}
.ntd-footer__col--site  {left:868.5px}
.ntd-footer__col--shops {left:1036px}

.ntd-footer h5{margin:0;font:500 16px/1.5 var(--ntd-font);color:var(--ntd-gray-900);white-space:nowrap}
.ntd-footer h5.is-bold{font-weight:700}
.ntd-footer ul{display:flex;flex-direction:column;gap:12px}
.ntd-footer li{margin:0;font:400 14px/1.5 var(--ntd-font);color:#666;white-space:nowrap}
.ntd-footer__col--help li{font-weight:500}
.ntd-footer li a{color:inherit}
.ntd-footer li a:hover{color:var(--ntd-green-600)}

.ntd-footer__logo,.ntd-footer__logo img{width:121px;height:66px;display:block}
.ntd-footer__about{margin:0;width:430px;max-width:100%;font:500 14px/1.5 var(--ntd-font);color:#808080;white-space:nowrap}
.ntd-footer__cta{display:flex;align-items:center;gap:16px}
.ntd-footer__pill{padding:6px 0;font:500 14px/1.5 var(--ntd-font);color:var(--ntd-gray-900);box-shadow:0 1.5px 0 #20b526;white-space:nowrap}
.ntd-footer__pill--u{text-decoration:underline}
.ntd-footer__or{font:400 16px/1.5 var(--ntd-font);color:#808080}

.ntd-footer__shops{display:flex;gap:8px}
.ntd-store{width:138px;height:48px;background:#fff;position:relative;overflow:hidden;display:block;flex:none}
.ntd-store--tiktok .clip{position:absolute;left:-5px;top:9px;width:148px;height:30px;overflow:hidden}
.ntd-store--tiktok img{position:absolute;left:-.24%;top:-42.86%;width:100.48%;height:185.71%;max-width:none}
.ntd-store--shopee img{position:absolute;left:20px;top:9px;width:97px;height:30px}

/* copyright strip */
.ntd-footer__bottom .ntd-container{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:24px 0}
.ntd-footer__copy{font:400 14px/1.5 var(--ntd-font);color:#808080}

.ntd-pay{display:flex;align-items:center;gap:4px}
.ntd-pay__card{position:relative;display:block;background:#fff;border:1.3px solid #d9d9d9;border-radius:4px;flex:none}
.ntd-pay__card img{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);max-width:none}
.ntd-pay__card--applepay  {width:45px;height:31.765px}
.ntd-pay__card--applepay img{width:32.2278px;height:13.7887px}
.ntd-pay__card--visa      {width:44px;height:31.059px}
.ntd-pay__card--visa img  {width:30.8px;height:10.1189px}
.ntd-pay__card--discover  {width:44px;height:31.059px}
/* Discover sits low and right in its card, not centred (Figma inset 37.5%/8.82%) */
.ntd-pay__card--discover img{width:38.8235px;height:18.0588px;left:8.82%;top:37.5%;transform:none}
.ntd-pay__card--mastercard{width:45px;height:31.765px}
.ntd-pay__card--mastercard img{width:29.5918px;height:17.7354px}

.ntd-pay__secure{position:relative;display:block;width:65px;height:32px;background:#fff;border:1px solid #d9d9d9;border-radius:4px;flex:none}
.ntd-pay__secure img{position:absolute;left:5px;top:4px;width:11px;height:11px;padding:.9px;box-sizing:border-box;object-fit:contain}
.ntd-pay__secure em{position:absolute;left:18px;top:4px;font:400 11px/1 var(--ntd-font);color:var(--ntd-gray-900);font-style:normal}
.ntd-pay__secure strong{position:absolute;left:0;top:16px;width:65px;text-align:center;font:600 12px/1 var(--ntd-font);color:var(--ntd-gray-900)}

/* ==========================================================
   GENERIC PAGES / WOO
   ========================================================== */
.ntd-page{padding:40px 0 64px}
.ntd-breadcrumb,.woocommerce-breadcrumb{font-size:13px;color:var(--ntd-muted);margin-bottom:20px}
.woocommerce-products-header__title,.ntd-page__title{font-size:32px;margin-bottom:20px}
.woocommerce-result-count{color:var(--ntd-muted);font-size:14px}
.woocommerce .woocommerce-ordering{float:right}
.woocommerce ul.products li.product .button,.woocommerce a.button,.woocommerce button.button,.woocommerce #respond input#submit,.woocommerce .button{background:var(--ntd-green-900);color:#fff;border-radius:999px;font-weight:600;padding:12px 24px}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce .button:hover{background:var(--ntd-green-800);color:#fff}
.woocommerce .button.alt,.woocommerce button.button.alt{background:var(--ntd-lime);color:var(--ntd-green-900)}
/* Keep loop add-to-cart links inside the 40px product-card action circle. */
.woocommerce ul.products li.product .ntd-product__cart a{
  box-sizing:border-box;display:grid;width:40px;height:40px;overflow:hidden;
  margin:0;padding:0;place-items:center;background:var(--ntd-gray-50);
  color:var(--ntd-gray-900);font-size:0;line-height:0;
}
.woocommerce ul.products li.product .ntd-product__cart:hover a,
.woocommerce ul.products li.product .ntd-product__cart:focus-within a{
  background:var(--ntd-green-900);color:#fff;
}
/* Woo paints .alt buttons purple on hover with a 0,4,1 selector — match it so
   the theme's buttons just darken instead. */
.woocommerce .button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce input.button.alt:hover{background:var(--ntd-lime-dark);color:var(--ntd-green-900)}
.woocommerce div.product .price,.woocommerce ul.products li.product .price{color:var(--ntd-ink);font-weight:700}
.woocommerce span.onsale{background:var(--ntd-green-600);border-radius:999px;min-height:auto;min-width:auto;padding:6px 14px;line-height:1;font-weight:700}
.woocommerce-message,.woocommerce-info{border-top-color:var(--ntd-green-600)}
.woocommerce-message::before,.woocommerce-info::before{color:var(--ntd-green-600)}

/* blog: card styling lives in the BLOG block above; only the prose wrapper here */
.ntd-single{max-width:820px;margin:0 auto}
.ntd-single__hero{border-radius:var(--ntd-radius-lg);overflow:hidden;margin-bottom:28px}

/* ==========================================================
   HEADER FALLBACK
   The Figma header is positioned absolutely against an exact
   1320px container. Below 1368px viewport that container shrinks,
   so switch to flow layout instead of letting offsets overflow.
   ========================================================== */
@media (max-width:1367px){
  .ntd-newsletter,.ntd-newsletter .ntd-container{height:auto}
  .ntd-newsletter .ntd-container{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:24px 0}
  .ntd-newsletter__txt,.ntd-newsletter__group{position:static}
  .ntd-newsletter__group{flex-wrap:wrap}
  .ntd-subscribe{width:min(460px,100%)}
  .ntd-footer__main,.ntd-footer__main .ntd-container{height:auto}
  .ntd-footer__main .ntd-container{display:grid;grid-template-columns:minmax(430px,2fr) repeat(3,minmax(0,1fr));gap:32px;padding:60px 0}
  .ntd-footer__col{position:static;min-width:0}
  .ntd-footer__col--shops{grid-column:1/-1}
  .ntd-footer__shops{flex-wrap:wrap}
  .ntd-footer h5,.ntd-footer li{white-space:normal}
  .ntd-footer__about{width:auto}
  .ntd-header .ntd-container{display:flex;align-items:center;gap:24px;height:auto;padding:16px 0}
  .ntd-logo,.ntd-search,.ntd-header__actions{position:static}
  .ntd-search{flex:1;min-width:0}
  .ntd-search__field{width:auto;flex:1;min-width:0}
  .ntd-header__actions{margin-left:auto;flex:none}
  .ntd-nav .ntd-container{flex-wrap:wrap;height:auto;min-height:48px;gap:20px}
  body:not(.home) .ntd-nav .ntd-container{height:auto;min-height:48px}
  .ntd-nav__menu{gap:20px}
  .ntd-hero__inner{grid-template-columns:minmax(0,1fr)}
  .ntd-hero__banner{width:auto}
  .ntd-features{flex-wrap:wrap}
  .ntd-feature{width:calc(50% - 12px)}
  .ntd-promos{padding:40px 0}
  .ntd-cat-grid{grid-template-columns:repeat(auto-fit,303px);justify-content:center}
  .ntd-products,.ntd-collections,.ntd-team__grid,.ntd-testimonials__grid{flex-wrap:wrap;justify-content:center}
  .ntd-testimonials__inner{height:auto}
  .ntd-logos{height:auto;flex-wrap:wrap;gap:32px;padding:36px 24px}
  .ntd-logos__sep{display:none}
}

/* ==========================================================
   RESPONSIVE
   ========================================================== */
@media (max-width:1200px){
}
@media (max-width:1024px){
  .ntd-hero__inner{grid-template-columns:1fr}
  .ntd-features{grid-template-columns:repeat(2,1fr);gap:20px}
  .ntd-feature{border-right:0}
  .ntd-nav__menu{display:none}
  ul.products{grid-template-columns:repeat(3,1fr)}
  .ntd-about__quotes .ntd-quote{height:auto;min-height:256px}
  .ntd-about__quotes .ntd-quote figcaption{position:static;left:auto;right:auto;bottom:auto;margin-top:16px}
}
@media (max-width:768px){
  h1{font-size:30px}h2{font-size:24px}
  .ntd-topbar .ntd-container{flex-wrap:nowrap}
  .ntd-topbar__left span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .ntd-topbar__right .ntd-topbar__sel:nth-of-type(2),
  .ntd-topbar__sep,
  .ntd-topbar__account{display:none}
  .ntd-grid--4,.ntd-grid--3,.ntd-posts{grid-template-columns:1fr}
  ul.products{grid-template-columns:repeat(2,1fr)}
}

/* --- WooCommerce loop grid: beat woocommerce.css specificity --- */
.woocommerce ul.products,
.woocommerce-page ul.products{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
  margin:0 0 32px;
  padding:0;
  list-style:none;
}
.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after{content:none;display:none}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
  float:none;
  clear:none;
  text-align:left;
}
.woocommerce ul.products li.first,
.woocommerce ul.products li.last{clear:none}

/* archive header */
.woocommerce .woocommerce-result-count{margin:0;color:var(--ntd-muted);font-size:14px}
.woocommerce .woocommerce-ordering{margin:0}
.woocommerce .woocommerce-ordering select{
  border:1px solid var(--ntd-border);border-radius:999px;padding:9px 16px;font-family:inherit;font-size:14px;background:#fff;color:var(--ntd-ink)
}
.woocommerce-notices-wrapper:empty{display:none}
.woocommerce nav.woocommerce-pagination ul{border:0;display:flex;gap:8px;justify-content:center}
.woocommerce nav.woocommerce-pagination ul li{border:0}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  border:1px solid var(--ntd-border);border-radius:8px;padding:8px 14px;min-width:40px
}
.woocommerce nav.woocommerce-pagination ul li span.current{
  background:var(--ntd-green-900);color:#fff;border-color:var(--ntd-green-900)
}

/* single product */
.woocommerce div.product div.images{width:46%}
.woocommerce div.product div.summary{width:50%}
.woocommerce div.product .product_title{font-size:30px}
.woocommerce div.product p.price{font-size:26px}
.woocommerce div.product form.cart div.quantity{margin-right:12px}
.woocommerce .quantity .qty{border:1px solid var(--ntd-border);border-radius:8px;padding:11px 8px;width:80px}
.woocommerce div.product .woocommerce-tabs ul.tabs li{border-radius:8px 8px 0 0}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{border-bottom-color:#fff}

@media (max-width:1024px){
  .woocommerce ul.products:not(.ntd-shop *),.woocommerce-page ul.products:not(.ntd-shop *){grid-template-columns:repeat(3,1fr)}
}
@media (max-width:768px){
  .woocommerce ul.products:not(.ntd-shop *),.woocommerce-page ul.products:not(.ntd-shop *){grid-template-columns:repeat(2,1fr)}
  .woocommerce div.product div.images,.woocommerce div.product div.summary{width:100%}
}

/* --- price formatting --- */
.woocommerce div.product p.price ins,
.woocommerce ul.products li.product .price ins,
.ntd-product__price ins,
.ntd-mini__price ins{text-decoration:none;color:var(--ntd-ink);font-weight:700;background:transparent}
.woocommerce div.product p.price del,
.woocommerce ul.products li.product .price del,
.ntd-product__price del,
.ntd-mini__price del{color:var(--ntd-muted);font-weight:400;font-size:.72em;opacity:1;margin-right:8px}
.woocommerce div.product p.price,
.woocommerce div.product span.price{color:var(--ntd-ink)}
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info{border-top-color:var(--ntd-green-600);border-radius:8px;background:var(--ntd-green-50)}
.woocommerce .woocommerce-message .button,
.woocommerce .woocommerce-info .button{background:var(--ntd-green-900);color:#fff}
.woocommerce .stock.in-stock{color:var(--ntd-green-600)}

/* Cart page: the header cart popup already confirms successful additions. */
.woocommerce-cart .woocommerce-message{display:none}

/* cart + checkout tables */
.woocommerce table.shop_table{border-radius:var(--ntd-radius);border-color:var(--ntd-border)}
.woocommerce table.shop_table th{color:var(--ntd-ink)}
.woocommerce-cart table.cart img{width:64px;border-radius:6px}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{background:var(--ntd-lime);color:var(--ntd-green-900)}

/* --- WooCommerce Cart/Checkout blocks --- */
.wp-block-woocommerce-cart .wc-block-components-button:not(.is-link),
.wp-block-woocommerce-checkout .wc-block-components-button:not(.is-link){
  background:var(--ntd-green-900);color:#fff;border-radius:999px;font-weight:600
}
.wc-block-cart__submit-button{background:var(--ntd-lime);color:var(--ntd-green-900)}
.wc-block-cart__submit-button:hover{background:var(--ntd-lime-dark);color:var(--ntd-green-900)}
.wc-block-components-product-price ins{text-decoration:none;color:var(--ntd-ink)}
.wc-block-components-product-price del{color:var(--ntd-muted)}
.wc-block-components-totals-item__value{color:var(--ntd-ink)}

/* ==========================================================
   DEMO SPRINT — drawer, mobile nav, category panel, signup
   ========================================================== */

body.ntd-locked{overflow:hidden}

/* ---------- scrim shared by drawer + mobile nav ---------- */
.ntd-scrim{position:fixed;inset:0;background:rgba(20,32,22,.45);z-index:90;border:0}
.ntd-scrim[hidden]{display:none}

/* ---------- mini-cart popup ---------- */
.ntd-drawer{
  position:fixed;inset:0;z-index:100;padding:0;
  display:flex;align-items:flex-start;justify-content:flex-end;
  background:transparent;opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .22s ease,visibility .22s ease;
}
.ntd-drawer.is-open{opacity:1;visibility:visible;pointer-events:auto}
.ntd-drawer[hidden]{display:none}
.ntd-drawer__inner{
  display:flex;flex-direction:column;width:min(520px,100%);
  max-height:min(720px,100vh);min-height:0;
  overflow:hidden;background:#fff;border-radius:0;
  box-shadow:0 20px 60px rgba(20,32,22,.22);
  transform:translateY(12px) scale(.98);
  transition:transform .22s ease;
}
.ntd-drawer.is-open .ntd-drawer__inner{transform:translateY(0) scale(1)}

.ntd-drawer__head{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:20px 24px;border-bottom:1px solid var(--ntd-border);flex-shrink:0;
}
.ntd-drawer__head h3{margin:0;font-size:18px}
.ntd-drawer__close{
  background:transparent;border:0;font-size:26px;line-height:1;cursor:pointer;
  color:var(--ntd-muted);padding:0 4px;
}
.ntd-drawer__close:hover{color:var(--ntd-ink)}

.ntd-drawer__items{flex:1;overflow-y:auto;padding:8px 0;margin:0;min-height:0}
.ntd-drawer__item{
  display:flex;align-items:flex-start;gap:14px;padding:14px 24px;
  border-bottom:1px solid var(--ntd-border);
}
.ntd-drawer__item:last-child{border-bottom:0}
.ntd-drawer__thumb{width:56px;flex-shrink:0}
.ntd-drawer__thumb img{border-radius:6px}
.ntd-drawer__meta{flex:1;min-width:0}
.ntd-drawer__name{display:block;font-weight:600;font-size:14px;color:var(--ntd-ink);line-height:1.35}
.ntd-drawer__name:hover{color:var(--ntd-green-900)}
.ntd-drawer__qty{display:block;font-size:13px;color:var(--ntd-muted);margin-top:3px}
.ntd-drawer__qty .amount{color:var(--ntd-ink);font-weight:600}
.ntd-drawer__remove{
  flex-shrink:0;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;
  color:var(--ntd-muted);font-size:17px;line-height:1;background:var(--ntd-bg-soft);
}
.ntd-drawer__remove:hover{background:#f3d7d7;color:#a2383c}

.ntd-drawer__foot{
  flex-shrink:0;border-top:1px solid var(--ntd-border);padding:18px 24px 22px;
  display:flex;flex-direction:column;gap:10px;
}
.ntd-drawer__total{
  display:flex;align-items:center;justify-content:space-between;
  font-size:15px;margin-bottom:4px;
}
.ntd-drawer__total strong{font-size:18px;color:var(--ntd-ink)}
.ntd-drawer__foot .ntd-btn{justify-content:center;width:100%}
.ntd-btn--ghost{background:#fff;color:var(--ntd-green-900);border:1px solid var(--ntd-green-900)}
.ntd-btn--ghost:hover{background:var(--ntd-green-50)}

.ntd-drawer__empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:40px 24px;text-align:center}

/* ---------- mobile navigation ---------- */
.ntd-nav__burger{display:none}
.ntd-mobilenav{
  position:absolute;top:100%;left:26px;right:24px;width:auto;
  background:var(--ntd-green-900);z-index:100;overflow-y:auto;padding:24px 36px 32px;
  box-shadow:0 14px 32px rgba(20,32,22,.18);
}
.ntd-mobilenav[hidden]{display:none}
.ntd-mobilenav__menu{margin:0;padding:0}
.ntd-mobilenav__menu a{
  display:block;padding:13px 24px;font-size:16px;font-weight:600;color:var(--ntd-ink);
  border-bottom:1px solid var(--ntd-border);
}
.ntd-mobilenav__menu a:hover{background:var(--ntd-green-50);color:var(--ntd-green-900)}
.ntd-mobilenav__menu li.menu-item-has-children>a::after,
.ntd-mobilenav .ntd-nav__menu li.menu-item-has-children>a::after{
  content:"";display:block;width:24px;height:24px;margin-left:auto;flex:none;
  background:currentColor;mask:url(../img/icons/chevron-20.svg) center/16px 9px no-repeat;
  -webkit-mask:url(../img/icons/chevron-20.svg) center/16px 9px no-repeat;
}
.ntd-mobilenav__phone{
  display:block;margin:24px 24px 0;padding:13px 18px;text-align:center;
  background:var(--ntd-lime);color:var(--ntd-green-900);border-radius:999px;font-weight:700;
}

/* ---------- newsletter signup states ---------- */
.ntd-subscribe{position:relative;flex-wrap:wrap}
.ntd-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.ntd-subscribe button[disabled]{opacity:.6;cursor:progress}
.ntd-subscribe__msg{
  flex-basis:100%;margin:0;font-size:13.5px;min-height:0;
}
.ntd-subscribe__msg:empty{display:none}
.ntd-subscribe__msg.is-ok{color:var(--ntd-lime)}
.ntd-subscribe__msg.is-error{color:#ffc9c9}
.ntd-subscribe__msg.is-pending{color:rgba(255,255,255,.7)}

/* ---------- responsive additions ---------- */
@media (max-width:1024px){
  .ntd-nav{position:relative;z-index:95}
  .ntd-nav .ntd-container{
    width:100%;max-width:none;margin:0;padding:0;display:flex;flex-wrap:nowrap;
    align-items:stretch;gap:0;height:72px;background:var(--ntd-green-900)
  }
  .ntd-nav__burger{display:flex;flex:0 0 72px;width:72px;height:72px;background:var(--ntd-green-900)}
  .ntd-nav__burger-icon{width:28px;height:24px}
  .ntd-nav__menu,.ntd-nav__phone{display:none}
  .ntd-mobilenav{
    max-height:calc(100vh - 146px);padding:28px 32px 32px;
    box-shadow:none
  }
  .ntd-mobilenav .ntd-nav__menu{display:block;margin-left:0}
  .ntd-mobilenav .sub-menu{position:static;display:block;width:auto;max-width:none;min-width:0;background:transparent;border:0;border-radius:0;box-shadow:none;padding:0 0 12px 24px}
  .ntd-mobilenav .sub-menu a{padding:10px 0;border:0;color:#fff;font-size:16px;font-weight:400}
  .ntd-mobilenav .sub-menu .ntd-menu-category>a{min-height:52px;padding:12px 0;gap:12px;font-size:16px}
  .ntd-mobilenav .sub-menu .ntd-menu-category__icon--monochrome{filter:brightness(0) invert(1)}
  .ntd-mobilenav .sub-menu .ntd-menu-category>a::before{width:24px;height:24px;flex-basis:24px;background-color:#fff}
  .ntd-mobilenav .sub-menu .ntd-menu-all-categories>a{min-height:52px;padding:12px 0;gap:12px;border-top:1px solid rgba(255,255,255,.2)}
  .ntd-mobilenav .sub-menu .ntd-menu-all-categories>a::before{background-color:#fff}
  .ntd-mobilenav__menu a,
  .ntd-mobilenav .ntd-nav__menu a{
    display:flex;align-items:center;gap:16px;padding:17px 0 27px;
    color:#fff;border-bottom:1px solid rgba(255,255,255,.14);
    font-size:26px;font-weight:400;line-height:1.2
  }
  .ntd-mobilenav__menu a:hover,
  .ntd-mobilenav .ntd-nav__menu a:hover{background:transparent;color:#fff}
  .ntd-mobilenav li > .ntd-mobilenav__submenu-toggle + .sub-menu{display:none}
  .ntd-mobilenav li.is-submenu-open > .ntd-mobilenav__submenu-toggle + .sub-menu{display:block}
  .ntd-mobilenav__submenu-toggle::after{transition:transform .2s ease}
  .ntd-mobilenav li.is-submenu-open > .ntd-mobilenav__submenu-toggle::after{transform:rotate(180deg)}
  .ntd-mobilenav__phone{display:none}
}

@media (max-width:600px){
  .ntd-video__play{top:248px}
  .ntd-topbar .ntd-container{
    align-items:flex-start;
    gap:16px;
    padding:7px 0
  }
  .ntd-topbar__left{
    flex:1 1 auto;
    min-width:0;
    align-items:flex-start
  }
  .ntd-topbar__left span{
    display:-webkit-box;
    flex:1 1 auto;
    min-width:0;
    overflow:hidden;
    text-overflow:clip;
    white-space:normal;
    line-height:1.35;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2
  }
  .ntd-topbar__right{
    flex:0 0 96px;
    width:96px;
    min-width:96px;
    min-height:32px
  }
  .ntd-header .ntd-container{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    column-gap:16px;
    row-gap:12px;
    height:auto;
    padding:12px 0 16px
  }
  .ntd-logo{order:1}
  .ntd-header__actions{order:2;margin-left:auto}
  .ntd-search{
    order:3;
    flex:0 0 100%;
    width:100%;
    min-width:0
  }
  .ntd-search__field{width:auto;flex:1;min-width:0}
  .ntd-nav .ntd-container{height:72px}
  .ntd-nav__burger{flex-basis:72px;width:72px;height:72px}
  .ntd-nav__burger-icon{width:28px;height:24px}
  .ntd-mobilenav{left:16px;right:16px;max-height:calc(100vh - 72px);padding:18px 24px 24px}
  .ntd-mobilenav__menu a,
  .ntd-mobilenav .ntd-nav__menu a{font-size:20px;padding:14px 0 20px}
  .ntd-mobilenav__menu > li:nth-child(2) > a::after,
  .ntd-mobilenav__menu > li:nth-child(3) > a::after,
  .ntd-mobilenav__menu > li:nth-child(4) > a::after,
  .ntd-mobilenav .ntd-nav__menu > li:nth-child(2) > a::after,
  .ntd-mobilenav .ntd-nav__menu > li:nth-child(3) > a::after,
  .ntd-mobilenav .ntd-nav__menu > li:nth-child(4) > a::after{
    content:"";display:block;width:24px;height:24px;margin-left:auto;flex:none;
    background:currentColor;mask:url(../img/icons/chevron-20.svg) center/16px 9px no-repeat;
    -webkit-mask:url(../img/icons/chevron-20.svg) center/16px 9px no-repeat
  }
}
@media (max-width:360px){
  .ntd-video__play{top:292px}
}
@media (max-width:768px){
  .ntd-header__actions{gap:14px}
  .ntd-cart__meta{display:none}
  .ntd-nav__phone span:first-child{display:none}
  .ntd-drawer{padding:0}
  .ntd-drawer__inner{
    max-height:100vh;
    border-radius:0;
  }
}
@media (max-width:560px){
  ul.products,.woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:1fr}
}

/* keyboard focus — was invisible before */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:2px solid var(--ntd-green-600);outline-offset:2px;border-radius:4px;
}

@media (prefers-reduced-motion:reduce){
  .ntd-drawer{transition:none}
}

/* ==========================================================
   CHECKOUT — 15_Thanh toán
   ========================================================== */

.ntd-checkout__grid{
  display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:48px;
  align-items:start;padding:8px 0 64px;
}
.ntd-checkout__block--extra{margin-top:34px;padding-top:34px;border-top:1px solid var(--ntd-border)}
.ntd-checkout__title{font-size:26px;font-weight:700;margin-bottom:24px;color:var(--ntd-ink)}

/* --- field grid --- */
.ntd-checkout .woocommerce-billing-fields__field-wrapper,
.ntd-checkout .woocommerce-additional-fields__field-wrapper{
  display:grid;grid-template-columns:repeat(12,1fr);gap:20px 20px;
}
.ntd-checkout .form-row{margin:0;padding:0;grid-column:span 12;display:flex;flex-direction:column}
.ntd-checkout .ntd-col-12{grid-column:span 12}
.ntd-checkout .ntd-col-6{grid-column:span 6}
.ntd-checkout .ntd-col-4{grid-column:span 4}
.ntd-checkout .ntd-col-3{grid-column:span 3}
.ntd-checkout .ntd-hidden-field{display:none!important}

.ntd-checkout .form-row label{
  font-size:14px;font-weight:500;color:var(--ntd-ink);margin-bottom:8px;display:block;
}
.ntd-checkout .form-row label .optional{color:var(--ntd-muted);font-weight:400}
.ntd-checkout .form-row .required{color:var(--ntd-green-600);text-decoration:none;border:0}

.ntd-checkout .input-text,
.ntd-checkout select,
.ntd-checkout textarea{
  width:100%;border:1px solid var(--ntd-border);border-radius:var(--ntd-radius);
  padding:13px 16px;font-family:inherit;font-size:15px;color:var(--ntd-ink);
  background:#fff;outline:0;transition:border-color .15s ease,box-shadow .15s ease;
}
.ntd-checkout select{
  appearance:none;
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%238a8f98' d='M1.4 0 6 4.6 10.6 0 12 1.4 6 7.4 0 1.4z'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 16px center;padding-right:42px;
}
.ntd-checkout .input-text:focus,
.ntd-checkout select:focus,
.ntd-checkout textarea:focus{
  border-color:var(--ntd-green-600);box-shadow:0 0 0 3px rgba(63,143,58,.12);
}
.ntd-checkout select:disabled{background-color:var(--ntd-bg-soft);color:var(--ntd-muted);cursor:not-allowed}
.ntd-checkout textarea{min-height:118px;resize:vertical;line-height:1.6}
.ntd-checkout ::placeholder{color:var(--ntd-muted);opacity:1}
.ntd-checkout .woocommerce-invalid .input-text,
.ntd-checkout .woocommerce-invalid select{border-color:#c0392b}

/* Woo prints its own select2 on some fields — keep it in the theme's shape. */
.ntd-checkout .select2-container--default .select2-selection--single{
  height:auto;border:1px solid var(--ntd-border);border-radius:var(--ntd-radius);padding:12px 16px;
}
.ntd-checkout .select2-container--default .select2-selection--single .select2-selection__rendered{
  line-height:1.5;padding:0;color:var(--ntd-ink);
}
.ntd-checkout .select2-container--default .select2-selection--single .select2-selection__arrow{height:100%;right:10px}

/* --- summary panel --- */
.ntd-summary{
  border:1px solid var(--ntd-border);border-radius:var(--ntd-radius-lg);
  padding:26px 26px 28px;background:#fff;position:sticky;top:24px;
}
.ntd-summary__title{font-size:21px;font-weight:700;margin-bottom:20px}
.ntd-summary__items{margin:0 0 18px;padding:0;display:flex;flex-direction:column;gap:16px}
.ntd-summary__item{display:flex;align-items:center;gap:14px}
.ntd-summary__thumb{width:52px;flex-shrink:0}
.ntd-summary__thumb img{border-radius:6px;border:1px solid var(--ntd-border)}
.ntd-summary__meta{flex:1;min-width:0}
.ntd-summary__name{font-size:14px;font-weight:500;color:var(--ntd-ink);line-height:1.4;display:block}
.ntd-summary__qty{font-style:normal;color:var(--ntd-muted);font-weight:400}
.ntd-summary__price{font-weight:600;font-size:14px;white-space:nowrap;color:var(--ntd-ink)}

.ntd-summary__totals{border-top:1px solid var(--ntd-border);padding-top:16px;display:flex;flex-direction:column;gap:12px}
.ntd-summary__row{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:15px}
.ntd-summary__row span:last-child{font-weight:600;color:var(--ntd-ink)}
.ntd-summary__free{color:var(--ntd-green-600)}
.ntd-summary__row--total{
  border-top:1px solid var(--ntd-border);padding-top:14px;margin-top:2px;font-size:16px;
}
.ntd-summary__row--total span:last-child{font-size:19px;font-weight:700}
/* Woo prints shipping as a table row inside our flex list. */
.ntd-summary__totals tr,
.ntd-summary__totals .woocommerce-shipping-totals{
  display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:15px;
}
.ntd-summary__totals th{font-weight:400;color:var(--ntd-body);text-align:left;padding:0}
.ntd-summary__totals td{font-weight:600;color:var(--ntd-ink);text-align:right;padding:0}
.ntd-summary__totals ul{margin:0;padding:0;text-align:right}

/* --- payment --- */
.ntd-payment{margin-top:24px}
.ntd-payment__title{font-size:19px;font-weight:700;margin-bottom:14px}
.ntd-payment .payment_methods{margin:0 0 20px;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}
.ntd-payment .wc_payment_method label{
  display:flex;align-items:center;gap:11px;font-size:15px;color:var(--ntd-ink);cursor:pointer;margin:0;
}
.ntd-payment .wc_payment_method input[type=radio]{
  appearance:none;width:19px;height:19px;border:2px solid var(--ntd-border);border-radius:50%;
  margin:0;flex-shrink:0;cursor:pointer;position:relative;transition:border-color .15s ease;
}
.ntd-payment .wc_payment_method input[type=radio]:checked{border-color:var(--ntd-green-900)}
.ntd-payment .wc_payment_method input[type=radio]:checked::after{
  content:'';position:absolute;inset:3px;border-radius:50%;background:var(--ntd-green-900);
}
.ntd-payment .payment_box{
  background:var(--ntd-bg-soft);border-radius:8px;padding:12px 15px;margin:8px 0 0 30px;
  font-size:13.5px;color:var(--ntd-body);
}
.ntd-payment .payment_box p{margin:0}
.ntd-placeorder{width:100%;justify-content:center;font-size:16px;padding:15px 24px;margin-top:4px}
.ntd-payment .woocommerce-terms-and-conditions-wrapper{margin-bottom:14px;font-size:13.5px}

/* --- responsive --- */
@media (max-width:1100px){
  .ntd-checkout__grid{grid-template-columns:1fr;gap:32px}
  .ntd-summary{position:static}
  .ntd-checkout__aside{order:2}
}
@media (max-width:768px){
  .ntd-checkout__title{font-size:22px}
  .ntd-checkout .ntd-col-4,
  .ntd-checkout .ntd-col-3,
  .ntd-checkout .ntd-col-6{grid-column:span 12}
  .ntd-checkout .woocommerce-billing-fields__field-wrapper{gap:16px}
  .ntd-summary{padding:20px 18px 22px}
}

/* Checkout and cart are full-width layouts, not prose. */
.woocommerce-checkout .ntd-single,
.woocommerce-cart .ntd-single{max-width:none}

/* WooCommerce paints #payment grey; the design keeps it on the card. */
.ntd-checkout #payment,
.ntd-checkout #payment .payment_box{background:transparent}
.ntd-checkout #payment{border-radius:0}
.ntd-checkout #payment .payment_box{background:var(--ntd-bg-soft)}
.ntd-checkout #payment .payment_box::before{display:none}
.ntd-checkout .woocommerce-additional-fields h3,
.ntd-checkout .woocommerce-billing-fields h3{display:none}

/* Field order and widths.
   WooCommerce re-sorts checkout fields by its own priorities, which don't
   survive a wholesale field replacement — so the layout is pinned here
   instead of fought for in PHP. Matches the frame row by row. */
.ntd-checkout #billing_first_name_field{order:1;grid-column:span 4}
.ntd-checkout #billing_last_name_field {order:2;grid-column:span 4}
.ntd-checkout #billing_company_field   {order:3;grid-column:span 4}
.ntd-checkout #billing_address_1_field {order:4;grid-column:span 12}
.ntd-checkout #billing_city_field      {order:5;grid-column:span 4}
.ntd-checkout #billing_state_field     {order:6;grid-column:span 4}
.ntd-checkout #billing_email_field     {order:7;grid-column:span 6}
.ntd-checkout #billing_phone_field     {order:8;grid-column:span 6}
.ntd-checkout #billing_country_field,
.ntd-checkout #billing_postcode_field,
.ntd-checkout #billing_address_2_field {display:none!important}

@media (max-width:768px){
  .ntd-checkout #billing_first_name_field,
  .ntd-checkout #billing_last_name_field,
  .ntd-checkout #billing_company_field,
  .ntd-checkout #billing_city_field,
  .ntd-checkout #billing_state_field,
  .ntd-checkout #billing_email_field,
  .ntd-checkout #billing_phone_field{grid-column:span 12}
}

/* ==========================================================
   QUICK VIEW — 07_Xem trước SP Pop Up
   ========================================================== */

/* Home product hover actions stay hidden on touch devices. */
@media (hover:none){
	body.home .ntd-product__actions .ntd-product__hover,
	body.home .ntd-product__actions:focus-within .ntd-product__hover,
	body.home .ntd-product__actions>.ntd-product__cart,
	body.home .ntd-mini .ntd-product__hover{opacity:0;pointer-events:none}
}

/* --- modal shell --- */
.ntd-qv{
  position:fixed;inset:0;z-index:110;display:flex;align-items:center;justify-content:center;
  padding:32px 24px;overflow-y:auto;
  opacity:0;transition:opacity .2s ease;
}
.ntd-qv.is-open{opacity:1}
.ntd-qv[hidden]{display:none}
.ntd-qv__body{width:100%;max-width:1100px;margin:auto}
.ntd-qv__loading{
  background:#fff;border-radius:var(--ntd-radius-lg);padding:64px 24px;text-align:center;
  color:var(--ntd-muted);font-size:15px;
}
.ntd-qv__inner{
  position:relative;background:#fff;border-radius:var(--ntd-radius-lg);
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:36px;
  padding:36px 40px;box-shadow:0 24px 60px rgba(20,32,22,.28);
  transform:translateY(8px);animation:ntd-qv-in .22s ease forwards;
}
@keyframes ntd-qv-in{to{transform:none}}
.ntd-qv__close{
  position:absolute;top:-38px;right:-6px;width:32px;height:32px;border:0;border-radius:50%;
  background:transparent;color:#fff;font-size:30px;line-height:1;cursor:pointer;
}
.ntd-qv__close:hover{color:var(--ntd-lime)}

/* --- gallery --- */
.ntd-qv__gallery{
  display:grid;grid-template-columns:72px minmax(0,1fr);grid-template-rows:auto 1fr auto;
  gap:0 18px;align-items:center;
}
.ntd-qv__navthumb{
  grid-column:1;background:transparent;border:0;cursor:pointer;color:var(--ntd-muted);
  font-size:12px;padding:4px;line-height:1;
}
.ntd-qv__navthumb:hover{color:var(--ntd-green-900)}
.ntd-qv__navthumb--up{grid-row:1}
.ntd-qv__navthumb--down{grid-row:3}
.ntd-qv__thumbs{
  grid-column:1;grid-row:2;display:flex;flex-direction:column;gap:12px;
  max-height:340px;overflow-y:auto;scrollbar-width:none;
}
.ntd-qv__thumbs::-webkit-scrollbar{display:none}
.ntd-qv__thumb{
  border:1px solid var(--ntd-border);border-radius:8px;padding:4px;background:#fff;
  cursor:pointer;flex-shrink:0;display:block;transition:border-color .15s ease;
}
.ntd-qv__thumb.is-active{border-color:var(--ntd-green-600)}
.ntd-qv__thumb img{border-radius:5px;display:block}
.ntd-qv__main{grid-column:2;grid-row:1 / span 3;display:grid;place-items:center;padding:8px}
.ntd-qv__main img{max-height:360px;width:auto;object-fit:contain}

/* --- summary --- */
.ntd-qv__summary{display:flex;flex-direction:column;gap:14px;min-width:0}
.ntd-qv__head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.ntd-qv__title{font-size:30px;margin:0;line-height:1.2}
.ntd-qv__title a{color:var(--ntd-ink)}
.ntd-qv__title a:hover{color:var(--ntd-green-900)}
.ntd-qv__stock{font-size:12.5px;font-weight:600;padding:5px 12px;border-radius:999px}
.ntd-qv__stock.is-in{background:var(--ntd-green-50);color:var(--ntd-green-600)}
.ntd-qv__stock.is-out{background:#fbe6e6;color:#a2383c}

.ntd-qv__meta{display:flex;align-items:center;gap:10px;font-size:13.5px;color:var(--ntd-muted);flex-wrap:wrap}
.ntd-qv__meta .ntd-rating,.ntd-product__rating{margin:0;color:var(--ntd-star)}
.ntd-qv__dot{opacity:.5}

.ntd-qv__price{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:26px;font-weight:700;color:var(--ntd-ink)}
.ntd-qv__price del{font-size:.62em;font-weight:400;color:var(--ntd-muted);margin-right:0}
.ntd-qv__price ins{text-decoration:none}
.ntd-qv__badge{background:#fbe6e6;color:#c0392b;font-size:12.5px;font-weight:600;padding:5px 11px;border-radius:999px}

.ntd-qv__rule{height:1px;background:var(--ntd-border)}
.ntd-qv__brandrow{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:14px}
.ntd-qv__brand,.ntd-qv__share{display:flex;align-items:center;gap:10px}
.ntd-qv__brand>span,.ntd-qv__share>span{color:var(--ntd-body)}
.ntd-qv__brandchip{display:grid;place-items:center;width:56px;height:56px;border:1px solid var(--ntd-gray-100);border-radius:4px;flex:none}
.ntd-qv__brandchip img{width:40px;height:auto;object-fit:contain}
.ntd-qv__share{gap:5px}
.ntd-qv__share>span{margin-right:5px}

.ntd-qv__excerpt{color:var(--ntd-body);font-size:14.5px}
.ntd-qv__excerpt p{margin:0}

/* --- buy row --- */
.ntd-qv__buy{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.ntd-qv__wish,.ntd-pdp__wish{display:grid;place-items:center;width:52px;height:52px;padding:0;border:0;border-radius:50%;background:rgba(32,181,38,.1);cursor:pointer;flex:none}
.ntd-qv__wish img,.ntd-pdp__wish img{width:20px;height:20px}
.ntd-qv__wish:hover,.ntd-pdp__wish:hover{background:rgba(32,181,38,.2)}
.ntd-qv__wish.is-on,.ntd-pdp__wish.is-on{background:var(--ntd-success-dark)}
.ntd-qv__wish.is-on img,.ntd-pdp__wish.is-on img{filter:brightness(0) invert(1)}
.ntd-qty{display:flex;align-items:center;gap:0;height:50px;padding:8px;border:1px solid var(--ntd-border);border-radius:170px;box-sizing:border-box;flex-shrink:0}
.ntd-qty__btn{
  display:grid;place-items:center;width:34px;height:34px;flex:none;border:0;border-radius:50%;
  background:var(--ntd-gray-50);cursor:pointer;font-size:17px;color:var(--ntd-gray-600);line-height:1;
}
.ntd-qty__btn:hover{background:var(--ntd-gray-100);color:var(--ntd-gray-900)}
.ntd-qty__input{
  width:40px;height:34px;border:0;text-align:center;font-family:inherit;font-size:15px;
  font-weight:600;color:var(--ntd-ink);outline:0;-moz-appearance:textfield;background:transparent;
}
.ntd-qty__input::-webkit-outer-spin-button,
.ntd-qty__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.ntd-qv__add{flex:1;min-width:210px;justify-content:center;height:46px}
.ntd-qv__add.loading{opacity:.7;pointer-events:none}
.ntd-qv__add.added::after{display:none}
.ntd-qv__unavailable{color:#a2383c;font-weight:600;margin:0}

.ntd-qv__tax{font-size:14px;color:var(--ntd-body);display:flex;flex-direction:column;gap:6px}
.ntd-qv__tax p{margin:0}
.ntd-qv__tax span{color:var(--ntd-muted)}
.ntd-qv__tax a{color:var(--ntd-body)}
.ntd-qv__tax a:hover{color:var(--ntd-gray-900);text-decoration:underline}
/* Keep WooCommerce's generated "View cart" link hidden after an AJAX add. */
.ntd-qv__buy .added_to_cart{display:none}

@media (max-width:900px){
  .ntd-qv__inner{grid-template-columns:1fr;gap:24px;padding:28px 22px}
  .ntd-qv__close{top:8px;right:8px;color:var(--ntd-ink)}
  .ntd-qv__gallery{grid-template-columns:64px minmax(0,1fr)}
  .ntd-qv__main img{max-height:260px}
  .ntd-qv__title{font-size:24px}
}
@media (max-width:560px){
  .ntd-qv{padding:16px 12px}
  .ntd-qv__gallery{grid-template-columns:1fr;grid-template-rows:auto auto}
  .ntd-qv__navthumb{display:none}
  .ntd-qv__thumbs{grid-column:1;grid-row:2;flex-direction:row;max-height:none;overflow-x:auto}
  .ntd-qv__main{grid-column:1;grid-row:1}
  .ntd-qv__add{min-width:0;width:100%}
}
@media (prefers-reduced-motion:reduce){
  .ntd-qv,.ntd-qv__inner{transition:none;animation:none;transform:none}
}

/* ==========================================================
   SMALL SCREENS
   The Figma cards are absolutely positioned inside fixed widths, which is what
   makes them pixel-exact on desktop. Below 560px that same fixed width would
   overflow the viewport, so the cards drop to flow layout here.
   ========================================================== */
@media (max-width:560px){
  /* product cards */
  .ntd-product,.ntd-product--shop{width:100%;height:auto;padding-bottom:16px}
  .ntd-product__thumb,.ntd-product--shop .ntd-product__thumb{position:static;width:100%;height:auto;aspect-ratio:1/1;margin:0}
  .ntd-product__title,.ntd-product--shop .ntd-product__title{position:static;width:auto;max-width:calc(100% - 32px);margin:12px 16px 0}
  .ntd-product__price,.ntd-product--shop .ntd-product__price{position:static;margin:4px 16px 0}
  .ntd-product .ntd-rating,.ntd-product--shop .ntd-rating{position:static;margin:6px 16px 0}

  /* mini rows, category tiles, team, testimonials, promos */
  .ntd-mini,.ntd-shopbar__sale .ntd-mini{width:100%}
  .ntd-cat-card{width:100%}
  .ntd-cat-grid{grid-template-columns:1fr}
  .ntd-member{width:100%;height:auto;min-height:0}
  .ntd-member__photo{width:100%}
  .ntd-member__photo{height:auto;aspect-ratio:312/280}
  .ntd-quote{width:100%;height:auto;padding-bottom:96px}
  .ntd-testimonials__inner{height:auto;padding:32px 20px}
  .ntd-voucher,.ntd-voucher--rail,.ntd-voucher__art{width:100%;height:auto}
  .ntd-deal--image{width:100%;height:auto;aspect-ratio:248 / 335}
  .ntd-team__grid,.ntd-testimonials__grid,.ntd-products,.ntd-collections{flex-direction:column;align-items:stretch}
  .ntd-collection{width:100%}
	.ntd-features{gap:16px}
	.ntd-feature{width:100%;min-width:0}
	.ntd-feature strong,.ntd-feature small{width:auto}

	/* Keep the countdown content separated on small phone widths. */
	.ntd-countdown{aspect-ratio:644 / 580;background-size:100% 100%}
	.ntd-countdown__kicker{top:7.5%;font-size:11px}
	.ntd-countdown__title{top:12%;left:4%;right:4%;font-size:clamp(22px,6vw,32px);line-height:1.1;white-space:normal}
	.ntd-countdown__clock{top:23%;left:4%;right:4%;gap:2px}
	.ntd-countdown__unit{min-width:clamp(28px,8vw,42px);gap:2px}
	.ntd-countdown__unit b{font-size:clamp(16px,5.3vw,22px);line-height:1.2}
	.ntd-countdown__unit small{font-size:clamp(8px,2.5vw,11px);letter-spacing:0}
	.ntd-countdown__sep{font-size:clamp(16px,5.3vw,22px);line-height:1.2}
	.ntd-countdown__cta{top:36%;width:min(133px,44%);height:clamp(32px,9vw,38px);gap:6px;font-size:clamp(12px,3.8vw,15px)}

	/* hero + section headings */
  .ntd-hero__inner{grid-template-columns:1fr}
	.ntd-hero__banner{width:auto;height:auto;aspect-ratio:1320/573}
  .ntd-featured__title,.ntd-cats__title,.ntd-team__title{font-size:24px}
  .ntd-pagetitle{font-size:24px}

  /* Keep the article author details readable, then place the share row below. */
  .ntd-blogsingle__by{flex-wrap:wrap;align-items:flex-start}
  .ntd-blogsingle__who{flex:1 1 0}
  .ntd-blogsingle__share{flex:0 0 100%;margin-left:0;justify-content:flex-start}

  /* single product */
  .ntd-details{grid-template-columns:1fr}
  .ntd-pdp__gallery{grid-template-columns:1fr}
  .ntd-pdp__thumbs{flex-direction:row;flex-wrap:wrap}
  .ntd-pdp__head{flex-wrap:wrap}
  .ntd-pdp__title{font-size:22px}
  .ntd-pdp__brandrow{flex-wrap:wrap}
  .ntd-pdp__sharegroup{flex:0 0 100%;margin-left:0;justify-content:flex-start}
  .ntd-pdp .related ul.products{grid-template-columns:1fr}
  .ntd-pdp .related ul.products li.product{width:100%}
  .ntd-about__lines{grid-template-columns:1fr}
  .ntd-about__name{font-size:26px}
  .ntd-contactform__row{grid-template-columns:1fr}
  .ntd-contact__map{height:300px}
  .ntd-faq__cols{grid-template-columns:1fr}
  .ntd-faq__title{font-size:30px}
  .ntd-faq__photo{display:none}
}

@media (max-width:1024px){
  .ntd-promos{flex-direction:column;gap:24px;padding:32px 0}
  .ntd-promos__link{flex:none;width:100%;height:auto}
  .ntd-newsletter .ntd-container{align-items:stretch;gap:16px}
  .ntd-newsletter__txt{width:100%;gap:12px}
  .ntd-newsletter__group{width:100%;flex-direction:column;align-items:stretch;gap:12px}
  .ntd-subscribe{width:100%;max-width:100%}
  .ntd-newsletter__social{width:100%;justify-content:center}
  .ntd-footer__main,.ntd-footer__main .ntd-container{height:auto}
  .ntd-footer__main .ntd-container{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px;padding:40px 0}
  .ntd-footer__col{position:static;min-width:0}
  .ntd-footer__col--brand,.ntd-footer__col--shops{grid-column:1/-1}
  .ntd-footer__about{width:auto}
  .ntd-footer h5,.ntd-footer li{white-space:normal}
  .ntd-footer__shops{flex-wrap:wrap}
  .ntd-footer__bottom .ntd-container{flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:20px 0;text-align:center}
  .ntd-footer__copy{width:100%;text-align:center}
  .ntd-pay{width:100%;justify-content:center}
  .ntd-team__grid{flex-direction:column;align-items:stretch}
  .ntd-member{width:100%;height:auto;min-height:0}
  .ntd-member__photo{width:100%;height:auto;aspect-ratio:312 / 280}
  .ntd-pdp__head{align-items:flex-start;min-width:0}
  .ntd-pdp__title{flex:1 1 0;font-size:22px;line-height:1.3}
}

/* Inner-page mobile menu shares the green breadcrumb band. */
@media (max-width:1024px){
  .ntd-nav--breadcrumb-menu{display:none}
  .ntd-crumb--with-menu{position:relative;z-index:95;height:auto;min-height:96px;padding:16px 0}
  .ntd-crumb--with-menu > .ntd-container{gap:20px;min-width:0}
  .ntd-crumb--with-menu .ntd-nav__burger{flex:0 0 44px;width:44px;height:44px}
  .ntd-crumb--with-menu .ntd-nav__burger-icon{width:28px;height:24px}
  .ntd-crumb--with-menu .ntd-crumb__nav{min-width:0;flex-wrap:wrap;gap:8px 12px}
  .ntd-crumb--with-menu .ntd-mobilenav{max-height:60vh;max-height:60dvh}
}

/* About page refinements for the supplied Figma frame. */
@media (min-width:1200px){
  .ntd-about__cols,.ntd-about__cols--flip{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:32px}
  .ntd-about__cols--flip{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
}

@media (max-width:1199px){
  .ntd-about__cols,.ntd-about__cols--flip{grid-template-columns:1fr;gap:32px;min-height:0}
  .ntd-about__cols--flip .ntd-about__photo{order:-1}
  .ntd-about__photo--right{height:auto;aspect-ratio:676/430}
  .ntd-about__photo--left{width:100%;height:auto;margin-left:0;aspect-ratio:804/536}
}

@media (max-width:600px){
  .ntd-about__band{padding:40px 0}
  .ntd-about__band--alt{padding:0}
  .ntd-about__name{font-size:26px;line-height:1.2;margin-bottom:20px}
  .ntd-about__h2{font-size:30px}
  .ntd-about__pillar h3{font-size:20px}
  .ntd-about__photo--left::after{width:40%}
  .ntd-about__lines{gap:14px 16px;margin-top:24px}
  .ntd-about__lines li{gap:10px;font-size:13px}
  .ntd-about__ico{width:48px;height:48px}
  .ntd-about__ico::before{width:22px;height:22px}
  .ntd-about__team .ntd-team__carousel{overflow:hidden}
  .ntd-about__team .ntd-team__grid{gap:16px}
  .ntd-about__team .ntd-member{width:100%;max-width:100%}
  .ntd-newsletter .ntd-container{align-items:stretch;gap:16px}
  .ntd-newsletter__txt{width:100%;gap:12px}
  .ntd-newsletter__txt p{font-size:16px;line-height:1.35}
  .ntd-newsletter__group{width:100%;flex-direction:column;align-items:stretch;gap:12px}
  .ntd-subscribe{width:100%;max-width:100%}
  .ntd-newsletter__social{width:100%;justify-content:center}
  .ntd-footer{overflow:hidden}
  .ntd-footer__about{white-space:normal}
  .ntd-footer__cta{width:100%;max-width:100%;flex-wrap:wrap;gap:8px 12px}
  .ntd-footer__bottom .ntd-container{
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:16px;
    padding:20px 0;
    text-align:center
  }
  .ntd-footer__copy{width:100%;text-align:center}
  .ntd-pay{width:100%;justify-content:center}
  .ntd-footer__main .ntd-container{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px;padding:40px 0}
  .ntd-footer__col--brand{grid-column:1/-1}
  .ntd-footer__col--shops{grid-column:1/-1}
  .ntd-footer__shops{flex-wrap:wrap}
  .ntd-store{max-width:100%}
}

@media (max-width:420px){
  .ntd-shop__sort{display:grid;grid-template-columns:auto minmax(0,1fr);width:100%;gap:12px}
  .ntd-shop__sort .woocommerce-ordering{min-width:0}
  .ntd-shop__sort select{width:100%;min-width:0}
  .ntd-shop__count{grid-column:1/-1;margin:0;text-align:right}
}

/* ==========================================================
   GTranslate floating switcher override
   GTranslate's own Custom CSS admin field is saved but never read
   by the floating widget's JS (float.js builds its stylesheet from
   a different settings object) — overriding here instead, where it
   reliably applies regardless of plugin state. !important beats the
   plugin's own generated <style> tag, which has no !important rules.
   ========================================================== */
#gt_float_wrapper{position:absolute!important;top:50%!important;bottom:auto!important;left:auto!important;right:12px!important;transform:translateY(-50%)!important;z-index:60!important}
.gt_float_switcher{background:transparent!important;box-shadow:none!important;border-radius:0!important;font-family:inherit!important;font-size:12px!important;line-height:1.3!important;color:var(--ntd-green-900)!important;display:inline-block!important;position:relative!important;overflow:visible!important}
.gt_float_switcher .gt-selected{background:transparent!important;float:none!important}
.gt_float_switcher .gt-selected .gt-current-lang{padding:0!important;color:var(--ntd-green-900)!important;font-weight:400!important;display:flex!important;align-items:center!important;gap:4px!important;text-transform:none!important}
.gt_float_switcher .gt-current-lang img{display:none!important}
.gt_float_switcher .gt-current-lang span.gt-lang-code{color:var(--ntd-green-900)!important;font-weight:400!important;top:0!important}
.gt_float_switcher .gt_float_switcher-arrow{filter:brightness(0)!important;transform:rotate(0deg)!important}
.gt_float_switcher .gt_float_switcher-arrow.gt_arrow_rotate{transform:rotate(180deg)!important}
.gt_float_switcher .gt_options{position:absolute!important;top:100%!important;right:0!important;left:auto!important;float:none!important;transform:none!important;width:max-content!important;max-width:220px!important;background:#fff!important;box-shadow:0 8px 24px rgba(0,0,0,.15)!important;border-radius:6px!important;margin-top:6px!important}
.gt_float_switcher .gt_options a{display:flex!important;align-items:center!important;gap:8px!important;color:var(--ntd-gray-900)!important;font-size:13px!important;text-transform:none!important;white-space:nowrap!important}
.gt_float_switcher .gt_options a img{width:20px!important;height:14px!important;object-fit:cover!important;flex:none!important}
.gt_float_switcher .gt_options a:hover{background:var(--ntd-green-50)!important;color:var(--ntd-green-900)!important}
.gt_float_switcher .gt_options a.gt-current{display:none!important}
