/* OrionX Core — Widgets Stylesheet v2.0.0 */

/* ── Post Grid (legacy) ─────────────────────────────────────────────────────── */

/* Root wrapper (filter + spotlight + grid + pagination) */
.orionx-pg-root{width:100%}

/* Cards hidden by the filter bar */
.orionx-pg-hidden{display:none !important}

/* ── Filter Bar (taxonomy tabs) ─────────────────────────────────────────────── */
.orionx-pg-filter{display:flex;flex-wrap:wrap;align-items:center;gap:28px;margin-bottom:32px}
.orionx-pg-filter__btn{background:none;border:none;border-bottom:2px solid transparent;padding:6px 2px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#888;cursor:pointer;line-height:1.2;transition:color .15s,border-color .15s,background-color .15s}
.orionx-pg-filter__btn:hover{color:var(--orionx-primary,#4f46e5)}
.orionx-pg-filter__btn.is-active{color:#111;border-bottom-color:currentColor}

/* ── Spotlight (featured hero card) ─────────────────────────────────────────── */
.orionx-pg-spotlight{position:relative;display:flex;min-height:460px;background-size:cover;background-position:center;background-repeat:no-repeat;overflow:hidden;text-decoration:none;margin-bottom:32px;background-color:#111}
.orionx-pg-spotlight::before{content:'';position:absolute;inset:0;background:rgba(0,0,0,.45);z-index:1;pointer-events:none}
.orionx-pg-spotlight__body{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:flex-end;padding:40px;width:100%;color:#fff}
.orionx-pg-spotlight__label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.14em;margin-bottom:16px;display:inline-block}
.orionx-pg-spotlight__title{margin:0 0 10px;font-size:48px;font-weight:800;line-height:1.05;color:#fff}
.orionx-pg-spotlight__tax{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;opacity:.85;margin-bottom:14px;display:inline-block}
.orionx-pg-spotlight__desc{max-width:540px;font-size:14px;line-height:1.7;margin:0 0 22px}
.orionx-pg-spotlight__btn{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:10px 0;border-bottom:1px solid currentColor}
@media(max-width:600px){
	.orionx-pg-spotlight__title{font-size:32px}
	.orionx-pg-spotlight__body{padding:24px}
}

/* Outer wrapper — plain (no intro) */
.orionx-pg-wrapper{width:100%;display:flex;flex-direction:column}

/* Gap between the intro row and the remaining full-width card rows below it.
   Inherits the same spacing value as the card grid gap (default 24px). */
.orionx-pg-grid-wrap--below-intro{margin-top:24px}


/* Outer wrapper — split layout when intro panel is enabled */
.orionx-pg-wrapper--has-intro{display:grid;grid-template-columns:25% 1fr;gap:40px;align-items:start}

/* Sticky intro variant */
.orionx-pg-wrapper--sticky-intro .orionx-pg-intro{position:sticky;top:80px}

/* Intro panel — min-width:0 is critical: prevents grid blowout when text is long */
.orionx-pg-intro{display:flex;flex-direction:column;min-width:0;word-break:break-word}
.orionx-pg-intro__label{display:block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;margin-bottom:14px}
.orionx-pg-intro__heading{margin:0 0 20px;font-size:42px;font-weight:800;line-height:1.1;word-wrap:break-word}
.orionx-pg-intro__desc{margin:0;font-size:14px;line-height:1.7}

/* Grid wrap — min-width:0 prevents the post grid from overflowing the right column */
.orionx-pg-grid-wrap{min-width:0}

/* Intro panel — background image overlay mode */
.orionx-pg-intro--has-bg{background-size:cover;background-repeat:no-repeat;position:relative;overflow:hidden;display:flex;flex-direction:column}
/* Dark tint layer sits between image and text */
.orionx-pg-intro--has-bg::before{content:'';position:absolute;inset:0;background-color:rgba(0,0,0,.4);z-index:0;pointer-events:none}
/* Ensure all text elements are above the tint */
.orionx-pg-intro--has-bg .orionx-pg-intro__label,
.orionx-pg-intro--has-bg .orionx-pg-intro__heading,
.orionx-pg-intro--has-bg .orionx-pg-intro__desc{position:relative;z-index:1}

/* Responsive: stack intro above grid on tablet & mobile.
   !important beats the Elementor-generated intro_width selector
   (.elementor-element-XYZ .orionx-pg-wrapper--has-intro) at 2-class specificity. */
@media(max-width:1024px){
	.orionx-pg-wrapper--has-intro{grid-template-columns:1fr !important;gap:24px !important}
	.orionx-pg-wrapper--has-intro .orionx-pg-grid-wrap{width:100%}
}

.orionx-post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}

/* ── Card base ──────────────────────────────────────────────────────────────── */
.orionx-post-card{background:#fff;border-radius:8px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 1px 4px rgba(0,0,0,.06);transition:box-shadow .2s}
.orionx-post-card:hover{box-shadow:0 4px 16px rgba(0,0,0,.12)}
.orionx-post-card__thumb-wrap{display:block;overflow:hidden}
/* overflow:hidden on thumb so border-radius + zoom clip correctly */
.orionx-post-card__thumb{overflow:hidden;height:220px}
/* Base image rules — object-fit/position/filter/transition all overridable via Elementor controls */
.orionx-post-card__thumb img{width:100%;height:100%;object-fit:cover;object-position:center center;display:block;transition:opacity .4s ease,filter .4s ease,transform .4s ease}
/* Default subtle zoom on hover (overridden by img_hover_scale control when set) */
.orionx-post-card:hover .orionx-post-card__thumb img{transform:scale(1.04)}
.orionx-post-card__body{padding:20px;flex:1;display:flex;flex-direction:column}
/* Default element order — overridden per-widget via Elementor selectors */
.orionx-post-card__cat{order:1}
.orionx-post-card__title{order:2;margin:8px 0 6px;font-size:17px;line-height:1.4}
.orionx-post-card__meta{order:3}
.orionx-post-card__excerpt{order:4}
.orionx-post-card__more{order:5}
/* Category badge link — inline-block so padding + border-radius work */
.orionx-post-card__cat a{display:inline-block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--orionx-primary,#4f46e5);text-decoration:none;transition:color .15s,background-color .15s}
.orionx-post-card__title a{color:inherit;text-decoration:none}
.orionx-post-card__title a:hover{color:var(--orionx-primary,#4f46e5)}
/* Meta row — align-items left unset so the Elementor control owns it (defaults to flex-start in browser) */
.orionx-post-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;color:#888;margin-bottom:10px}
/* Meta sub-elements */
.orionx-post-card__meta-author{display:inline-flex;align-items:center}
.orionx-post-card__meta-author a{color:inherit;text-decoration:none;transition:color .15s}
.orionx-post-card__meta-author a:hover{color:var(--orionx-primary,#4f46e5)}
.orionx-post-card__meta-sep{opacity:.5;line-height:1}
.orionx-post-card__meta-date{display:inline-flex;align-items:center}
.orionx-post-card__meta-reading{display:inline-flex;align-items:center;font-style:italic}
/* Split (stacked) date format: month name on first line, day/year on second.
   Uses margin (not flex gap) for line spacing so it survives when the Date
   Alignment control switches the container to display:block. */
.orionx-post-card__meta-date--split{display:flex;flex-direction:column;line-height:1}
.orionx-post-card__meta-date-month{display:block;text-transform:uppercase;margin-bottom:4px}
.orionx-post-card__meta-date-num{display:block}
/* Excerpt + read more */
.orionx-post-card__excerpt{font-size:13px;color:#555;line-height:1.7;flex:1;margin:0 0 14px}
.orionx-post-card__more{font-size:13px;font-weight:600;color:var(--orionx-primary,#4f46e5);text-decoration:none;margin-top:auto;align-self:flex-start}

/* ── OVERLAY layout ─────────────────────────────────────────────────────────── */
/* Card itself becomes a positioned container; image fills it absolutely */
.orionx-post-card--overlay{position:relative;min-height:380px;background:#111}
/* Image — fills the whole card */
.orionx-post-card--overlay .orionx-post-card__thumb-wrap{position:absolute;inset:0;display:block;width:100%;height:100%}
.orionx-post-card--overlay .orionx-post-card__thumb{height:100%;width:100%}
.orionx-post-card--overlay .orionx-post-card__thumb img{transition:opacity .4s ease,filter .4s ease,transform .6s ease}
.orionx-post-card--overlay:hover .orionx-post-card__thumb img{transform:scale(1.06)}
/* Invisible full-card link (sits below the gradient but above the image) */
.orionx-post-card--overlay .orionx-post-card__overlay-link{position:absolute;inset:0;z-index:1}
/* Make the WHOLE overlay card (image + empty space) clickable: the body lets clicks
   pass through to the full-card link, while real links/buttons inside stay clickable. */
.orionx-post-card--overlay .orionx-post-card__body{pointer-events:none}
.orionx-post-card--overlay .orionx-post-card__body a,
.orionx-post-card--overlay .orionx-post-card__body button{pointer-events:auto}
/* Gradient tint — darkens BOTH top and bottom so date(top) and title(bottom) stay legible */
.orionx-post-card--overlay::before{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.6) 0%,transparent 35%,transparent 60%,rgba(0,0,0,.85) 100%);z-index:2;pointer-events:none}
/* Body — fills the WHOLE card (full height) as a flex column so each field can be
   pushed to top / middle / bottom independently via its own "Vertical Align" control
   (which sets margin-block auto on that element). */
.orionx-post-card--overlay .orionx-post-card__body{position:absolute;left:0;right:0;top:0;bottom:0;z-index:3;background:transparent;color:#fff;padding:24px;display:flex;flex-direction:column}
/* Force text to white so it's readable on dark overlay */
.orionx-post-card--overlay .orionx-post-card__cat a{color:#fff;opacity:.85}
.orionx-post-card--overlay .orionx-post-card__title a{color:#fff}
.orionx-post-card--overlay .orionx-post-card__title a:hover{color:#fff;opacity:.8}
.orionx-post-card--overlay .orionx-post-card__meta{color:rgba(255,255,255,.7)}
.orionx-post-card--overlay .orionx-post-card__excerpt{color:rgba(255,255,255,.8)}
.orionx-post-card--overlay .orionx-post-card__more{color:#fff;border:1px solid rgba(255,255,255,.5);padding:6px 14px;border-radius:4px;margin-top:10px;display:inline-block}
.orionx-post-card--overlay .orionx-post-card__more:hover{background:rgba(255,255,255,.15)}

/* ── OVERLAY SPLIT mode — optional spacer-driven date-top / content-bottom ─── */
/* (The base overlay body is already full-height; split mode just adds a flexible
   spacer you can position via Fields Order to force a hard top/bottom gap.) */
.orionx-post-card__spacer{flex:0;pointer-events:none} /* inactive in standard/side/non-split */
.orionx-post-card--overlay-split .orionx-post-card__spacer{flex:1;order:2} /* default order 2 — sits between meta(1) and title(3) */

/* ── SIDE layout ────────────────────────────────────────────────────────────── */
.orionx-post-card--side{flex-direction:row;align-items:stretch}
.orionx-post-card--side .orionx-post-card__thumb-wrap{flex-shrink:0;width:200px;display:block;overflow:hidden}
.orionx-post-card--side .orionx-post-card__thumb{height:100%;min-height:160px}
@media(max-width:600px){
	.orionx-post-card--side{flex-direction:column}
	.orionx-post-card--side .orionx-post-card__thumb-wrap{width:100%}
	.orionx-post-card--side .orionx-post-card__thumb{height:200px;min-height:unset}
}
.orionx-no-posts,.orionx-no-products{color:#888;font-style:italic}
.orionx-pagination{display:flex;gap:6px;flex-wrap:wrap;margin-top:24px}
.orionx-pagination .page-numbers{padding:6px 12px;border:1px solid #ddd;border-radius:4px;text-decoration:none;font-size:13px;color:#333}
.orionx-pagination .current{background:var(--orionx-primary,#4f46e5);color:#fff;border-color:transparent}

/* ── Post Meta (legacy) ─────────────────────────────────────────────────────── */
.orionx-post-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;color:#666}
.orionx-meta-item{display:inline-flex;align-items:center;gap:4px}
.orionx-meta-item a{color:inherit;text-decoration:none}
.orionx-meta-item a:hover{color:var(--orionx-primary,#4f46e5)}
.orionx-meta-sep{opacity:.4;margin:0 2px}

/* ── Author Box (legacy) ─────────────────────────────────────────────────────── */
.orionx-author-box{display:flex;gap:20px;background:#f8fafc;border-radius:8px;padding:28px}
.orionx-author-box--vertical{flex-direction:column;align-items:center;text-align:center}
.orionx-author-avatar{border-radius:50%;display:block}
.orionx-author-box__header{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.orionx-author-box--vertical .orionx-author-box__header{justify-content:center}
.orionx-author-box__name{margin:0;font-size:16px;font-weight:700}
.orionx-author-box__name a{color:inherit;text-decoration:none}
.orionx-author-box__count{font-size:12px;color:#888;background:#e5e7eb;padding:2px 8px;border-radius:20px}
.orionx-author-box__bio{font-size:13px;color:#555;line-height:1.7;margin:0 0 14px}
.orionx-author-box__links{display:flex;gap:12px;flex-wrap:wrap}
.orionx-author-box--vertical .orionx-author-box__links{justify-content:center}
.orionx-author-box__all-posts,.orionx-author-box__website{font-size:13px;font-weight:600;color:var(--orionx-primary,#4f46e5);text-decoration:none}

/* ── Breadcrumbs (legacy) ────────────────────────────────────────────────────── */
.orionx-breadcrumbs{font-size:13px}
.orionx-breadcrumbs__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:4px}
.orionx-breadcrumbs__item{display:flex;align-items:center;gap:4px}
.orionx-breadcrumbs a{color:#555;text-decoration:none}
.orionx-breadcrumbs a:hover{color:var(--orionx-primary,#4f46e5)}
.orionx-breadcrumbs__current{color:#333;font-weight:500}
.orionx-breadcrumbs__sep{color:#bbb;font-size:11px}

/* ── Product Grid (legacy) ───────────────────────────────────────────────────── */
.orionx-product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.orionx-product-card{background:#fff;border-radius:8px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 1px 4px rgba(0,0,0,.06);transition:box-shadow .2s}
.orionx-product-card:hover{box-shadow:0 4px 16px rgba(0,0,0,.12)}
.orionx-product-card__thumb{position:relative;overflow:hidden;aspect-ratio:1}
.orionx-product-card__thumb a{display:block;height:100%}
.orionx-product-card__thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.orionx-product-card:hover .orionx-product-card__thumb img{transform:scale(1.04)}
.orionx-product-card__badge{position:absolute;top:10px;left:10px;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:700;text-transform:uppercase}
.orionx-product-card__badge--sale{background:#ef4444;color:#fff}
.orionx-product-card__badge--featured{background:var(--orionx-primary,#4f46e5);color:#fff}
.orionx-product-card__body{padding:16px;flex:1;display:flex;flex-direction:column;gap:8px}
.orionx-product-card__title{margin:0;font-size:15px;font-weight:600}
.orionx-product-card__title a{color:inherit;text-decoration:none}
.orionx-product-card__title a:hover{color:var(--orionx-primary,#4f46e5)}
.orionx-product-card__price{font-weight:700;font-size:16px;color:var(--orionx-primary,#4f46e5)}
.orionx-product-card__atc .button{display:block;width:100%;text-align:center;padding:9px;font-size:13px;font-weight:600;border-radius:4px}

/* ── Archive Title ───────────────────────────────────────────────────────────── */
.orionx-archive-title{}

/* ── Archive Description ─────────────────────────────────────────────────────── */
.orionx-archive-desc{color:#555;line-height:1.7}

/* ── Post Title ─────────────────────────────────────────────────────────────── */
.orionx-post-title{margin:0}
.orionx-post-title a{color:inherit;text-decoration:none}

/* ── Post Featured Image ─────────────────────────────────────────────────────── */
.orionx-featured-image{display:block;width:100%}
.orionx-featured-image img{width:100%;height:auto;display:block}
.orionx-featured-image--cover img{height:100%;object-fit:cover}

/* ── Post Content ────────────────────────────────────────────────────────────── */
.orionx-post-content{}

/* ── Post Excerpt ────────────────────────────────────────────────────────────── */
.orionx-post-excerpt{color:#555;line-height:1.7}

/* ── Reading Time ────────────────────────────────────────────────────────────── */
.orionx-reading-time{display:inline-flex;align-items:center;gap:5px;font-size:13px;color:#888}

/* ── Comments Count ──────────────────────────────────────────────────────────── */
.orionx-comments-count{display:inline-flex;align-items:center;gap:5px;font-size:13px;color:#888}
.orionx-comments-count a{color:inherit;text-decoration:none}

/* ── Post Navigation ─────────────────────────────────────────────────────────── */
.orionx-post-nav{display:flex;gap:16px;justify-content:space-between;flex-wrap:wrap}
.orionx-post-nav__item{flex:1;min-width:0}
.orionx-post-nav__prev{text-align:left}
.orionx-post-nav__next{text-align:right}
.orionx-post-nav__label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#999;margin-bottom:4px}
.orionx-post-nav__title{display:block;font-weight:600;color:inherit;text-decoration:none;font-size:14px;line-height:1.4}
.orionx-post-nav__title:hover{color:var(--orionx-primary,#4f46e5)}
.orionx-post-nav--with-thumb .orionx-post-nav__item{display:flex;align-items:center;gap:12px}
.orionx-post-nav--with-thumb .orionx-post-nav__next{flex-direction:row-reverse}
.orionx-post-nav__thumb{flex-shrink:0;width:56px;height:56px;border-radius:4px;overflow:hidden}
.orionx-post-nav__thumb img{width:100%;height:100%;object-fit:cover;display:block}

/* ── Search Form ─────────────────────────────────────────────────────────────── */
.orionx-search-form{display:flex;position:relative}
.orionx-search-form__input{width:100%;padding:10px 44px 10px 14px;border:1px solid #ddd;border-radius:6px;font-size:14px;outline:none;transition:border-color .15s}
.orionx-search-form__input:focus{border-color:var(--orionx-primary,#4f46e5)}
.orionx-search-form__btn{position:absolute;right:0;top:0;bottom:0;padding:0 14px;background:none;border:none;cursor:pointer;color:#888;display:flex;align-items:center}
.orionx-search-form__btn:hover{color:var(--orionx-primary,#4f46e5)}

/* ── Site Logo ────────────────────────────────────────────────────────────────── */
.orionx-site-logo{display:inline-block}
.orionx-site-logo img{display:block;height:auto}

/* ── Site Title ───────────────────────────────────────────────────────────────── */
.orionx-site-title{margin:0}
.orionx-site-title a{color:inherit;text-decoration:none}

/* ── Site Tagline ─────────────────────────────────────────────────────────────── */
.orionx-site-tagline{margin:0;color:#555}

/* ── Product Price ────────────────────────────────────────────────────────────── */
.orionx-product-price .price{font-size:inherit;font-weight:inherit;color:inherit}
.orionx-product-price ins{text-decoration:none;font-weight:700}
.orionx-product-price del{opacity:.6;font-size:.85em}

/* ── Product Rating ───────────────────────────────────────────────────────────── */
.orionx-product-rating{display:flex;align-items:center;gap:6px}
.orionx-product-rating .star-rating{float:none}

/* ── Product Stock ────────────────────────────────────────────────────────────── */
.orionx-product-stock{display:inline-flex;align-items:center;gap:5px;font-size:13px;font-weight:600}
.orionx-product-stock--in{color:#16a34a}
.orionx-product-stock--out{color:#dc2626}
.orionx-product-stock--backorder{color:#d97706}

/* ── Product SKU ──────────────────────────────────────────────────────────────── */
.orionx-product-sku{font-size:13px;color:#888}
.orionx-product-sku__value{color:#333;font-weight:500}

/* ── Product Meta ─────────────────────────────────────────────────────────────── */
.orionx-product-meta{font-size:13px;color:#888;line-height:2}
.orionx-product-meta a{color:#333;text-decoration:none}
.orionx-product-meta a:hover{color:var(--orionx-primary,#4f46e5)}

/* ── Product Gallery ──────────────────────────────────────────────────────────── */
.orionx-product-gallery__main{width:100%;aspect-ratio:1;overflow:hidden;border-radius:6px;margin-bottom:10px}
.orionx-product-gallery__main img{width:100%;height:100%;object-fit:cover;display:block;cursor:zoom-in}
.orionx-product-gallery__thumbs{display:flex;gap:8px;flex-wrap:wrap}
.orionx-product-gallery__thumb{width:72px;height:72px;overflow:hidden;border-radius:4px;border:2px solid transparent;cursor:pointer;flex-shrink:0;transition:border-color .15s}
.orionx-product-gallery__thumb.is-active,.orionx-product-gallery__thumb:hover{border-color:var(--orionx-primary,#4f46e5)}
.orionx-product-gallery__thumb img{width:100%;height:100%;object-fit:cover;display:block}

/* ── Product Related / Upsells ────────────────────────────────────────────────── */
.orionx-product-related,.orionx-product-upsells{margin-top:32px}
.orionx-product-related__title,.orionx-product-upsells__title{font-size:20px;font-weight:700;margin:0 0 20px}
.orionx-product-related__grid,.orionx-product-upsells__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px}

/* ── Loop Item wrapper ────────────────────────────────────────────────────────── */
.orionx-loop-item{width:100%}

/* ── Query Posts widget ───────────────────────────────────────────────────────── */
/* Grid layout */
.orionx-qp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
/* List layout */
.orionx-qp-list{display:flex;flex-direction:column;gap:24px}

/* Card — shared */
.orionx-qp-card{background:#fff;border-radius:8px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 1px 4px rgba(0,0,0,.06);transition:box-shadow .2s;border:1px solid transparent}
.orionx-qp-card:hover{box-shadow:0 4px 16px rgba(0,0,0,.12)}

/* Card — list variant (side-by-side image + body) */
.orionx-qp-card--list{flex-direction:row}
.orionx-qp-card--list .orionx-qp-card__thumb-link{flex-shrink:0;width:220px}
.orionx-qp-card--list .orionx-qp-card__thumb{height:100% !important;min-height:160px}

/* Thumbnail */
.orionx-qp-card__thumb-link{display:block;overflow:hidden}
.orionx-qp-card__thumb{height:220px;overflow:hidden}
.orionx-qp-card__thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.orionx-qp-card:hover .orionx-qp-card__thumb img{transform:scale(1.04)}

/* Body */
.orionx-qp-card__body{padding:20px;flex:1;display:flex;flex-direction:column}

/* Taxonomy badge */
.orionx-qp-card__badge{display:inline-block;margin-bottom:8px}
.orionx-qp-card__badge a{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--orionx-primary,#4f46e5);text-decoration:none}
.orionx-qp-card__badge a:hover{text-decoration:underline}

/* Title */
.orionx-qp-card__title{margin:0 0 8px;font-size:18px;line-height:1.4}
.orionx-qp-card__title a{color:inherit;text-decoration:none}
.orionx-qp-card__title a:hover{color:var(--orionx-primary,#4f46e5)}

/* Meta row */
.orionx-qp-card__meta{display:flex;flex-wrap:wrap;gap:10px;font-size:12px;color:#888;margin-bottom:10px;align-items:center}
.orionx-qp-card__meta .orionx-qp-card__author::after{content:"·";margin-left:10px;opacity:.4}
.orionx-qp-card__meta .orionx-qp-card__author:only-child::after{content:""}

/* Excerpt */
.orionx-qp-card__excerpt{font-size:13px;color:#555;line-height:1.7;flex:1;margin:0 0 16px}

/* Read more button */
.orionx-qp-card__more{display:inline-block;font-size:13px;font-weight:600;color:var(--orionx-primary,#4f46e5);text-decoration:none;margin-top:auto;padding:6px 14px;border-radius:4px;transition:opacity .15s}
.orionx-qp-card__more:hover{opacity:.8}

/* ── Navigation Menu widget ───────────────────────────────────────────────────── */

/* Wrap (toggle layout) */
.orionx-nav-menu-wrap{position:relative;display:inline-flex;align-items:center}

/* Base nav */
.orionx-nav-menu{display:block}

/* Hard reset: no bullets or default padding on ANY list inside the nav widget.
   Use two-class specificity (0,2,0) + !important to beat any theme ul/li rule. */
.orionx-nav-menu ul,.orionx-nav-menu ol,.orionx-nav-menu li{list-style:none !important;padding:0 !important;margin:0 !important}

/* Top-level list — flex container.
   Two selectors: element+class (0,2,1) beats most themes. */
nav.orionx-nav-menu ul.orionx-nav-menu__list,
.orionx-nav-menu .orionx-nav-menu__list{display:flex !important;flex-wrap:wrap;align-items:center;gap:4px}

/* Horizontal (default) */
.orionx-nav-menu--horizontal .orionx-nav-menu__list{flex-direction:row}

/* Vertical */
.orionx-nav-menu--vertical .orionx-nav-menu__list{flex-direction:column;align-items:flex-start}

/* Item */
.orionx-nav-menu__item{position:relative}

/* Link */
.orionx-nav-menu__link{display:inline-flex;align-items:center;gap:5px;padding:8px 14px;color:inherit;text-decoration:none;white-space:nowrap;transition:color .15s,background-color .15s;cursor:pointer}

/* Arrow */
.orionx-nav-menu__arrow{display:inline-flex;align-items:center;line-height:1;transition:transform .22s}
.orionx-nav-menu__item.is-open > .orionx-nav-menu__link .orionx-nav-menu__arrow,
.orionx-nav-menu__item:hover   > .orionx-nav-menu__link .orionx-nav-menu__arrow{transform:rotate(180deg)}

/* ── Dropdown panel ─────────────────────────────────────────────────────────── */
.orionx-nav-menu__dropdown{
	list-style:none;margin:0;padding:8px 0;
	position:absolute;top:calc(100% + 4px);left:0;z-index:9999;
	background:#fff;min-width:200px;
	border-radius:8px;
	box-shadow:0 10px 40px rgba(0,0,0,.12);
	opacity:0;visibility:hidden;
	transform:translateY(6px);
	transition:opacity .2s,visibility .2s,transform .2s;
	pointer-events:none;
}

/* Vertical layout: sub-menu opens to the right */
.orionx-nav-menu--vertical .orionx-nav-menu__dropdown{
	top:0;left:100%;margin-left:4px;transform:translateX(6px)
}
.orionx-nav-menu--vertical .orionx-nav-menu__item.is-open > .orionx-nav-menu__dropdown{transform:translateX(0)}

/* Show on hover (hover-open enabled) */
.orionx-nav-menu--hover .has-children:hover  > .orionx-nav-menu__dropdown{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}

/* Show on click (.is-open) */
.orionx-nav-menu .has-children.is-open > .orionx-nav-menu__dropdown{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}

/* Dropdown link */
.orionx-nav-menu__dropdown .orionx-nav-menu__link{padding:9px 20px;width:100%;box-sizing:border-box;color:#333}
.orionx-nav-menu__dropdown .orionx-nav-menu__link:hover{background:rgba(0,0,0,.04);color:var(--orionx-primary,#4f46e5)}

/* Active item */
.orionx-nav-menu__item.is-active > .orionx-nav-menu__link{color:var(--orionx-primary,#4f46e5)}

/* ── Toggle (hamburger) layout ──────────────────────────────────────────────── */
.orionx-nav-menu__toggle{
	display:inline-flex;flex-direction:column;justify-content:center;align-items:center;
	gap:5px;padding:8px 10px;background:none;border:none;cursor:pointer;border-radius:6px;
	transition:background-color .15s
}
.orionx-nav-menu__toggle:hover{background:rgba(0,0,0,.06)}
.orionx-nav-menu__toggle-bar{display:block;width:24px;height:2px;background:#333;border-radius:2px;transition:transform .25s,opacity .25s}

/* Animated X on open */
.orionx-nav-menu__toggle.is-active .orionx-nav-menu__toggle-bar:nth-child(1){transform:translateY(7px) rotate(45deg)}
.orionx-nav-menu__toggle.is-active .orionx-nav-menu__toggle-bar:nth-child(2){opacity:0;transform:scaleX(0)}
.orionx-nav-menu__toggle.is-active .orionx-nav-menu__toggle-bar:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* Toggle nav panel */
.orionx-nav-menu--toggle .orionx-nav-menu__list{
	display:none;flex-direction:column;
	position:absolute;top:calc(100% + 8px);left:0;z-index:9999;
	background:#fff;min-width:220px;
	border-radius:8px;box-shadow:0 10px 40px rgba(0,0,0,.12);
	padding:8px 0
}
.orionx-nav-menu--toggle.is-open .orionx-nav-menu__list{display:flex}
.orionx-nav-menu--toggle .orionx-nav-menu__item{width:100%}

/* Toggle: dropdown is indented */
.orionx-nav-menu--toggle .orionx-nav-menu__dropdown{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border-radius:0;min-width:0;padding:0;pointer-events:auto;display:none;background:rgba(0,0,0,.03)}
.orionx-nav-menu--toggle .has-children.is-open > .orionx-nav-menu__dropdown{display:block}
.orionx-nav-menu--toggle .orionx-nav-menu__dropdown .orionx-nav-menu__link{padding-left:32px}

/* Placeholder in editor */
.orionx-nav-menu__placeholder{color:#888;font-style:italic;font-size:13px;padding:10px}

/* ── Responsive ───────────────────────────────────────────────────────────────── */
@media(max-width:768px){
	.orionx-post-grid,.orionx-product-grid{grid-template-columns:1fr}
	.orionx-author-box{flex-direction:column}
	.orionx-post-nav{flex-direction:column}
	.orionx-qp-grid{grid-template-columns:1fr}
	.orionx-qp-card--list{flex-direction:column}
	.orionx-qp-card--list .orionx-qp-card__thumb-link{width:100%}
}
