:root {
  --g: #215d34;
  --g2: #557f4e;
  --o: #f08b31;
  --br: #684832;
  --cream: #fffaf0;
  --milk: #fffdf8;
  --sage: #eef4e7;
  --ink: #26352b;
  --shadow: 0 18px 50px rgba(43, 65, 45, .14)
}

* {
  box-sizing: border-box
}

html {
  scroll-behavior: smooth
}

body {
  margin: 0;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Arial, sans-serif;
  color: var(--ink);
  background: #fdfcf8;
  line-height: 1.6
}

a {
  color: inherit
}

.hero {
  position: relative;
  background: #eaf3df
}

.hero img {
  display: block;
  width: 100%
}

.hotspots {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 18.6%
}

.hotspots a {
  position: absolute;
  top: 34%;
  height: 54%;
  border-radius: 30px
}

.hotspots a:hover {
  outline: 2px solid rgba(240, 139, 49, .35)
}

.mobile-nav {
  display: none
}

.site-header {
  position: relative;
  background: url('/tpl/www/assets/bg-desktop.jpg') center top / cover no-repeat;
  height: 50vw;
  display: flex;
  align-items: flex-start;
  padding: 18px 0 36px
}

.header-inner {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  justify-content: flex-start
}

.header-nav {
  display: flex;
  gap: 28px;
  justify-content: flex-start;
  padding: 14px 0 8px;
  flex-wrap: wrap
}

.header-nav a {
  background: #fff;
  color: var(--g) !important;
  text-decoration: none;
  font-weight: 700;
  font-size: 1.02rem;
  padding: 6px 14px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, .95);
  box-shadow: 0 2px 8px rgba(0, 0, 0, .08);
  transition: background .18s, transform .12s;
  display: inline-flex;
  align-items: center
}

.header-nav a:hover {
  background: #f6fbf3;
  transform: translateY(-1px)
}

.header-nav a.nav-highlight {
  background: var(--o);
  color: #fff !important;
  border-radius: 999px;
  padding: 6px 14px;
  border-bottom: 0;
  text-shadow: none;
  display: inline-flex;
  align-items: center
}

.header-nav a.nav-highlight:hover {
  background: #e07a1f;
  border-color: transparent
}

.mobile-drawer a.nav-highlight {
  background: var(--o);
  color: #fff !important;
  border-radius: 12px
}

.mobile-drawer a.nav-highlight:hover {
  background: #e07a1f
}

.header-logo {
  display: flex;
  justify-content: flex-start;
  margin-top: 36px;
  margin-left: 8%;
  margin-right: 35%;
}

.header-logo img {
  max-width: 600px;
  width: 100%;
  height: auto;
  display: block;
  filter: drop-shadow(0 6px 18px rgba(0, 0, 0, .28))
}

.header-contacts {
  display: flex;
  gap: 16px;
  margin-top: 22px;
  margin-left: 8%;
  flex-wrap: wrap;
  justify-content: flex-start
}

.contact-pill {
  background: #fff;
  color: var(--g) !important;
  border-radius: 999px;
  padding: 5px 20px 5px 5px;
  font-weight: 700;
  font-size: 1.3rem;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(255, 255, 255, .95);
  box-shadow: 0 4px 14px rgba(0, 0, 0, .1);
  transition: background .18s, transform .12s
}

.contact-pill:hover {
  background: #f6fbf3;
  transform: translateY(-1px)
}

.contact-icon {
  width: 34px;
  height: 34px;
  background: var(--g);
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: #fff;
  flex-shrink: 0;
  margin-right: 10px;
  font-size: 1rem;
  line-height: 1
}

.contact-icon svg {
  width: 18px;
  height: 18px
}

.header-burger {
  position: absolute;
  top: 8px;
  right: 16px;
  width: 48px;
  height: 48px;
  background: rgba(255, 253, 248, .94);
  border: 0;
  border-radius: 12px;
  display: grid;
  place-items: center;
  gap: 5px;
  padding: 12px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, .14);
  cursor: pointer
}

.header-burger span {
  display: block;
  width: 22px;
  height: 2.5px;
  background: #26352b;
  border-radius: 2px;
  transition: transform .22s, opacity .22s
}

