:root{
  /* выведено из брендбука: оливка сохранена и утеплена, фиолетовый обращён
     в пыльную мальву, чёрный заменён тёплым тёмным, синие не используются */
  --tm-olive:#7C8A46;
  --tm-olive-dark:#5C6733;
  --tm-olive-tint:#EFF1E3;
  --tm-mauve:#A79AA0;
  --tm-mauve-tint:#F2ECEE;

  /* зелёный Nuxe больше не нужен - его роль занял фирменный оливковый */
  --tm-green:#5C6733;
  --tm-green-dark:#49522A;

  --tm-ink:#26281F;
  --tm-grey:#6E6A5C;
  --tm-bg:#FFFDF8;
  --tm-warm:#FDF6F1;
  --tm-cream:#FFFBF1;
  --tm-beige:#EDE3DE;
  --tm-line:rgba(38,40,31,.14);

  --tm-serif:Cormorant,Georgia,serif;
  --tm-sans:"Open Sans",system-ui,-apple-system,"Segoe UI",sans-serif;

  --tm-step-0:16px;
  --tm-step-1:18px;
  --tm-step-2:22px;
  --tm-step-3:clamp(26px,3.4vw,38px);
  --tm-step-4:clamp(32px,5.4vw,58px);

  --tm-measure:66ch;
}

body{
  background:var(--tm-bg);
  color:var(--tm-ink);
  font-family:var(--tm-sans);
  font-size:var(--tm-step-0);
  font-weight:300;
  line-height:1.6;
  letter-spacing:.02em;
}

h1,h2,h3,h4{
  font-family:var(--tm-serif);
  font-weight:400;
  color:var(--tm-ink);
  text-wrap:balance;
}
h1{font-size:var(--tm-step-4);line-height:1.08;letter-spacing:.01em}
h2{font-size:var(--tm-step-3);line-height:1.14;text-transform:uppercase;letter-spacing:.06em}
h3{font-size:var(--tm-step-2);line-height:1.28}

p{max-width:var(--tm-measure)}
a{color:var(--tm-green);text-underline-offset:3px}
a:hover{color:var(--tm-green-dark)}

.tm-label,.tm-eyebrow{
  font-family:var(--tm-sans);
  font-size:11px;
  font-weight:400;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--tm-grey);
}

.price,.woocommerce-Price-amount{
  font-family:var(--tm-sans);
  font-weight:400;
  font-variant-numeric:tabular-nums;
  letter-spacing:.02em;
  color:var(--tm-ink);
}

/* кнопки в фирменном зелёном Nuxe */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce a.button.alt,.woocommerce button.button.alt,.wp-block-button__link{
  background:var(--tm-green);
  color:#fff;
  border:none;
  border-radius:0;
  font-family:var(--tm-sans);
  font-size:12px;
  font-weight:400;
  letter-spacing:.14em;
  text-transform:uppercase;
  padding:14px 26px;
  transition:background .18s;
}
.woocommerce a.button:hover,.woocommerce button.button:hover,
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{
  background:var(--tm-green-dark);color:#fff;
}

.woocommerce ul.products{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(212px,1fr));
  gap:clamp(14px,2vw,26px);
  margin:0;padding:0;
}
.woocommerce ul.products::before,.woocommerce ul.products::after{content:none}

:where(a,button,input,select,textarea):focus-visible{
  outline:2px solid var(--tm-green);
  outline-offset:2px;
}

/* --- главная --- */
.tm-hero{padding:clamp(44px,6vw,80px) 0 clamp(26px,4vw,40px)}
.tm-hero-lead{font-size:18px;color:var(--tm-grey);margin-top:20px;font-weight:300}

.tm-section{padding:clamp(44px,6vw,76px) 0;border-top:1px solid var(--tm-line)}
.tm-section>h2{margin:0 0 12px}
.tm-lead{color:var(--tm-grey);margin:0 0 28px}

.tm-worlds{display:grid;grid-template-columns:repeat(auto-fit,minmax(186px,1fr));
           gap:1px;background:var(--tm-line);border:1px solid var(--tm-line);margin-top:26px}
.tm-world{background:var(--tm-bg);display:flex;flex-direction:column;
          text-decoration:none;color:inherit;padding-bottom:22px;transition:background .2s}
