/* DN Mart - Style 1: rounded cards (24px), soft 3D shadows, hover lift.
   Palette: teal #EE6500 / deep #23262B, mint #FF9E45 / #FFC38F, beige #f6f4ef / #efece4, amber #EE6500.
   Colours are CSS variables; Appearance > Customize > DN Mart overrides brand/deep/accent/bg. */
:root{
  --dnmart-brand:#EE6500; --dnmart-deep:#23262B; --dnmart-mint:#FF9E45; --dnmart-mint2:#FFC38F;
  --dnmart-bg:#f6f4ef; --dnmart-bg2:#efece4; --dnmart-surface:#fffdf8; --dnmart-surface2:#f1eee5;
  --dnmart-ink:#17302c; --dnmart-ink2:#4A423B; --dnmart-muted:#8A7F72; --dnmart-line:#ddd6c6;
  --dnmart-accent:#EE6500; --dnmart-danger:#c0392b; --dnmart-ok:#1e7d4f;
  --dnmart-r-lg:24px; --dnmart-r-md:16px; --dnmart-r-sm:10px;
  --dnmart-shadow-sm:0 1px 2px rgba(35,38,43,.07),0 4px 14px rgba(35,38,43,.07);
  --dnmart-shadow-md:0 2px 4px rgba(35,38,43,.06),0 14px 34px rgba(35,38,43,.13);
  --dnmart-shadow-lg:0 4px 8px rgba(35,38,43,.08),0 30px 60px rgba(35,38,43,.18);
  --dnmart-shadow-btn:0 3px 0 #23262B,0 10px 22px rgba(35,38,43,.28);
  --dnmart-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--dnmart-bg);color:var(--dnmart-ink);font-family:var(--dnmart-font);line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
