/* ============ Archetypika: общая дизайн-система ============ */
:root{
  --cream:#F6E7D8; --cream-2:#F7E3CF; --cream-3:#FAEEDF;
  --green:#24352B; --green-d:#17221A; --green-soft:#2F3C2E;
  --terra:#B95420; --terra-l:#CB6C34;
  --ink:#22211D; --ink-soft:#5C554A;
  --ring:rgba(120,90,60,.30); --ring-soft:rgba(120,90,60,.18);
  --serif:'Cormorant Garamond',Georgia,serif; --sans:'Manrope',system-ui,sans-serif;
  --r:20px; --maxw:1200px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--ink);background:var(--cream);line-height:1.55;font-size:16px}
img,svg{display:block}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.12;letter-spacing:.01em}
h2{font-size:clamp(30px,4vw,44px)}
section{padding:84px 0}
.alt{background:var(--cream-2)}
.label{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--terra)}
.label::before{content:"";width:26px;height:1px;background:var(--terra)}
.sec-head{max-width:720px;margin-bottom:40px}
.sec-head p{margin-top:16px;color:var(--ink-soft);font-size:16.5px;max-width:60ch}
/* кнопки */
.btn{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:15px;padding:15px 26px;border-radius:999px;border:1.5px solid transparent;transition:.25s}
.btn .arr{transition:.25s}
.btn:hover .arr{transform:translateX(4px)}
.btn-primary{background:var(--terra);color:#fff}
.btn-primary:hover{background:var(--terra-l)}
.btn-ghost{border-color:rgba(34,33,29,.35);color:var(--ink)}
.btn-ghost:hover{border-color:var(--ink);background:rgba(34,33,29,.05)}
.btn-light{border-color:rgba(255,255,255,.4);color:#fff}
.btn-light:hover{background:rgba(255,255,255,.08)}
/* шапка */
header{padding:22px 0}
.nav{display:flex;align-items:center;gap:26px}
.logo{display:flex;align-items:center;gap:11px}
.logo-mark{width:42px;height:42px;border-radius:50%;border:1.5px solid var(--green);display:grid;place-items:center}
.logo-word{font-family:var(--serif);font-weight:700;font-size:16px;letter-spacing:.16em;text-transform:uppercase;line-height:1.1}
.nav-links{display:flex;gap:26px;font-weight:600;font-size:14.5px}
.nav-links a:hover{color:var(--terra)}
.nav .btn{margin-left:auto;padding:11px 20px;font-size:14px}
/* футер */
footer{background:var(--green-d);color:rgba(255,255,255,.72);font-size:13.5px;padding:46px 0 30px}
.foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:40px;margin-bottom:30px}
footer .logo-word{color:#fff}
footer h4{color:#fff;font-size:13px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:12px}
footer ul{list-style:none}
footer li{margin:7px 0}
footer a:hover{color:#fff}
.disclaimer{border-top:1px solid rgba(255,255,255,.14);padding-top:18px;font-size:12px;color:rgba(255,255,255,.5);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
/* орбитальный движок */
.stage{position:relative;width:min(560px,100%);aspect-ratio:1}
.o{position:absolute;left:50%;top:50%;width:var(--d);aspect-ratio:1;margin-left:calc(var(--d)/-2);margin-top:calc(var(--d)/-2);border-radius:50%;z-index:1;translate:calc(var(--px,0px)*var(--f,1)) calc(var(--py,0px)*var(--f,1));will-change:translate}
.o-line{border:1px solid var(--ring-soft)}
.o-planet{rotate:var(--a,0deg);animation:spin var(--t,40s) linear infinite;animation-direction:var(--dir,normal);will-change:transform}
.planet{position:absolute;top:0;left:50%;translate:-50% -50%;width:var(--s,12px);height:var(--s,12px);border-radius:50%;background:var(--c,var(--green));box-shadow:0 4px 14px rgba(34,33,29,.2)}
@keyframes spin{to{transform:rotate(360deg)}}
.disc{position:absolute;left:50%;top:50%;width:48.6%;aspect-ratio:1;margin-left:calc(48.6%/-2);margin-top:calc(48.6%/-2);border-radius:50%;z-index:0;
  background:radial-gradient(circle at 62% 28%, #31463A 0%, #22352A 46%, #16261D 100%);
  box-shadow:inset 0 12px 34px rgba(255,255,255,.05), inset 0 -20px 44px rgba(0,0,0,.35), 0 34px 70px rgba(34,33,29,.20)}
.constellation{position:absolute;inset:0;opacity:.55}
.mini-orbit{position:absolute;right:-46px;top:-46px;width:150px;height:150px;opacity:.5;pointer-events:none}
.sparkle{position:absolute;color:var(--terra);animation:tw 5s ease-in-out infinite;z-index:3}
.sparkle svg{display:block;filter:drop-shadow(0 2px 8px rgba(185,84,32,.35))}
@keyframes tw{0%,100%{opacity:.55;transform:scale(.8) rotate(0)}50%{opacity:1;transform:scale(1.15) rotate(45deg)}}
/* карточки и сетки */
.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{background:var(--cream-3);border:1px solid var(--ring-soft);border-radius:var(--r);padding:28px;position:relative;overflow:hidden;transition:.3s}
.card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(34,33,29,.10)}
.card .lvl{font-size:11px;font-weight:700;letter-spacing:.2em;color:var(--terra);text-transform:uppercase}
.card h3{font-size:26px;margin:10px 0 12px}
.card p{font-size:14.5px;color:var(--ink-soft)}
.card ul{list-style:none;margin:16px 0 18px;font-size:14px}
.card li{padding:6px 0 6px 22px;position:relative}
.card li::before{content:"";position:absolute;left:0;top:12px;width:8px;height:8px;border-radius:50%;background:var(--terra)}
.card a{font-weight:700;color:var(--terra);font-size:14px}
.card a:hover{text-decoration:underline}
.prod-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.prod{background:var(--cream-3);border:1px solid var(--ring-soft);border-radius:var(--r);padding:26px;display:flex;flex-direction:column;gap:12px;transition:.3s;position:relative}
.prod:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(34,33,29,.10)}
.prod .name{font-family:var(--serif);font-size:21px;font-weight:700;line-height:1.2}
.prod .price{font-size:20px;font-weight:800;color:var(--green)}
.prod p{font-size:13.5px;color:var(--ink-soft);flex:1}
.prod .btn{justify-content:center;padding:11px 18px;font-size:13.5px}
.badge{position:absolute;top:-11px;left:22px;background:var(--terra);color:#fff;font-size:11px;font-weight:700;letter-spacing:.08em;padding:5px 12px;border-radius:999px;text-transform:uppercase}
.prod.free{border-color:var(--terra);background:#FBF3E7}
.prins{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.prin{border-top:2px solid var(--terra);padding-top:16px}
.prin b{font-size:16px;display:block;margin-bottom:8px}
.prin p{font-size:14px;color:var(--ink-soft)}
.chips{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 28px}
.chip{border:1.5px solid rgba(34,33,29,.25);border-radius:999px;padding:8px 16px;font-size:13.5px;font-weight:600}
/* faq */
.faq{max-width:820px;margin:0 auto}
.faq details{border-bottom:1px solid var(--ring);padding:4px 0}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 4px;font-family:var(--serif);font-size:21px;font-weight:600}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--sans);font-size:24px;color:var(--terra);transition:.3s;flex:none}
.faq details[open] summary::after{rotate:45deg}
.faq .a{padding:0 4px 18px;font-size:15px;color:var(--ink-soft);max-width:66ch}
/* cta-блок */
.cta-band{background:var(--green);border-radius:26px;color:#EDE4D4;padding:38px;display:grid;grid-template-columns:1fr auto;gap:22px;align-items:center;margin:46px 0 0}
.cta-band h3{color:#fff;font-size:clamp(22px,2.6vw,30px);font-style:italic}
.cta-band p{font-size:14px;color:rgba(255,255,255,.75);margin-top:8px;max-width:52ch}
.cta-band .btns{display:grid;gap:10px}
/* статья */
.crumbs{font-size:13px;color:var(--ink-soft);margin-bottom:16px}
.crumbs a:hover{color:var(--terra)}
.article{max-width:800px;margin:0 auto}
.article h1{font-size:clamp(34px,4.5vw,52px);line-height:1.08}
.article .meta{font-size:13px;color:var(--ink-soft);margin:16px 0 6px}
.tldr{background:var(--cream-3);border-left:3px solid var(--terra);border-radius:0 16px 16px 0;padding:18px 22px;margin:26px 0;font-size:15.5px}
.tldr b{display:block;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--terra);margin-bottom:6px}
.article h2{font-size:clamp(26px,3vw,34px);margin:46px 0 14px}
.article h3{font-size:21px;margin:28px 0 10px}
.article p{margin:13px 0}
.article ul,.article ol{margin:13px 0;padding-left:22px}
.article li{margin:7px 0}
.article table{width:100%;border-collapse:collapse;margin:20px 0;font-size:14.5px}
.article th{background:var(--green);color:#fff;text-align:left;padding:10px 13px;font-weight:600}
.article td{border:1px solid var(--ring-soft);padding:10px 13px;background:var(--cream-3);vertical-align:top}
.article .note{font-size:13px;color:var(--ink-soft)}
/* блог-сетка */
.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.post{background:var(--cream-3);border:1px solid var(--ring-soft);border-radius:var(--r);padding:26px;display:flex;flex-direction:column;gap:10px;transition:.3s}
.post:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(34,33,29,.10)}
.post .tag{font-size:10.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--terra)}
.post h3{font-size:21px;line-height:1.2}
.post p{font-size:13.5px;color:var(--ink-soft);flex:1}
.post .meta2{font-size:12px;color:var(--ink-soft)}
.post .read{font-weight:700;color:var(--terra);font-size:14px;margin-top:2px}
/* reveal */
.reveal{opacity:0;translate:0 26px;transition:opacity .7s ease,translate .7s ease}
.reveal.in{opacity:1;translate:0 0}
/* адаптив */
@media (max-width:1020px){
  .cards3,.prod-grid,.prins{grid-template-columns:1fr 1fr}
  .post-grid{grid-template-columns:1fr 1fr}
  .cta-band{grid-template-columns:1fr}
  .nav-links{display:none}
}
@media (max-width:640px){
  section{padding:60px 0}
  .cards3,.prod-grid,.prins,.post-grid{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  .o-planet,.sparkle{animation:none!important}
  .o,.o-planet{transition:none!important}
  .reveal{transition:none;opacity:1;translate:none}
  html{scroll-behavior:auto}
}
.logo-mark img{display:block;width:54%;height:auto}
