/* CRL Kids Book Sets: styles are scoped to the plugin so the rest of the theme is unchanged. */
.crlbs-section{box-sizing:border-box}
.crlbs-carousel-section{padding:18px 3vw 35px}
.crlbs-heading{max-width:1020px;margin:0 auto 12px;display:flex;align-items:center;justify-content:center;position:relative;gap:16px}
.crlbs-heading .section-title{margin:0;text-align:center}
.crlbs-view-all{position:absolute;right:0;top:50%;transform:translateY(-50%);font-size:16px;font-weight:800;color:#082b8d;text-decoration:underline;text-underline-offset:3px}
.crlbs-carousel-wrap{max-width:1070px;margin:auto;position:relative;padding:0 42px}
.crlbs-track{display:flex;overflow-x:auto;gap:26px;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-inline:contain;padding:10px 2px 18px}
.crlbs-track::-webkit-scrollbar{display:none}
.crlbs-book-card{font:inherit;border:0;background:transparent;cursor:pointer;text-align:center;flex:0 0 calc((100% - 52px)/3);min-width:0;scroll-snap-align:start;color:#082b8d;padding:0 4px;transition:transform .2s ease}
.crlbs-book-card:hover{transform:translateY(-5px)}
.crlbs-book-card img{width:100%;height:270px;object-fit:contain;display:block;margin:0 auto}
.crlbs-book-name{display:block;font-size:15px;font-weight:800;line-height:1.35;margin-top:10px}
.crlbs-image-placeholder{display:grid;place-items:center;width:100%;height:270px;font-size:60px;background:#eaf7ff;border-radius:12px}
.crlbs-arrow{position:absolute;top:37%;z-index:2;width:52px;height:52px;border:0;padding:0;border-radius:0;background-color:transparent;background-repeat:no-repeat;background-position:center;background-size:contain;box-shadow:none;color:transparent;font-size:0;cursor:pointer;transition:transform .2s ease,opacity .2s ease}
.crlbs-arrow:not(:disabled):hover{transform:scale(1.08)}
.crlbs-prev{background-image:url("arrow-left.png")}
.crlbs-next{background-image:url("arrow-right.png")}
.crlbs-prev{left:-8px}.crlbs-next{right:-8px}.crlbs-arrow:disabled{opacity:.3;cursor:default}
.crlbs-sold-note{text-align:center;font-size:13px;font-style:italic;margin:6px 0 0}
.crlbs-all-page{min-height:55vh;background:linear-gradient(#dff8ff,#fff);padding:50px 4vw}
.crlbs-all-section{max-width:1120px;margin:auto}
.crlbs-all-section .section-title{margin-bottom:30px}
.crlbs-all-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.crlbs-all-grid .crlbs-book-card{width:100%}
.crlbs-empty{text-align:center;padding:40px}
.crlbs-modal[hidden]{display:none!important}
.crlbs-modal{position:fixed;inset:0;z-index:100100;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(1,26,82,.72)}
.crlbs-dialog{position:relative;background:#fff;border-radius:28px;width:min(900px,96vw);max-height:90dvh;overflow-y:auto;padding:28px;box-shadow:0 20px 70px #0005}
.crlbs-close{position:absolute;right:16px;top:12px;border:0;background:#0c51d9;color:white;border-radius:50%;width:40px;height:40px;font-size:26px;cursor:pointer}
.crlbs-modal-title{text-align:center;font-size:clamp(23px,4vw,34px);margin:0 46px 22px;color:#082d8f}
.crlbs-products{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.crlbs-product{text-align:center;background:#f2fbff;border-radius:20px;padding:18px}
.crlbs-product img{width:100%;height:300px;object-fit:contain;margin:0 auto 12px;display:block}
.crlbs-product .crlbs-image-placeholder{height:300px}
.crlbs-product h3{font-size:24px;margin:8px 0 12px;color:#082d8f}
.crlbs-amazon{display:inline-block;background:#ffbf26;color:#191919;border:2px solid #d99700;border-radius:25px;padding:10px 22px;font-weight:900;text-decoration:none}
.crlbs-unavailable{display:inline-block;color:#666;padding:10px}
body.crlbs-modal-open{overflow:hidden}
@media(max-width:900px){.crlbs-book-card{flex-basis:calc((100% - 26px)/2)}.crlbs-all-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.crlbs-heading{display:flex;flex-direction:column;gap:7px}.crlbs-heading .section-title{font-size:40px}.crlbs-view-all{position:static;transform:none;align-self:flex-end;margin-right:12px}.crlbs-carousel-wrap{padding:0 24px}.crlbs-track{gap:12px}.crlbs-track .crlbs-book-card{flex-basis:100%}.crlbs-arrow{width:36px;height:42px}.crlbs-prev{left:-4px}.crlbs-next{right:-4px}.crlbs-book-card img{height:310px}.crlbs-all-grid{grid-template-columns:1fr}.crlbs-products{grid-template-columns:1fr;gap:16px}.crlbs-dialog{padding:20px 14px}.crlbs-product img{height:250px}}
