/* FINAL STABLE LAYER — intentionally loaded after styles.css */

:root{
  --cream:#f1ebe2;
  --cream2:#e8dfd3;
  --ink:#171813;
  --ink2:#24231f;
  --champagne:#c9a66d;
  --mint:#58d3b0;
  --mint2:#48c39e;
}

/* -------- overall visual rhythm -------- */
.manifesto,
.pricing,
.faq{
  background:linear-gradient(180deg,var(--cream) 0%,var(--cream2) 100%) !important;
  color:var(--ink) !important;
}
.manifesto .kicker,
.pricing .kicker,
.faq .kicker{color:#8e6d3d !important}
.manifesto h2,
.pricing h2,
.faq h2{color:var(--ink) !important}
.manifesto h2 em,
.pricing h2 em,
.faq h2 em{color:#9c7440 !important}
.manifesto-copy p,
.price-sub,
.faq-list details p{color:#5e5a52 !important}

/* -------- electrolysis explanation: no overlap in any language -------- */
.manifesto{
  max-width:none !important;
  margin:0 !important;
  padding:clamp(90px,9vw,150px) var(--pad) !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(420px,520px) !important;
  gap:clamp(40px,5vw,78px) !important;
  align-items:center !important;
}
.manifesto-copy{
  width:100% !important;
  max-width:690px !important;
  min-width:0 !important;
  padding:0 !important;
  position:relative !important;
  z-index:2 !important;
}
.manifesto-copy h2{
  max-width:10.5ch !important;
  min-height:0 !important;
  margin:0 0 26px !important;
  font-size:clamp(48px,5vw,84px) !important;
  line-height:.94 !important;
  letter-spacing:-.04em !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
}
html[lang="ru"] .manifesto-copy h2,
html[lang="uk"] .manifesto-copy h2{
  max-width:12.5ch !important;
  font-size:clamp(40px,4.25vw,68px) !important;
  line-height:.98 !important;
}
.manifesto-copy p[data-i18n="whatP1"],
.manifesto-copy p[data-i18n="whatP2"]{
  max-width:600px !important;
  min-height:0 !important;
  font-size:16px !important;
  line-height:1.62 !important;
}
.process-art{
  width:100% !important;
  max-width:520px !important;
  height:520px !important;
  justify-self:end !important;
  border-radius:28px !important;
  overflow:hidden !important;
  box-shadow:0 26px 70px rgba(50,38,24,.20) !important;
}

/* -------- zones: fixed model + numbered points, no lines -------- */
.zones-stage.single-stage{
  max-width:1460px !important;
  margin-inline:auto !important;
}
.single-stage .model-stage.diagram-stage{
  position:relative !important;
  min-height:900px !important;
  border:1px solid rgba(232,216,184,.14) !important;
  border-radius:30px !important;
  overflow:hidden !important;
  contain:layout paint !important;
  background:
    radial-gradient(circle at 73% 28%,rgba(225,170,92,.18),transparent 28%),
    linear-gradient(110deg,#080a0a 0%,#101313 47%,#27170e 100%) !important;
  box-shadow:0 30px 85px rgba(0,0,0,.26) !important;
}
.single-stage .model-stage.diagram-stage::after{display:none !important}
.single-stage .zone-lines{display:none !important}
.single-stage .model-halo{
  width:46% !important;
  right:8% !important;
  top:15% !important;
  opacity:.55 !important;
}
.single-stage .zone-overlay-list{
  position:absolute !important;
  left:28px !important;
  top:34px !important;
  width:370px !important;
  display:flex !important;
  flex-direction:column !important;
  gap:14px !important;
  z-index:6 !important;
}
.single-stage .zone-item{
  width:100% !important;
  min-height:110px !important;
  padding:18px 20px !important;
  display:grid !important;
  grid-template-columns:42px minmax(0,1fr) !important;
  gap:5px 14px !important;
  align-items:start !important;
  border-radius:20px !important;
  border:1px solid rgba(235,219,189,.15) !important;
  background:rgba(15,17,17,.77) !important;
  box-shadow:none !important;
  backdrop-filter:blur(10px) !important;
  transition:border-color .22s ease,background .22s ease,transform .22s ease !important;
}
.single-stage .zone-item span{
  grid-row:1/3 !important;
  padding-top:3px !important;
  color:#aa8a53 !important;
  font-size:13px !important;
}
.single-stage .zone-item strong{
  grid-column:2 !important;
  font-size:23px !important;
  line-height:1.08 !important;
  color:#eee8df !important;
}
.single-stage .zone-item small{
  grid-column:2 !important;
  min-height:0 !important;
  margin-top:3px !important;
  font-size:12px !important;
  line-height:1.42 !important;
  color:#aaa49b !important;
}
.single-stage .zone-item:hover,
.single-stage .zone-item.active{
  padding:18px 20px !important;
  transform:translateX(3px) !important;
  border-color:rgba(231,195,124,.55) !important;
  background:linear-gradient(135deg,rgba(197,151,78,.22),rgba(255,255,255,.035)) !important;
}
.single-stage .zone-item.active strong{color:#f5e2ba !important}

.single-stage .zones-figure{
  position:absolute !important;
  right:2.5% !important;
  bottom:0 !important;
  width:49% !important;
  height:97% !important;
  max-width:none !important;
  margin:0 !important;
  display:block !important;
  z-index:2 !important;
}
.single-stage .zones-figure .zones-model-display{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:contain !important;
  object-position:center bottom !important;
  right:auto !important;
  bottom:auto !important;
  transform:none !important;
  translate:none !important;
  transition:none !important;
  filter:saturate(.92) contrast(1.02) brightness(.98) drop-shadow(0 28px 70px rgba(0,0,0,.38)) !important;
}
.single-stage .zones-figure .zone-points{
  position:absolute !important;
  inset:0 !important;
  z-index:4 !important;
}
.single-stage .zone-dot{
  position:absolute !important;
  left:var(--x) !important;
  top:var(--y) !important;
  width:34px !important;
  height:34px !important;
  transform:translate(-50%,-50%) !important;
  display:grid !important;
  place-items:center !important;
  border-radius:50% !important;
  border:1px solid rgba(255,242,215,.96) !important;
  background:rgba(18,18,17,.82) !important;
  color:#f8ecd0 !important;
  font:600 11px/1 var(--sans) !important;
  box-shadow:0 0 0 5px rgba(221,175,91,.10),0 8px 22px rgba(0,0,0,.34) !important;
  cursor:pointer !important;
  transition:transform .2s ease,background .2s ease,box-shadow .2s ease !important;
}
.single-stage .zone-dot::before{display:none !important}
.single-stage .zone-dot.active,
.single-stage .zone-dot:hover,
.single-stage .zone-dot:focus-visible{
  transform:translate(-50%,-50%) scale(1.12) !important;
  background:linear-gradient(135deg,#c7964d,#e9ca8c) !important;
  color:#17120c !important;
  box-shadow:0 0 0 9px rgba(224,177,91,.16),0 10px 28px rgba(0,0,0,.38) !important;
  outline:none !important;
}
.single-stage .model-caption{
  left:28px !important;
  bottom:22px !important;
  max-width:330px !important;
  padding:10px 12px !important;
  border:1px solid rgba(255,255,255,.06) !important;
  border-radius:12px !important;
  background:rgba(8,9,9,.76) !important;
  color:#aaa39a !important;
  font-size:11px !important;
  z-index:7 !important;
}

/* -------- comparison table: one header color, one bullet only -------- */
.compare-table-premium{
  max-width:1260px !important;
  margin-inline:auto !important;
  border:1px solid rgba(232,219,194,.14) !important;
  border-radius:28px !important;
  overflow:hidden !important;
  background:#101212 !important;
  box-shadow:0 28px 75px rgba(0,0,0,.24) !important;
}
.compare-row{
  display:grid !important;
  grid-template-columns:1.08fr 1fr 1fr !important;
  min-height:104px !important;
  border-bottom:1px solid rgba(232,219,194,.11) !important;
  background:transparent !important;
}
.compare-row:last-child{border-bottom:0 !important}
.compare-row > div{
  min-height:0 !important;
  padding:21px 22px !important;
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  border-right:1px solid rgba(232,219,194,.11) !important;
  border-bottom:0 !important;
}
.compare-row > div:last-child{border-right:0 !important}
.compare-row.compare-header > div,
.compare-row.compare-header > div:first-child,
.compare-row.compare-header > div:nth-child(2),
.compare-row.compare-header > div:nth-child(3),
.compare-row.compare-header > div:last-child{
  background:linear-gradient(180deg,var(--mint) 0%,var(--mint2) 100%) !important;
  color:#11251d !important;
  font:500 clamp(22px,2vw,30px)/1.05 var(--serif) !important;
  letter-spacing:-.02em !important;
  text-transform:none !important;
  border-right:1px solid rgba(17,37,29,.18) !important;
}
.compare-row.compare-header > div:last-child{border-right:0 !important}
.compare-row:not(.compare-header) > div:first-child{
  background:rgba(255,255,255,.018) !important;
  color:#f0e7d8 !important;
  font:400 clamp(17px,1.5vw,22px)/1.25 var(--serif) !important;
}
.compare-row:not(.compare-header) > div:nth-child(2){
  background:rgba(199,160,92,.10) !important;
  color:#f2eadc !important;
}
.compare-row:not(.compare-header) > div:nth-child(3){
  background:rgba(255,255,255,.025) !important;
  color:#d3ccbf !important;
}
.compare-row:nth-child(odd):not(.compare-header) > div:nth-child(2){background:rgba(199,160,92,.13) !important}
.compare-row:nth-child(odd):not(.compare-header) > div:nth-child(3){background:rgba(255,255,255,.036) !important}
.compare-row .result{align-items:flex-start !important}
.compare-row .result span:last-child{
  font-size:14px !important;
  line-height:1.45 !important;
}
.compare-row .bulletmark{display:none !important}
.compare-row .result::before{
  content:"" !important;
  width:8px !important;
  height:8px !important;
  flex:0 0 8px !important;
  margin-top:.52em !important;
  border-radius:50% !important;
  background:#ecd39a !important;
  box-shadow:0 0 0 3px rgba(236,211,154,.08) !important;
}

/* -------- light price and FAQ sections -------- */
.pricing{
  border-color:rgba(60,48,31,.10) !important;
}
.price-intro{color:var(--ink) !important}
.price-card.price-card-equal{
  background:rgba(255,255,255,.52) !important;
  border-color:rgba(108,82,44,.18) !important;
  color:var(--ink) !important;
  box-shadow:0 24px 55px rgba(66,50,30,.10) !important;
}
.price-card.price-card-equal .price-session,
.price-card.price-card-equal .price-note{color:#5d584f !important}
.price-card.price-card-equal .price-note.muted{color:#8d6532 !important}
.price-card.price-card-equal .price-number strong{color:#1b1a17 !important}
.price-card.price-card-equal .price-number span{color:#9a6d33 !important}
.faq-list details{border-color:rgba(74,59,38,.16) !important}
.faq-list summary{color:#25231e !important}
.faq-list summary > span:last-child{color:#9a6d33 !important}

/* -------- responsive -------- */
@media (max-width:1050px){
  .manifesto{grid-template-columns:1fr !important}
  .manifesto-copy{max-width:none !important}
  .process-art{justify-self:stretch !important;max-width:none !important;height:460px !important}
  .single-stage .model-stage.diagram-stage{min-height:860px !important}
  .single-stage .zone-overlay-list{width:42% !important;left:18px !important}
  .single-stage .zones-figure{width:52% !important;right:0 !important}
}
@media (max-width:760px){
  .manifesto-copy h2,
  html[lang="ru"] .manifesto-copy h2,
  html[lang="uk"] .manifesto-copy h2{
    max-width:100% !important;
    font-size:clamp(40px,11vw,56px) !important;
  }
  .single-stage .model-stage.diagram-stage{
    min-height:auto !important;
    display:flex !important;
    flex-direction:column !important;
    padding:18px !important;
  }
  .single-stage .zones-figure{
    position:relative !important;
    order:1 !important;
    width:min(100%,390px) !important;
    height:auto !important;
    aspect-ratio:2/3 !important;
    right:auto !important;
    bottom:auto !important;
    margin:0 auto 18px !important;
  }
  .single-stage .zone-overlay-list{
    position:relative !important;
    order:2 !important;
    width:100% !important;
    left:auto !important;
    top:auto !important;
    gap:10px !important;
  }
  .single-stage .zone-item{
    min-height:88px !important;
    padding:14px !important;
  }
  .single-stage .zone-item:hover,
  .single-stage .zone-item.active{padding:14px !important;transform:none !important}
  .single-stage .zone-item strong{font-size:18px !important}
  .single-stage .zone-item small{font-size:11px !important}
  .single-stage .model-caption{
    position:relative !important;
    order:3 !important;
    left:auto !important;
    bottom:auto !important;
    max-width:none !important;
    margin-top:12px !important;
  }
  .compare-table-premium{overflow-x:auto !important}
  .compare-row{min-width:720px !important}
}

/* keep the complete three-cell comparison header visible on every viewport */
.compare-row.compare-header > div,
.compare-row.compare-header > div:first-child{
  display:flex !important;
  grid-column:auto !important;
}

/* ===== 2026-08-01 premium visual polish pass ===== */
:root{
  --cream-soft:#eee5d8;
  --cream-soft-2:#e7ddd0;
  --ink-soft:#25211c;
  --ink-soft-2:#5d564c;
}

/* Hero: keep palette, tighten composition, enlarge visual slightly */
.hero{
  grid-template-columns:minmax(0,1fr) minmax(500px,1fr) !important;
  padding:112px var(--pad) 56px !important;
}
.hero-content{max-width:760px !important;}
.hero-tagline{max-width:760px !important;}
.hero-copy{max-width:560px !important;}
.hero-visual{min-height:560px !important;}
.visual-frame{
  width:min(760px,56vw) !important;
  border-radius:28px !important;
  box-shadow:0 40px 90px rgba(0,0,0,.55), 0 0 0 1px rgba(233,210,159,.06) inset !important;
}
.visual-frame::before{
  content:"";
  position:absolute;
  inset:auto 12% 8% 12%;
  height:26%;
  border-radius:50%;
  background:radial-gradient(circle, rgba(227,180,92,.28) 0%, rgba(227,180,92,.10) 35%, transparent 72%);
  filter:blur(30px);
  pointer-events:none;
  z-index:0;
}
.follicle-glow{filter:blur(14px) !important; opacity:.9;}

/* Manifesto / What is electrolysis: larger image, less empty space, safer title sizing */
.manifesto{
  grid-template-columns:minmax(0,.92fr) minmax(480px,1.08fr) !important;
  gap:clamp(24px,3.2vw,48px) !important;
  padding:clamp(86px,8vw,124px) var(--pad) !important;
  max-width:1440px !important;
}
.manifesto-copy{max-width:560px !important; padding-right:0 !important;}
.manifesto-copy h2{
  max-width:7.8ch !important;
  font-size:clamp(46px,4.9vw,78px) !important;
  line-height:.96 !important;
  margin-bottom:22px !important;
}
.manifesto-copy p[data-i18n="whatP1"],
.manifesto-copy p[data-i18n="whatP2"]{
  max-width:540px !important;
  font-size:16px !important;
  line-height:1.58 !important;
}
html[lang="ru"] .manifesto-copy h2,
html[lang="uk"] .manifesto-copy h2{
  max-width:8.5ch !important;
  font-size:clamp(38px,4vw,62px) !important;
  line-height:.98 !important;
}
html[lang="ru"] .manifesto-copy p[data-i18n="whatP1"],
html[lang="uk"] .manifesto-copy p[data-i18n="whatP1"],
html[lang="ru"] .manifesto-copy p[data-i18n="whatP2"],
html[lang="uk"] .manifesto-copy p[data-i18n="whatP2"]{
  max-width:520px !important;
  font-size:15px !important;
  line-height:1.56 !important;
}
.process-art{
  max-width:none !important;
  width:100% !important;
  height:590px !important;
  border-radius:30px !important;
  box-shadow:0 36px 90px rgba(0,0,0,.34) !important;
  background:
    radial-gradient(circle at 56% 60%, rgba(188,128,48,.24), transparent 30%),
    radial-gradient(circle at 50% 80%, rgba(255,219,151,.12), transparent 28%),
    #0b0b0b !important;
}
.process-image{inset:6% 4% 8% !important;}
.process-image img{transform:scale(1.52) !important; object-position:54% center !important;}
.process-art::before{
  content:"";
  position:absolute;
  inset:18% 11% 12% 11%;
  border-radius:28px;
  border:1px solid rgba(236,212,160,.10);
  pointer-events:none;
  z-index:1;
}
.process-note{
  left:24px !important;
  bottom:22px !important;
  max-width:76% !important;
  background:rgba(8,9,8,.56);
  border:1px solid rgba(255,255,255,.06);
  border-radius:12px;
  padding:10px 14px;
}

/* Slightly cream, not white */
.pricing,
.aftercare,
.faq{
  background:linear-gradient(180deg, var(--cream-soft) 0%, var(--cream-soft-2) 100%) !important;
}
.pricing .kicker,
.aftercare .kicker,
.faq .kicker{color:#9f8457 !important;}
.price-intro,
.aftercare-head,
.faq-title,
.pricing h2,
.aftercare h2,
.faq h2,
.pricing p,
.aftercare p,
.faq p{color:var(--ink-soft) !important;}
.aftercare-grid > div{
  background:rgba(255,255,255,.42) !important;
  border-color:rgba(109,84,50,.12) !important;
  color:#433d33 !important;
}
.faq-title p:last-child{color:#756d62 !important;}
.faq-list details p{color:#5f584d !important;}

/* Zones: stable two-column layout with on-body dots only */
.single-stage .zone-lines{display:none !important;}
.single-stage .model-stage.diagram-stage{
  display:grid !important;
  grid-template-columns:minmax(320px,360px) minmax(0,1fr) !important;
  gap:26px !important;
  align-items:stretch !important;
  min-height:850px !important;
  padding:28px !important;
  overflow:hidden !important;
}
.single-stage .zone-overlay-list{
  position:relative !important;
  left:auto !important;
  top:auto !important;
  width:100% !important;
  gap:12px !important;
  align-self:start !important;
}
.single-stage .zone-item{
  min-height:94px !important;
  padding:16px 18px !important;
  border-radius:20px !important;
}
.single-stage .zone-item:hover,
.single-stage .zone-item.active{padding:16px 18px !important;}
.single-stage .zone-item strong{font-size:21px !important;}
.single-stage .zone-item small{font-size:11.5px !important; line-height:1.42 !important;}
.single-stage .zone-item span{font-size:13px !important;}
.zones-figure{
  position:relative !important;
  right:auto !important;
  bottom:auto !important;
  width:100% !important;
  height:100% !important;
  min-height:760px !important;
}
.zones-model-display{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:contain !important;
  object-position:center bottom !important;
  transform:none !important;
  filter:saturate(.98) contrast(1.03) drop-shadow(0 26px 60px rgba(0,0,0,.42)) !important;
}
.zone-points{inset:0 !important; z-index:5 !important;}
.zone-dot{
  width:34px !important;
  height:34px !important;
  font-size:11px !important;
  box-shadow:0 0 0 6px rgba(225,179,86,.10), 0 10px 24px rgba(0,0,0,.32) !important;
}
.model-caption{
  max-width:360px !important;
  background:rgba(8,9,10,.62) !important;
}
@media (max-width:1100px){
  .single-stage .model-stage.diagram-stage{
    grid-template-columns:minmax(280px,42%) minmax(0,58%) !important;
    min-height:790px !important;
    gap:20px !important;
    padding:22px !important;
  }
  .zones-figure{min-height:700px !important;}
}
@media (max-width:760px){
  .single-stage .model-stage.diagram-stage{
    display:flex !important;
    flex-direction:column !important;
    min-height:auto !important;
    padding:18px !important;
  }
  .single-stage .zone-overlay-list{order:2 !important;}
  .zones-figure{
    order:1 !important;
    width:min(100%,390px) !important;
    min-height:auto !important;
    aspect-ratio:2/3 !important;
    margin:0 auto 18px !important;
  }
  .zones-model-display{position:absolute !important; inset:0 !important;}
}

/* Compare block: cleaner hierarchy, softer electro column, no duplicate bullets */
.compare{padding-top:clamp(90px,9vw,136px) !important;}
.compare-head{max-width:1220px !important; margin:0 auto 30px !important;}
.compare-main-title{
  max-width:14ch !important;
  font-size:clamp(44px,5vw,78px) !important;
}
.compare-table-premium{
  max-width:1240px !important;
  border-radius:28px !important;
  box-shadow:0 30px 80px rgba(0,0,0,.24) !important;
}
.compare-row{min-height:98px !important;}
.compare-row > div{padding:20px 20px !important;}
.compare-row.compare-header > div,
.compare-row.compare-header > div:first-child,
.compare-row.compare-header > div:nth-child(2),
.compare-row.compare-header > div:nth-child(3){
  background:linear-gradient(180deg,#64e0bc 0%, #52c8a8 100%) !important;
  color:#163127 !important;
  font:500 clamp(21px,1.95vw,29px)/1.06 var(--serif) !important;
}
.compare-row:not(.compare-header) > div:first-child{
  font:400 clamp(16px,1.45vw,21px)/1.22 var(--serif) !important;
  color:#eee6d8 !important;
}
.compare-row:not(.compare-header) > div:nth-child(2){
  background:rgba(204,184,147,.13) !important;
  color:#f2eadc !important;
}
.compare-row:not(.compare-header) > div:nth-child(3){
  background:rgba(255,255,255,.025) !important;
  color:#d7cfbf !important;
}
.compare-row .result{gap:10px !important; align-items:flex-start !important;}
.compare-row .bulletmark{display:none !important;}
.compare-row .result::before{
  content:"" !important;
  width:8px !important;
  height:8px !important;
  margin-top:.48em !important;
  border-radius:50% !important;
  background:#ecd39a !important;
  box-shadow:0 0 0 3px rgba(236,211,154,.08) !important;
}
.compare-row .result span:last-child{
  font-size:14px !important;
  line-height:1.42 !important;
}

@media (max-width:1050px){
  .hero{grid-template-columns:1fr !important; padding-top:126px !important;}
  .hero-visual{margin-top:10px !important;}
  .manifesto{grid-template-columns:1fr !important; gap:28px !important;}
  .manifesto-copy{max-width:none !important;}
  .process-art{height:500px !important;}
}
@media (max-width:760px){
  .visual-frame{width:100% !important;}
  .manifesto-copy h2,
  html[lang="ru"] .manifesto-copy h2,
  html[lang="uk"] .manifesto-copy h2{
    max-width:100% !important;
    font-size:clamp(40px,10.5vw,54px) !important;
  }
  .process-art{height:420px !important;}
}

/* ===== Final rebuild pass: manifesto + zones + aftercare/faq ===== */

/* Softer cream cards without changing text */
.manifesto,
.aftercare,
.faq{
  max-width:1360px !important;
  margin:24px auto 0 !important;
  border:1px solid rgba(173,148,107,.20) !important;
  border-radius:32px !important;
  box-shadow:0 22px 60px rgba(0,0,0,.18) !important;
  overflow:hidden !important;
}

/* --- WHAT IS ELECTROLYSIS --- */
.manifesto{
  display:grid !important;
  grid-template-columns:minmax(0,.9fr) minmax(420px,1.05fr) !important;
  gap:20px !important;
  padding:0 !important;
  background:linear-gradient(180deg,#f7f2ea 0%,#f0e9dd 100%) !important;
}
.manifesto-copy{
  max-width:none !important;
  padding:clamp(34px,5vw,62px) 0 clamp(34px,5vw,62px) clamp(28px,4vw,56px) !important;
  color:#27211b !important;
}
.manifesto-copy .kicker{color:#9a7a42 !important;}
.manifesto-copy h2,
html[lang="ru"] .manifesto-copy h2,
html[lang="uk"] .manifesto-copy h2{
  max-width:9ch !important;
  margin-bottom:22px !important;
  font-size:clamp(48px,5.2vw,84px) !important;
  line-height:.92 !important;
  letter-spacing:-.04em !important;
  color:#181411 !important;
}
html[lang="ru"] .manifesto-copy h2,
html[lang="uk"] .manifesto-copy h2{
  max-width:11ch !important;
  font-size:clamp(42px,4.5vw,70px) !important;
}
.manifesto-copy p[data-i18n="whatP1"],
.manifesto-copy p[data-i18n="whatP2"]{
  max-width:600px !important;
  min-height:auto !important;
  color:#5d554a !important;
  font-size:17px !important;
  line-height:1.62 !important;
  margin:0 0 18px !important;
}
.process-art{
  align-self:stretch !important;
  justify-self:stretch !important;
  height:auto !important;
  min-height:520px !important;
  margin:20px 20px 20px 0 !important;
  border-radius:28px !important;
  border:1px solid rgba(70,58,42,.16) !important;
  background:linear-gradient(145deg,#221a14 0%,#17120f 45%,#0d0b0a 100%) !important;
  box-shadow:0 18px 40px rgba(0,0,0,.24) !important;
}
.process-image{inset:5% 5% 10% !important;}
.process-image img{
  object-position:center center !important;
  transform:scale(1.16) !important;
  filter:saturate(.9) contrast(1.08) !important;
}
.process-art:after{
  background:linear-gradient(90deg,rgba(11,10,10,.16),transparent 28% 72%,rgba(11,10,10,.22)),linear-gradient(to bottom,transparent 58%,rgba(10,10,10,.72)) !important;
}
.process-note{
  left:26px !important;
  right:26px !important;
  bottom:18px !important;
  padding:14px 16px !important;
  border-radius:18px !important;
  background:rgba(10,10,10,.42) !important;
  backdrop-filter:blur(6px) !important;
}
.process-note p{color:#ddd2c0 !important;}
.follicle-entry-marker{
  position:absolute !important;
  z-index:4 !important;
  right:22% !important;
  top:33% !important;
  width:84px !important;
  height:84px !important;
  border-radius:50% !important;
  border:1px solid rgba(229,190,108,.22) !important;
  box-shadow:0 0 0 12px rgba(226,177,86,.05), inset 0 0 28px rgba(226,177,86,.10) !important;
}
.follicle-entry-marker i{
  position:absolute; inset:50% auto auto 50%; width:12px; height:12px; border-radius:50%; transform:translate(-50%,-50%); background:#f0cb81;
}
.follicle-entry-marker span{
  position:absolute; left:50%; top:50%; width:100%; height:100%; border-radius:50%; transform:translate(-50%,-50%); border:1px solid rgba(240,203,129,.32);
}

/* --- ZONES: stable final version with numbered dots only --- */
.zones-stage.single-stage{display:block !important;}
.single-stage .model-stage.diagram-stage{
  display:grid !important;
  grid-template-columns:minmax(300px,345px) minmax(0,1fr) !important;
  gap:26px !important;
  align-items:stretch !important;
  min-height:820px !important;
  padding:28px !important;
  border-radius:30px !important;
  background:radial-gradient(circle at 70% 28%,rgba(165,118,63,.20),transparent 26%),linear-gradient(145deg,#121315 0%,#0b0c0e 52%,#101011 100%) !important;
  box-shadow:0 20px 60px rgba(0,0,0,.26) !important;
}
.single-stage .zone-overlay-list{
  position:relative !important;
  width:100% !important;
  left:auto !important;
  top:auto !important;
  display:flex !important;
  flex-direction:column !important;
  gap:12px !important;
  align-self:center !important;
  z-index:3 !important;
}
.single-stage .zone-item{
  min-height:98px !important;
  padding:16px 18px !important;
  border-radius:20px !important;
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015)) !important;
  border:1px solid rgba(225,191,120,.16) !important;
  box-shadow:0 10px 24px rgba(0,0,0,.16) !important;
}
.single-stage .zone-item:hover,
.single-stage .zone-item.active{
  padding:16px 18px !important;
  border-color:rgba(229,194,118,.42) !important;
  background:linear-gradient(180deg,rgba(203,157,79,.16),rgba(255,255,255,.03)) !important;
}
.single-stage .zone-item strong{font-size:22px !important; line-height:1.06 !important;}
.single-stage .zone-item small{font-size:11.5px !important; line-height:1.42 !important; color:#a69e92 !important;}
.single-stage .zone-item span{font-size:13px !important; color:#d2ae6d !important;}
.zones-figure{
  position:relative !important;
  display:flex !important;
  align-items:flex-end !important;
  justify-content:center !important;
  min-height:760px !important;
}
.zones-figure-inner{
  position:relative !important;
  width:min(100%,560px) !important;
  height:100% !important;
  min-height:760px !important;
}
.single-stage .zones-model-display{
  position:absolute !important;
  inset:auto 0 0 0 !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:contain !important;
  object-position:center bottom !important;
  transform:none !important;
  filter:saturate(1) contrast(1.02) drop-shadow(0 28px 48px rgba(0,0,0,.34)) !important;
}
.zone-points{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  z-index:5 !important;
}
.zone-dot{
  width:38px !important;
  height:38px !important;
  font-size:11px !important;
  border:2px solid rgba(255,238,209,.9) !important;
  background:rgba(33,34,37,.9) !important;
  color:#fff !important;
  box-shadow:0 0 0 5px rgba(225,179,86,.14), 0 12px 24px rgba(0,0,0,.34) !important;
}
.zone-dot.active{
  background:linear-gradient(180deg,#f1d28f,#d3a95f) !important;
  color:#1e1913 !important;
  transform:translate(-50%,-50%) scale(1.08) !important;
}
.model-caption{
  position:absolute !important;
  left:28px !important;
  bottom:22px !important;
  z-index:6 !important;
  padding:10px 14px !important;
  border-radius:14px !important;
  background:rgba(10,10,10,.42) !important;
  color:#b5ada2 !important;
}

/* --- AFTERCARE --- */
.aftercare{
  display:grid !important;
  grid-template-columns:minmax(260px,330px) minmax(0,1fr) !important;
  gap:0 !important;
  padding:0 !important;
  background:linear-gradient(180deg,#f7f2ea 0%,#efe8dd 100%) !important;
}
.aftercare-head{
  padding:clamp(30px,4vw,52px) 0 clamp(30px,4vw,52px) clamp(24px,3vw,44px) !important;
}
.aftercare-head .kicker{color:#9a7a42 !important;}
.aftercare-head h2,
html[lang="ru"] .aftercare-head h2,
html[lang="uk"] .aftercare-head h2{
  font-size:clamp(42px,4.6vw,74px) !important;
  line-height:.94 !important;
  max-width:8ch !important;
  color:#181411 !important;
  margin-bottom:0 !important;
}
.aftercare-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:18px !important;
  padding:clamp(24px,3vw,38px) !important;
  align-content:center !important;
}
.aftercare-grid div{
  min-height:108px !important;
  padding:22px 22px 22px 52px !important;
  position:relative !important;
  border-radius:22px !important;
  background:rgba(255,255,255,.62) !important;
  border:1px solid rgba(157,134,99,.18) !important;
  box-shadow:0 10px 30px rgba(66,54,36,.08) !important;
  color:#5a5448 !important;
  font-size:15px !important;
  line-height:1.5 !important;
}
.aftercare-grid div::before{
  content:"✓" !important;
  position:absolute !important;
  left:18px !important;
  top:18px !important;
  width:22px !important;
  height:22px !important;
  border-radius:50% !important;
  display:grid !important;
  place-items:center !important;
  background:rgba(93,201,165,.16) !important;
  color:#46886f !important;
  font-size:13px !important;
  font-weight:700 !important;
}

/* --- FAQ --- */
.faq{
  display:grid !important;
  grid-template-columns:minmax(270px,350px) minmax(0,1fr) !important;
  gap:0 !important;
  padding:0 !important;
  background:linear-gradient(180deg,#f7f2ea 0%,#efe8dd 100%) !important;
}
.faq-title{
  position:relative !important;
  top:auto !important;
  padding:clamp(30px,4vw,52px) 0 clamp(30px,4vw,52px) clamp(24px,3vw,44px) !important;
  align-self:start !important;
}
.faq-title .kicker{color:#9a7a42 !important;}
.faq-title h2{
  margin:0 !important;
  font-size:clamp(42px,4.9vw,78px) !important;
  line-height:.94 !important;
  color:#171310 !important;
  max-width:7ch !important;
}
.faq-list{
  padding:24px clamp(20px,3vw,36px) clamp(24px,3vw,36px) 0 !important;
}
.faq-list details{
  border-top:1px solid rgba(126,108,78,.18) !important;
}
.faq-list details:last-child{
  border-bottom:1px solid rgba(126,108,78,.18) !important;
}
.faq-list summary{
  min-height:74px !important;
  padding:20px 6px !important;
  color:#3f392f !important;
  font:400 clamp(18px,1.8vw,26px)/1.26 var(--serif) !important;
}
.faq-list summary > span:last-child{color:#aa8650 !important; font-size:28px !important;}
.faq-list details p{
  padding:0 6px 20px !important;
  color:#665f54 !important;
  font-size:15px !important;
  line-height:1.58 !important;
}

@media (max-width:1180px){
  .manifesto{grid-template-columns:1fr !important;}
  .process-art{margin:0 22px 22px !important; min-height:460px !important;}
  .manifesto-copy{padding-right:28px !important;}
  .single-stage .model-stage.diagram-stage{grid-template-columns:minmax(280px,320px) minmax(0,1fr) !important;}
  .zones-figure-inner{width:min(100%,500px) !important;}
  .aftercare,.faq{grid-template-columns:1fr !important;}
  .aftercare-head,.faq-title{padding-right:24px !important;}
  .faq-list{padding:0 24px 24px !important;}
}
@media (max-width:860px){
  .single-stage .model-stage.diagram-stage{
    display:flex !important;
    flex-direction:column !important;
    min-height:auto !important;
  }
  .zones-figure{min-height:auto !important; order:1 !important;}
  .zones-figure-inner{min-height:auto !important; width:min(100%,420px) !important; aspect-ratio:2/3 !important;}
  .single-stage .zone-overlay-list{order:2 !important;}
  .aftercare-grid{grid-template-columns:1fr !important;}
}
@media (max-width:640px){
  .manifesto,
  .aftercare,
  .faq{border-radius:24px !important;}
  .manifesto-copy,
  .aftercare-head,
  .faq-title{padding:26px 20px 18px !important;}
  .process-art{margin:0 16px 16px !important; min-height:360px !important;}
  .single-stage .model-stage.diagram-stage{padding:18px !important; gap:18px !important;}
  .single-stage .zone-item{min-height:88px !important;}
  .single-stage .zone-item strong{font-size:19px !important;}
  .single-stage .zone-item small{font-size:11px !important;}
  .aftercare-grid{padding:0 16px 16px !important;}
  .aftercare-grid div{min-height:unset !important; padding:18px 18px 18px 48px !important;}
  .faq-list{padding:0 16px 18px !important;}
  .faq-list summary{font-size:20px !important;}
}

/* ===== Emergency layout correction: no side-by-side title overlap ===== */
.aftercare,
.faq{
  display:block !important;
  padding:clamp(28px,4vw,52px) !important;
}
.aftercare-head,
.faq-title{
  position:relative !important;
  top:auto !important;
  width:100% !important;
  padding:0 0 clamp(22px,3vw,34px) !important;
}
.aftercare-head h2,
html[lang="ru"] .aftercare-head h2,
html[lang="uk"] .aftercare-head h2,
.faq-title h2,
html[lang="ru"] .faq-title h2,
html[lang="uk"] .faq-title h2{
  max-width:100% !important;
  width:100% !important;
  margin:0 !important;
  font-size:clamp(44px,5vw,76px) !important;
  line-height:.95 !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
}
.aftercare-grid{
  padding:0 !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
}
.faq-list{
  width:100% !important;
  padding:0 !important;
}
@media (max-width:760px){
  .aftercare,
  .faq{padding:24px 18px !important;}
  .aftercare-grid{grid-template-columns:1fr !important;}
  .aftercare-head h2,
  html[lang="ru"] .aftercare-head h2,
  html[lang="uk"] .aftercare-head h2,
  .faq-title h2,
  html[lang="ru"] .faq-title h2,
  html[lang="uk"] .faq-title h2{
    font-size:clamp(38px,10vw,54px) !important;
  }
}


/* ===== Final micro-adjustments: darker cream blocks + zone dot correction ===== */
.pricing,
.aftercare,
.faq{
  background:linear-gradient(180deg,#e7ddd0 0%,#dcd1c1 100%) !important;
}
.price-card.price-card-equal{
  background:rgba(255,255,255,.44) !important;
  border-color:rgba(98,78,49,.18) !important;
}
.aftercare-grid div{
  background:rgba(255,255,255,.46) !important;
  border-color:rgba(120,100,70,.16) !important;
}
.faq-list details{
  border-color:rgba(110,90,60,.16) !important;
}
.faq-list details:last-child{
  border-bottom-color:rgba(110,90,60,.16) !important;
}

/* ===== Final requested visual tweaks: unified cream, readable accents, hero glow ===== */
/* Use the same darker cream family across all light sections. */
.manifesto,
.pricing,
.aftercare,
.faq{
  background:linear-gradient(180deg,#e7ddd0 0%,#dcd1c1 100%) !important;
}

/* Darker warm accent for highlighted words on cream backgrounds. */
.manifesto h2 em,
.price-intro h2 em,
.aftercare h2 em,
.faq h2 em{
  color:#94662f !important;
  text-shadow:0 1px 0 rgba(255,255,255,.28) !important;
}

/* Keep the main title words dark and clearly separated from the accent. */
.manifesto-copy h2,
.price-intro h2,
.aftercare-head h2,
.faq-title h2{
  color:#1b1713 !important;
}

/* Stronger but still soft halo around the follicle visual on the first screen. */
.hero-visual::before{
  content:"";
  position:absolute;
  width:min(720px,58vw);
  aspect-ratio:1.3;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  border-radius:42%;
  background:radial-gradient(circle at 54% 56%,rgba(238,192,105,.22) 0%,rgba(195,132,48,.12) 28%,transparent 68%);
  filter:blur(34px);
  pointer-events:none;
  z-index:0;
}
.visual-frame{
  box-shadow:0 42px 96px rgba(0,0,0,.58),0 0 55px rgba(203,145,57,.16),inset 0 0 0 1px rgba(239,211,158,.06) !important;
}
.follicle-glow{
  z-index:2 !important;
  width:34% !important;
  opacity:.96 !important;
  background:radial-gradient(circle,rgba(255,238,186,.95) 0%,rgba(229,174,79,.54) 18%,rgba(206,132,40,.20) 42%,transparent 72%) !important;
  filter:blur(13px) !important;
  mix-blend-mode:screen;
}

@media (max-width:760px){
  .hero-visual::before{width:94vw;filter:blur(26px);}
}

/* ===== Header-only finish: language-safe, premium hero, no other sections touched ===== */
.site-header{
  background:linear-gradient(180deg,rgba(8,9,8,.90) 0%,rgba(8,9,8,.72) 68%,rgba(8,9,8,0) 100%) !important;
}
.site-header::after{
  content:"";
  position:absolute;
  left:var(--pad);
  right:var(--pad);
  bottom:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(224,187,111,.24) 18%,rgba(224,187,111,.10) 72%,transparent);
  pointer-events:none;
}
.site-header.scrolled{
  background:rgba(8,9,8,.86) !important;
  box-shadow:0 12px 34px rgba(0,0,0,.22) !important;
}
.brand{position:relative;}
.brand::before{
  content:"";
  position:absolute;
  left:-13px;
  top:50%;
  width:4px;
  height:4px;
  border-radius:50%;
  background:#d7ae62;
  box-shadow:0 0 12px rgba(215,174,98,.72);
  transform:translateY(-50%);
}
.lang-pill{
  backdrop-filter:blur(12px);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.012);
}
.lang-pill.active{
  box-shadow:0 0 18px rgba(205,158,78,.10),inset 0 0 0 1px rgba(245,215,160,.05);
}

.hero-visual{
  isolation:isolate;
}
.hero-visual-decor{
  position:absolute;
  inset:5% 0 4%;
  z-index:0;
  pointer-events:none;
}
.hero-ring{
  position:absolute;
  left:53%;
  top:53%;
  border-radius:50%;
  border:1px solid rgba(228,191,119,.14);
  box-shadow:inset 0 0 50px rgba(203,145,57,.035),0 0 35px rgba(203,145,57,.03);
  transform:translate(-50%,-50%);
}
.hero-ring-a{
  width:min(640px,48vw);
  aspect-ratio:1.36;
  animation:heroOrbitFloat 8s ease-in-out infinite alternate;
}
.hero-ring-b{
  width:min(520px,39vw);
  aspect-ratio:1.22;
  border-color:rgba(239,213,158,.10);
  animation:heroOrbitFloat 10s 1.2s ease-in-out infinite alternate-reverse;
}
.hero-spark{
  position:absolute;
  width:5px;
  height:5px;
  border-radius:50%;
  background:#e6c47f;
  box-shadow:0 0 14px rgba(230,196,127,.72);
  opacity:.62;
  animation:heroSparkPulse 3.8s ease-in-out infinite;
}
.hero-spark-a{left:19%;top:28%;}
.hero-spark-b{right:15%;top:36%;animation-delay:1.1s;}
.hero-spark-c{right:23%;bottom:20%;animation-delay:2.2s;}
.visual-frame{
  z-index:2;
  border-color:rgba(226,196,137,.18) !important;
}
.visual-frame::after{
  background:
    linear-gradient(100deg,rgba(4,5,4,.72),transparent 30% 74%,rgba(5,6,5,.34)),
    linear-gradient(to bottom,rgba(255,255,255,.018),transparent 46%,rgba(0,0,0,.52)) !important;
}
.follicle-target{
  position:absolute;
  left:50%;
  top:57%;
  width:92px;
  height:92px;
  z-index:4;
  border-radius:50%;
  border:1px solid rgba(247,220,162,.23);
  transform:translate(-50%,-50%);
  box-shadow:0 0 0 14px rgba(222,163,70,.035),inset 0 0 32px rgba(244,207,139,.08);
  animation:heroTargetBreathe 3.4s ease-in-out infinite;
}
.follicle-target::before,
.follicle-target::after{
  content:"";
  position:absolute;
  background:linear-gradient(90deg,transparent,rgba(245,217,158,.42),transparent);
}
.follicle-target::before{left:-18px;right:-18px;top:50%;height:1px;}
.follicle-target::after{top:-18px;bottom:-18px;left:50%;width:1px;background:linear-gradient(180deg,transparent,rgba(245,217,158,.42),transparent);}
.follicle-target i{
  position:absolute;
  inset:50% auto auto 50%;
  width:9px;
  height:9px;
  border-radius:50%;
  background:#f3d89c;
  box-shadow:0 0 15px rgba(243,216,156,.95);
  transform:translate(-50%,-50%);
}
.follicle-target span{
  position:absolute;
  inset:12px;
  border-radius:50%;
  border:1px dashed rgba(239,205,137,.20);
}
.visual-caption{
  z-index:4;
  padding:8px 11px;
  border:1px solid rgba(229,193,122,.12);
  border-radius:999px;
  background:rgba(8,9,8,.38);
  backdrop-filter:blur(8px);
}
@keyframes heroOrbitFloat{
  from{transform:translate(-50%,-50%) scale(.985);opacity:.58;}
  to{transform:translate(-50%,-50%) scale(1.025);opacity:.95;}
}
@keyframes heroSparkPulse{
  0%,100%{transform:scale(.72);opacity:.28;}
  50%{transform:scale(1.22);opacity:.82;}
}
@keyframes heroTargetBreathe{
  0%,100%{transform:translate(-50%,-50%) scale(.96);opacity:.70;}
  50%{transform:translate(-50%,-50%) scale(1.04);opacity:1;}
}
@media (max-width:1050px){
  .hero-ring-a{width:min(720px,82vw);}
  .hero-ring-b{width:min(570px,66vw);}
}
@media (max-width:680px){
  .brand::before{display:none;}
  .hero-visual-decor{inset:0 -4%;}
  .hero-ring-a{width:94vw;}
  .hero-ring-b{width:76vw;}
  .follicle-target{width:70px;height:70px;}
  .hero-spark-a{left:8%;top:24%;}
  .hero-spark-b{right:6%;top:32%;}
}
@media (prefers-reduced-motion:reduce){
  .hero-ring,.hero-spark,.follicle-target{animation:none !important;}
}

/* ===== Local hero animation refinement: follicle contour only ===== */
.visual-frame .scan{display:none !important;}
.pulse-line{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  z-index:3 !important;
  overflow:visible !important;
  pointer-events:none !important;
}
.pulse-line path{
  fill:none !important;
  vector-effect:non-scaling-stroke !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}
.pulse-outline-base{
  stroke:rgba(225,187,112,.13) !important;
  stroke-width:1.05 !important;
  stroke-dasharray:none !important;
  filter:none !important;
}
.pulse-outline-run{
  stroke:#e7bd71 !important;
  stroke-width:1.45 !important;
  stroke-dasharray:12 22 !important;
  filter:drop-shadow(0 0 6px rgba(224,172,78,.78)) !important;
  animation:follicleContourFlow 5.8s linear infinite !important;
}
@keyframes follicleContourFlow{
  to{stroke-dashoffset:-204;}
}
@media (max-width:680px){
  .pulse-outline-base{stroke-width:.9 !important;}
  .pulse-outline-run{stroke-width:1.2 !important;stroke-dasharray:10 20 !important;}
}
@media (prefers-reduced-motion:reduce){
  .pulse-outline-run{animation:none !important;stroke-dashoffset:0 !important;}
}

/* Mobile verification fix: keep the overlay and long translations inside the viewport */
@media (max-width:680px){
  .mobile-menu{
    box-sizing:border-box !important;
    width:100% !important;
    max-width:100vw !important;
    min-width:0 !important;
    overflow-x:hidden !important;
    padding-left:20px !important;
    padding-right:20px !important;
  }
  .mobile-menu > a{
    max-width:100% !important;
    overflow-wrap:anywhere !important;
  }
  .mobile-menu .button{
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
    white-space:normal !important;
    text-align:center !important;
    line-height:1.35 !important;
    padding-left:16px !important;
    padding-right:16px !important;
  }
  .mobile-lang-row{
    max-width:100% !important;
    flex-wrap:wrap !important;
  }
}

/* Mobile viewport safety verified after the hero update */
@media (max-width:680px){
  html,body{
    max-width:100% !important;
    overflow-x:hidden !important;
  }
  .mobile-menu{
    overflow-y:auto !important;
    overscroll-behavior:contain !important;
    -webkit-overflow-scrolling:touch !important;
  }
}
