/* Opt-in only. The native Divi shell owns the page hero/header/footer. */
.wofy-hub { color:#f5eedf; background:#0a0e0c; font:16px/1.6 Arial,Helvetica,sans-serif; width:100%; }
.wofy-hub,.wofy-hub * { box-sizing:border-box; }
.wofy-hub h2 { color:#f5eedf; font:normal clamp(27px,3vw,38px)/1.2 Georgia,serif; margin:40px 0 24px; }
.wofy-hub h3 { color:#f5eedf; font:normal 20px/1.25 Georgia,serif; margin:10px 0; overflow-wrap:anywhere; }
.wofy-hub a { color:#f5eedf; text-decoration:none; }
.wofy-hub a:hover { text-decoration:underline; text-underline-offset:4px; }
.wofy-hub a:focus-visible,.wofy-hub button:focus-visible,.wofy-hub input:focus-visible { outline:3px solid #ff861d; outline-offset:4px; }
.wofy-hub-preview { padding:12px 16px; border:1px solid #6b5f40; color:#e7d9bc; }
.wofy-hub-search label { display:block; margin-bottom:10px; }
.wofy-hub-search>div { display:flex; gap:10px; }
.wofy-hub input[type=search] { flex:1; width:100%; min-width:0; min-height:48px; background:#17211c; color:#f5eedf; border:1px solid #787d6d; border-radius:4px; padding:10px 14px; font:inherit; }
.wofy-hub button { min-height:48px; background:#ff861d; color:#17140e; border:0; border-radius:4px; padding:10px 22px; font:inherit; cursor:pointer; }
.wofy-hub-filters { display:flex; flex-wrap:wrap; gap:10px; margin:20px 0; }
.wofy-hub-filters a,.wofy-hub-pages a { min-height:44px; display:inline-flex; align-items:center; justify-content:center; padding:8px 15px; border:1px solid #626b60; border-radius:4px; }
.wofy-hub [aria-current] { color:#ffac64; border-color:#ff861d; }
.wofy-hub-reset { display:inline-block; min-height:44px; padding:8px 0; text-decoration:underline; }
.wofy-hub-count { color:#c8c4b5; font:16px Arial,sans-serif; }
.wofy-hub .wofy-hub-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:36px 22px; margin:0; padding:0; list-style:none; }
.wofy-hub .wofy-hub-card { margin:0; padding:0; min-width:0; list-style:none; }
.wofy-hub-poster { aspect-ratio:2/3; background:#17211c; border:1px solid #354236; border-radius:4px; overflow:hidden; display:grid; place-items:center; }
.wofy-hub .wofy-hub-image { width:100%; height:100%; display:block; object-fit:cover; }
.wofy-hub-no-image { padding:16px; color:#c8c4b5; text-align:center; font-size:13px; }
.wofy-hub-meta { color:#c8c4b5; font-size:13px; margin:12px 0 0; }
.wofy-hub-tags { display:flex; gap:4px 8px; flex-wrap:wrap; font-size:12px; }
.wofy-hub-tags a { min-height:24px; padding:2px 0; color:#e1c299; }
.wofy-hub-cta { display:inline-flex; min-height:44px; align-items:center; gap:8px; color:#ffac64!important; }
.wofy-hub-pages { display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-top:28px; }
.wofy-hub .wofy-hub-lists { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; padding:0; margin:0; list-style:none; }
.wofy-hub-lists>li { border:1px solid #354236; border-radius:4px; padding:20px; list-style:none; }
.wofy-hub-lists a { display:inline-flex; align-items:center; min-height:44px; color:#ffac64; }
@media(max-width:1100px) { .wofy-hub .wofy-hub-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:767px) { .wofy-hub .wofy-hub-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 18px; } .wofy-hub .wofy-hub-lists { grid-template-columns:1fr; } .wofy-hub h3 { font-size:19px; } }
@media(max-width:359px) { .wofy-hub .wofy-hub-grid { grid-template-columns:1fr; } }

.wofy-hub .wofy-hub-year { display:flex; gap:12px; align-items:center; margin-top:14px; }
.wofy-hub input[type=number] { max-width:180px; min-height:44px; padding:8px 12px; background:#17211c; color:#f5eedf; border:1px solid #787d6d; border-radius:4px; font:inherit; }
@media(min-width:1101px) { .wofy-hub-topic .wofy-hub-grid { grid-template-columns:repeat(4,minmax(0,1fr)); } }

.wofy-hub-shuffle { display:inline-block; margin:16px 0 24px; }
.wofy-hub-shuffle button { background:transparent; color:#ffac64; border:1px solid #ff861d; }
.wofy-hub-notice { color:#d8d0bd; margin:12px 0; }