a.tm-world:hover{background:var(--tm-warm)}
.tm-band{height:84px;display:block}
.tm-band-face{background:var(--tm-warm)}
.tm-band-body{background:var(--tm-beige)}
.tm-band-hair{background:var(--tm-cream)}
.tm-band-home{background:var(--tm-olive)}
.tm-band-cloth{background:#DCD3C4}
.tm-world-in{padding:18px 20px 0;display:block}
.tm-world-h{font-family:var(--tm-serif);font-size:21px;display:block;margin-bottom:5px}
.tm-world-p{font-size:13px;color:var(--tm-grey);display:block}
.tm-world-soon{cursor:default}
.tm-soon{font-size:11px;letter-spacing:.16em;text-transform:uppercase;
         color:var(--tm-green);margin-top:9px;display:block}

.tm-ritual{display:grid;grid-template-columns:repeat(auto-fit,minmax(212px,1fr));
           gap:1px;background:var(--tm-line);border:1px solid var(--tm-line)}
.tm-step{background:var(--tm-bg);padding:28px 24px 30px}
.tm-n{font-family:var(--tm-sans);font-size:11px;color:var(--tm-green);letter-spacing:.2em;
      text-transform:uppercase;display:block;margin-bottom:16px}
.tm-step-h{font-family:var(--tm-serif);font-size:20px;display:block;margin-bottom:8px}
.tm-step p{font-size:14px;color:var(--tm-grey);margin:0 0 16px}
.tm-step-link{font-size:12px;letter-spacing:.06em;border-top:1px solid var(--tm-line);
              padding-top:13px;display:block;text-decoration:none}


/* на главной заголовок страницы играет роль первого экрана */
.home .page-title{
  font-family:var(--tm-serif);font-weight:400;
  font-size:var(--tm-step-4);line-height:1.08;letter-spacing:.01em;
  max-width:17ch;margin:0;color:var(--tm-ink);text-transform:none;
}
.home .hero-section{padding-block:clamp(44px,6vw,80px) 0;background:var(--tm-bg)}
.home .tm-hero{padding-top:0}

header[data-header],.ct-header,footer[data-footer],.ct-footer{background:var(--tm-bg)!important}
[data-footer] .ct-container{border-top:1px solid var(--tm-line)}

@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* круглые плитки категорий, по образцу nuxe.com */
.tm-cats{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(22px,3.5vw,48px) clamp(16px,2.5vw,32px);
  margin-top:clamp(26px,4vw,44px);
}
.tm-cat{
  display:flex;flex-direction:column;align-items:center;
  text-decoration:none;color:inherit;
}
.tm-cat-round{
  display:block;width:100%;max-width:230px;aspect-ratio:1;
  border-radius:50%;overflow:hidden;background:var(--tm-warm);
}
.tm-cat-photo{
  width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .5s ease;
}
.tm-cat-photo--empty{background:var(--tm-beige)}
a.tm-cat:hover .tm-cat-photo{transform:scale(1.04)}
.tm-cat-label{
  font-family:var(--tm-sans);
  font-size:13px;font-weight:400;
  letter-spacing:.18em;text-transform:uppercase;
  margin-top:16px;text-align:center;color:var(--tm-ink);
}
.tm-cat-soon{
  font-family:var(--tm-sans);font-size:11px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--tm-green);margin-top:5px;
}
.tm-cat--soon{cursor:default}
.tm-cat--soon .tm-cat-round{opacity:.55}
@media (max-width:720px){
  .tm-cats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tm-cat-label{font-size:12px;letter-spacing:.14em}
}

/* tm-card-v2: карточка товара по образцу nuxe.com - без рамки, подложка вместо неё */
.woocommerce ul.products li.product{
  width:auto;margin:0;float:none;
  background:transparent;
  border:none;
  display:flex;flex-direction:column;
  text-align:left;
}
.woocommerce ul.products li.product a img,
.woocommerce ul.products li.product .ct-media-container{
  margin:0 0 16px;
  border-radius:0;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--tm-sans);
  font-size:15px;
  font-weight:400;
  line-height:1.45;
  letter-spacing:.01em;
  text-transform:none;
  color:var(--tm-ink);
  margin:0 0 8px;
  padding:0;
}
.woocommerce ul.products li.product a{text-decoration:none}
.woocommerce ul.products li.product .price{
  font-family:var(--tm-sans);
  font-size:15px;
  font-weight:600;
  color:var(--tm-ink);
  margin:0 0 14px;
}
/* список категорий под товаром - лишний шум, в каталоге он не нужен */
.woocommerce ul.products li.product .ct-product-categories,
.woocommerce ul.products li.product .posted_in,
.woocommerce ul.products li.product .product_meta{display:none}

