/* /book — The Growth Lab Blueprint (scoped to .blueprint-page / .bp-*) */
.blueprint-page .bp-skip{position:absolute;left:16px;top:-60px;z-index:200;background:var(--red);color:#fff;padding:10px 16px;border-radius:999px;font-weight:800}
.blueprint-page .bp-skip:focus{top:12px}
.blueprint-page a:focus-visible,.blueprint-page button:focus-visible,.blueprint-page input:focus-visible{outline:3px solid var(--red);outline-offset:3px}

/* hero */
.bp-hero{background:var(--paper);color:var(--ink);padding:calc(76px + clamp(36px,5vw,72px)) 0 clamp(48px,6vw,88px);overflow:hidden}
.bp-hero::before{content:"";position:absolute;top:-200px;left:-220px;width:720px;height:720px;border-radius:50%;background:radial-gradient(circle,rgba(255,59,59,.15),transparent 66%);pointer-events:none}
.bp-hero::after{content:"";position:absolute;inset:auto 0 0;height:1px;background:rgba(14,14,28,.08)}
.bp-hero-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(36px,6vw,84px);align-items:center;position:relative}
.bp-cover-col{display:flex;flex-direction:column;align-items:center;gap:26px}
.bp-cover{position:relative;width:min(380px,100%);transform:perspective(1400px) rotateY(9deg) rotate(-1.5deg);transition:transform .6s var(--ease)}
.bp-cover:hover{transform:perspective(1400px) rotateY(0) rotate(0) translateY(-6px)}
.bp-cover img{width:100%;height:auto;aspect-ratio:1600/2560;border-radius:3px 10px 10px 3px;box-shadow:-14px 0 0 -6px rgba(14,14,28,.14),0 50px 80px -30px rgba(10,10,26,.55),0 18px 30px -18px rgba(10,10,26,.4)}
.bp-cover::after{content:"";position:absolute;inset:0 auto 0 0;width:14px;background:linear-gradient(90deg,rgba(0,0,0,.32),rgba(255,255,255,.12) 60%,transparent);border-radius:3px 0 0 3px;pointer-events:none}
.bp-spec{list-style:none;display:flex;background:var(--navy);color:#fff;border-radius:16px;overflow:hidden;width:min(380px,100%)}
.bp-spec li{flex:1;padding:14px 12px;text-align:center;border-right:1px solid var(--line)}
.bp-spec li:last-child{border-right:0}
.bp-spec b{display:block;font-family:'Archivo';font-weight:800;font-stretch:115%;font-size:24px;line-height:1;color:var(--red)}
.bp-spec span{font-size:12px;font-weight:700;color:var(--muted)}

.bp-copy .eyebrow{display:inline-flex;font-size:12.5px;letter-spacing:.2em;font-weight:800;gap:10px}
.bp-copy .eyebrow::before{width:28px;height:2px}
.bp-copy h1{font-size:clamp(42px,6.2vw,84px);text-transform:uppercase;font-stretch:118%;letter-spacing:-.035em;margin-bottom:24px;color:var(--ink)}
.bp-copy h1 span{display:block}
.bp-copy h1 em{font-style:normal;white-space:nowrap}
.bp-sub{font-size:clamp(18px,1.8vw,21px);font-weight:600;color:var(--ink);max-width:600px}
.bp-sub strong{display:block;margin-top:6px;font-family:'Archivo';font-weight:800;color:var(--red)}
.bp-body{margin-top:18px;color:var(--ink-muted);font-size:16.5px;max-width:600px}

/* form card */
.bp-card{margin-top:30px;background:var(--navy);color:#fff;border-radius:22px;padding:clamp(22px,3vw,32px);max-width:600px;position:relative;box-shadow:0 30px 60px -32px rgba(10,10,26,.6)}
.bp-card::before{content:"";position:absolute;left:28px;right:28px;top:0;height:3px;background:var(--red);border-radius:0 0 3px 3px}
.bp-label{display:block;font-family:'Archivo';font-weight:800;font-size:19px;margin-bottom:14px}
.bp-row{display:flex;gap:10px;flex-wrap:wrap}
.bp-row input{flex:1 1 240px;min-width:0;font:600 16px 'Manrope',sans-serif;color:#fff;background:var(--card);border:2px solid rgba(255,255,255,.14);border-radius:999px;padding:15px 22px;transition:border-color .2s}
.bp-row input::placeholder{color:#7d7d98}
.bp-row input:focus{border-color:var(--red);outline:none}
.bp-row input[aria-invalid="true"]{border-color:var(--red)}
.bp-submit{cursor:pointer;font-family:'Manrope',sans-serif;justify-content:center}
.bp-submit:disabled{opacity:.65;cursor:progress;transform:none}
.bp-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.bp-status{min-height:1.4em;margin-top:12px;font-size:14.5px;font-weight:700;color:#dcdce8}
.bp-status.is-error{color:#ff8a8a}
.bp-privacy{font-size:13px;color:var(--muted)}
.bp-success{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start;outline:none}
.bp-success[hidden]{display:none}
.bp-success-mark{width:48px;height:48px;border-radius:50%;background:var(--red);display:grid;place-items:center;color:#fff}
.bp-success-title{font-size:26px;text-transform:uppercase;font-stretch:115%;margin-bottom:8px}
.bp-success p{color:var(--muted);font-size:15px;margin-bottom:18px}

/* blocks */
.bp-blocks{background:var(--navy)}
.bp-blocks-head{display:grid;grid-template-columns:1.1fr .9fr;gap:var(--content-space);align-items:end;margin-bottom:var(--content-space)}
.bp-blocks-head .lead{margin-top:0}
.bp-grid{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:22px;overflow:hidden}
.bp-grid li{background:var(--navy);padding:28px 24px 30px;position:relative;transition:background .3s}
.bp-grid li:hover{background:var(--card)}
.bp-grid li::after{content:"";position:absolute;left:0;bottom:0;height:3px;width:100%;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}
.bp-grid li:hover::after{transform:scaleX(1)}
.bp-n{display:block;font-family:'Archivo';font-weight:800;font-size:44px;line-height:1;color:transparent;-webkit-text-stroke:1.4px rgba(255,59,59,.85);margin-bottom:14px}
.bp-grid h3{font-size:24px;text-transform:uppercase;font-stretch:115%;margin-bottom:8px}
.bp-grid p{color:var(--muted);font-size:14.5px}

/* author */
.bp-author{background:var(--navy2);padding:clamp(40px,4vw,56px) 0}
.bp-author-grid{display:grid;grid-template-columns:auto 1fr auto;gap:clamp(20px,3vw,40px);align-items:center}
.bp-author img{width:110px;height:110px;border-radius:50%;object-fit:cover;object-position:center 10%;border:4px solid var(--red)}
.bp-author h2{font-size:clamp(24px,2.8vw,34px);margin-bottom:10px}
.bp-author p{color:var(--muted);font-size:15.5px;max-width:620px}
.bp-author-cta{display:flex;flex-direction:column;align-items:flex-start;gap:16px}

@media (max-width:980px){
  .bp-hero-grid,.bp-blocks-head{grid-template-columns:1fr}
  .bp-cover{width:min(300px,80%);transform:rotate(-2deg)}
  .bp-grid{grid-template-columns:1fr 1fr}
  .bp-author-grid{grid-template-columns:auto 1fr}
  .bp-author-cta{grid-column:1/-1;flex-direction:row;align-items:center;flex-wrap:wrap}
}
@media (max-width:767px){
  .bp-hero-grid{gap:32px}
  .bp-cover{width:min(240px,70%)}
  .bp-cover-col{order:2}
  .bp-submit{flex:1 1 100%}
  .bp-author-grid{grid-template-columns:1fr}
  .bp-success{grid-template-columns:1fr}
}
@media (max-width:420px){.bp-grid{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.bp-cover,.bp-cover:hover{transform:none}}