.header-burger[aria-expanded="true"] span:nth-child(1) {
  transform: translateY(7px) rotate(45deg)
}

.header-burger[aria-expanded="true"] span:nth-child(2) {
  opacity: 0
}

.header-burger[aria-expanded="true"] span:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg)
}

.mobile-drawer {
  position: absolute;
  top: 64px;
  right: 16px;
  left: auto;
  width: 280px;
  max-width: calc(100vw - 32px);
  background: #fffdf8;
  border-radius: 16px;
  box-shadow: 0 16px 40px rgba(0, 0, 0, .18);
  display: flex;
  flex-direction: column;
  padding: 14px 16px;
  gap: 2px;
  z-index: 20
}

.mobile-drawer a {
  background: #fff;
  color: var(--g) !important;
  border: 1px solid #e8efe4;
  box-shadow: 0 2px 8px rgba(0, 0, 0, .06);
  padding: 10px 14px;
  border-radius: 999px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center
}

.mobile-drawer a:hover {
  background: #f6fbf3
}

.mobile-drawer[hidden] {
  display: none !important
}

@media(max-width:991px) {
  .site-header {
    background-image: url('/tpl/www/assets/bg-mobile.jpg');
    background-size: 100% auto;
    background-position: center top;
    background-repeat: no-repeat;
    aspect-ratio: 960 / 1280;
    min-height: auto;
    height: auto;
    align-items: flex-start;
    padding: 12px 0 0
  }

  .header-inner {
    align-items: flex-start
  }

  .header-logo {
    justify-content: center;
    margin-left: 0;
    margin-top: 20vw;
    width: 100%
  }

  .header-logo img {
    max-width: 600px;
    width:75%;
  }

  .header-contacts {
    justify-content: center;
    margin-left: 0;
    margin-top: 16px;
    width: 100%
  }

  .contact-pill {
    font-size: 0.9rem;
    padding: 4px 16px 4px 4px;
    font-weight: normal;
  }

  .contact-icon {
    width: 30px;
    height: 30px
  }
}

.section {
  padding: 76px max(20px, 7vw)
}

.alt {
  background: linear-gradient(135deg, #f3f7eb, #fff9ef)
}

.head {
  max-width: 920px;
  text-align: center;
  margin: 0 auto 34px;
  padding: 0 20px;
}

.head>span,
.result>span {
  font-size: .8rem;
  font-weight: 900;
  letter-spacing: .11em;
  color: var(--g2)
}

h1,
h2,
h3 {
  color: var(--br);
  line-height: 1.16
}

h1 {
  font-size: clamp(2.2rem, 5vw, 4.7rem);
  margin: .1em 0
}

h2 {
  font-size: clamp(1.8rem, 4vw, 3rem);
  margin: .1em 0 .4em
}

.carousel {
  position: relative;
  max-width: 900px;
  margin: auto
}

.slide {
  display: none;
  min-height: 390px;
  background: var(--milk);
  border-radius: 32px;
  box-shadow: var(--shadow);
  padding: 38px;
  text-align: center;
  align-items: center;
  justify-content: center;
  flex-direction: column
}

.slide.active {
  display: flex
}

.art {
  width: 145px;
  height: 145px;
  border-radius: 36px;
  background: linear-gradient(145deg, #dbe9cd, #fff1d6);
  display: grid;
  place-items: center;
  font-size: 4rem
}

.arr {
  position: absolute;
  top: 43%;
  z-index: 3;
  width: 48px;
  height: 48px;
  border: 0;
  border-radius: 50%;
  background: white;
  box-shadow: 0 8px 22px rgba(0, 0, 0, .13);
  font-size: 2rem;
  color: var(--g);
  cursor: pointer
}

.prev {
  left: -24px
}

.next {
  right: -24px
}

.dots {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: 16px
}

.dot {
  width: 8px;
  height: 8px;
  border: 0;
  border-radius: 50%;
  background: #c9d3c5
}

.dot.active {
  background: var(--g);
  transform: scale(1.25)
}

.grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  max-width: 1000px;
  margin: auto
}

.grid article,
.card {
  background: var(--milk);
  border-radius: 26px;
  padding: 28px;
  box-shadow: var(--shadow);
  border: 1px solid rgba(44, 76, 46, .08)
}

.primary,
.secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  border-radius: 999px;
  padding: 13px 20px;
  font-weight: 900;
  border: 0;
  cursor: pointer;
  font-size: 1rem
}