/* добавление в корзину - компактная круглая кнопка, как у образца */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .add_to_cart_button{
  align-self:flex-start;
  width:44px;height:44px;
  padding:0;
  border-radius:50%;
  background:var(--tm-green);
  color:#fff;
  font-size:0;
  line-height:44px;
  text-align:center;
  position:relative;
  min-width:0;
}
.woocommerce ul.products li.product .button::after{
  content:"+";
  font-size:22px;
  font-weight:300;
  line-height:44px;
  color:#fff;
}
.woocommerce ul.products li.product .button:hover{background:var(--tm-green-dark)}
.woocommerce ul.products li.product .added_to_cart{
  font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  margin-top:8px;display:block;
}

/* tm-hide-stock: остаток на складе не показываем, отсутствие товара - показываем */
.stock.in-stock,
p.stock.available-on-backorder,
.ct-stock-availability{display:none}
.stock.out-of-stock{display:block;color:var(--tm-grey);font-size:14px}

/* разворот первого экрана: фотография и текст слева, категории справа */
.tm-split{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  align-items:stretch;
  gap:0;
  margin:0 calc(50% - 50vw);
  width:100vw;max-width:100vw;
}
.tm-split-left{
  position:relative;
  min-height:clamp(420px,52vw,660px);
  display:flex;align-items:center;justify-content:center;
  padding:clamp(48px,6vw,88px) clamp(28px,4vw,64px);
  background-color:var(--tm-warm);
  background-image:image-set(url('./img/hero-22ec0223.webp') type('image/webp'), url('./img/hero-22ec0223.jpg') type('image/jpeg'));
  background-image:-webkit-image-set(url('./img/hero-22ec0223.webp') type('image/webp'), url('./img/hero-22ec0223.jpg') type('image/jpeg'));
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
  isolation:isolate;
}
.tm-split-inner{
  max-width:24ch;
  text-align:center;
}
.tm-split-title{
  font-family:var(--tm-serif);font-weight:400;
  font-size:clamp(30px,3.6vw,52px);
  line-height:1.1;letter-spacing:.01em;
  margin:0;color:var(--tm-ink);
  overflow-wrap:normal;word-break:normal;hyphens:none;
  text-wrap:balance;
}
.tm-split-lead{
  font-size:16px;line-height:1.7;
  color:var(--tm-ink);opacity:.80;
  margin:22px auto 0;max-width:38ch;
}
.tm-split-right{
  background:var(--tm-bg);
  padding:clamp(40px,5vw,72px) clamp(24px,4vw,56px);
  display:flex;align-items:center;
}
.tm-split-right .tm-cats{margin-top:0;width:100%}
.tm-split-right .tm-cat-round{max-width:170px}

@media (max-width:900px){
  .tm-split{grid-template-columns:1fr}
  .tm-split-left{min-height:340px;padding:56px 24px}
  .tm-split-inner{max-width:none}
  .tm-split-right{padding:36px 24px 48px}
}

@media (max-width:900px){
  .tm-split-left{
    background-image:image-set(url('./img/hero-22ec0223-800.webp') type('image/webp'), url('./img/hero-22ec0223-800.jpg') type('image/jpeg'));
    background-image:-webkit-image-set(url('./img/hero-22ec0223-800.webp') type('image/webp'), url('./img/hero-22ec0223-800.jpg') type('image/jpeg'));
  }
}

/* tm-no-break: заголовок первого экрана не должен рваться посреди слова */
.tm-split-title,
.tm-split-title *{
  overflow-wrap:normal !important;
  word-break:keep-all !important;
  hyphens:none !important;
}

