/* Carousel playbook (/resources/carousel-playbook/) — lead-magnet page on top of the guide layout */
.pb-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.pb-note{margin:18px 0 0;padding:12px 16px;border:1px dashed var(--gx-line-strong);border-radius:var(--gx-radius-sm);color:var(--gx-muted);font-size:16px;display:inline-block}
.pb-note b{color:var(--gx-lime)}

.pb-section{margin:clamp(48px,7vw,84px) 0}
.pb-section h2,.pb-kit h2{margin:12px 0 12px;font:800 clamp(28px,3.6vw,44px)/1.15 Rubik,Arial,sans-serif;letter-spacing:-.03em;color:var(--gx-text)}
.pb-section h2 span{background:linear-gradient(90deg,var(--gx-lime),var(--gx-cyan));-webkit-background-clip:text;background-clip:text;color:transparent}
.pb-sub{max-width:720px;margin:0 0 26px;color:var(--gx-muted);font-size:18px;line-height:1.7}

.pb-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none}
.pb-steps li{padding:22px 20px;display:grid;align-content:start;gap:8px}
.pb-steps b{font:800 34px/1 Rubik,Arial,sans-serif;color:var(--gx-lime)}
.pb-steps h3{margin:0;font-size:19px;color:var(--gx-text)}
.pb-steps p{margin:0;color:var(--gx-muted);font-size:16px;line-height:1.6}
.pb-steps code,.pb-kit code,.pb-install code{padding:1px 6px;border-radius:6px;background:rgba(255,255,255,.08);font-size:.9em}