.primary {
  background: var(--g);
  color: white
}

.secondary {
  background: white;
  color: var(--g);
  border: 2px solid var(--g)
}

.hidden {
  display: none !important
}

.progress b {
  display: block;
  margin-bottom: 7px
}

.progress i {
  display: block;
  height: 8px;
  background: #edf1e9;
  border-radius: 99px;
  overflow: hidden
}

.progress em {
  display: block;
  width: 0;
  height: 100%;
  background: linear-gradient(90deg, var(--o), var(--g));
  transition: .25s
}

.card {
  max-width: 850px;
  margin: auto
}

.card h3 {
  font-size: 1.5rem
}

.answers {
  display: grid;
  gap: 10px
}

#answers button {
  width: 100%;
  text-align: left;
  padding: 14px 16px;
  border: 1px solid #dbe5d7;
  background: #fbfdf9;
  border-radius: 16px;
  font-size: 1rem;
  cursor: pointer
}

#answers button:hover {
  border-color: var(--g);
  background: #f1f7ec
}

.result {
  text-align: center
}

.score {
  width: 170px;
  height: 170px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 18px auto;
  background: conic-gradient(var(--g) 0deg, var(--sage) 0deg);
  box-shadow: var(--shadow)
}

.score b {
  font-size: 3rem;
  color: var(--g)
}

.fine {
  max-width: 850px;
  margin: 18px auto 0;
  padding: 0 20px;
  color: #677168;
  font-size: .9rem
}

.two {
  display: grid;
  grid-template-columns: 1.15fr 1fr;
  gap: 28px;
  align-items: center;
  max-width: 1100px;
  margin: auto
}

.video,
.toy {
  min-height: 360px;
  border-radius: 30px;
  display: grid;
  place-items: center;
  text-align: center;
  box-shadow: var(--shadow)
}