/* первый экран на видео */
.tm-vhero{
  position:relative;
  margin:0 calc(50% - 50vw);
  width:100vw;max-width:100vw;
  height:clamp(420px,64vh,700px);
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;background:var(--tm-ink);
}
.tm-vhero-media{
  position:absolute;inset:0;
  width:100%;height:100%;object-fit:cover;
  z-index:0;
}
.tm-vhero-veil{
  position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,rgba(24,20,10,.34) 0%,rgba(24,20,10,.46) 55%,rgba(24,20,10,.52) 100%);
}
.tm-vhero-inner{
  position:relative;z-index:2;text-align:center;
  padding:0 clamp(20px,5vw,48px);max-width:min(88vw,860px);
}
.tm-vhero-eyebrow{
  font-family:var(--tm-sans);font-size:11px;font-weight:400;
  letter-spacing:.28em;text-transform:uppercase;
  color:#FFFDF8;opacity:.9;margin:0 0 18px;
}
.tm-vhero-title{
  font-family:var(--tm-serif);font-weight:400;
  font-size:clamp(32px,4.6vw,60px);line-height:1.06;
  letter-spacing:.01em;color:#FFFDF8;margin:0;
  overflow-wrap:normal;word-break:keep-all;hyphens:none;
}
.tm-vhero-btn{
  display:inline-block;margin-top:28px;
  font-family:var(--tm-sans);font-size:12px;letter-spacing:.16em;
  text-transform:uppercase;text-decoration:none;
  color:#FFFDF8;border:1px solid rgba(255,253,248,.75);
  padding:14px 30px;transition:background .2s,color .2s;
}
.tm-vhero-btn:hover{background:#FFFDF8;color:var(--tm-ink)}
.tm-vhero-btn:focus-visible{outline:2px solid #FFFDF8;outline-offset:3px}

@media (prefers-reduced-motion:reduce){
  .tm-vhero-media{display:none}
  .tm-vhero{background:var(--tm-ink) center/cover no-repeat}
}
@media (max-width:720px){
  .tm-vhero{height:clamp(380px,58vh,520px)}
}

/* категории теперь отдельной секцией во всю ширину */
.tm-cats-full .tm-cats{grid-template-columns:repeat(5,minmax(0,1fr))}
.tm-cats-full .tm-cat-round{max-width:180px}
@media (max-width:1100px){.tm-cats-full .tm-cats{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:640px){.tm-cats-full .tm-cats{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* корзина живёт в меню, но стоит у правого края строки */
.tm-cart-item{
  position:absolute;
  right:0;
  top:50%;
  transform:translateY(-50%);
  list-style:none;
}
.tm-cart-link{
  display:inline-flex;align-items:center;gap:7px;
  color:var(--tm-ink);text-decoration:none;
  padding:6px;
}
.tm-cart-link:hover{color:var(--tm-olive-dark)}
.tm-cart-count{
  font-family:var(--tm-sans);font-size:11px;font-weight:600;
  min-width:18px;height:18px;line-height:18px;text-align:center;
  border-radius:9px;background:var(--tm-olive-dark);color:#fff;
  padding:0 5px;
}
.tm-cart-count.is-empty{background:transparent;color:var(--tm-grey);font-weight:400}
.tm-cart-link:focus-visible{outline:2px solid var(--tm-olive-dark);outline-offset:2px}

@media (max-width:999px){
  .ct-header [data-row="middle"] > .ct-container{grid-template-columns:auto 1fr auto}
  .ct-header [data-row="middle"] [data-column="start"]{grid-column:2;justify-self:center}
  .ct-header [data-row="middle"] [data-column="end"]{grid-column:3;justify-self:end}
  .tm-cart-item{position:static;transform:none}
}

/* меню плотнее и без лишней высоты */
.ct-header .header-menu-1 > ul > li > a.ct-menu-link{
  padding-block:8px !important;
  font-size:12px;
  letter-spacing:.12em;
}

/* вход и корзина у правого края */
.tm-actions{
  position:absolute;right:clamp(16px,2.5vw,34px);top:2px;
  list-style:none;display:flex;align-items:center;gap:14px;
}
.tm-action{
  display:inline-flex;align-items:center;gap:6px;
  color:var(--tm-ink);text-decoration:none;padding:5px;
}
.tm-action:hover{color:var(--tm-olive-dark)}
.tm-action:focus-visible{outline:2px solid var(--tm-olive-dark);outline-offset:2px}
.tm-cart-count{
  font-family:var(--tm-sans);font-size:11px;font-weight:600;
  min-width:17px;height:17px;line-height:17px;text-align:center;
  border-radius:9px;background:var(--tm-olive-dark);color:#fff;padding:0 5px;
}
.tm-cart-count.is-empty{background:transparent;color:var(--tm-grey);font-weight:400}

@media (max-width:999px){
  .ct-header [data-row="middle"] > .ct-container{grid-template-columns:auto 1fr auto;align-items:center}
  .ct-header [data-row="middle"] [data-column="start"]{grid-column:2;justify-self:center;align-self:center}
  .ct-header [data-row="middle"] [data-column="end"]{grid-column:3;justify-self:end;align-self:center}
  .tm-actions{position:static;}
}
/* tm-header-grid: меню слева вверху, логотип по центру, вход и корзина справа */
.ct-header [data-row="middle"]{
  padding-block:4px !important;
  min-height:0 !important;
}
.ct-header [data-row="middle"] > .ct-container{
  display:grid !important;
  grid-template-columns:1fr auto 1fr !important;
  grid-auto-rows:auto !important;
  align-items:center !important;
  justify-items:stretch !important;
  max-width:none !important;
  width:100% !important;
  padding-inline:clamp(16px,2.5vw,32px) !important;
  min-height:0 !important;
  position:relative;
  row-gap:0 !important;
}
.ct-header [data-row="middle"] [data-column="end"]{
  grid-column:1 !important;
  grid-row:1 !important;
  justify-self:start !important;
  align-self:center !important;
  min-height:0 !important;
}
.ct-header [data-row="middle"] [data-column="start"]{
  grid-column:2 !important;
  grid-row:1 !important;
  justify-self:center !important;
  align-self:center !important;
  min-height:0 !important;
}
/* именно эта высота и создавала пустоту */
.ct-header [data-row="middle"] [data-column] > [data-items]{
  min-height:0 !important;
  height:auto !important;
  align-items:center !important;
  justify-content:flex-start !important;
}
.ct-header [data-row="middle"] .site-branding{
  margin:0 !important;
  min-height:0 !important;
}
.ct-header [data-row="middle"] .site-logo-container img,
.ct-header [data-row="middle"] .custom-logo{
  max-height:46px !important;
  width:auto !important;
}
.ct-header .header-menu-1{min-height:0 !important}
.ct-header .header-menu-1 > ul{min-height:0 !important}
.ct-header .header-menu-1 > ul > li > a.ct-menu-link{
  padding-block:6px !important;
  min-height:0 !important;
  font-size:12px;
  letter-spacing:.12em;
}

/* вход и корзина у правого края той же строки */
.tm-actions{
  position:absolute !important;
  right:clamp(16px,2.5vw,32px);
  top:50%;
  transform:translateY(-50%);
  list-style:none;
  display:flex;align-items:center;gap:16px;
  margin:0;padding:0;
}
.tm-action{
  display:inline-flex;align-items:center;gap:6px;
  color:var(--tm-ink);text-decoration:none;padding:4px;
}
.tm-action:hover{color:var(--tm-olive-dark)}
.tm-action:focus-visible{outline:2px solid var(--tm-olive-dark);outline-offset:2px}
.tm-cart-count{
  font-family:var(--tm-sans);font-size:11px;font-weight:600;
  min-width:17px;height:17px;line-height:17px;text-align:center;
  border-radius:9px;background:var(--tm-olive-dark);color:#fff;padding:0 5px;
}
.tm-cart-count.is-empty{background:transparent;color:var(--tm-grey);font-weight:400}

@media (max-width:999px){
  .ct-header [data-row="middle"] > .ct-container{
    grid-template-columns:auto 1fr auto !important;
  }
  .ct-header [data-row="middle"] [data-column="start"]{grid-column:2 !important}
  .ct-header [data-row="middle"] [data-column="end"]{grid-column:3 !important;justify-self:end !important}
  .tm-actions{position:static !important;transform:none}
}
/* tm-header-over: на главной шапка лежит поверх видео */
.home #header.ct-header{
  position:absolute !important;
  inset:0 0 auto 0;
  z-index:20;
  background:transparent !important;
}
.home #header.ct-header [data-row]{background:transparent !important}
.home #header .ct-menu-link,
.home #header .tm-action,
.home #header .site-title-container,
.home #header .site-title-container a{
  color:#FFFDF8 !important;
}
.home #header .ct-menu-link:hover,
.home #header .tm-action:hover{color:#FFFFFF !important}
.home #header .tm-cart-count{background:#FFFDF8;color:var(--tm-ink)}
.home #header .tm-cart-count.is-empty{background:transparent;color:#FFFDF8}

/* видео начинается от самого верха и оставляет место под шапку */
.home .tm-vhero{
  margin-top:0;
  height:clamp(480px,72vh,760px);
}
.home .tm-vhero-inner{padding-top:96px}
@media (max-width:999px){
  .home .tm-vhero{height:clamp(420px,64vh,560px)}
  .home .tm-vhero-inner{padding-top:80px}
}

/* tm-hero-flush: видео начинается от самого верха, отступ контейнера снят */
.home .site-main > .ct-container-full,
.home #main > .ct-container-full{padding-top:0 !important}
.home #post-9 > .entry-content > .tm-vhero:first-child{margin-top:0}


/* tm-vhero-nowrap: заголовок первого экрана в две строки, без рваных переносов */
.tm-vhero-inner{max-width:min(88vw,860px) !important}
.tm-vhero-title{
  max-width:none;
  text-wrap:balance;
  overflow-wrap:normal;
  word-break:keep-all;
  hyphens:none;
}
.tm-vhero-lead,.tm-vhero-eyebrow{max-width:none}
/* tm-brand-center: горизонтальный логотип, надпись внутри него */
.ct-header .site-branding{
  display:flex !important;align-items:center !important;
  justify-content:center;margin:0 !important;
}
.ct-header .site-title-container{display:none !important}
.ct-header .site-logo-container{display:block;line-height:0}
.ct-header .site-logo-container img,
.ct-header .default-logo,
.ct-header .custom-logo{
  max-height:62px !important;width:auto !important;height:auto !important;
  filter:none !important;
}
/* поверх видео — светлая версия, перекрашенная, а не выбеленная фильтром */
.home #header .site-logo-container img{
  content:url('./img/logo-gold-light-ade4cf8f.png');
  max-height:62px !important;
}
@media (max-width:720px){
  .ct-header .site-logo-container img{max-height:42px !important}
  .home #header .site-logo-container img{max-height:42px !important}
}

/* tm-logo-size: приоритет выше собственного ограничения темы */
#header .site-branding .site-logo-container img,
#header .site-branding img.default-logo,
#header .site-branding img.custom-logo{
  max-height:62px !important;
  width:auto !important;
  height:auto !important;
}
@media (max-width:720px){
  #header .site-branding .site-logo-container img{max-height:42px !important}
}

/* tm-header-autoheight: контейнеры шапки растут под логотип, а не режут его */
#header [data-row="middle"] > .ct-container,
#header [data-row="middle"] [data-column],
#header [data-row="middle"] [data-items],
#header [data-row="middle"] .site-branding,
#header [data-row="middle"] .site-logo-container{
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
}


