:root{--teal:#75C0B4;--teal-d:#2f7f73;--teal-l:#e6f3f1;--gray:#58595B;--ink:#1b1c1d;--bg:#fff;--soft:#f5f7f7;--line:#dfe5e5}
.buy{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;background:var(--bg);border:1px solid var(--line);border-left:4px solid var(--teal);padding:26px 28px;margin-top:28px}
.buy h3{margin:0 0 6px;font-size:1.15rem}.buy p{margin:0;color:var(--gray);font-size:.97rem}
.btn.off{background:transparent;color:var(--gray);border-color:var(--line);cursor:default;pointer-events:none}
@media (max-width:820px){.buy{grid-template-columns:1fr;padding:20px}}
@media (prefers-color-scheme:dark){:root{--ink:#eceeee;--bg:#17191a;--soft:#202324;--line:#33383a;--teal-l:#1f302d;--teal-d:#8fd3c8;--gray:#b5b8ba}}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:18px/1.65 Georgia,"Times New Roman",serif}
h1,h2,h3,.sans{font-family:Arial,Helvetica,sans-serif}
a{color:var(--teal-d)}
.wrap{max-width:1040px;margin:0 auto;padding:0 20px}
header.top{border-bottom:1px solid var(--line)}
header.top .wrap{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;font:600 14px Arial,sans-serif}
header.top nav a{margin-left:22px;text-decoration:none;color:var(--gray)}
header.top nav a:hover{color:var(--teal-d)}
.hero{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:56px;align-items:center;padding:64px 0 72px}
.hero h1{font:700 clamp(2.2rem,5vw,3.4rem)/1.08 Georgia,serif;margin:0 0 14px;letter-spacing:-.01em}
.hero .sub{font:italic 1.35rem/1.4 Georgia,serif;color:var(--gray);margin:0 0 18px}
.hero .lead{margin:0 0 26px;max-width:34em}
.tag{display:inline-block;font:700 .78rem Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;background:var(--teal-l);color:var(--teal-d);padding:5px 10px;border-radius:3px;margin-bottom:18px}
.btn{display:inline-block;font:700 .95rem Arial,sans-serif;padding:13px 22px;border-radius:3px;text-decoration:none;background:var(--gray);color:#fff;border:2px solid var(--gray)}
.btn.alt{background:transparent;color:var(--gray);margin-left:10px}
@media (prefers-color-scheme:dark){.btn{background:var(--teal);border-color:var(--teal);color:#10201d}.btn.alt{background:transparent;color:var(--teal)}}
.cover img{width:100%;height:auto;display:block;box-shadow:0 18px 40px rgba(0,0,0,.22);border-radius:2px}
section{padding:64px 0}
section.soft{background:var(--soft)}
h2{font-size:1.9rem;line-height:1.2;margin:0 0 10px}
h2+p.kick{margin-top:0}
.kick{color:var(--gray);max-width:40em}
.rule{width:56px;height:4px;background:var(--teal);margin:0 0 22px}
.q{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px}
.q div{border-top:4px solid var(--teal);padding:16px 2px 0}
.q b{font:700 1.05rem Arial,sans-serif;display:block;margin-bottom:6px}
.parts{list-style:none;padding:0;margin:30px 0 0;counter-reset:p}
.parts li{display:grid;grid-template-columns:54px 1fr;gap:16px;padding:18px 0;border-top:1px solid var(--line)}
.parts li:before{counter-increment:p;content:counter(p);font:700 1.9rem Georgia,serif;color:var(--teal-d)}
.parts b{font:700 1.05rem Arial,sans-serif}
.parts span{display:block;color:var(--gray);font-size:.97rem}
.paths{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:30px}
.paths div{background:var(--bg);border:1px solid var(--line);border-left:4px solid var(--teal);padding:18px 20px}
.paths i{font-size:1.08rem}
.paths p{margin:8px 0 0;color:var(--gray);font-size:.95rem}
.toolkit{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.toolkit ul{margin:0;padding-left:1.1em}
.note{font:.88rem/1.5 Arial,sans-serif;color:var(--gray)}
.author{display:grid;grid-template-columns:200px 1fr;gap:40px;align-items:start}
.author img{width:100%;height:auto;border-radius:2px;display:block}
.facts{display:grid;grid-template-columns:repeat(2,1fr);gap:12px 30px;margin:26px 0 0;font:.95rem Arial,sans-serif}
.facts dt{font-weight:700}.facts dd{margin:0;color:var(--gray)}
footer{background:#58595B;color:#fff;padding:40px 0;font:.9rem/1.6 Arial,sans-serif}
footer a{color:#fff}
footer .wrap{display:flex;gap:30px;justify-content:space-between;flex-wrap:wrap}
@media (max-width:820px){
 .hero{grid-template-columns:1fr;padding:40px 0 50px;gap:34px}.cover{max-width:240px;order:-1}
 .q,.paths,.toolkit,.author{grid-template-columns:1fr}.author img{max-width:180px}.facts{grid-template-columns:1fr}
 header.top nav a:not(:last-child){display:none}
 section{padding:46px 0}
}
form.toolkit-form{background:var(--bg);border:1px solid var(--line);border-left:4px solid var(--teal);padding:24px 26px;margin-top:6px}
.toolkit-form label{display:block;font:600 .9rem Arial,sans-serif;margin:0 0 4px}
.toolkit-form input[type=text],.toolkit-form input[type=email]{width:100%;font:1rem Arial,sans-serif;padding:11px 12px;border:1px solid var(--line);border-radius:3px;background:var(--bg);color:var(--ink);margin-bottom:14px}
.toolkit-form input:focus-visible,.toolkit-form button:focus-visible{outline:3px solid var(--teal);outline-offset:2px}
.toolkit-form .row{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.toolkit-form .check{display:flex;gap:10px;align-items:flex-start;font:.88rem/1.5 Arial,sans-serif;color:var(--gray);margin:2px 0 16px}
.toolkit-form .check input{margin-top:4px;flex:none;width:18px;height:18px}
.toolkit-form button{font:700 .95rem Arial,sans-serif;padding:13px 22px;border-radius:3px;background:var(--gray);color:#fff;border:2px solid var(--gray);cursor:pointer}
@media (prefers-color-scheme:dark){.toolkit-form button{background:var(--teal);border-color:var(--teal);color:#10201d}}
.hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.legal{max-width:46em}.legal h2{font-size:1.35rem;margin:34px 0 8px}.legal p,.legal li{font-size:1rem}.legal .todo{background:var(--teal-l);padding:1px 5px;border-radius:2px}
.dl{display:inline-block;margin-top:10px}
@media (max-width:820px){.toolkit-form .row{grid-template-columns:1fr}}

.editore{display:flex;gap:22px;align-items:center}.editore img{height:auto;width:150px;flex:none}
@media (max-width:820px){.editore{flex-direction:column;align-items:flex-start}}
