.obo-el { --obo-purple:#7C3AED; --obo-purple-dark:#5b21b6; line-height:1.6; }
.obo-el .obo-el-wrap { width:100%; }
.obo-el .obo-el-kicker { display:inline-block; color:#5b21b6; font-size:.78rem; font-weight:800; letter-spacing:.11em; }
.obo-el .obo-el-button { display:inline-flex; align-items:center; justify-content:center; min-height:50px; padding:13px 24px; border-radius:999px; background:#7C3AED; color:white; font-weight:800; text-decoration:none; }
.obo-el .obo-el-button--light { background:white; color:#5b21b6; }
.obo-el a:focus-visible,.obo-el button:focus-visible,.obo-el input:focus-visible,.obo-el select:focus-visible { outline:3px solid #7C3AED; outline-offset:3px; }
.obo-el .screen-reader-text { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
/* Ebook library — scoped to the new shortcode only. */
.obo-el{font-family:inherit;color:#191426;background:#fff}.obo-el *{box-sizing:border-box}.obo-el .obo-el-wrap{max-width:1180px;margin:auto;padding-left:24px;padding-right:24px}.obo-el__hero{background:linear-gradient(115deg,#faf8ff 0%,#f3edff 100%);border-bottom:1px solid #e9e0f5}.obo-el__hero-inner{display:grid;grid-template-columns:1.35fr 0.8fr;gap:64px;align-items:center;padding-top:88px;padding-bottom:88px}.obo-el__hero h1{font-size:clamp(36px,4.5vw,60px);line-height:1.08;letter-spacing:-.045em;max-width:680px;margin:14px 0 20px}.obo-el__hero p{font-size:17px;line-height:1.75;color:#625b6d;max-width:610px;margin:0 0 28px}.obo-el__hero-aside{background:#211335;border-radius:24px;color:white;padding:40px;min-height:280px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 24px 55px #35156820}.obo-el__hero-aside span{font-size:11px;letter-spacing:.12em;color:#d8c5f6;font-weight:700}.obo-el__hero-aside strong{font-size:clamp(26px,3vw,38px);line-height:1.17;letter-spacing:-.03em}.obo-el__hero-aside em{color:#b78bff;font-style:normal}.obo-el__categories,.obo-el__results{padding:76px 0}.obo-el__section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:30px}.obo-el__section-heading h2{font-size:clamp(28px,3vw,38px);line-height:1.15;letter-spacing:-.03em;margin:8px 0 0}.obo-el__section-heading p{max-width:360px;color:#6c6576;font-size:14px;margin:0}.obo-el__category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.obo-el__category{border:1px solid #e8e1f1;border-radius:15px;padding:23px;display:flex;flex-direction:column;gap:14px;color:#21182d;text-decoration:none!important;background:white;min-height:160px;transition:transform .2s,border-color .2s,box-shadow .2s}.obo-el__category:hover,.obo-el__category.is-active{transform:translateY(-3px);border-color:#8b50e8;box-shadow:0 12px 26px #32175a12}.obo-el__category-icon{display:grid;place-items:center;width:37px;height:37px;border-radius:10px;background:#f1eaff;color:#7131ce;font-size:16px;font-weight:800}.obo-el__category strong{font-size:14px;line-height:1.35}.obo-el__category>span:last-child{font-size:12px;color:#7131ce;font-weight:700;margin-top:auto}.obo-el__results{border-top:1px solid #eee8f4;scroll-margin-top:110px}.obo-el__filters{display:grid;grid-template-columns:minmax(160px,1.5fr) minmax(150px,1fr) minmax(150px,.8fr) auto;gap:10px;margin-bottom:28px}.obo-el__filters input,.obo-el__filters select{width:100%;height:48px;border:1px solid #ddd3eb;border-radius:10px;background:#fff;color:#2c2339;padding:0 13px;font-size:13px;min-width:0}.obo-el__filters button{border:0;border-radius:10px;background:#6826cb;color:#fff;font-size:13px;font-weight:700;padding:0 23px;white-space:nowrap;cursor:pointer}.obo-el__filters button:hover{background:#4d16a2}.obo-el__products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.obo-el__product{border:1px solid #ece6f3;border-radius:16px;overflow:hidden;background:#fff;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.obo-el__product:hover{transform:translateY(-4px);box-shadow:0 16px 35px #2a134317}.obo-el__product-image{display:flex;align-items:center;justify-content:center;background:#f8f6fb;aspect-ratio:1/1;padding:18px}.obo-el__product-image img{width:100%;height:100%;object-fit:contain;transition:transform .25s}.obo-el__product:hover img{transform:scale(1.035)}.obo-el__product-info{padding:18px;display:flex;flex:1;flex-direction:column;gap:12px}.obo-el__product h3{font-size:14px;line-height:1.45;font-weight:700;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.obo-el__product h3 a{color:#21182d;text-decoration:none}.obo-el__price{font-size:15px;font-weight:800;margin-top:auto}.obo-el__price del{color:#8e8698;font-size:12px;font-weight:400;margin-right:5px}.obo-el__price ins{text-decoration:none}.obo-el__view{font-size:12px;font-weight:800;color:#6826cb;text-decoration:none!important}.obo-el__pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:35px}.obo-el__pagination .page-numbers{padding:10px 14px;border:1px solid #e3d7f2;border-radius:9px;text-decoration:none;color:#512394}.obo-el__pagination .current{background:#6826cb;color:#fff}.obo-el__empty{text-align:center;background:#faf8fe;padding:40px;border-radius:16px}.obo-el__premium{margin:0 0 75px;padding:36px 40px;background:#17101f;color:white;border-radius:20px;display:flex;justify-content:space-between;align-items:center;gap:25px}.obo-el__premium span{font-size:11px;color:#c8a8fb;letter-spacing:.1em;font-weight:700}.obo-el__premium h2{font-size:30px;color:white;margin:9px 0}.obo-el__premium p{color:#e0d9e9;max-width:560px;margin:0}.obo-el__premium a{white-space:nowrap}@media(max-width:900px){.obo-el__hero-inner{gap:24px}.obo-el__category-grid,.obo-el__products{grid-template-columns:repeat(3,minmax(0,1fr))}.obo-el__filters{grid-template-columns:1fr 1fr}.obo-el__filters button{min-height:48px}}@media(max-width:650px){.obo-el .obo-el-wrap{padding-left:16px;padding-right:16px}.obo-el__hero-inner{grid-template-columns:1fr;padding-top:52px;padding-bottom:52px}.obo-el__hero-aside{min-height:190px;padding:26px}.obo-el__categories,.obo-el__results{padding:46px 0}.obo-el__section-heading{display:block}.obo-el__section-heading p{margin-top:10px}.obo-el__category-grid,.obo-el__products{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.obo-el__category{padding:15px;min-height:145px}.obo-el__filters{grid-template-columns:1fr}.obo-el__filters button{min-height:48px}.obo-el__product-info{padding:12px}.obo-el__product-image{padding:10px}.obo-el__premium{padding:25px;display:block}.obo-el__premium a{margin-top:20px;display:inline-flex;white-space:normal}}@media(prefers-reduced-motion:reduce){.obo-el__category,.obo-el__product,.obo-el__product-image img{transition:none!important}}

.obo-el .obo-el__topics { font-size:11px; line-height:1.5; color:#5b21b6; }

/* Illustrated topic cards, version 1.2.0. */
.obo-el .obo-el__category-grid { gap:20px; }
.obo-el .obo-el__category { padding:0; gap:0; min-height:0; overflow:hidden; border-radius:18px; }
.obo-el .obo-el__category-art { display:block; width:100%; aspect-ratio:12/7; overflow:hidden; background:#F5F1FC; }
.obo-el .obo-el__category-art img { display:block; width:100%; height:100%; margin:0; object-fit:cover; transition:transform .25s ease; }
.obo-el .obo-el__category:hover .obo-el__category-art img { transform:scale(1.035); }
.obo-el .obo-el__category-body { display:flex; flex:1; flex-direction:column; align-items:flex-start; gap:10px; padding:20px; }
.obo-el .obo-el__category-body strong { color:#21182d; font-size:14px; line-height:1.45; font-weight:750; }
.obo-el .obo-el__category-count { color:#6c6576; font-size:13px; font-weight:400; }
.obo-el .obo-el__category-link { margin-top:auto; padding-top:6px; color:#5b21b6; font-size:12px; font-weight:750; }
.obo-el .obo-el__category.is-active { border-color:#7C3AED; box-shadow:0 0 0 1px #7C3AED; }
@media(max-width:650px) { .obo-el .obo-el__category-grid { gap:12px; } .obo-el .obo-el__category-body { padding:15px; } }
@media(max-width:380px) { .obo-el .obo-el__category-grid { grid-template-columns:1fr; } }
@media(prefers-reduced-motion:reduce) { .obo-el .obo-el__category-art img { transition:none; } .obo-el .obo-el__category:hover,.obo-el .obo-el__category:hover img { transform:none; } }

/* Premium collection storefront, 1.4.0. */
.obo-el { --obo-el-shadow:0 18px 50px rgba(37,19,57,.08); }
.obo-el .obo-el__hero { position:relative; overflow:hidden; background:radial-gradient(ellipse at 78% 18%,#51227e 0%,#231135 44%,#140d1d 82%); border:0; color:#fff; }
.obo-el .obo-el__hero-inner { position:relative; gap:64px; grid-template-columns:minmax(0,1.2fr) minmax(0,.85fr); padding-block:90px; }
.obo-el .obo-el__hero .obo-el-kicker { color:#d3b6ff; font-size:11px; letter-spacing:.17em; }
.obo-el .obo-el__hero h1 { color:#fff; font-size:clamp(36px,4.4vw,64px); line-height:1.07; letter-spacing:-.045em; margin:23px 0; }
.obo-el .obo-el__hero h1 span { color:#c4a2ff; }
.obo-el .obo-el__hero p { color:#d0c5dc; font-size:16px; max-width:580px; }
.obo-el .obo-el__hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:24px; }
.obo-el .obo-el-button { gap:15px; box-shadow:0 8px 22px rgba(124,58,237,.2); transition:background .2s,transform .2s; }
.obo-el .obo-el-button:hover { background:#6425cc; transform:translateY(-2px); }
.obo-el .obo-el__hero-secondary { color:#eee3ff; font-size:13px; font-weight:700; text-decoration:none; border-bottom:1px solid #74528b; padding-bottom:5px; }
.obo-el .obo-el__hero-stats { display:flex; gap:34px; margin-top:38px; padding-top:24px; border-top:1px solid #ffffff24; }
.obo-el .obo-el__hero-stats strong { display:block; color:#fff; font-size:27px; line-height:1.2; font-weight:750; }
.obo-el .obo-el__hero-stats span { display:block; color:#baabc8; font-size:11px; margin-top:5px; }
.obo-el .obo-el__hero-aside { min-height:0; padding:23px; border:1px solid #b992e941; border-radius:24px; background:linear-gradient(145deg,#ffffff10,#ffffff05); box-shadow:0 25px 70px #00000030; gap:0; backdrop-filter:blur(8px); transform:rotate(1.5deg); }
.obo-el .obo-el__edition { display:flex; align-items:center; gap:8px; color:#d9c7ef; font-size:9px; letter-spacing:.12em; font-weight:750; }
.obo-el .obo-el__edition-dot { width:6px; height:6px; border-radius:50%; background:#c4a2ff; }
.obo-el .obo-el__hero-visual { overflow:hidden; border-radius:15px; margin:20px 0; background:#f5f1fc; }
.obo-el .obo-el__hero-visual img { display:block; width:100%; height:auto; margin:0; animation:obo-el-arrive .8s ease-out both; }
.obo-el .obo-el__hero-panel-copy > span { font-size:8px; letter-spacing:.12em; color:#c1a4e7; }
.obo-el .obo-el__hero-panel-copy strong { display:block; margin:9px 0 17px; font-size:26px; line-height:1.2; color:#fff; letter-spacing:-.03em; }
.obo-el .obo-el__hero-panel-link { display:flex; justify-content:space-between; align-items:center; border-top:1px solid #ffffff25; padding-top:15px; color:#e8d8ff; font-size:12px; font-weight:750; text-decoration:none; }
.obo-el .obo-el__hero-panel-link span { font-size:18px; }
.obo-el .obo-el__value-row { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; padding:34px 0; border-bottom:1px solid #ece6f3; }
.obo-el .obo-el__value-row > div { position:relative; padding-left:42px; }
.obo-el .obo-el__value-row > div > span { position:absolute; left:0; top:2px; display:grid; place-items:center; width:28px; height:28px; border-radius:9px; background:#f1eaff; color:#7C3AED; font-size:10px; font-weight:750; }
.obo-el .obo-el__value-row strong { font-size:13px; color:#251339; }
.obo-el .obo-el__value-row p { color:#776c81; font-size:12px; margin:5px 0 0; line-height:1.55; }
.obo-el .obo-el__categories { padding:66px 0; }
.obo-el .obo-el__section-heading h2 { font-size:clamp(27px,3vw,40px); color:#251339; letter-spacing:-.035em; }
.obo-el .obo-el__category { border-color:#ebe4f2; box-shadow:0 4px 16px #25133904; transition:transform .22s,box-shadow .22s,border-color .22s; }
.obo-el .obo-el__category:hover { transform:translateY(-5px); box-shadow:var(--obo-el-shadow); border-color:#b798e7; }
.obo-el .obo-el__category-body { padding:21px; }
.obo-el .obo-el__category-count { background:#f6f2fc; border-radius:999px; padding:3px 9px; font-size:11px; }
.obo-el .obo-el__category-link { display:flex; gap:10px; }
.obo-el .obo-el__results { padding:64px 0 80px; }
.obo-el .obo-el__filters { padding:16px; margin-bottom:28px; border:1px solid #ece5f4; border-radius:17px; background:#faf8fd; box-shadow:0 8px 24px #25133905; }
.obo-el .obo-el__filters button { background:#7C3AED; }
.obo-el .obo-el__filter-status { display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px; padding:0 4px 20px; color:#6c6576; font-size:12px; }
.obo-el .obo-el__filter-status a { color:#5b21b6; font-weight:750; }
.obo-el .obo-el__product { border-radius:19px; border-color:#ebe4f2; box-shadow:0 5px 20px #25133905; }
.obo-el .obo-el__product:hover { transform:translateY(-5px); box-shadow:var(--obo-el-shadow); }
.obo-el .obo-el__product-image { background:radial-gradient(ellipse at center,#fff,#f1ebf8); padding:23px; border-bottom:1px solid #efe8f5; }
.obo-el .obo-el__product-image img { filter:drop-shadow(0 8px 8px #25133918); }
.obo-el .obo-el__product-info { padding:20px; gap:13px; }
.obo-el .obo-el__product h3 { font-size:14px; -webkit-line-clamp:unset; display:block; overflow:visible; }
.obo-el .obo-el__topics { color:#7952a5; font-size:10px; }
.obo-el .obo-el__price { color:#251339; font-size:18px; padding-top:9px; }
.obo-el .obo-el__view { display:flex; justify-content:space-between; align-items:center; gap:8px; padding:10px 13px; border:1px solid #e6dbf5; border-radius:9px; background:#f8f4ff; color:#5b21b6; }
.obo-el .obo-el__view:hover { background:#7C3AED; border-color:#7C3AED; color:#fff; }
.obo-el .obo-el__pagination .page-numbers { background:#faf8fd; }
.obo-el .obo-el__pagination .current { background:#7C3AED; }
@keyframes obo-el-arrive { from { transform:translateY(8px); opacity:.85; } to { transform:translateY(0); opacity:1; } }
@media(max-width:900px) { .obo-el .obo-el__hero-inner { gap:28px; } .obo-el .obo-el__hero-aside { transform:none; padding:18px; } .obo-el .obo-el__hero-panel-copy strong { font-size:22px; } .obo-el .obo-el__hero-stats { gap:24px; } .obo-el .obo-el__value-row { gap:16px; } }
@media(max-width:650px) { .obo-el .obo-el__hero-inner { grid-template-columns:1fr; padding-block:52px; } .obo-el .obo-el__hero h1 { font-size:clamp(35px,8.6vw,51px); } .obo-el .obo-el__hero p { font-size:14px; } .obo-el .obo-el__hero-stats { gap:28px; margin-top:30px; } .obo-el .obo-el__hero-aside { max-width:440px; width:100%; margin:auto; padding:20px; } .obo-el .obo-el__hero-visual { max-height:205px; } .obo-el .obo-el__value-row { grid-template-columns:1fr; gap:22px; padding:28px 0; } .obo-el .obo-el__categories,.obo-el .obo-el__results { padding-block:44px; } .obo-el .obo-el__category-body { padding:15px; } .obo-el .obo-el__filters { padding:12px; } .obo-el .obo-el__product-info { padding:13px; } .obo-el .obo-el__product-image { padding:13px; } .obo-el .obo-el__price { font-size:16px; } }
@media(max-width:380px) { .obo-el .obo-el__hero-stats { gap:19px; } .obo-el .obo-el__hero-stats strong { font-size:24px; } .obo-el .obo-el__hero-actions { gap:18px; } }
@media(prefers-reduced-motion:reduce) { .obo-el *, .obo-el *::before,.obo-el *::after { animation:none!important; transition:none!important; } .obo-el .obo-el__category:hover,.obo-el .obo-el__product:hover,.obo-el .obo-el-button:hover,.obo-el .obo-el__product:hover img { transform:none; } }

/* Scroll entrance effects. Content stays visible before JS and without JS. */
.obo-el .obo-el-motion-enter { animation:obo-el-scroll-enter .65s cubic-bezier(.2,.65,.3,1) both; animation-delay:var(--obo-el-motion-delay,0ms); }
@keyframes obo-el-scroll-enter { from { opacity:.72; translate:0 18px; } to { opacity:1; translate:0 0; } }
@media(prefers-reduced-motion:reduce) { .obo-el .obo-el-motion-enter { animation:none!important; translate:none!important; } }

/* New standalone photographic category artwork, 1.4.2. */
.obo-el .obo-el__category-art img { object-fit:cover; }
.obo-el .obo-el__hero-visual img { width:100%; height:auto; }