/* секции на этом фоне живут без собственной заливки */
.home .tm-section{background:transparent}
.home .tm-cat-round{background:rgba(255,253,248,.6)}
.home .tm-band-cloth{background:var(--tm-mauve)}

/* подвал в тон нижнему краю */
.home footer[data-footer],
.home .ct-footer{background:var(--tm-ground-olive) !important}


/* tm-page-ground: фон главной цвета шалфея */
:root{
  --tm-sage-bg:#E4EAE0;
  --tm-sage-deep:#D8E0D2;
}
body.home{
  background:var(--tm-sage-bg);
  background-attachment:fixed;
}
.home #main-container,
.home #main,
.home .site-main,
.home .ct-container-full,
.home .entry-content{background:transparent !important}

.home .tm-section{background:transparent}
.home .tm-cat-round{background:rgba(255,255,255,.55)}

/* шапка и подвал в тон */
.home #header.ct-header{background:transparent !important}
.home footer[data-footer],
.home .ct-footer{background:var(--tm-sage-deep) !important}
/* tm-card-image: кадр 3:4, картинка растянута механикой темы, без рамки в рамке */
.woocommerce ul.products li.product .ct-media-container{
  position:relative;
  aspect-ratio:3/4;
  overflow:hidden;
  background:#F7F9F5;
  border-radius:0;
  display:block;
}
/* распорка темы задаёт свою пропорцию и спорит с нашей */
.woocommerce ul.products li.product .ct-media-container::before{
  display:none;
}
.woocommerce ul.products li.product .ct-media-container picture,
.woocommerce ul.products li.product .ct-media-container img{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  aspect-ratio:auto !important;
  object-fit:cover !important;
  object-position:center !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
}