.video {
  background: linear-gradient(135deg, #244f31, #7aa66c);
  color: white;
  padding: 28px
}

.video b {
  font-size: 4rem
}

.toy {
  background: linear-gradient(145deg, #f1ddc4, #d7e8ca);
  font-size: 6rem
}

.news small {
  color: var(--g2);
  font-weight: 900
}

.logo {
  width: 100%;
  max-width: 260px;
  height: 110px;
  border-radius: 18px;
  background: #f2f6ee;
  display: grid;
  place-items: center;
  color: var(--g);
  font-weight: 900;
  letter-spacing: .08em
}

.partners article {
  text-align: center
}

.final {
  text-align: center;
  font-size: 1.35rem;
  font-weight: 900;
  color: var(--g);
  margin-top: 28px
}

footer {
  background: #21482d;
  color: white;
  text-align: center;
  padding: 34px 7vw;
  display: grid;
  gap: 8px
}

footer a {
  text-decoration: none
}

.to-top {
  position: fixed;
  right: 18px;
  bottom: 18px;
  width: 46px;
  height: 46px;
  border: 0;
  border-radius: 50%;
  background: var(--g);
  color: white;
  font-size: 1.3rem;
  box-shadow: 0 8px 20px rgba(0, 0, 0, .2);
  opacity: 0;
  pointer-events: none;
  transition: .2s
}

.to-top.show {
  opacity: 1;
  pointer-events: auto
}

@media(max-width:900px) {
  .hotspots {
    display: none
  }

  .mobile-nav {
    display: flex;
    gap: 8px;
    overflow: auto;
    padding: 10px 12px;
    background: #fffaf0;
    position: sticky;
    top: 0;
    z-index: 20;
    border-bottom: 1px solid #e5e9df
  }

  .mobile-nav a {
    white-space: nowrap;
    text-decoration: none;
    background: #f4f7ef;
    color: var(--g);
    padding: 10px 13px;
    border-radius: 999px;
    font-weight: 800
  }

  .section {
    padding: 54px 0
  }

  .grid,
  .two {
    grid-template-columns: 1fr
  }

  .arr {
    display: none
  }

  .slide {
    min-height: 420px;
    padding: 28px 22px
  }

  .art {
    width: 125px;
    height: 125px
  }
  .tns-ovh {
    padding: 30px 0 !important;
  }
}

.home-slider-wrap{position:relative;}
.home-slider{position:relative}
.story-slide{min-height:0;padding:22px;background:var(--milk);border-radius:32px;box-shadow:var(--shadow)}
.story-image{display:block;width:100%;max-width:540px;margin:0 auto;border-radius:26px;box-shadow:0 12px 36px rgba(41,58,45,.18)}
.story-copy{background:#fbfdf9;border:1px solid rgba(44,76,46,.08);border-radius:24px;padding:22px 22px 10px;text-align:left}
.story-copy h2{font-size:clamp(1.35rem,2.6vw,2rem);margin:0 0 14px;text-align:center}
.story-copy p{margin:0 0 14px;font-size:1.03rem;color:#324336}
.story-copy strong{color:var(--g)}
.story-list{margin:0 0 14px;padding:0;list-style:none;display:grid;gap:12px;}
.story-list li{background:#f3f7eb;border-radius:18px;padding:12px 14px;color:#324336}
/* tiny-slider */
.tns-controls{position:absolute;top:43%;left:-24px;right:-24px;display:flex;justify-content:space-between;z-index:3;pointer-events:none}
.tns-controls button{pointer-events:auto;width:48px;height:48px;border:0;border-radius:50%;background:#fff;box-shadow:0 8px 22px rgba(0,0,0,.13);font-size:2rem;color:var(--g);cursor:pointer}
.tns-nav{display:flex;justify-content:center;gap:8px;margin-top:16px}
.tns-nav button{width:8px;height:8px;border:0;border-radius:50%;background:#c9d3c5;padding:0}
.tns-nav button.tns-nav-active{background:var(--g);transform:scale(1.25)}
.tns-ovh{padding:40px 50px;overflow:visible /* !important;margin:-40px -50px*/}
.tns-item{opacity:.2;transition:opacity .3s}
.tns-item.tns-slide-active{opacity:1}
@media(max-width:900px){
  .home-slider-wrap{max-width:680px}
  .story-slide{padding:16px}
  .story-image{max-width:100%;border-radius:22px}
  .story-copy{padding:18px 16px 8px}
  .story-copy p,.story-list li{font-size:.98rem}
}


/* Версия 2: страница «О проекте» */
.about-section{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 18%,rgba(109,145,91,.10),transparent 24%),
    radial-gradient(circle at 88% 76%,rgba(205,166,110,.10),transparent 26%),
    linear-gradient(135deg,#f3f6e9 0%,#fff9ef 52%,#eef3e6 100%);
}
.about-section:before,.about-section:after{
  content:"";position:absolute;border-radius:50%;pointer-events:none;opacity:.22;filter:blur(1px)
}
.about-section:before{width:280px;height:280px;left:-120px;top:130px;background:rgba(101,132,82,.12)}
.about-section:after{width:340px;height:340px;right:-160px;bottom:80px;background:rgba(190,143,84,.10)}
.about-head{position:relative;z-index:1}
.about-head h2{margin-top:.08em}
.about-head p{font-size:1.12rem;color:#5e695e}
.about-slider-wrap{max-width:980px;margin:0 auto;position:relative;z-index:1}
.about-slide{min-height:0;padding:18px;background:transparent;box-shadow:none;display:block}
.about-slider-wrap .tns-controls{top:46%}
.about-card{
  position:relative;overflow:hidden;
  min-height:560px;
  background:rgba(255,253,247,.90);
  border:1px solid rgba(69,91,62,.11);
  border-radius:30px;
  padding:46px 54px 42px;
  text-align:left;
  box-shadow:0 22px 60px rgba(58,75,56,.13);
  backdrop-filter:blur(8px);
}
.about-number{
  position:absolute;right:34px;top:24px;
  font-size:4.1rem;line-height:1;font-weight:900;
  color:rgba(62,93,57,.08);letter-spacing:-.04em
}
.about-watermark{
  position:absolute;right:-8px;bottom:-26px;
  font-size:10rem;line-height:1;opacity:.045;transform:rotate(-12deg);filter:grayscale(1)
}
.about-kicker{
  margin:0 0 8px;color:var(--g2);font-size:.82rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase
}
.about-card h3{
  margin:0 0 22px;max-width:760px;
  color:var(--br);font-size:clamp(1.75rem,3.2vw,2.65rem);line-height:1.13
}
.about-card p{max-width:820px;margin:0 0 16px;font-size:1.07rem;color:#344238}
.about-card strong{color:var(--g)}
.about-accent{
  display:inline-block;margin-top:5px!important;padding:12px 16px;border-left:4px solid var(--g);
  background:rgba(102,139,86,.08);border-radius:0 14px 14px 0;font-weight:800;color:var(--g)!important
}
.about-question{
  margin-top:12px!important;font-size:1.35rem!important;font-weight:900;color:var(--g)!important;line-height:1.3
}
.about-list{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px 18px}
.about-list li{
  position:relative;padding:12px 14px 12px 42px;background:rgba(245,248,239,.88);border-radius:16px;color:#354438;line-height:1.45
}
.about-list li:before{
  content:"";position:absolute;left:15px;top:17px;width:14px;height:14px;border-radius:50% 50% 50% 0;
  background:var(--g2);transform:rotate(-35deg)
}
.about-formats{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;margin-top:14px}
.about-formats div{background:rgba(246,248,240,.92);border-radius:17px;padding:14px 16px;color:#354438;line-height:1.45}
.about-formats strong{display:inline-block;margin-bottom:2px}
.about-brand-close{
  margin-top:34px;padding:22px;border-radius:22px;background:linear-gradient(135deg,rgba(232,240,221,.92),rgba(255,246,231,.92));
  display:grid;gap:6px;text-align:center
}
.about-brand-close strong{font-size:1.28rem;color:var(--br)}
.about-brand-close span{color:#526252}
.about-person-card{display:flex;flex-direction:column;justify-content:center}
@media(max-width:900px){
  .about-slider-wrap{max-width:720px}
  .about-slide{padding:10px}
  .about-card{min-height:0;padding:34px 22px 28px;border-radius:24px}
  .about-number{right:20px;top:18px;font-size:3.1rem}
  .about-card p{font-size:1rem}
  .about-list,.about-formats{grid-template-columns:1fr}
  .about-watermark{font-size:7rem}
}

/* Версия 3: интерактивный Эко-чек */
.eco-check-section{
  position:relative;
  background:
    radial-gradient(circle at 15% 10%,rgba(113,151,91,.10),transparent 28%),
    radial-gradient(circle at 90% 92%,rgba(240,139,49,.08),transparent 26%),
    #fdfcf8;
}
.eco-check-head p{color:#637166}
.eco-check-shell{max-width:930px;margin:0 auto}
.eco-stage{
  background:rgba(255,255,255,.95);
  border:1px solid rgba(44,76,46,.09);
  border-radius:30px;
  padding:36px;
  box-shadow:var(--shadow);
  background-image: url('/tpl/www/assets/ecocheck/stamp.png');
  background-repeat: no-repeat;
  background-blend-mode: overlay;
  background-position: 80% 90%;
}
.eco-start-stage{text-align:center}
.eco-start-stage>p{max-width:760px;margin:0 auto 14px;font-size:1.04rem}
.eco-lead{font-size:1.18rem!important;color:var(--g)}
.eco-domains{display:grid;gap:12px;margin:24px auto;max-width:760px;text-align:left}
.eco-domain{display:flex;align-items:center;gap:14px}
.eco-domain dt{flex:0 0 165px;background:#f3f7eb;border-radius:16px;padding:13px 16px;font-weight:800;color:#415342;text-align:center;white-space:nowrap}
.eco-domain dd{margin:0;flex:1;color:#354438;line-height:1.45}
.eco-main-question{font-size:clamp(1.55rem,3vw,2.2rem);margin:30px 0 18px;color:var(--g)}
.eco-big-btn{font-size:1.08rem;padding:15px 26px}
.eco-progress-row{display:flex;justify-content:space-between;gap:15px;color:var(--g);font-weight:800;margin-bottom:9px}
.eco-progress-track{height:10px;background:#edf1e8;border-radius:999px;overflow:hidden}
.eco-progress-track i{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--o),#d5be55,var(--g));border-radius:999px;transition:width .25s ease}
.eco-question{font-size:clamp(1.3rem,2.7vw,1.8rem);margin:28px 0 22px}
.eco-answers{display:grid;gap:12px}
.eco-answer-btn{
  width:100%;text-align:left;border:1px solid #dae4d5;background:#fbfdf9;color:#2f3f34;
  border-radius:17px;padding:15px 17px;font-size:1rem;line-height:1.45;cursor:pointer;transition:.15s
}
.eco-answer-btn:hover{border-color:var(--g);background:#f1f7ec;transform:translateY(-1px)}
.eco-answer-btn:disabled{opacity:.72;cursor:default}
.eco-result-stage{text-align:center}
.eco-kicker{display:block;font-size:.8rem;font-weight:900;letter-spacing:.12em;color:var(--g2);margin-bottom:8px}
.eco-result-stage>h3{font-size:clamp(1.45rem,3vw,2rem);margin:0}
.eco-index{display:flex;justify-content:center;align-items:baseline;gap:7px;margin:13px 0 4px}
.eco-index b{font-size:clamp(4rem,9vw,6.5rem);line-height:1;color:var(--g)}
.eco-index small{font-size:1.45rem;color:#526153;font-weight:800}
.eco-index-note{max-width:720px;margin:0 auto 24px;color:#5d6a60}
.eco-subscores{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0}
.eco-subscore{display:flex;align-items:center;gap:14px;text-align:left;background:#f5f8f1;border-radius:18px;padding:15px}
.eco-subscore>span{font-size:1.8rem}
.eco-subscore div{display:flex;flex:1;justify-content:space-between;gap:14px;align-items:center}
.eco-subscore strong{font-size:.96rem;color:#405040}
.eco-subscore b{font-size:1.35rem;color:var(--g)}
.eco-mode-card{background:linear-gradient(135deg,#eef4e6,#fff6e9);border-radius:22px;padding:22px;margin:20px 0}
.eco-mode-card>span{font-size:.78rem;font-weight:900;letter-spacing:.1em;color:var(--g2);text-transform:uppercase}
.eco-mode-card h3{margin:5px 0 9px;color:var(--br)}
.eco-mode-card p{max-width:720px;margin:auto}
.eco-tap-meter{margin:24px 0;background:#fffaf1;border:1px solid rgba(79,103,69,.10);border-radius:24px;padding:20px}
.eco-meter-title{font-weight:900;letter-spacing:.08em;color:var(--br);margin-bottom:13px}
.eco-meter-row{display:grid;grid-template-columns:90px 1fr 90px;gap:14px;align-items:center}
.tap-wrap{display:grid;place-items:center;gap:5px;font-weight:800}
.tap-icon{width:72px;height:auto;display:block;transform-origin:center;transition:transform .35s ease}
.orange-tap, 
.green-tap{width:60px}
.eco-meter-center{min-width:0}
.eco-meter-bar{position:relative;height:20px;border-radius:999px;background:linear-gradient(90deg,#e85b25 0%,#e8b635 50%,#3e7c3c 100%);box-shadow:inset 0 0 0 1px rgba(60,60,40,.08)}
.paw-marker{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:1.65rem;transition:left .4s ease;filter:drop-shadow(0 2px 2px rgba(0,0,0,.2));background: #fff; border-radius:50%; width: 3rem; height: 3rem;}
.eco-meter-numbers{display:flex;justify-content:space-between;font-size:.78rem;color:#778178;margin-top:5px}
.eco-tap-meter>p{margin:15px 0 0;font-weight:800;color:var(--g)}
.eco-comment{margin:22px auto;padding:17px 19px;max-width:790px;border-left:4px solid var(--g);background:#f3f7ed;border-radius:0 16px 16px 0;text-align:left;font-weight:700;color:#425044}
.eco-final-stage{text-align:center}
#ecoCheckCanvas{display:block;width:min(100%,620px);height:auto;margin:22px auto;border-radius:20px;box-shadow:0 18px 52px rgba(47,64,47,.18);background:#f4f0df}
.eco-final-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:20px}
.eco-disclaimer{max-width:930px;margin:18px auto 0;padding:0 20px;color:#6b756c;font-size:.9rem;text-align:center}
.eco-modal{position:fixed;inset:0;z-index:1000;background:rgba(25,39,28,.54);display:grid;place-items:center;padding:18px}
.eco-modal-card{position:relative;width:min(100%,480px);background:#fffdf8;border-radius:26px;padding:30px;box-shadow:0 28px 90px rgba(0,0,0,.25)}
.eco-modal-card h3{margin:0 0 20px;font-size:1.7rem}
.eco-modal-card label{display:block;font-weight:800;color:#39493c;margin-bottom:8px}
.eco-modal-card input{width:100%;border:1px solid #cfdacb;border-radius:14px;padding:14px 15px;font:inherit;font-size:1.05rem;margin-bottom:16px;outline:none}
.eco-modal-card input:focus{border-color:var(--g);box-shadow:0 0 0 3px rgba(33,93,52,.10)}
.eco-modal-close{position:absolute;right:13px;top:10px;border:0;background:transparent;font-size:2rem;color:#738074;cursor:pointer}
@media(max-width:700px){
  .eco-stage{padding:24px 17px;border-radius:24px}
  .eco-domain{flex-direction:column;align-items:stretch;gap:6px}
  .eco-domain dt{flex:none;white-space:normal}
  .eco-domain dd{padding:0 4px}
  .eco-subscores{grid-template-columns:1fr}
  .eco-subscore div{gap:8px}
  .eco-meter-row{grid-template-columns:62px 1fr 62px;gap:8px}
  .tap-icon{width:54px}
  .orange-tap{width:62px}
  .green-tap{width:44px}
  .eco-tap-meter{padding:16px 10px}
  .eco-final-actions{display:grid}
  .eco-final-actions>*{width:100%}
}

/* Версия 4: страница «Мультфильм» */
.movie-section{
  background:
    radial-gradient(circle at 10% 10%,rgba(105,145,82,.08),transparent 26%),
    radial-gradient(circle at 90% 85%,rgba(240,139,49,.07),transparent 28%),
    linear-gradient(135deg,#f6f8f1,#fffaf2);
}
.movie-head p{font-size:1.12rem;color:#5e6b60;margin-top:8px}
.movie-shell{
  max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr;
  gap:28px;align-items:start
}
.movie-player-wrap--full{width:100%}
.movie-copy.row{--bs-gutter-x:1.5rem;--bs-gutter-y:1.5rem;margin-left:0;margin-right:0;width:100%}
.movie-player-wrap{
  position:relative;aspect-ratio:16/9;border-radius:30px;overflow:hidden;background:linear-gradient(145deg,#183f2a,#6f9661);
  box-shadow:0 22px 60px rgba(45,63,47,.18);border:1px solid rgba(44,76,46,.12)
}
.movie-player{display:block;width:100%;height:100%;object-fit:contain;background:#173b27}
.movie-play-overlay{
  position:absolute;inset:0;border:0;background:linear-gradient(180deg,rgba(19,54,34,.18),rgba(19,54,34,.64));
  color:#fff;display:grid;place-items:center;align-content:center;gap:12px;cursor:pointer;transition:.2s;padding:24px
}
.movie-play-overlay:hover{background:linear-gradient(180deg,rgba(19,54,34,.10),rgba(19,54,34,.56))}
.movie-play-icon{
  display:grid;place-items:center;width:90px;height:90px;border-radius:50%;background:rgba(255,255,255,.95);color:var(--g);
  font-size:2.2rem;padding-left:5px;box-shadow:0 10px 35px rgba(0,0,0,.18)
}
.movie-play-overlay strong{font-size:1.16rem;letter-spacing:.01em}
.movie-missing-notice{
  position:absolute;left:18px;right:18px;bottom:18px;background:rgba(255,253,247,.94);color:#445246;border-radius:15px;
  padding:11px 14px;font-size:.84rem;line-height:1.4;text-align:center;border:1px solid rgba(51,79,54,.10)
}
.movie-copy h3{font-size:clamp(1.55rem,2.6vw,2.15rem);margin:0 0 16px}
.movie-copy p{font-size:1.04rem;margin:0 0 15px;color:#3d4c40}
.movie-small-things{display:grid;gap:8px;margin:19px 0 20px}
.movie-small-things span{
  position:relative;padding:10px 13px 10px 36px;background:rgba(255,255,255,.72);border-radius:14px;color:#485849;border:1px solid rgba(74,99,67,.08)
}
.movie-small-things span:before{content:'•';position:absolute;left:16px;color:var(--o);font-size:1.3rem;line-height:1}
.movie-thought{color:var(--g)!important;font-size:1.11rem!important;padding:15px 17px;border-left:4px solid var(--g);background:rgba(236,243,226,.75);border-radius:0 15px 15px 0}
.movie-watch-button{margin-top:4px}
.movie-after{max-width:760px;margin:34px auto 0; padding: 0 20px;text-align:center;padding:22px;border-radius:22px;background:rgba(255,255,255,.85);box-shadow:0 12px 34px rgba(46,65,47,.10)}
.movie-after p{margin:0 0 13px;font-weight:800;color:#435246}
.movie-slogan{text-align:center;margin:36px auto 0; padding: 0 20px;font-size:clamp(1.45rem,3vw,2.15rem);font-weight:900;color:var(--g);font-family:Georgia,serif}
@media(max-width:900px){
  .movie-shell{gap:24px}
  .movie-player-wrap{width:100%;border-radius:22px}
  .movie-copy{text-align:left}
  .movie-play-icon{width:76px;height:76px;font-size:1.8rem}
}
@media(max-width:520px){
  .movie-section{padding-left:12px;padding-right:12px}
  .movie-player-wrap{border-radius:18px}
  .movie-missing-notice{left:10px;right:10px;bottom:10px;font-size:.76rem;padding:8px 10px}
  .movie-copy{padding:0 6px}
  .movie-watch-button{width:100%}
}


/* Версия 5: раздел «Новости» */
.news-section{background:linear-gradient(180deg,#fdfcf8 0%,#f7f3e8 100%)}
.news-head{margin-bottom:26px}
.news-hero{max-width:1120px;margin:0 auto 26px;border-radius:30px;overflow:hidden;box-shadow:var(--shadow);border:1px solid rgba(44,76,46,.09);background:var(--milk)}
.news-hero img{display:block;width:100%;height:auto}
.news-feature-card{max-width:920px;margin:0 auto;background:rgba(255,253,248,.96);border-radius:30px;padding:34px;box-shadow:var(--shadow);border:1px solid rgba(44,76,46,.08)}
.news-feature-card h3{font-size:clamp(1.55rem,3vw,2.25rem);margin:.35em 0 .7em}
.news-feature-card p{font-size:1.04rem;color:#344638}
.news-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px;color:var(--g2);font-weight:800}
.news-badge{display:inline-flex;align-items:center;border-radius:999px;background:#eef4e7;color:var(--g);padding:7px 12px;font-size:.82rem;letter-spacing:.05em;text-transform:uppercase}
.news-ecoshas-note{margin:24px 0;padding:20px 22px;border-radius:22px;background:linear-gradient(135deg,#edf5e6,#fff6e8);border-left:5px solid var(--o)}
.news-ecoshas-note strong{color:var(--g);font-size:1.08rem}
.news-ecoshas-note p{margin:.65em 0 0}
.news-slogan{font-weight:900;color:var(--g)!important;font-size:1.2rem!important;margin:22px 0}
.news-link{margin-top:4px}
.news-future-note{max-width:760px;margin:22px auto 0; padding: 0 20px;text-align:center;color:#5c695f;font-size:.96rem}
.news-future-note strong{color:var(--g)}
.news-future-note p{margin:.35em 0 0}
@media(max-width:900px){
  .news-hero{border-radius:22px;margin-bottom:18px}
  .news-feature-card{padding:24px 18px;border-radius:24px}
  .news-feature-card p{font-size:1rem}
  .news-ecoshas-note{padding:17px 16px;border-radius:18px}
  .news-link{width:100%}
}

/* Версия 7: раздел «Партнёры» — bootstrap row + justify-content-center */
.partners{max-width:1180px;margin-left:auto;margin-right:auto}
.partners article{display:flex;flex-direction:column;align-items:center;text-align:center;height:100%}
.partners article p{flex:1}
.partners .secondary{margin-top:auto}