a{color:var(--dnmart-brand);text-decoration:none}
a:hover{color:var(--dnmart-mint)}
.dnmart-container{max-width:1240px;margin:0 auto;padding:0 20px}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip-link:focus{position:fixed;top:8px;left:8px;width:auto;height:auto;clip:auto;background:var(--dnmart-deep);color:#fff;padding:10px 16px;border-radius:var(--dnmart-r-sm);z-index:200}

/* Buttons */
.dnmart-btn,.button{display:inline-flex;align-items:center;gap:8px;border:0;cursor:pointer;border-radius:999px;padding:13px 26px;font-weight:800;font-size:.95rem;background:var(--dnmart-brand);color:#fff;box-shadow:var(--dnmart-shadow-btn);transition:transform .15s ease,box-shadow .15s ease,background .15s ease}
.dnmart-btn:hover,.button:hover{background:var(--dnmart-mint);color:#fff;transform:translateY(-2px)}
.dnmart-btn:active{transform:translateY(1px);box-shadow:0 1px 0 var(--dnmart-deep)}
.dnmart-btn--ghost{background:var(--dnmart-surface);color:var(--dnmart-brand);border:1.5px solid var(--dnmart-line);box-shadow:var(--dnmart-shadow-sm)}
.dnmart-btn--accent{background:var(--dnmart-accent);color:#23262B;box-shadow:0 3px 0 #B44A00,0 10px 22px rgba(238,101,0,.3)}

/* Header */
.dnmart-topbar{background:var(--dnmart-deep);color:#FFF1DE;font-size:.85rem}
.dnmart-topbar__inner{display:flex;justify-content:space-between;gap:16px;padding-top:7px;padding-bottom:7px;flex-wrap:wrap}
.dnmart-topbar p{margin:0}.dnmart-topbar a{color:#FFD9AE;font-weight:700}
.dnmart-header{background:rgba(246,244,239,.92);backdrop-filter:blur(10px);position:sticky;top:0;z-index:90;border-bottom:1px solid var(--dnmart-line)}
.dnmart-header.is-stuck{box-shadow:var(--dnmart-shadow-md)}
.dnmart-header__inner{display:flex;align-items:center;gap:18px;padding-top:12px;padding-bottom:12px}
.dnmart-logo{display:inline-flex;align-items:center;gap:10px;color:var(--dnmart-ink)}
.dnmart-logo__mark{width:40px;height:40px;border-radius:12px;background:var(--dnmart-brand);color:#fff;display:grid;place-items:center;font-weight:900;box-shadow:0 3px 0 var(--dnmart-deep),var(--dnmart-shadow-md);transform:rotate(-4deg)}
.dnmart-logo__text{font-size:1.35rem;font-weight:900;letter-spacing:-.01em;white-space:nowrap}
.dnmart-logo__text span{color:var(--dnmart-mint)}
.custom-logo{max-height:52px;width:auto}
.dnmart-header__search{flex:1;max-width:460px;margin-left:auto}
.dnmart-header__search form,.woocommerce-product-search{display:flex;align-items:center;background:var(--dnmart-surface);border:1.5px solid var(--dnmart-line);border-radius:999px;padding:4px 6px 4px 16px;box-shadow:var(--dnmart-shadow-sm)}
.dnmart-header__search input[type=search],.dnmart-header__search input[type=text]{border:0;background:transparent;flex:1;font:inherit;min-width:0;outline:none}
.dnmart-header__search button{background:var(--dnmart-brand);color:#fff;border:0;border-radius:999px;padding:9px 16px;font-weight:800;cursor:pointer}
.dnmart-header__actions{display:flex;align-items:center;gap:14px;margin-left:auto}
.dnmart-header__search + .dnmart-header__actions{margin-left:0}
.dnmart-header__account{font-weight:700;color:var(--dnmart-ink2)}
.dnmart-cart-toggle{display:inline-flex;align-items:center;gap:7px;background:var(--dnmart-surface);border:1.5px solid var(--dnmart-line);border-radius:999px;padding:9px 16px;font:inherit;font-weight:800;cursor:pointer;box-shadow:var(--dnmart-shadow-sm)}
.dnmart-cart-count{background:var(--dnmart-danger);color:#fff;border-radius:999px;min-width:21px;height:21px;display:grid;place-items:center;font-size:.72rem;padding:0 5px}
.dnmart-nav-toggle{display:none;background:var(--dnmart-surface);border:1.5px solid var(--dnmart-line);border-radius:12px;width:44px;height:44px;font-size:1.2rem;cursor:pointer}
.dnmart-nav{border-top:1px solid var(--dnmart-line)}
.dnmart-menu{list-style:none;margin:0;padding:8px 0;display:flex;gap:4px;flex-wrap:wrap}
.dnmart-menu a{display:block;padding:9px 14px;border-radius:999px;font-weight:700;color:var(--dnmart-ink2)}
.dnmart-menu a:hover,.dnmart-menu .current-menu-item > a{background:var(--dnmart-surface);color:var(--dnmart-brand);box-shadow:var(--dnmart-shadow-sm)}
.dnmart-catnav{background:var(--dnmart-bg2)}

/* Cart drawer */
.dnmart-cart-drawer{position:fixed;inset:0;z-index:120;visibility:hidden}
.dnmart-cart-drawer.is-open{visibility:visible}
.dnmart-cart-drawer__scrim{position:absolute;inset:0;background:rgba(35,38,43,.45);border:0;opacity:0;transition:opacity .2s}
.dnmart-cart-drawer.is-open .dnmart-cart-drawer__scrim{opacity:1}
.dnmart-cart-drawer__panel{position:absolute;top:0;right:0;height:100%;width:min(400px,92vw);background:var(--dnmart-surface);box-shadow:var(--dnmart-shadow-lg);padding:22px;overflow:auto;transform:translateX(105%);transition:transform .25s ease;border-radius:24px 0 0 24px;z-index:1}
.dnmart-cart-drawer.is-open .dnmart-cart-drawer__panel{transform:none}
.dnmart-cart-drawer__close{position:absolute;top:12px;right:14px;background:none;border:0;font-size:1.7rem;cursor:pointer;color:var(--dnmart-ink2)}
.dnmart-ship-note{background:var(--dnmart-bg2);border-radius:var(--dnmart-r-sm);padding:9px 12px;font-weight:700;font-size:.88rem}
.dnmart-ship-note--ok{background:#e2f4e8;color:var(--dnmart-ok)}
body.dnmart-drawer-open{overflow:hidden}

/* Layout, cards, sections */
.site-main{padding:28px 0 56px}
.dnmart-home{padding-top:0}
.dnmart-layout{display:grid;grid-template-columns:1fr 300px;gap:28px;align-items:start}
.dnmart-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:22px}
.dnmart-card{background:var(--dnmart-surface);border:1px solid var(--dnmart-line);border-radius:var(--dnmart-r-lg);box-shadow:var(--dnmart-shadow-sm);overflow:hidden;transition:transform .22s ease,box-shadow .22s ease}
.dnmart-card:hover{transform:translateY(-6px);box-shadow:var(--dnmart-shadow-md)}
.dnmart-post-card__thumb img{display:block;width:100%;aspect-ratio:1;object-fit:cover}
.dnmart-post-card__body{padding:18px 20px 22px}
.dnmart-post-card__title{font-size:1.08rem;margin:0 0 8px;line-height:1.35}
.dnmart-post-card__title a{color:var(--dnmart-ink)}
.dnmart-page__title{font-size:2rem;line-height:1.2;margin:6px 0 18px;letter-spacing:-.02em}
.dnmart-page__thumb img{border-radius:var(--dnmart-r-lg);box-shadow:var(--dnmart-shadow-md)}
.dnmart-prose{max-width:75ch}
.dnmart-prose h2,.dnmart-prose h3{letter-spacing:-.01em}
.dnmart-breadcrumbs{font-size:.88rem;color:var(--dnmart-muted);margin-bottom:14px}
.dnmart-breadcrumbs a{color:var(--dnmart-ink2);font-weight:600}
.dnmart-section{padding:44px 0 8px}
.dnmart-section--alt{background:var(--dnmart-bg2);border-radius:32px;margin:34px 12px 0;padding-bottom:36px}
.dnmart-section__title{font-size:1.7rem;margin:0 0 22px;letter-spacing:-.02em}
.dnmart-sidebar .widget{background:var(--dnmart-surface);border:1px solid var(--dnmart-line);border-radius:var(--dnmart-r-lg);box-shadow:var(--dnmart-shadow-sm);padding:18px;margin-bottom:18px}
.widget-title{margin:0 0 10px;font-size:1rem}
.dnmart-none,.dnmart-404{padding:32px;text-align:center}
.dnmart-comments{background:var(--dnmart-surface);border:1px solid var(--dnmart-line);border-radius:var(--dnmart-r-lg);padding:24px;margin-top:26px;box-shadow:var(--dnmart-shadow-sm)}
input[type=text],input[type=email],input[type=tel],input[type=number],input[type=password],input[type=url],select,textarea{border:1.5px solid var(--dnmart-line);border-radius:12px;padding:11px 14px;font:inherit;background:var(--dnmart-surface);color:var(--dnmart-ink)}
:focus-visible{outline:3px solid var(--dnmart-mint2);outline-offset:2px}

/* Hero */
.dnmart-hero{background:radial-gradient(900px 420px at 85% -10%,rgba(255,158,69,.35),transparent 60%),linear-gradient(180deg,var(--dnmart-bg),var(--dnmart-bg2));padding:48px 0 30px;overflow:hidden}
.dnmart-hero__inner{display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:center}
.dnmart-hero__eyebrow{display:inline-block;background:var(--dnmart-surface);border:1px solid var(--dnmart-line);color:var(--dnmart-brand);font-weight:800;font-size:.8rem;letter-spacing:.05em;text-transform:uppercase;padding:6px 14px;border-radius:999px;box-shadow:var(--dnmart-shadow-sm)}
.dnmart-hero__title{font-size:clamp(2.1rem,4.5vw,3.4rem);line-height:1.08;letter-spacing:-.03em;margin:16px 0 14px}
.dnmart-hero__sub{font-size:1.08rem;color:var(--dnmart-ink2);max-width:52ch;margin:0 0 24px}
.dnmart-hero__media{position:relative}
.dnmart-hero__img{border-radius:28px;box-shadow:var(--dnmart-shadow-lg);width:100%;object-fit:cover;aspect-ratio:1;background:var(--dnmart-surface)}
.dnmart-hero__float{position:absolute;background:var(--dnmart-surface);border:1px solid var(--dnmart-line);box-shadow:var(--dnmart-shadow-md);border-radius:16px;padding:10px 16px;font-weight:800;font-size:.88rem}
.dnmart-hero__float--a{left:-14px;top:22px;transform:rotate(-3deg)}
.dnmart-hero__float--b{right:-8px;bottom:26px;transform:rotate(2deg);color:var(--dnmart-brand)}

/* Category & product cards (also used by DN Mart Core shortcodes/widgets) */
.dnmart-cats{display:grid;gap:20px}
.dnmart-cat-card{background:var(--dnmart-surface);border:1px solid var(--dnmart-line);border-radius:var(--dnmart-r-lg);overflow:hidden;box-shadow:var(--dnmart-shadow-sm);transition:transform .2s ease,box-shadow .2s ease;display:block;color:var(--dnmart-ink)}
.dnmart-cat-card:hover{transform:translateY(-6px);box-shadow:var(--dnmart-shadow-md);color:var(--dnmart-ink)}
.dnmart-cat-card img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}
.dnmart-cat-card__body{padding:16px 18px}
.dnmart-cat-card__name{font-weight:900;font-size:1.05rem}
.dnmart-cat-card__count{color:var(--dnmart-muted);font-size:.88rem}
.dnmart-products{display:grid;gap:20px}
.dnmart-cols-2{grid-template-columns:repeat(2,1fr)}.dnmart-cols-3{grid-template-columns:repeat(3,1fr)}.dnmart-cols-4{grid-template-columns:repeat(4,1fr)}
.dnmart-pcard{background:var(--dnmart-surface);border:1px solid var(--dnmart-line);border-radius:var(--dnmart-r-lg);overflow:hidden;box-shadow:var(--dnmart-shadow-sm);display:flex;flex-direction:column;transition:transform .22s ease,box-shadow .22s ease;position:relative}
.dnmart-pcard:hover{transform:translateY(-7px);box-shadow:var(--dnmart-shadow-lg)}
.dnmart-pcard__thumb img{width:100%;aspect-ratio:1;object-fit:cover;display:block}
.dnmart-pcard__badge{position:absolute;top:10px;left:10px;background:var(--dnmart-accent);color:#23262B;font-size:.7rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase;padding:5px 11px;border-radius:999px;box-shadow:var(--dnmart-shadow-sm)}
.dnmart-pcard__body{padding:16px 18px 20px;display:flex;flex-direction:column;gap:7px;flex:1}
.dnmart-pcard__cat{font-size:.75rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--dnmart-mint)}
.dnmart-pcard__title{font-size:1rem;line-height:1.35;margin:0}
.dnmart-pcard__title a{color:var(--dnmart-ink)}
.dnmart-pcard__rating{color:var(--dnmart-accent);font-size:.88rem;font-weight:700}
.dnmart-pcard__rating span{color:var(--dnmart-muted);font-weight:600}
.dnmart-pcard__price{margin-top:auto;font-size:1.12rem;font-weight:900;color:var(--dnmart-brand)}
.dnmart-pcard__price del{color:var(--dnmart-muted);font-weight:600;font-size:.92rem;margin-right:7px}
.dnmart-pcard__btn{margin-top:9px;justify-content:center}
.dnmart-features{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px;padding:0;list-style:none}
.dnmart-feature{background:var(--dnmart-surface);border:1px solid var(--dnmart-line);border-radius:16px;box-shadow:var(--dnmart-shadow-sm);padding:10px 15px;font-weight:700;font-size:.88rem;display:flex;gap:8px;align-items:center}
.dnmart-feature b{color:var(--dnmart-brand)}

/* Footer */
.dnmart-footer{background:var(--dnmart-deep);color:#FFE7CC;margin-top:20px}
.dnmart-footer a{color:#FFD9AE}
.dnmart-footer__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;padding:44px 20px 30px}
.dnmart-footer .widget{background:transparent;border:0;box-shadow:none;padding:0}
.dnmart-footer .widget-title{color:#fff}
.dnmart-logo--footer .dnmart-logo__text{color:#fff}
.dnmart-footer__bar{border-top:1px solid rgba(255,255,255,.14)}
.dnmart-footer__bar-inner{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:14px;padding-bottom:14px;font-size:.9rem}
.dnmart-menu--footer{padding:0}.dnmart-menu--footer a{color:#FFD9AE;padding:4px 8px}

/* Pagination */
.pagination .nav-links{display:flex;gap:8px;justify-content:center;margin-top:30px}
.pagination a,.pagination span{background:var(--dnmart-surface);border:1px solid var(--dnmart-line);border-radius:12px;padding:9px 15px;font-weight:700;box-shadow:var(--dnmart-shadow-sm)}
.pagination .current{background:var(--dnmart-brand);color:#fff}

/* Responsive */
@media (max-width:1024px){.dnmart-cols-4{grid-template-columns:repeat(3,1fr)}.dnmart-footer__grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:820px){
  .dnmart-layout{grid-template-columns:1fr}
  .dnmart-hero__inner{grid-template-columns:1fr}
  .dnmart-header__search{display:none}
  .dnmart-nav-toggle{display:grid;place-items:center}
  .dnmart-nav{display:none}.dnmart-nav.is-open{display:block}
  .dnmart-menu{flex-direction:column}
  .dnmart-cols-3,.dnmart-cols-4{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:520px){.dnmart-cols-2,.dnmart-cols-3,.dnmart-cols-4{grid-template-columns:1fr}.dnmart-footer__grid{grid-template-columns:1fr}.dnmart-header__account{display:none}}