/* блок философии: весь текст на одной подложке, свой шрифт */
.tm-philos,
.home .tm-philos{
  background:var(--tm-bg);
  border:1px solid var(--tm-line);
  padding:48px 52px 52px;
  margin-block:0 76px;
}
.tm-philos .tm-eyebrow{
  font-size:11px;
  letter-spacing:.2em;
  color:var(--tm-grey);
  margin:0 0 12px;
}
.tm-philos h2{margin:0 0 20px}
.tm-philos p{
  font-family:var(--tm-serif);
  font-size:22px;
  line-height:1.55;
  color:var(--tm-ink);
  margin:0 0 28px;
}
.tm-philos p:last-of-type{margin-bottom:0}
/* «Читать дальше» - кнопка в тон сайту */
.tm-philos p a{
  display:inline-block;
  font-family:var(--tm-sans);
  font-size:11px;
  letter-spacing:.2em;
  text-transform:uppercase;
  text-decoration:none;
  color:var(--tm-green);
  border:1px solid var(--tm-green);
  padding:14px 30px;
  transition:background .2s,color .2s;
}
.tm-philos p a:hover,
.tm-philos p a:focus-visible{
  background:var(--tm-green);
  color:var(--tm-bg);
}

/* страница контактов */
.tm-contact-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:1px;
  background:var(--tm-line);
  border:1px solid var(--tm-line);
  margin:28px 0 0;
}
.tm-contact-card{background:var(--tm-bg);padding:28px 24px 30px}
.tm-contact-label{
  display:block;font-family:var(--tm-sans);font-size:11px;letter-spacing:.2em;
  text-transform:uppercase;color:var(--tm-grey);margin-bottom:14px;
}
.tm-contact-value{
  display:block;font-family:var(--tm-serif);font-size:22px;
  /* Cormorant рисует цифры старостильными, с выносом ниже базовой линии:
     тесная высота строки обрезала их у предка с overflow:clip */
  line-height:1.45;
  padding-bottom:4px;
  font-variant-numeric:lining-nums;
  font-feature-settings:"lnum" 1;
  color:var(--tm-ink);text-decoration:none;
}
/* подчёркивание должно обнимать текст, а не тянуться во всю карточку */
a.tm-contact-value{display:inline-block;border-bottom:1px solid var(--tm-line)}
a.tm-contact-value:hover{color:var(--tm-green);border-bottom-color:var(--tm-green)}
.tm-contact-note{font-size:14px;color:var(--tm-grey);margin:10px 0 0}

