/*
Theme Name: NextCard
Theme URI: https://example.com/nextcard
Author: NextCard
Description: Тема для магазина цифровых товаров на WooCommerce: главная, каталог, карточка товара, корзина и оформление заказа.
Version: 1.3.3
Requires at least: 6.0
Requires PHP: 7.4
WC requires at least: 7.0
License: GNU General Public License v2 or later
Text Domain: nextcard
*/

/* ===== Tokens ===== */
:root{
	--bg:#faf6ff; --ink:#15112e; --muted:#6c6786; --line:#eadcff;
	--p1:#7a22e0; --p2:#b04ce6; --pink:#ff4d9d; --soft:#f2e8ff; --soft2:#f8f1ff;
	--grad:linear-gradient(90deg,#7b24e2 0%,#b550e6 100%);
	--grad-sale:linear-gradient(90deg,#d6338f,#ff5aa5);
	--card:rgba(255,255,255,.82);
	--shadow:0 12px 34px rgba(122,34,224,.09);
	--shadow-sm:0 4px 14px rgba(122,34,224,.10);
	--r:24px; --r-sm:16px;
	--font:'Manrope',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
	--wrap:1240px;
}

/* ===== Base ===== */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--font);color:var(--ink);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;
	background:radial-gradient(900px 520px at 6% -6%,#f1dfff 0,transparent 62%),radial-gradient(760px 480px at 100% 2%,#f8dcff 0,transparent 60%),var(--bg);
	background-attachment:fixed}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{margin:0;line-height:1.15;font-weight:800;letter-spacing:-.01em}
p{margin:0 0 1em}
ul,ol{margin:0;padding:0;list-style:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
.nc-i{flex:none;display:block}
.screen-reader-text{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.screen-reader-text:focus{left:12px;top:12px;width:auto;height:auto;background:#fff;padding:8px 14px;border-radius:10px;z-index:100}
.nc-hidden{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.nc-wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}
.nc-main{min-height:60vh}
.nc-muted{color:var(--muted)}
:focus-visible{outline:3px solid rgba(122,34,224,.45);outline-offset:2px;border-radius:8px}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

.nc-panel{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);backdrop-filter:blur(8px)}
.nc-grad{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.nc-link{display:inline-flex;align-items:center;gap:8px;color:var(--p1);font-weight:700}
.nc-link:hover{color:var(--p2)}
.nc-linkbtn{display:inline-flex;align-items:center;gap:8px;background:none;border:0;padding:6px 4px;font-weight:600;color:var(--ink)}
.nc-linkbtn:hover{color:var(--p1)}
.nc-h1{font-size:clamp(30px,4vw,44px);margin:12px 0 22px}
.nc-hot{color:var(--pink);display:inline-flex;vertical-align:-4px}

/* ===== Buttons / chips ===== */
.nc-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:999px;padding:13px 26px;font-weight:700;font-size:16px;line-height:1.1;white-space:nowrap;cursor:pointer;transition:transform .15s,box-shadow .15s,background .15s}
.nc-btn--primary{background:var(--grad);color:#fff;box-shadow:0 10px 22px rgba(122,34,224,.28)}
.nc-btn--primary:hover{transform:translateY(-1px);box-shadow:0 14px 26px rgba(122,34,224,.34);color:#fff}
.nc-btn--soft{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.nc-btn--soft:hover{background:var(--soft2)}
.nc-btn--ghost{background:var(--soft2);color:var(--muted)}
.nc-btn--sm{padding:10px 16px;font-size:14px;gap:8px}
.nc-btn--lg{padding:17px 30px;font-size:17px}
.nc-btn--block{width:100%}
.nc-btn.is-disabled{opacity:.6;pointer-events:none}
.nc-btn.loading{opacity:.7;pointer-events:none}
.nc-btn.added{background:linear-gradient(90deg,#1f9d6b,#34c48a);box-shadow:none}
a.added_to_cart{display:none}
.nc-pill{display:inline-flex;align-items:center;gap:6px;background:#eadbff;color:var(--p1);border-radius:999px;padding:7px 16px;font-size:14px;font-weight:700;vertical-align:middle}
.nc-pill--link:hover{background:#dfc9ff}
.nc-pill--grey{background:#ece8f4;color:var(--muted)}
.nc-chip{display:inline-flex;align-items:center;gap:6px;background:#efe3ff;color:var(--p1);border-radius:999px;padding:5px 12px;font-size:13px;font-weight:600;margin-top:8px}
.nc-tag{position:absolute;top:22px;z-index:2;max-width:calc(100% - 44px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700;line-height:1.4}
.nc-tag--left{left:22px;background:rgba(255,255,255,.74);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--p1);box-shadow:0 2px 10px rgba(122,34,224,.14)}
.nc-card:has(.nc-tag--sale) .nc-tag--left{max-width:calc(100% - 110px)}
.nc-tag--sale{right:22px;background:var(--grad-sale);color:#fff}
.nc-tag--static{position:static;display:inline-block;font-size:14px;padding:4px 12px}
.nc-badge{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--pink);color:#fff;font-size:11px;font-weight:800;display:grid;place-items:center;line-height:1}
.nc-badge[hidden]{display:none}
.nc-iconbtn{position:relative;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:0;background:transparent;color:var(--ink)}
.nc-iconbtn:hover{background:var(--soft)}
.nc-iconbtn--white{background:#fff;box-shadow:var(--shadow-sm);width:46px;height:46px}

/* ===== Header ===== */
.nc-header{position:sticky;top:0;z-index:50;background:rgba(250,246,255,.82);backdrop-filter:blur(14px);border-bottom:1px solid rgba(234,220,255,.7)}
.nc-header__row{display:flex;align-items:center;gap:28px;min-height:76px}
.nc-logo{display:inline-flex;align-items:center;gap:10px;font-weight:800;font-size:26px;letter-spacing:-.02em}
.nc-logo__mark{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,#a43cf0,#ff4d9d);color:#fff;font-size:22px;box-shadow:0 6px 14px rgba(160,60,240,.35)}
.custom-logo{max-height:46px;width:auto}
.nc-logo--img img{max-height:46px;width:auto;display:block}
.nc-nav{flex:1}
.nc-menu{display:flex;gap:4px;flex-wrap:wrap}
.nc-menu a{display:block;padding:9px 16px;border-radius:999px;font-weight:700;font-size:15px}
.nc-menu a:hover{background:var(--soft)}
.nc-menu .current-menu-item>a,.nc-menu .current_page_item>a{background:#efe3ff;color:var(--p1);box-shadow:var(--shadow-sm)}
.nc-header__tools{display:flex;align-items:center;gap:6px;margin-left:auto}
.nc-burger{display:none}
.nc-search{display:none;border-top:1px solid var(--line);background:#fff}
.nc-search.is-open{display:block}
.nc-search form{display:flex;gap:10px;padding-top:14px;padding-bottom:14px}
.nc-search input{flex:1;border:1px solid var(--line);border-radius:999px;padding:12px 20px;background:var(--soft2)}

/* ===== Hero ===== */
.nc-hero{position:relative;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:20px;padding:44px 0 26px}
.nc-hero__title{font-size:clamp(34px,5vw,58px);margin:18px 0 14px}
.nc-hero__title--xl{font-size:clamp(38px,5.6vw,66px);line-height:1.05}
.nc-hero__lead{font-size:19px;color:#2b2645;max-width:520px}
.nc-hero__btns{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}
.nc-hero__img img{width:100%;-webkit-mask-image:radial-gradient(ellipse 56% 56% at 50% 50%,#000 62%,transparent 100%);mask-image:radial-gradient(ellipse 56% 56% at 50% 50%,#000 62%,transparent 100%)}
.nc-hero--page{margin-top:16px;padding:30px 36px;border-radius:32px;background:linear-gradient(120deg,rgba(255,255,255,.7),rgba(241,226,255,.55));border:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden}
.nc-hero--page .nc-hero__title{font-size:clamp(30px,4.4vw,52px);margin:14px 0 10px}
.nc-hero--page .nc-hero__lead{font-size:17px;margin-bottom:16px}
.nc-hero--page .nc-hero__img img{max-height:300px;margin-left:auto;object-fit:contain}
.nc-hero--cart,.nc-hero--checkout{background:transparent;border:0;box-shadow:none;padding:20px 0 10px}
.nc-hero--cart .nc-hero__img img,.nc-hero--checkout .nc-hero__img img{max-height:220px}
.nc-hero--cart .nc-pill{font-size:15px;margin-left:8px}
.nc-hero__feats{display:flex;flex-wrap:wrap;gap:22px;margin-top:20px}
.nc-hero__feats li{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:#2b2645;max-width:150px;line-height:1.25}
.nc-hero__feats .nc-i{color:var(--p2)}
.nc-crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:14px;color:var(--muted);margin-bottom:6px}
.nc-crumbs a:hover{color:var(--p1)}
.nc-crumbs__sep{margin:0 8px 0 0;opacity:.6}
.nc-crumbs span:last-child{color:var(--ink)}

/* ===== Home blocks ===== */
.nc-feats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:8px 0 54px}
.nc-feat{display:flex;align-items:center;gap:18px;padding:22px 24px}
.nc-feat__ic{color:var(--p2);display:grid;place-items:center}
.nc-feat strong{display:block;font-size:16px;line-height:1.25;margin-bottom:4px}
.nc-feat div span{display:block;font-size:14px;color:var(--muted);line-height:1.35}
.nc-section{margin:0 0 54px}
.nc-section__head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}
.nc-section__head h2{font-size:clamp(24px,3vw,32px)}
.nc-cats{display:grid;grid-template-columns:repeat(var(--cats-cols,6),minmax(0,1fr));gap:18px}
.nc-cat{position:relative;display:flex;flex-direction:column;gap:14px;padding:14px 14px 16px;border-radius:28px;transition:transform .22s,box-shadow .22s,background .22s}
.nc-cat:hover{transform:translateY(-5px);box-shadow:0 24px 48px rgba(122,34,224,.20),inset 0 1px 0 rgba(255,255,255,.95)}
.nc-cat__media{display:grid;place-items:center;height:150px;border-radius:20px;overflow:hidden;background:linear-gradient(135deg,rgba(255,255,255,.7),rgba(244,232,255,.45));box-shadow:inset 0 0 0 1px rgba(255,255,255,.7)}
.nc-cat__media img{box-sizing:border-box;width:100%;height:100%;object-fit:contain;padding:12px;filter:drop-shadow(0 10px 16px rgba(122,34,224,.22));transition:transform .35s}
.nc-cat:hover .nc-cat__media img{transform:scale(1.07)}
.nc-cat__media b{width:72px;height:72px;border-radius:22px;display:grid;place-items:center;background:var(--grad);color:#fff;font-size:30px;font-weight:600}
.nc-cat__body{display:flex;flex-direction:column;gap:4px;padding:0 44px 2px 6px;min-height:50px}
.nc-cat__name{font-size:16px;font-weight:500;line-height:1.28;color:var(--ink);letter-spacing:0}
.nc-cat__body small{font-size:13px;font-weight:400;color:var(--muted);line-height:1.35}
.nc-cat__go{position:absolute;right:14px;bottom:14px;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:var(--p1);background:rgba(255,255,255,.75);box-shadow:0 4px 12px rgba(122,34,224,.14);transition:background .2s,color .2s,transform .2s}
.nc-cat:hover .nc-cat__go{background:var(--grad);color:#fff;transform:translateX(2px)}

/* ===== Glass ===== */
:root{--glass-bg:linear-gradient(145deg,rgba(255,255,255,.68),rgba(255,255,255,.32));--glass-line:rgba(255,255,255,.8);--glass-shadow:0 14px 44px rgba(122,34,224,.12),inset 0 1px 0 rgba(255,255,255,.95),inset 0 -1px 0 rgba(255,255,255,.25)}
.nc-glass{background:var(--glass-bg);border:1px solid var(--glass-line);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(20px) saturate(170%);backdrop-filter:blur(20px) saturate(170%)}
/* цветные «пятна» позади секции — без них стеклу нечего размывать */
.nc-glassy{position:relative;isolation:isolate}
.nc-glassy::before{content:"";position:absolute;z-index:-1;inset:-26px -3% -26px;pointer-events:none;background:radial-gradient(240px 190px at 8% 30%,rgba(176,76,230,.30),transparent 70%),radial-gradient(280px 210px at 52% 0,rgba(255,77,157,.20),transparent 70%),radial-gradient(300px 220px at 94% 70%,rgba(122,34,224,.24),transparent 70%),radial-gradient(240px 180px at 40% 100%,rgba(90,140,255,.18),transparent 70%)}

/* ===== Product grid + card ===== */
ul.products{display:grid;gap:18px;grid-template-columns:repeat(var(--cols,3),minmax(0,1fr))}
ul.products.columns-1{--cols:1}ul.products.columns-2{--cols:2}ul.products.columns-3{--cols:3}ul.products.columns-4{--cols:4}ul.products.columns-5{--cols:5}ul.products.columns-6{--cols:6}
.nc-card{position:relative;display:flex;flex-direction:column;border-radius:var(--r);padding:12px 12px 16px;background:var(--glass-bg);border:1px solid var(--glass-line);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(20px) saturate(170%);backdrop-filter:blur(20px) saturate(170%);transition:transform .2s,box-shadow .2s}
.nc-card:hover{transform:translateY(-4px);box-shadow:0 22px 44px rgba(122,34,224,.18),inset 0 1px 0 rgba(255,255,255,.95)}
/* Картинка показывается целиком: ширина по карточке, высота — по пропорциям самой картинки */
.nc-card__media{position:relative;display:block;border-radius:18px;overflow:hidden;background:rgba(255,255,255,.55);margin-bottom:14px;line-height:0}
.nc-card__media img{display:block;width:100%;height:auto;max-height:380px;object-fit:contain;margin:0 auto}
.nc-card__title{font-size:15.5px;line-height:1.3;margin-bottom:8px;min-height:40px}
.nc-card__title a:hover{color:var(--p1)}
.nc-card__price{margin-top:auto;margin-bottom:14px;font-weight:800;font-size:18px}
.nc-card__price:empty{margin-bottom:0}
.nc-price ins{text-decoration:none}
.nc-price del{font-size:13px;font-weight:500;color:#9d98b3;margin-left:6px}
.nc-card__actions{display:flex;gap:10px;align-items:center}
.nc-card__actions .nc-btn{flex:1}
.nc-fav{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--p1);box-shadow:var(--shadow-sm);transition:background .15s}
.nc-fav:hover{background:var(--soft)}
.nc-fav.is-active{background:var(--p1);color:#fff;border-color:var(--p1)}
.nc-fav.is-active svg{fill:currentColor}
.nc-fav--lg{width:58px;height:58px}
.columns-6 .nc-card{padding:12px}
.columns-6 .nc-card__title{font-size:14px;min-height:36px}
.columns-6 .nc-card__price{font-size:16px}
.columns-6 .nc-btn--sm{padding:10px 8px;font-size:13px}
.columns-6 .nc-fav{width:38px;height:38px}
ul.products.is-list{grid-template-columns:1fr}
ul.products.is-list .nc-card{display:grid;grid-template-columns:180px 1fr auto;grid-template-areas:"m t a" "m p a";column-gap:20px;align-items:center}
ul.products.is-list .nc-card__media{grid-area:m;margin:0}
ul.products.is-list .nc-card__title{grid-area:t;align-self:end;margin:0;min-height:0}
ul.products.is-list .nc-card__price{grid-area:p;margin:6px 0 0;align-self:start}
ul.products.is-list .nc-card__actions{grid-area:a;min-width:260px}

/* ===== Banners / newsletter ===== */
.nc-banners{display:grid;grid-template-columns:1.1fr 1fr;gap:20px;margin-bottom:26px}
.nc-banners--n1{grid-template-columns:1fr}
.nc-banners--n3{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}
a.nc-banner{color:inherit}
.nc-banner{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;overflow:hidden;padding:30px 34px;border-radius:30px;background:linear-gradient(110deg,#fff 0%,#f4e8ff 55%,#ecd9ff 100%);border:1px solid var(--line);box-shadow:var(--shadow)}
.nc-banner h2{font-size:clamp(22px,2.6vw,30px);margin-bottom:10px}
.nc-banner p{color:var(--muted);max-width:340px;margin-bottom:18px}
.nc-banner img{width:42%;max-height:200px;object-fit:contain;-webkit-mask-image:radial-gradient(ellipse 60% 60% at 50% 50%,#000 60%,transparent 100%);mask-image:radial-gradient(ellipse 60% 60% at 50% 50%,#000 60%,transparent 100%)}
.nc-banner--how .nc-feat__ic{margin-bottom:6px;justify-content:start}
.nc-banner--how p{margin-bottom:12px}
.nc-banner--wide{margin-top:26px}
.nc-banner--wide img{width:50%}
.nc-custom__box{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:34px 38px;border-radius:30px}
.nc-custom__box.is-center{flex-direction:column;text-align:center}
.nc-custom__text{flex:1;min-width:0}
.nc-custom h2{font-size:clamp(22px,2.6vw,32px);margin-bottom:12px}
.nc-custom__body{color:#3a3556;margin-bottom:18px}
.nc-custom__body>*:last-child{margin-bottom:0}
.nc-custom__box img{max-width:42%;max-height:280px;width:auto;height:auto;object-fit:contain;border-radius:18px}
.nc-news{display:flex;align-items:center;gap:22px;flex-wrap:wrap;padding:22px 34px;border-radius:26px;background:linear-gradient(100deg,#f1e1ff,#f7e6ff);border:1px solid var(--line);margin-bottom:56px}
.nc-news__ic{color:var(--p2)}
.nc-news__text{flex:1;min-width:240px}
.nc-news h2{font-size:22px}
.nc-news p{margin:4px 0 0;color:var(--muted);font-size:14px}
.nc-news__form{display:flex;gap:0;flex:1;min-width:300px;max-width:560px;background:#fff;border-radius:999px;box-shadow:var(--shadow-sm)}
.nc-news__field{display:flex;align-items:center;gap:10px;flex:1;padding:0 18px;color:var(--muted)}
.nc-news__field input{border:0;background:none;outline:0;flex:1;min-width:0;padding:14px 0}

/* ===== Footer ===== */
.nc-footer{margin-top:30px;padding-top:34px;border-top:1px solid rgba(234,220,255,.8);background:linear-gradient(180deg,transparent,rgba(255,255,255,.6))}
.nc-footer__grid{display:grid;grid-template-columns:var(--fgrid,1.4fr 1fr 1fr 1.1fr 1.3fr);gap:30px}
.nc-footer__brand p{margin:14px 0;color:var(--muted);font-size:14px;max-width:240px}
.nc-socials{display:flex;gap:10px}
.nc-footer h4{font-size:15px;margin-bottom:14px}
.nc-footer__list li{margin-bottom:9px}
.nc-footer__list a{color:#4a4566;font-size:14.5px}
.nc-footer__list a:hover{color:var(--p1)}
.nc-footer__list span{color:#4a4566;font-size:14.5px}
.nc-footer__support .nc-support-head{display:flex;gap:12px;align-items:center;margin-bottom:14px;color:var(--p2)}
.nc-support-head strong{display:block;color:var(--ink)}
.nc-support-head span{font-size:13px;color:var(--muted)}
.nc-footer__legal span{color:#4a4566}
.nc-footer__bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:34px;padding-top:20px;padding-bottom:26px;border-top:1px solid var(--line);font-size:14px;color:#4a4566}
.nc-footer__legal{display:flex;gap:42px}

/* ===== Shop ===== */
.nc-shop{display:grid;grid-template-columns:270px 1fr;gap:24px;align-items:start;margin:26px 0 56px}
.nc-filters{padding:22px 20px;position:sticky;top:96px}
.nc-filters h3{font-size:18px;margin-bottom:12px}
.nc-filters__head{display:flex;justify-content:space-between;align-items:baseline;margin:22px 0 6px}
.nc-filters__head a{color:var(--p1);font-size:13px;font-weight:700}
.nc-catlist li a{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;font-size:15px;color:#3a3556}
.nc-catlist li a span{flex:1}
.nc-catlist li a em{font-style:normal;color:var(--muted);font-size:14px}
.nc-catlist li a .nc-i{color:var(--p2)}
.nc-catlist li.is-current a,.nc-catlist li a:hover{background:#f0e4ff;color:var(--p1);font-weight:700}
.nc-fgroup{margin-top:18px}
.nc-fgroup h4{font-size:15px;margin-bottom:10px}
.nc-checklist a,.nc-radio{display:flex;align-items:center;gap:12px;padding:6px 2px;font-size:14.5px;cursor:pointer;color:#3a3556}
.nc-checklist i,.nc-radio i,.nc-check i{flex:none;width:20px;height:20px;border:1.5px solid #cdb8ee;border-radius:6px;background:#fff;display:inline-grid;place-items:center}
.nc-radio i{border-radius:50%}
.nc-checklist a.is-on i{background:var(--grad);border-color:transparent}
.nc-checklist a.is-on i::after{content:"";width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg) translateY(-1px)}
.nc-radio input,.nc-check input{position:absolute;opacity:0;pointer-events:none}
.nc-radio input:checked+i{border-color:var(--p1)}
.nc-radio input:checked+i::after{content:"";width:10px;height:10px;border-radius:50%;background:var(--grad)}
.nc-range{position:relative;height:26px;margin:8px 4px 6px}
.nc-range__track{position:absolute;left:0;right:0;top:11px;height:4px;border-radius:4px;background:#e6d8fb}
.nc-range__fill{position:absolute;top:0;bottom:0;background:var(--grad);border-radius:4px}
.nc-range input[type=range]{position:absolute;left:0;top:0;width:100%;height:26px;margin:0;background:none;pointer-events:none;-webkit-appearance:none;appearance:none}
.nc-range input[type=range]::-webkit-slider-thumb{pointer-events:auto;-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:#fff;border:3px solid var(--p1);box-shadow:var(--shadow-sm);cursor:grab}
.nc-range input[type=range]::-moz-range-thumb{pointer-events:auto;width:12px;height:12px;border-radius:50%;background:#fff;border:3px solid var(--p1);cursor:grab}
.nc-range input[type=range]::-moz-range-track{background:none}
.nc-range__nums{display:flex;gap:10px;margin:10px 0 12px}
.nc-range__nums label{flex:1;display:flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fff;border-radius:12px;padding:8px 10px;font-size:13px;color:var(--muted)}
.nc-range__nums input{width:100%;min-width:0;border:0;outline:0;font-weight:600;color:var(--ink);background:none;-moz-appearance:textfield}
.nc-promo{margin-top:22px;padding:18px;border-radius:20px;background:linear-gradient(135deg,#f6ebff,#efdcff);color:var(--p2)}
.nc-promo strong{display:block;color:var(--ink);margin:8px 0 4px}
.nc-promo p{font-size:13.5px;color:var(--muted);margin-bottom:12px}
.nc-toolbar{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.nc-found{color:#3a3556;font-weight:600;flex:1}
.woocommerce-ordering{margin:0}
.woocommerce-ordering select,.nc-select{appearance:none;-webkit-appearance:none;border:1px solid var(--line);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%237a22e0' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center;border-radius:999px;padding:10px 38px 10px 18px;font-weight:600;box-shadow:var(--shadow-sm)}
.nc-view{display:flex;gap:4px;padding:4px;background:#fff;border:1px solid var(--line);border-radius:14px}
.nc-view button{width:36px;height:34px;border:0;border-radius:10px;background:none;color:var(--muted);display:grid;place-items:center}
.nc-view button.is-on{background:var(--grad);color:#fff}
.nc-pagination{display:flex;justify-content:center;margin:30px 0 0}
.nc-pagination ul,.nc-pagination .nav-links{display:flex;gap:8px;align-items:center}
.page-numbers{display:grid;place-items:center;min-width:42px;height:42px;padding:0 8px;border-radius:50%;font-weight:700;color:#3a3556;background:transparent}
a.page-numbers:hover{background:var(--soft)}
.page-numbers.current{background:var(--grad);color:#fff;box-shadow:0 8px 18px rgba(122,34,224,.3)}
.nc-empty{padding:44px 30px;text-align:center;margin:24px 0}
.nc-empty .nc-btn{margin-top:10px}

/* ===== Single product ===== */
.nc-single{padding-top:18px}
.nc-single__top{display:grid;grid-template-columns:1.1fr 1fr;gap:34px;align-items:start;margin-top:10px}
.nc-single__gallery{padding:16px}
.nc-single__gallery.nc-panel{background:var(--glass-bg);border-color:var(--glass-line);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(20px) saturate(170%);backdrop-filter:blur(20px) saturate(170%)}
.woocommerce-product-gallery__image a{display:block}
.woocommerce-product-gallery{position:relative;margin:0}
.woocommerce-product-gallery__wrapper{margin:0}
.woocommerce-product-gallery__image img{width:100%;height:auto;max-height:640px;object-fit:contain;border-radius:18px}
.woocommerce-product-gallery__trigger{position:absolute;top:12px;right:12px;z-index:5;width:40px;height:40px;border-radius:50%;background:#fff;box-shadow:var(--shadow-sm);display:grid;place-items:center;font-size:0}
.woocommerce-product-gallery__trigger::before{content:"";width:16px;height:16px;border:2px solid var(--p1);border-radius:50%}
.flex-control-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:14px}
.flex-control-thumbs li{list-style:none}
.flex-control-thumbs img{border-radius:14px;opacity:.65;cursor:pointer;border:2px solid transparent;aspect-ratio:3/2;object-fit:contain;background:rgba(255,255,255,.6);width:100%}
.flex-control-thumbs img.flex-active,.flex-control-thumbs img:hover{opacity:1;border-color:var(--p2)}
.nc-single__summary .product_title{font-size:clamp(28px,3.6vw,42px);margin:16px 0 14px}
.nc-single__price{display:flex;align-items:center;gap:14px;font-size:36px;font-weight:800;margin-bottom:18px}
.nc-single__price .nc-price del{font-size:18px}
.nc-single__short{color:#4a4566;margin-bottom:16px}
form.cart{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:8px 0 26px}
form.cart .quantity{margin:0}
.single_add_to_cart_button{flex:1;min-width:180px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:999px;padding:18px 28px;background:var(--grad);color:#fff;font-weight:800;font-size:18px;box-shadow:0 12px 24px rgba(122,34,224,.3)}
.single_add_to_cart_button:hover{box-shadow:0 16px 30px rgba(122,34,224,.38)}
.single_add_to_cart_button.disabled{opacity:.5;pointer-events:none}
.nc-qty{display:inline-flex;align-items:center;gap:2px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:4px;box-shadow:var(--shadow-sm)}
.nc-qty__btn{width:40px;height:40px;border-radius:50%;border:0;background:none;color:var(--p1);display:grid;place-items:center}
.nc-qty__btn:hover{background:var(--soft)}
.nc-qty input.qty{width:46px;text-align:center;border:0;background:none;font-weight:800;font-size:17px;outline:0;-moz-appearance:textfield;padding:0}
.nc-qty input::-webkit-outer-spin-button,.nc-qty input::-webkit-inner-spin-button,.nc-range__nums input::-webkit-outer-spin-button,.nc-range__nums input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.variations{width:100%;border-collapse:collapse;margin-bottom:14px}
.variations th,.variations td{display:block;text-align:left;padding:0}
.variations th label{font-weight:700;display:block;margin:8px 0}
.variations select{width:100%;max-width:420px;border:1px solid var(--line);background:#fff;border-radius:14px;padding:12px 14px}
.reset_variations{font-size:13px;color:var(--p1)}
.woocommerce-variation-add-to-cart{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.woocommerce-variation-price .price{font-size:22px;font-weight:800;display:block;margin:10px 0}
.nc-single__feats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:6px}
.nc-single__feats li{overflow-wrap:anywhere;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;font-weight:700;font-size:15px;padding:6px 10px;border-left:1px solid var(--line)}
.nc-single__feats li:first-child{border-left:0}
.nc-single__feats .nc-i{color:var(--p2)}
.nc-single__bottom{display:grid;grid-template-columns:1.25fr 1fr;gap:34px;margin:44px 0 20px;align-items:start}
.woocommerce-tabs ul.tabs{display:flex;gap:4px;padding:6px;margin:0 0 22px;background:#fff;border:1px solid var(--line);border-radius:999px;box-shadow:var(--shadow-sm);overflow-x:auto}
.woocommerce-tabs ul.tabs li{flex:1;text-align:center}
.woocommerce-tabs ul.tabs li a{display:block;padding:12px 16px;border-radius:999px;font-weight:600;white-space:nowrap;color:#3a3556}
.woocommerce-tabs ul.tabs li.active a{background:var(--grad);color:#fff;box-shadow:0 8px 18px rgba(122,34,224,.3)}
.woocommerce-Tabs-panel h2{font-size:26px;margin-bottom:12px}
.woocommerce-Tabs-panel>p,.woocommerce-Tabs-panel li{color:#2b2645}
.nc-checks li{display:flex;gap:12px;align-items:flex-start;margin-bottom:10px}
.nc-checks .nc-i{color:var(--p1);margin-top:2px}
.nc-steps-list{padding-left:22px;list-style:decimal}
.nc-steps-list li{margin-bottom:8px}
.nc-card-info{position:relative;border-radius:26px;padding:28px;background:linear-gradient(135deg,#fff,#f1e4ff);border:1px solid var(--line);box-shadow:var(--shadow);margin-bottom:20px}
.nc-card-info h3{font-size:22px;margin-bottom:16px}
.nc-steps{counter-reset:s}
.nc-steps li{counter-increment:s;display:flex;align-items:center;gap:16px;margin-bottom:14px;font-size:15.5px}
.nc-steps li::before{content:counter(s);flex:none;width:34px;height:34px;border-radius:50%;background:#e9d8ff;color:var(--p1);font-weight:800;display:grid;place-items:center}
.nc-card-info--safe{display:flex;gap:20px;align-items:center;color:var(--p2)}
.nc-card-info--safe h3{margin-bottom:6px;color:var(--ink)}
.nc-card-info--safe p{margin:0;color:var(--muted);font-size:15px}
.star-rating{position:relative;display:inline-block;width:5.4em;height:1em;overflow:hidden;line-height:1;font-size:16px;letter-spacing:.1em}
.star-rating::before{content:"★★★★★";color:#e2d4f5;position:absolute;left:0;top:0}
.star-rating span{position:absolute;left:0;top:0;overflow:hidden;padding-top:1.5em;height:1em}
.star-rating span::before{content:"★★★★★";color:#f5a524;position:absolute;left:0;top:0}
#reviews #comments>h2{font-size:22px;margin-bottom:14px}
.commentlist{list-style:none;padding:0}
.commentlist li{padding:16px 0;border-bottom:1px solid var(--line)}
.commentlist img.avatar{float:left;margin-right:14px;border-radius:50%;width:44px}
.commentlist .meta{margin:0 0 6px;color:var(--muted);font-size:14px}
.comment-form input[type=text],.comment-form input[type=email],.comment-form textarea,.woocommerce-input-wrapper input,.woocommerce-input-wrapper select,.woocommerce-input-wrapper textarea{width:100%;border:1px solid var(--line);background:#fff;border-radius:14px;padding:13px 16px;outline:0}
.comment-form input:focus,.comment-form textarea:focus,.woocommerce-input-wrapper input:focus{border-color:var(--p2);box-shadow:0 0 0 3px rgba(176,76,230,.15)}
.comment-form .submit{background:var(--grad);color:#fff;border:0;border-radius:999px;padding:13px 26px;font-weight:700}

/* ===== Cart ===== */
.nc-cart__layout{display:grid;grid-template-columns:1fr 380px;gap:26px;align-items:start;margin-top:10px}
.nc-cart__items{padding:10px 26px 14px}
.nc-cart__bar{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}
.nc-check{position:relative;display:inline-flex;align-items:center;gap:14px;cursor:pointer;font-weight:600}
.nc-check input:checked+i{background:var(--grad);border-color:transparent}
.nc-check input:checked+i::after{content:"";width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg) translateY(-1px)}
.nc-check i{width:24px;height:24px;border-radius:8px}
.nc-cart-row{display:grid;grid-template-columns:auto 110px 1fr auto auto auto;gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line)}
.nc-cart-row:last-of-type{border-bottom:0}
.nc-cart-row__img img{width:110px;height:78px;object-fit:contain;border-radius:14px;background:linear-gradient(135deg,#f8f0ff,#efe3ff)}
.nc-cart-row__name{display:block;font-size:16px;line-height:1.3}
.nc-cart-row__name a:hover{color:var(--p1)}
.nc-cart-row__price{display:flex;flex-direction:column;align-items:flex-end;gap:2px;min-width:100px}
.nc-cart-row__price strong{font-size:19px}
.nc-cart-row__price del{font-size:13px;color:#9d98b3}
.nc-cart-row__remove{color:#6c6786;display:grid;place-items:center;width:40px;height:40px;border-radius:50%}
.nc-cart-row__remove:hover{background:#ffe6f1;color:var(--pink)}
.nc-cart__summary{padding:28px 26px;position:sticky;top:96px}
.nc-cart__summary h2{font-size:28px;margin-bottom:18px}
.nc-totals>div{display:flex;justify-content:space-between;gap:14px;padding:6px 0;color:#4a4566;font-size:16px}
.nc-totals dt,.nc-totals dd{margin:0}
.nc-totals .is-discount dd{color:var(--pink);font-weight:700}
.nc-totals .is-total{margin-top:12px;padding-top:18px;border-top:1px solid var(--line);color:var(--ink);font-weight:800;align-items:baseline}
.nc-totals .is-total dd{font-size:28px}
.nc-cart__summary .nc-btn--block{margin:20px 0 18px}
.nc-secure{display:flex;gap:14px;align-items:center;color:var(--p2);margin:14px 0 4px}
.nc-secure strong{display:block;color:var(--ink);font-size:14px}
.nc-secure span{font-size:13px;color:var(--muted)}
.nc-promo-code{border:1px solid var(--line);border-radius:18px;background:#fff;margin-top:14px;color:var(--p1)}
.nc-promo-code summary{display:flex;align-items:center;gap:12px;padding:16px 18px;font-weight:700;cursor:pointer;list-style:none;color:var(--ink)}
.nc-promo-code summary::-webkit-details-marker{display:none}
.nc-promo-code summary span{flex:1}
.nc-promo-code summary .nc-i:first-child{color:var(--p2)}
.nc-promo-code[open] summary .nc-i:last-child{transform:rotate(180deg)}
.nc-promo-code__row{display:flex;gap:10px;padding:0 16px 16px}
.nc-promo-code__row input{flex:1;min-width:0;border:1px solid var(--line);border-radius:999px;padding:10px 16px;outline:0}

/* ===== Checkout ===== */
.nc-stepper{display:flex;gap:14px;margin:12px 0 26px;flex-wrap:wrap}
.nc-stepper li{display:flex;align-items:center;gap:12px;padding:10px 24px 10px 10px;border-radius:999px;background:rgba(255,255,255,.7);border:1px solid var(--line);color:var(--muted);font-weight:600}
.nc-stepper li span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#efe3ff;color:var(--p1);font-weight:800}
.nc-stepper li.is-done span{background:#d8c2f7;color:#fff}
.nc-stepper li.is-now{color:var(--p1);background:#f4e9ff;box-shadow:var(--shadow-sm)}
.nc-stepper li.is-now span{background:var(--grad);color:#fff}
.nc-checkout__layout{display:grid;grid-template-columns:1fr 410px;gap:26px;align-items:start}
.nc-checkout__main{display:grid;gap:20px}
.nc-block{padding:26px 28px}
.nc-block__head{display:flex;gap:16px;align-items:center;margin-bottom:20px;color:var(--p2)}
.nc-block__head h2{font-size:25px;color:var(--ink)}
.nc-block__head p{margin:2px 0 0;color:var(--muted);font-size:14px}
/* Форма оформления заказа: подписи сверху, поля на всю ширину, строгие тонкие рамки.
   Ширина поля («половина» / «вся ширина») и разделители задаются в OnWallet → Настройка формы. */
.nc-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px 22px}
.nc-fields .form-row{margin:0;width:100%;float:none;padding:0}
.nc-fields .form-row-wide{grid-column:1/-1}
.nc-fields label{display:block;font-weight:700;margin:0 0 8px;font-size:15px;line-height:1.35;color:var(--ink)}
.nc-fields abbr.required,.nc-fields .required{color:#e2231a;text-decoration:none;border:0;font-weight:700;margin-left:1px}
.nc-fields .optional{font-weight:700;color:var(--ink)}
.nc-fields .woocommerce-input-wrapper{display:block;width:100%}
.nc-fields input.input-text,.nc-fields input[type=text],.nc-fields input[type=email],.nc-fields input[type=tel],.nc-fields input[type=number],.nc-fields select,.nc-fields textarea{width:100%;min-height:50px;padding:12px 16px;border:1px solid #d5d8dc;border-radius:6px;background:#fff;font-size:16px;line-height:1.4;outline:0;box-shadow:none;transition:border-color .15s,box-shadow .15s}
.nc-fields textarea{min-height:84px;resize:vertical}
.nc-fields input::placeholder,.nc-fields textarea::placeholder{color:#a0a6ae}
.nc-fields input:focus,.nc-fields select:focus,.nc-fields textarea:focus{border-color:var(--p2);box-shadow:0 0 0 3px rgba(176,76,230,.15)}
.nc-fields select{-webkit-appearance:none;appearance:none;padding-right:44px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23283044' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 16px center}
.nc-fields .form-row.validate-required.woocommerce-invalid input,.nc-fields .woocommerce-invalid input,.nc-fields .woocommerce-invalid select{border-color:#e2231a}
.nc-fields .form-row.onw-check label,.nc-fields .form-row label.checkbox{display:flex;align-items:center;gap:9px;font-weight:400;margin:0;cursor:pointer}
.nc-fields input[type=checkbox]{width:18px;height:18px;min-height:0;margin:0;accent-color:var(--p1)}
.nc-fields .onw-sep{padding-bottom:22px;border-bottom:1px solid #d9dce1}
.nc-fields .description,.nc-fields .form-row .description{display:block;margin-top:6px;color:var(--muted);font-size:13px}
/* Список стран: если WooCommerce подключил select2 — приводим к тому же виду */
.nc-fields .select2-container{width:100%!important}
.nc-fields .select2-container .select2-selection--single{height:50px;border:1px solid #d5d8dc;border-radius:6px;background:#fff;display:flex;align-items:center}
.nc-fields .select2-container .select2-selection__rendered{padding:0 44px 0 16px;line-height:1.4;color:var(--ink);font-size:16px}
.nc-fields .select2-container .select2-selection__arrow{height:50px;right:10px}
.select2-dropdown{border:1px solid #d5d8dc;border-radius:6px;overflow:hidden}
.select2-results__option--highlighted{background:var(--p1)!important}
.nc-choices{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.nc-choice-wrap{position:relative}
.nc-choice-wrap>input{position:absolute;opacity:0;pointer-events:none}
.nc-choice{display:flex;align-items:center;gap:16px;padding:18px 20px;border-radius:18px;border:1px solid var(--line);background:#fff;cursor:pointer;color:var(--p2);min-height:82px;box-shadow:var(--shadow-sm);transition:border-color .15s,box-shadow .15s}
.nc-choice>span{flex:1;color:var(--ink);line-height:1.25}
.nc-choice strong{display:block;font-size:16px}
.nc-choice small{display:block;color:var(--muted);font-size:13px;margin-top:2px}
.nc-choice i{flex:none;width:24px;height:24px;border-radius:50%;border:2px solid #d8c8ef;display:grid;place-items:center}
.nc-choice__ic img{max-height:30px;width:auto}
.nc-choice-wrap>input:checked+.nc-choice{border-color:var(--p1);box-shadow:0 0 0 2px rgba(122,34,224,.22),var(--shadow-sm);background:linear-gradient(135deg,#fff,#f6ecff)}
.nc-choice-wrap>input:checked+.nc-choice i{border-color:var(--p1)}
.nc-choice-wrap>input:checked+.nc-choice i::after{content:"";width:12px;height:12px;border-radius:50%;background:var(--grad)}
.nc-choice-wrap>input:focus-visible+.nc-choice{outline:3px solid rgba(122,34,224,.45);outline-offset:2px}
.payment_box{margin-top:14px;padding:16px 18px;border-radius:16px;background:var(--soft2);font-size:14.5px;color:#3a3556}
.payment_box p:last-child{margin:0}
.nc-checkout__side{position:sticky;top:96px}
#order_review{padding:26px 26px 22px}
.nc-side-title{display:flex;align-items:center;gap:14px;font-size:25px;color:var(--p2);margin-bottom:18px}
.nc-side-title span{color:var(--ink)}
.nc-review__items li{display:grid;grid-template-columns:64px 1fr auto auto;gap:14px;align-items:center;margin-bottom:14px}
.nc-review__img img{width:64px;height:44px;object-fit:cover;border-radius:10px}
.nc-review__name{font-weight:700;font-size:14.5px;line-height:1.3}
.nc-review__qty{color:var(--muted);font-size:14px}
.nc-review__price{font-weight:800}
.nc-review .nc-totals{margin-top:16px;padding-top:12px;border-top:1px solid var(--line)}
.nc-review .nc-btn--block{margin:20px 0 10px}
.woocommerce-terms-and-conditions-wrapper{margin-top:16px;font-size:13.5px;color:var(--muted)}
.woocommerce-form__label-for-checkbox{display:flex;gap:10px;align-items:flex-start}
.woocommerce-privacy-policy-text{font-size:13px;color:var(--muted);margin-bottom:10px}

/* ===== Notices, forms, account ===== */
.woocommerce-message,.woocommerce-info,.woocommerce-error,.nc-notice{list-style:none;padding:16px 20px;margin:0 0 18px;border-radius:16px;background:#f4ebff;border:1px solid var(--line);color:#3a3556;display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.woocommerce-error{background:#fff0f6;border-color:#ffc9df;color:#a3154f;display:block}
.woocommerce-error li{margin:4px 0}
.woocommerce-message .button,.woocommerce-info .button{background:var(--grad);color:#fff;border-radius:999px;padding:9px 18px;font-weight:700;font-size:14px}
.woocommerce-invalid input{border-color:var(--pink)!important}
.woocommerce form .form-row{margin-bottom:16px}
.woocommerce-MyAccount-navigation{margin-bottom:20px}
.woocommerce-MyAccount-navigation ul{display:flex;flex-wrap:wrap;gap:8px}
.woocommerce-MyAccount-navigation a{display:block;padding:10px 18px;border-radius:999px;background:#fff;border:1px solid var(--line);font-weight:600}
.woocommerce-MyAccount-navigation .is-active a{background:var(--grad);color:#fff;border-color:transparent}
.woocommerce-account .woocommerce,.woocommerce-order{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:26px;box-shadow:var(--shadow)}
.woocommerce table.shop_table,.shop_table{width:100%;border-collapse:collapse}
.shop_table th,.shop_table td{padding:12px 10px;text-align:left;border-bottom:1px solid var(--line)}
.woocommerce .button:not(.nc-btn),.woocommerce button.button:not(.nc-btn){display:inline-flex;align-items:center;gap:8px;border:0;border-radius:999px;padding:12px 24px;background:var(--grad);color:#fff;font-weight:700}
.woocommerce-order-overview{display:flex;flex-wrap:wrap;gap:12px 30px;margin:16px 0;padding:0;list-style:none}
.woocommerce-thankyou-order-received{font-size:20px;font-weight:700;color:var(--p1)}

/* ===== Blog / pages ===== */
.nc-content{padding-top:30px;padding-bottom:50px}
.nc-content--narrow{max-width:860px}
.nc-posts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.nc-post{padding:18px}
.nc-post__img img{border-radius:16px;margin-bottom:12px;width:100%;aspect-ratio:16/10;object-fit:cover}
.nc-post h2{font-size:20px;margin-bottom:6px}
.nc-post time{font-size:13px;color:var(--muted)}
.nc-entry{padding:28px 30px}
.nc-entry>*:last-child{margin-bottom:0}
.nc-entry h2,.nc-entry h3{margin:1.2em 0 .5em}
.nc-entry a{color:var(--p1);text-decoration:underline}
.nc-post__cover{margin:16px 0}
.nc-post__cover img{border-radius:var(--r);width:100%}
.nc-comments{padding:26px;margin-top:24px}
.nc-comment-list{list-style:none;margin-bottom:20px}

/* ===== Responsive ===== */
/* ===== Всплывающая корзина ===== */
.nc-noscroll{overflow:hidden}
.nc-drawer{position:fixed;inset:0;z-index:1000;visibility:hidden;pointer-events:none;transition:visibility 0s .3s}
.nc-drawer.is-open{visibility:visible;pointer-events:auto;transition-delay:0s}
.nc-drawer__overlay{position:absolute;inset:0;background:rgba(24,16,48,.45);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;transition:opacity .28s}
.nc-drawer.is-open .nc-drawer__overlay{opacity:1}
.nc-drawer__panel{position:absolute;top:0;right:0;bottom:0;width:min(440px,100%);background:#fff;box-shadow:-24px 0 60px rgba(60,20,120,.2);transform:translateX(100%);transition:transform .3s cubic-bezier(.22,.8,.3,1);display:flex;flex-direction:column;outline:0}
.nc-drawer.is-open .nc-drawer__panel{transform:none}
.nc-drawer__inner{display:flex;flex-direction:column;height:100%;min-height:0}
.nc-drawer__head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 20px 18px 24px;border-bottom:1px solid #eeebf5}
.nc-drawer__head h2{font-size:19px;font-weight:700;line-height:1.3}
.nc-drawer__n{font-weight:500;color:var(--muted)}
.nc-drawer__x{flex:none;width:42px;height:42px;border:0;border-radius:50%;background:transparent;display:grid;place-items:center;cursor:pointer;color:var(--ink)}
.nc-drawer__x:hover{background:var(--soft)}
.nc-drawer__list{list-style:none;margin:0;padding:4px 24px;overflow:auto;flex:1;min-height:0}
.nc-dr-item{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:14px;padding:18px 0;border-bottom:1px solid #f0edf6;transition:opacity .2s}
.nc-dr-item.is-busy{opacity:.4;pointer-events:none}
.nc-dr-item__media{position:relative;align-self:start}
.nc-dr-item__media img{display:block;width:72px;height:auto;max-height:80px;object-fit:contain;border-radius:10px;border:1px solid #eeebf5;background:#fff}
.nc-dr-item__rm{position:absolute;top:-7px;left:-7px;width:22px;height:22px;padding:0;border:0;border-radius:50%;background:#e6e3ef;color:#3a3556;display:grid;place-items:center;cursor:pointer;transition:background .15s,color .15s}
.nc-dr-item__rm:hover{background:#e2231a;color:#fff}
.nc-dr-item__name{display:block;font-size:15px;font-weight:700;line-height:1.35;margin-bottom:4px}
.nc-dr-item__name a{color:var(--ink)}
.nc-dr-item__meta{font-size:13px;line-height:1.5;color:var(--muted)}
.nc-dr-item__meta dl,.nc-dr-item__meta p{margin:0}
.nc-dr-item__meta dt,.nc-dr-item__meta dd{display:inline;margin:0;font-weight:400}
.nc-dr-item__meta dd p{display:inline}
.nc-dr-item__meta dd::after{content:"";display:block}
.nc-dr-item__meta dt{margin-right:4px}
.nc-dr-item__price{font-size:15px;font-weight:700;white-space:nowrap;text-align:right}
.nc-dr-qty{display:inline-flex;align-items:center;margin-top:10px;border:1px solid #e1dcee;border-radius:999px;overflow:hidden}
.nc-dr-qty button{width:32px;height:32px;border:0;background:transparent;display:grid;place-items:center;cursor:pointer;color:var(--ink)}
.nc-dr-qty button:hover{background:var(--soft)}
.nc-dr-qty span{min-width:30px;text-align:center;font-weight:700;font-size:14px}
.nc-drawer__foot{flex:none;border-top:1px solid #eeebf5;background:#fff}
.nc-dr-promo{border-bottom:1px solid #eeebf5;padding:0 24px}
.nc-dr-promo__toggle{display:flex;justify-content:space-between;align-items:center;width:100%;padding:16px 0;border:0;background:none;font:inherit;font-weight:700;font-size:15px;color:var(--ink);cursor:pointer}
.nc-dr-promo__toggle svg{transition:transform .2s}
.nc-dr-promo__toggle[aria-expanded=true] svg{transform:rotate(180deg)}
.nc-dr-promo__form{display:flex;gap:8px;padding:0 0 14px}
.nc-dr-promo__form[hidden]{display:none}
.nc-dr-promo__form input{flex:1;min-width:0;min-height:42px;padding:8px 14px;border:1px solid #d5d8dc;border-radius:8px;font-size:15px}
.nc-dr-promo__msg{margin:-4px 0 14px;font-size:13px;color:#0a7a2e}
.nc-dr-promo__msg.is-error{color:#e2231a}
.nc-dr-sum{padding:16px 24px 6px}
.nc-dr-sum__row{display:flex;justify-content:space-between;gap:12px;font-size:15px;margin-bottom:6px}
.nc-dr-sum__row--disc{color:#0a7a2e}
.nc-dr-link{border:0;background:none;padding:0;color:var(--p1);font:inherit;font-size:13px;text-decoration:underline;cursor:pointer}
.nc-dr-note{margin:6px 0 0;font-size:13px;line-height:1.45;color:var(--muted)}
.nc-dr-checkout,.nc-dr-opencart{display:flex;justify-content:center;width:calc(100% - 48px);margin:10px 24px 0}
.nc-dr-continue{display:block;width:100%;padding:14px 24px 20px;border:0;background:none;font:inherit;font-size:15px;color:var(--muted);cursor:pointer}
.nc-dr-continue:hover{color:var(--p1)}
.nc-drawer__empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:30px;text-align:center;color:var(--muted)}
.nc-drawer__empty-ic{display:grid;place-items:center;width:84px;height:84px;border-radius:50%;background:var(--soft);color:var(--p1)}
.nc-drawer__empty p{margin:0;font-size:16px}
/* Круглая кнопка корзины внизу страницы */
.nc-fcart-wrap{position:fixed;bottom:22px;z-index:900;transition:opacity .2s}
.nc-fcart-wrap--right{right:22px}
.nc-fcart-wrap--left{left:22px}
.nc-drawer.is-open ~ .nc-fcart-wrap{opacity:0;pointer-events:none}
.nc-fcart{position:relative;width:62px;height:62px;border:0;border-radius:50%;background:#fff;color:var(--ink);display:grid;place-items:center;cursor:pointer;box-shadow:0 10px 30px rgba(60,20,120,.24);transition:transform .2s,box-shadow .2s}
.nc-fcart:hover{transform:translateY(-3px);box-shadow:0 14px 36px rgba(60,20,120,.3)}
.nc-fcart .nc-badge{top:-4px;left:-4px;right:auto;min-width:22px;height:22px;font-size:12px;background:#d62b34}
@media (max-width:680px){
	.nc-drawer__panel{width:100%}
	.nc-fcart-wrap{bottom:16px}
	.nc-fcart-wrap--right{right:16px}
	.nc-fcart-wrap--left{left:16px}
}

@media (max-width:1180px){
	.nc-cats{grid-template-columns:repeat(4,minmax(0,1fr))}
	ul.products.columns-6,ul.products.columns-5{--cols:3}
	ul.products.columns-4{--cols:3}
	.nc-footer__grid{grid-template-columns:repeat(3,1fr)}
	.nc-footer__brand{grid-column:1/-1}
	.nc-menu a{padding:8px 11px}
	.nc-header__row{gap:14px}
}
@media (max-width:980px){
	.nc-burger{display:grid}
	.nc-nav{position:absolute;left:0;right:0;top:100%;display:none;background:#fff;border-bottom:1px solid var(--line);padding:12px 24px 18px;box-shadow:var(--shadow)}
	.nc-nav.is-open{display:block}
	.nc-menu{flex-direction:column}
	.nc-header__row{position:relative}
	.nc-hero,.nc-banners,.nc-single__top,.nc-single__bottom,.nc-cart__layout,.nc-checkout__layout{grid-template-columns:minmax(0,1fr)}
	.nc-hero__img{order:-1;max-width:520px;margin:0 auto}
	.nc-hero--page .nc-hero__img{display:none}
	.nc-feats{grid-template-columns:repeat(2,1fr)}
	.nc-shop{grid-template-columns:minmax(0,1fr)}
	.nc-shop__main{min-width:0}
	.nc-filters{position:static}
	.nc-cart__summary,.nc-checkout__side{position:static}
	ul.products{--cols:2!important}
	.nc-posts{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:680px){
	.nc-wrap{padding:0 16px}
	.nc-cats{grid-template-columns:repeat(2,minmax(0,1fr))}
	.nc-footer__grid{grid-template-columns:1fr 1fr}
	.nc-footer__legal{gap:16px;flex-direction:column}
	.nc-cart-row{grid-template-columns:auto 80px 1fr;gap:12px}
	.nc-cart-row__img img{width:80px;height:58px}
	.nc-cart-row__qty{grid-column:2/4}
	.nc-cart-row__price{grid-column:2/3;align-items:flex-start}
	.nc-cart-row__remove{grid-column:3/4;justify-self:end}
	.nc-fields,.nc-choices{grid-template-columns:minmax(0,1fr)}
	.nc-block{padding:20px 18px}
	.nc-single__price{font-size:30px}
	.nc-banner{flex-direction:column;align-items:flex-start;padding:24px}
	.nc-banner img,.nc-banner--wide img{width:70%;align-self:center}
	.nc-news{padding:22px 18px}
	.nc-custom__box{flex-direction:column;align-items:flex-start;padding:24px 20px}
	.nc-custom__box img{max-width:100%}
	.nc-cat__media{height:120px}
	.nc-news__form{max-width:none;min-width:0;width:100%}
	.nc-posts{grid-template-columns:1fr}
	.nc-toolbar{flex-wrap:wrap}
	.nc-found{flex-basis:100%}
	.nc-review__items li{grid-template-columns:56px 1fr auto}
	.nc-review__qty{display:none}
}
@media (max-width:420px){
}

/* ===== Мобильная версия ===== */
.nc-filter-toggle{display:none}
@media (max-width:980px){
	.nc-cats{grid-template-columns:repeat(3,minmax(0,1fr))}
	.nc-news{flex-wrap:wrap}
	.nc-news__form{flex:1 1 100%;max-width:none;min-width:0}
	.nc-news__field{min-width:0;flex:1}
}
@media (max-width:680px){
	.nc-wrap{padding:0 14px}
	/* шапка: логотип сжимается, иконки не выходят за экран */
	.nc-header__row{min-height:62px;gap:8px}
	.nc-logo{flex:1 1 auto;min-width:0;font-size:21px;gap:8px}
	.nc-logo__mark{flex:none;width:34px;height:34px;font-size:19px;border-radius:10px}
	.nc-logo__name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
	.nc-header__tools{flex:none;margin-left:auto;gap:0}
	.nc-iconbtn{width:40px;height:40px}
	.nc-nav{padding:10px 14px 16px}

	/* главный баннер */
	.nc-hero{padding:18px 0 10px;gap:8px}
	.nc-hero__img{max-width:300px}
	.nc-hero__img img{max-height:230px;object-fit:contain}
	.nc-hero__title,.nc-hero__title--xl,.nc-hero--page .nc-hero__title{font-size:clamp(30px,9vw,38px);margin:12px 0 10px}
	.nc-hero__lead{font-size:16px}
	.nc-hero__btns{flex-direction:column;align-items:stretch;gap:10px}
	.nc-hero__btns .nc-btn{width:100%;justify-content:center}

	/* преимущества — 2 в ряд */
	.nc-feats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
	.nc-feat{flex-direction:column;align-items:flex-start;gap:8px;padding:14px}
	.nc-feat__ic svg{width:30px;height:30px}
	.nc-feat strong{display:block;font-size:14px;line-height:1.25}
	.nc-feat div span{display:block;margin-top:2px;font-size:12px;line-height:1.35}

	.nc-section{margin:30px 0}
	.nc-section__head{margin-bottom:14px;gap:10px}
	.nc-section__head h2{font-size:22px}
	.nc-hot svg{width:24px;height:24px}

	/* категории: по одной в строке — миниатюра слева, название, стрелка справа */
	.nc-cats{grid-template-columns:minmax(0,1fr);gap:12px}
	.nc-cat{flex-direction:row;align-items:center;gap:14px;padding:12px 14px 12px 12px;border-radius:24px}
	.nc-cat__media{flex:none;width:112px;height:82px;border-radius:16px}
	.nc-cat__media img{padding:6px}
	.nc-cat__media b{width:52px;height:52px;border-radius:16px;font-size:22px}
	.nc-cat__body{flex:1;min-width:0;min-height:0;padding:0;gap:3px}
	.nc-cat__name{font-size:16px;line-height:1.3;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
	.nc-cat__body small{display:-webkit-box;font-size:12.5px;line-height:1.35;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
	.nc-cat__go{position:static;flex:none;width:36px;height:36px}

	/* товары: плитка — миниатюра слева, название и цена справа, кнопка снизу (везде: главная, каталог, похожие) */
	ul.products:not(.nc-x){--cols:1!important;gap:12px}
	ul.products:not(.nc-x) .nc-card{display:grid;grid-template-columns:104px minmax(0,1fr);grid-template-areas:"m g" "m t" "m p" "a a";column-gap:14px;row-gap:3px;align-items:start;align-content:start;padding:12px;border-radius:22px}
	ul.products:not(.nc-x) .nc-card:hover{transform:none}
	ul.products:not(.nc-x) .nc-card__media{grid-area:m;align-self:start;margin:0;border-radius:14px}
	ul.products:not(.nc-x) .nc-card__media img{max-height:96px}
	ul.products:not(.nc-x) .nc-tag--left{grid-area:g;position:static;justify-self:start;max-width:100%;margin:0 0 3px;padding:2px 9px;font-size:11px;background:#efe3ff;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}
	ul.products:not(.nc-x) .nc-tag--sale{position:absolute;top:18px;left:18px;right:auto;padding:2px 7px;font-size:11px}
	ul.products:not(.nc-x) .nc-card__title{grid-area:t;align-self:start;min-height:0;margin:0;font-size:15px;line-height:1.3;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
	ul.products:not(.nc-x) .nc-card__price{grid-area:p;align-self:end;margin:4px 0 0;font-size:18px}
	ul.products:not(.nc-x) .nc-price del{display:inline-block;margin-left:6px;font-size:12.5px}
	ul.products:not(.nc-x) .nc-card__actions{grid-area:a;min-width:0;margin-top:12px;gap:8px}
	ul.products:not(.nc-x) .nc-card__actions .nc-btn{min-width:0;min-height:44px;justify-content:center;white-space:nowrap}
	ul.products:not(.nc-x) .nc-fav{width:44px;height:44px}
	.nc-view{display:none}

	/* баннеры, подписка */
	.nc-banner{padding:20px;border-radius:24px}
	.nc-banner h2{font-size:22px}
	.nc-news{flex-direction:column;align-items:stretch;gap:14px;padding:20px 16px}
	.nc-news__ic{display:none}
	.nc-news__form{flex-direction:column;align-items:stretch;gap:10px;width:100%;max-width:none;min-width:0}
	.nc-news__field{width:100%;min-width:0}
	.nc-news__form .nc-btn{width:100%;justify-content:center}

	/* каталог: фильтр свёрнут, раскрывается кнопкой «Фильтры и категории» */
	.nc-toolbar{gap:10px}
	.nc-found{flex:1 1 100%;font-size:14px}
	.nc-toolbar .woocommerce-ordering{flex:1;min-width:0;margin:0}
	.nc-toolbar select{width:100%;max-width:100%}
	.nc-filters.nc-panel{padding:0;background:none;border:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;position:static}
	.nc-filter-toggle{display:flex;align-items:center;gap:10px;width:100%;min-height:50px;padding:0 16px;border:1px solid var(--line);border-radius:16px;background:#fff;font:inherit;font-size:15px;font-weight:700;color:var(--ink);cursor:pointer;box-shadow:var(--shadow-sm)}
	.nc-filter-toggle>svg:first-child{color:var(--p1)}
	.nc-filter-toggle span{flex:1;text-align:left}
	.nc-filter-toggle>svg:last-child{transition:transform .2s}
	.nc-shop.is-filters-open .nc-filter-toggle>svg:last-child{transform:rotate(180deg)}
	.nc-filters__body{display:none;margin-top:10px;padding:18px 16px;border:1px solid var(--line);border-radius:20px;background:#fff}
	.nc-shop.is-filters-open .nc-filters__body{display:block}
	.nc-filters__body>h3{font-size:17px}
	.nc-filters__head{margin-top:18px}

	/* страница товара */
	.nc-single__summary{min-width:0}
	.nc-single__summary .nc-pill{max-width:100%;white-space:normal;line-height:1.3;text-align:left}
	.nc-single__summary .product_title{overflow-wrap:anywhere}
	.nc-single__gallery{padding:10px}
	.nc-single__top{gap:18px}
	.nc-single__summary .product_title{font-size:26px;margin:12px 0 10px}
	.nc-single__price{gap:10px;margin-bottom:14px}
	form.cart{gap:10px;margin-bottom:20px}
	form.cart .quantity,.woocommerce-variation-add-to-cart .quantity{flex:none}
	.single_add_to_cart_button{flex:1 1 100%;min-width:0;padding:16px 20px;font-size:17px}
	.nc-single__feats li{padding:6px 6px;font-size:12.5px}
	.nc-single__bottom{gap:20px;margin:28px 0 10px}
	.flex-control-thumbs{grid-template-columns:repeat(4,minmax(0,1fr))}
	/* подвал */
	.nc-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 16px}
	.nc-footer__brand,.nc-footer__support{grid-column:1/-1}
	.nc-footer__bottom{flex-direction:column;align-items:flex-start;gap:10px}
	.nc-footer__legal{flex-direction:column;gap:8px}
}
@media (max-width:389px){
	.nc-iconbtn{width:36px;height:36px}
	.nc-cat__name{font-size:13px}
}
