/* E-book sign-up pages: cover on the left, pitch and form on the right, all on the blue blueprint. */
body.blueprint{min-height:100vh}
.eb{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:56px;align-items:start;padding-block:48px 72px}
.eb .cover{margin:0;position:sticky;top:32px}
.eb .cover img{display:block;width:100%;height:auto;border-radius:8px;box-shadow:0 24px 50px -20px rgba(5,10,60,.75)}
.kick{color:rgba(243,243,238,.75)}
.eb h1{margin-top:14px;font-size:clamp(44px,6.4vw,84px);font-weight:900;font-stretch:62%;line-height:.88;text-transform:uppercase}
.en{margin-top:8px;font-family:var(--f-display);font-size:20px;color:#d4daff}
.lede{margin-top:18px;font-size:18px;line-height:1.55;color:#eceeff;max-width:46ch}
.nums{display:flex;gap:28px;margin-top:22px;padding-block:14px;border-block:1px solid rgba(243,243,238,.3)}
.nums b{display:block;font-family:var(--f-display);font-weight:800;font-stretch:70%;font-size:40px;line-height:1}
.nums span{font-size:13px;color:rgba(243,243,238,.75)}
.side ul{margin:20px 0 0;padding:0;list-style:none;display:grid;gap:8px}
.side li{position:relative;padding-left:22px;color:#eceeff}
.side li::before{content:"";position:absolute;left:0;top:.72em;width:10px;height:2px;background:#fff}
.card{margin-top:28px;background:var(--surface);color:var(--ink);border-radius:12px;padding:22px;display:grid;gap:14px;box-shadow:0 24px 50px -24px rgba(5,10,60,.7)}
.card label{display:grid;gap:6px;font-size:14px;font-weight:600}
.card input:not([type=checkbox]){font:16px var(--f-body);padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink)}
.card .check{grid-template-columns:auto 1fr;align-items:start;gap:10px;font-weight:400;font-size:13px;color:var(--muted)}
.card .check input{margin-top:3px;width:18px;height:18px;accent-color:var(--blue)}
.card .btn{width:100%}
.card .btn:disabled{opacity:.6;cursor:wait}
.card h2{font-size:28px;font-weight:800;font-stretch:80%;text-transform:uppercase}
.err{color:#c0392b;font-size:14px}
.err:empty{display:none}
@media (max-width:760px){
  .eb{grid-template-columns:1fr;gap:28px;padding-top:28px}
  .eb .cover{position:static;max-width:220px}
}
.card .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* Claude na Prática: "Vol. 0X" line on each volume page, and the series hub with a grid of covers. */
.series{margin-top:14px;color:rgba(243,243,238,.75)}
.series a{color:#fff}
.hub{padding-block:48px 72px}
.hub h1{margin-top:14px;font-size:clamp(44px,6.4vw,84px);font-weight:900;font-stretch:62%;line-height:.88;text-transform:uppercase}
.hub .vols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 22px;margin-top:36px}
.vol{display:grid;gap:4px;align-content:start;color:var(--blue-ink);text-decoration:none}
.vol img{display:block;width:100%;height:auto;margin-bottom:10px;border-radius:6px;box-shadow:0 24px 50px -20px rgba(5,10,60,.75);transition:transform .15s ease}
.vol:hover img{transform:translateY(-3px)}
.vol .mono{color:rgba(243,243,238,.75)}
.vol b{font-family:var(--f-display);font-size:22px;font-weight:800;font-stretch:80%;line-height:1.1}
.vol small{font-size:14px;line-height:1.45;color:#d4daff}
@media (max-width:860px){.hub .vols{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.hub{padding-top:28px}}
@media (prefers-reduced-motion:reduce){.vol img{transition:none}.vol:hover img{transform:none}}
.card .btn-line{background:transparent;color:var(--ink);border-color:var(--muted)}