.tm-contact-links{margin:34px 0 0;font-size:16px;color:var(--tm-grey)}
.tm-contact-links p{margin:0 0 12px}
.tm-contact-links a{
  display:inline-block;margin:0 22px 8px 0;color:var(--tm-green);
  text-decoration:none;border-bottom:1px solid var(--tm-line);
}
.tm-contact-links a:hover{border-bottom-color:var(--tm-green)}

.tm-requisites{
  margin:40px 0 0;padding:28px 32px 30px;
  background:var(--tm-bg);border:1px solid var(--tm-line);
}
.tm-requisites dl{
  display:grid;grid-template-columns:minmax(180px,auto) 1fr;
  gap:10px 28px;margin:0;font-size:15px;
}
.tm-requisites dt{color:var(--tm-grey)}
.tm-requisites dd{margin:0;color:var(--tm-ink)}
@media (max-width:640px){
  .tm-requisites dl{grid-template-columns:1fr;gap:2px 0}
  .tm-requisites dd{margin:0 0 12px}
}

/* страницы со старой разметкой: доставка, способы оплаты */
/* этот абзац дословно повторяет заголовок страницы */
.entry-content p.main-caption--title{display:none}
/* подзаголовки разделов выводились шрифтом обычного текста */
.entry-content p.info-template--caption{
  font-family:var(--tm-serif);
  font-size:26px;
  line-height:1.25;
  color:var(--tm-ink);
  margin:38px 0 14px;
}
.entry-content p.info-template--caption:first-of-type{margin-top:0}
/* пустые абзацы с классом подзаголовка тянули отступ на пустом месте */
.entry-content p.info-template--caption:empty,
.entry-content p.info-template--check:empty{display:none}
.entry-content p.info-template--check{margin:0 0 16px}