.pb-carousel{position:relative}
.pb-gallery{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-x:contain;padding:6px 2px 18px;margin-inline:calc(var(--gx-gutter,20px) * -1);padding-inline:var(--gx-gutter,20px);scrollbar-width:none;-ms-overflow-style:none}
.pb-gallery::-webkit-scrollbar{display:none}
.pb-gallery img,.pb-gallery video{flex:0 0 auto;width:min(330px,72vw);height:auto;border-radius:14px;scroll-snap-align:start;box-shadow:0 18px 40px rgba(0,0,0,.35);border:1px solid var(--gx-line);background:#0b0b0d}
.pb-gallery:focus-visible{outline:2px solid var(--gx-lime);outline-offset:4px}
.pb-arrow{position:absolute;top:calc(50% - 9px);z-index:2;display:grid;place-items:center;width:52px;height:52px;margin:0;padding:0;border:1px solid var(--gx-line-strong);border-radius:50%;background:rgba(8,12,24,.78);color:var(--gx-text);cursor:pointer;transform:translateY(-50%);backdrop-filter:blur(8px);box-shadow:0 10px 30px rgba(0,0,0,.45);transition:opacity .25s ease,background .2s ease,transform .2s ease}
.pb-arrow svg{width:22px;height:22px}
.pb-arrow:hover{background:var(--gx-lime);color:#0a0a0a}
.pb-arrow:active{transform:translateY(-50%) scale(.94)}
.pb-arrow:focus-visible{outline:2px solid var(--gx-lime);outline-offset:3px}
.pb-arrow[disabled]{opacity:0;pointer-events:none}
.pb-arrow--prev{right:-8px}
.pb-arrow--next{left:-8px}
@media (max-width:640px){.pb-arrow{width:44px;height:44px}.pb-arrow--prev{right:4px}.pb-arrow--next{left:4px}}

.pb-intro{font-size:19px;color:var(--gx-text)}
.guide-body h2 small{display:block;margin-bottom:6px;color:var(--gx-cyan);font:600 14px/1.4 Rubik,Arial,sans-serif;letter-spacing:.04em}
.pb-tip{margin:6px 0 24px;padding:20px 22px}
.pb-tip b{color:var(--gx-lime)}
.pb-tip p{margin:8px 0 0}
.pb-prompt{padding:16px 20px;border-inline-start:3px solid var(--gx-lime);border-radius:var(--gx-radius-sm);background:rgba(255,255,255,.05);font:500 16px/1.6 ui-monospace,Consolas,monospace;text-align:left;color:var(--gx-text)}

.pb-kit{margin:clamp(48px,7vw,84px) 0;padding:clamp(24px,4vw,44px);display:grid;gap:22px}
.pb-kit__head p{max-width:760px;margin:0;color:var(--gx-muted);font-size:18px;line-height:1.7}
.pb-kit__zip{justify-self:start;min-height:54px}
.pb-files{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}
.pb-files a{display:grid;gap:4px;padding:18px 20px;border:1px solid var(--gx-line);border-radius:var(--gx-radius-sm);background:var(--gx-glass);color:var(--gx-text);text-decoration:none;transition:border-color .2s var(--gx-ease,ease)}
.pb-files a:hover{border-color:var(--gx-lime)}
.pb-files b{direction:ltr;text-align:right;font-size:17px}
.pb-files span{color:var(--gx-muted);font-size:15px}
.pb-install b{color:var(--gx-cyan)}
.pb-install p{margin:6px 0 0;color:#dbe2f5;font-size:16px;line-height:1.7}

@media (max-width:980px){.pb-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.pb-files{grid-template-columns:1fr}}
@media (max-width:560px){.pb-steps{grid-template-columns:1fr}}

/* Contact */
.pb-contact{margin:clamp(40px,6vw,72px) 0 20px;padding:clamp(24px,4vw,44px);display:grid;gap:24px}
.pb-contact h2{margin:12px 0 10px;font:800 clamp(28px,3.6vw,44px)/1.15 Rubik,Arial,sans-serif;letter-spacing:-.03em;color:var(--gx-text)}
.pb-contact h2 span{background:linear-gradient(90deg,var(--gx-lime),var(--gx-cyan));-webkit-background-clip:text;background-clip:text;color:transparent}
.pb-contact__head p{max-width:680px;margin:0;color:var(--gx-muted);font-size:18px;line-height:1.7}
.pb-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:14px;align-items:end}
.pb-form label{display:grid;gap:8px;color:#c9d3ee;font-size:15px;font-weight:600}
.pb-form label{min-width:0}
.pb-form input{width:100%;min-width:0;box-sizing:border-box;min-height:54px;padding:0 16px;border:1px solid var(--gx-line-strong);border-radius:var(--gx-radius-sm);background:rgba(255,255,255,.05);color:var(--gx-text);font:500 17px Rubik,Arial,sans-serif}
.pb-form input:focus{outline:none;border-color:var(--gx-lime);box-shadow:0 0 0 3px rgba(111,255,0,.15)}
.pb-form button{min-height:54px;padding-inline:28px;white-space:nowrap}
.pb-form button:disabled{opacity:.6;cursor:wait}
.pb-form__status{grid-column:1/-1;margin:0;color:#c3cce6;font-size:16px;font-weight:600}
.pb-form__status:empty{display:none}
.pb-form__status.is-done{color:var(--gx-lime)}
.pb-form__status.is-error{color:#ffb4a8}
.pb-form__status a{color:inherit}
.pb-form .od-privacy-notice{grid-column:1/-1;max-width:none;margin:0}
.pb-contact__alt{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;color:var(--gx-muted);font-size:16px}
.pb-contact__alt a{color:var(--gx-lime);font-weight:600;text-underline-offset:3px}
@media (max-width:860px){.pb-form{grid-template-columns:1fr}.pb-form button{width:100%}}

/* Download marker on each kit file */
.pb-files a{grid-template-columns:auto 1fr;column-gap:14px;align-items:center}
.pb-files a span{grid-column:2}
.pb-file-icon{grid-row:1/3;color:var(--gx-lime);opacity:.85;transition:transform .2s var(--gx-ease,ease),opacity .2s}
.pb-files a:hover .pb-file-icon,.pb-files a:focus-visible .pb-file-icon{opacity:1;transform:translateY(2px)}

/* Slightly larger reading text on the carousel page */
.playbook-page .guide-lead{font-size:clamp(19px,1.8vw,22px)}
.playbook-page .pb-note{font-size:17px}
.playbook-page .pb-sub{font-size:20px}
.playbook-page .pb-steps h3{font-size:21px}
.playbook-page .pb-steps p{font-size:18px}
.playbook-page .guide-body{font-size:clamp(19px,1.6vw,20px)}
.playbook-page .pb-intro{font-size:21px}
.playbook-page .guide-table table{font-size:18px}
.playbook-page .pb-prompt{font-size:17px}
.playbook-page .guide-toc ol{font-size:17px}
.playbook-page .pb-kit__head p{font-size:20px}
.playbook-page .pb-files b{font-size:19px}
.playbook-page .pb-files span{font-size:17px}
.playbook-page .pb-install p{font-size:18px}
.playbook-page .gx-faq summary{font-size:19px}
.playbook-page .gx-faq p{font-size:18px}
.playbook-page .pb-contact__head p,.playbook-page .guide-cta p{font-size:19px}
