/* Imperial Raven: styles for the product catalog shortcodes, product content and a few brand details.
   Colours mirror the Elementor Global Colors. */
:root{--ir-ink:#0A0B0D;--ir-graph:#121419;--ir-steel:#1A1D23;--ir-line:#262A31;--ir-text:#ECEAE5;--ir-muted:#9EA1A7;--ir-brass:#B8945A;--ir-brass2:#D9BC8A;--ir-bone:#F2F0EB;--ir-wa:#25D366;--ir-ease:cubic-bezier(.2,.7,.2,1)}
body{background:var(--ir-ink);color:var(--ir-text)}
html{scroll-behavior:smooth;scroll-padding-top:90px}
.ast-container,.site-content .ast-container{max-width:100%;padding:0}
/* header */
#ir-header{position:sticky;top:0;z-index:99;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:rgba(10,11,13,.86)!important}
.admin-bar #ir-header{top:32px}
.ir-logo img{max-height:44px;width:auto!important}
.ir-nav a{color:var(--ir-muted)!important;transition:color .2s var(--ir-ease)}
.ir-nav a:hover,.ir-nav .current-menu-item>a{color:var(--ir-text)!important}
.ir-nav .sub-menu a{color:var(--ir-text)!important}.ir-nav .sub-menu a:hover{color:var(--ir-brass2)!important}
.ir-pro-btn .elementor-button{padding:11px 16px!important;font-size:12px!important}
/* typography helpers */
.ir-eyebrow .elementor-heading-title{display:inline-flex;align-items:center;gap:10px;font-size:12px!important;margin-bottom:6px}
.ir-eyebrow .elementor-heading-title::before{content:"";width:28px;height:1px;background:currentColor}
.ir-accent{color:var(--ir-brass)}
.ir-status .elementor-heading-title{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border:1px solid var(--ir-line);border-radius:999px;font-size:11px!important;background:rgba(10,11,13,.6)}
.ir-status .elementor-heading-title::before{content:"";width:8px;height:8px;border-radius:50%;background:#6FD3A8;box-shadow:0 0 0 0 rgba(111,211,168,.6);animation:ir-pulse 2s infinite}
@keyframes ir-pulse{70%{box-shadow:0 0 0 10px rgba(111,211,168,0)}100%{box-shadow:0 0 0 0 rgba(111,211,168,0)}}
.ir-trust-label .elementor-heading-title{font-size:11px!important;margin-top:8px}
.ir-card-num .elementor-heading-title{font-size:11px!important}
.ir-prose h2{font-size:1.5rem;margin:2em 0 .6em;color:var(--ir-text)}.ir-prose a,.elementor-widget-text-editor a{color:var(--ir-brass)}
/* cards and hover states */
.ir-card-img{overflow:hidden;border-radius:10px 10px 0 0}.ir-card-img img{transition:transform .8s var(--ir-ease),opacity .4s;opacity:.8}
.e-con:hover>.ir-card-img img,.ir-card-img:hover img{transform:scale(1.06);opacity:1}
.ir-iconbox{transition:transform .3s var(--ir-ease),border-color .3s}.ir-iconbox:hover{transform:translateY(-4px);border-color:rgba(184,148,90,.55)!important}
.elementor-button{transition:all .25s var(--ir-ease)}
.ir-btn-ghost .elementor-button:hover{border-color:var(--ir-brass)!important}
/* floating WhatsApp */
.ir-wa-float{position:fixed!important;right:20px;bottom:20px;z-index:98;width:auto!important;margin:0!important}
.ir-wa-float .elementor-button{border-radius:999px!important;box-shadow:0 16px 34px -12px rgba(37,211,102,.55)}
/* accordion */
.ir-accordion .elementor-accordion-item{border:0!important;border-bottom:1px solid var(--ir-line)!important}
.ir-accordion--light .elementor-accordion-item{border-bottom-color:#DAD5CA!important}
.ir-accordion .elementor-tab-title{font-size:18px}
/* product grid */
.ir-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:18px 0;margin-bottom:26px;border-top:1px solid var(--ir-line);border-bottom:1px solid var(--ir-line)}
.ir-filter{padding:9px 14px;border:1px solid var(--ir-line);background:transparent;color:var(--ir-muted);border-radius:999px;font:600 12px/1 Montserrat,sans-serif;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:all .2s}
.ir-filter:hover{color:var(--ir-text);border-color:#3A3F48}.ir-filter.is-active{background:var(--ir-text);color:var(--ir-ink);border-color:var(--ir-text)}
.ir-count{margin-left:auto;font:500 12px "IBM Plex Mono",monospace;color:var(--ir-muted)}
.ir-grid{display:flex;flex-wrap:wrap;margin:0 -12px}
.ir-card{width:25%;padding:12px;box-sizing:border-box}
.ir-card>*{position:relative}
.ir-card .ir-card__media{display:flex;align-items:center;justify-content:center;background:#fff;height:240px;border-radius:10px 10px 0 0;overflow:hidden;position:relative;border:1px solid var(--ir-line);border-bottom:0}
.ir-card .ir-card__media img{width:100%;height:240px;object-fit:contain;padding:46px 20px 16px;box-sizing:border-box;transition:transform .6s var(--ir-ease)}
.ir-card:hover .ir-card__media img{transform:scale(1.05)}
.ir-card__noimg{font:500 11px "IBM Plex Mono",monospace;letter-spacing:.1em;text-transform:uppercase;color:#8A6A36;background:var(--ir-bone);width:100%;height:100%;display:flex;align-items:center;justify-content:center}
.ir-card__badges{position:absolute;left:12px;top:12px;display:flex;gap:6px}
.ir-badge{padding:4px 9px;border-radius:999px;font:500 10px "IBM Plex Mono",monospace;letter-spacing:.08em;text-transform:uppercase;background:#2B2F36;color:#C9CCD1}.ir-badge--brass{background:var(--ir-brass);color:var(--ir-ink)}
.ir-card__body{background:var(--ir-steel);border:1px solid var(--ir-line);border-top:0;border-radius:0 0 10px 10px;padding:20px;display:flex;flex-direction:column;min-height:230px;transition:border-color .3s}
.ir-card:hover .ir-card__body,.ir-card:hover .ir-card__media{border-color:rgba(184,148,90,.55)}
.ir-card__type{font:500 11px "IBM Plex Mono",monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--ir-brass);margin-bottom:6px}
.ir-card__title{font:700 20px/1.2 Montserrat,sans-serif;margin:0 0 12px}.ir-card__title a{color:var(--ir-text)}
.ir-card__specs{list-style:none;margin:0 0 16px;padding:0;font-size:13px;color:var(--ir-muted)}
.ir-card__specs li{display:flex;justify-content:space-between;gap:10px;padding:6px 0;border-bottom:1px dashed var(--ir-line)}.ir-card__specs li span:last-child{color:var(--ir-text);text-align:right}
.ir-card .ir-btn{margin-top:auto;align-self:flex-start}
.ir-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 18px;border-radius:4px;font:600 12px/1 Montserrat,sans-serif;letter-spacing:.08em;text-transform:uppercase;text-decoration:none!important;transition:all .25s var(--ir-ease)}
.ir-btn--ghost{border:1px solid rgba(236,234,229,.28);color:var(--ir-text)!important}.ir-btn--ghost:hover{border-color:var(--ir-brass);color:var(--ir-brass2)!important}
.ir-btn--wa{background:var(--ir-wa);color:#06170D!important;padding:15px 24px}.ir-btn--wa:hover{background:#3BE07A;transform:translateY(-2px)}
.ir-empty{padding:40px;border:1px dashed var(--ir-line);border-radius:10px;text-align:center;color:var(--ir-muted)}
.ir-card.is-hidden{display:none}
@media(max-width:1180px){.ir-card{width:33.333%}}@media(max-width:900px){.ir-card{width:50%}}@media(max-width:600px){.ir-card{width:100%}}
/* product single */
.ir-single-img img{background:#fff;border-radius:10px;padding:48px;box-sizing:border-box;width:100%;max-height:560px;object-fit:contain}
.ir-single-title .elementor-heading-title,.ir-single-title h1{font:800 clamp(2rem,4vw,3.2rem)/1.08 Montserrat,sans-serif;color:var(--ir-text);margin:0 0 16px}
.ir-single-content{color:var(--ir-muted)}.ir-single-content h2{font:700 1.4rem Montserrat,sans-serif;color:var(--ir-text);margin:1.6em 0 .6em}
.ir-single-content .ir-intro{font-size:18px;color:var(--ir-text)}
.ir-single-content .ir-pricenote{padding:16px 18px;border:1px solid rgba(184,148,90,.4);border-radius:10px;background:linear-gradient(135deg,rgba(184,148,90,.08),rgba(184,148,90,0))}
.ir-features{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap}.ir-features li{width:50%;padding:8px 12px 8px 26px;position:relative;box-sizing:border-box;color:var(--ir-text)}
.ir-features li::before{content:"";position:absolute;left:4px;top:15px;width:10px;height:6px;border-left:2px solid var(--ir-brass);border-bottom:2px solid var(--ir-brass);transform:rotate(-45deg)}
.ir-specs{width:100%;border-collapse:collapse;font-size:15px}.ir-specs th,.ir-specs td{text-align:left;padding:11px 0;border-bottom:1px solid var(--ir-line);vertical-align:top}
.ir-specs th{width:38%;font:400 12px "IBM Plex Mono",monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--ir-muted);padding-right:16px}.ir-specs td{color:var(--ir-text)}
/* pro area */
.ir-gate{max-width:520px;padding:36px;border:1px solid var(--ir-line);border-radius:10px;background:var(--ir-steel)}
.ir-gate__label{font:500 12px "IBM Plex Mono",monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--ir-brass)}
.ir-gate input[type=password]{width:100%;padding:14px;background:var(--ir-ink);border:1px solid var(--ir-line);color:var(--ir-text);border-radius:4px;margin:10px 0}
.ir-gate input[type=submit]{background:var(--ir-brass);color:var(--ir-ink);border:0;padding:14px 24px;border-radius:4px;font:600 12px Montserrat,sans-serif;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.ir-table-wrap{overflow-x:auto;border:1px solid var(--ir-line);border-radius:10px;margin-top:30px}.ir-table{width:100%;min-width:720px;border-collapse:collapse;font-size:14px}
.ir-table th,.ir-table td{padding:13px 16px;border-bottom:1px solid var(--ir-line);text-align:left}.ir-table thead th{background:var(--ir-graph);font:400 11px "IBM Plex Mono",monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--ir-muted)}
.ir-table a{color:var(--ir-text);font-weight:600}.ir-tier{display:inline-block;margin:2px 14px 2px 0;font-family:"IBM Plex Mono",monospace;color:var(--ir-muted)}.ir-tier strong{color:var(--ir-text)}
/* WPForms */
.wpforms-container .wpforms-field-label{font:500 12px "IBM Plex Mono",monospace!important;letter-spacing:.1em;text-transform:uppercase;color:var(--ir-muted)!important}
.wpforms-container input,.wpforms-container select,.wpforms-container textarea{background:var(--ir-ink)!important;border:1px solid var(--ir-line)!important;color:var(--ir-text)!important;border-radius:4px!important;max-width:100%!important}
.wpforms-container input:focus,.wpforms-container textarea:focus,.wpforms-container select:focus{border-color:var(--ir-brass)!important;box-shadow:none!important}
.wpforms-container button[type=submit]{background:var(--ir-brass)!important;color:var(--ir-ink)!important;border:0!important;border-radius:4px!important;padding:15px 26px!important;font:600 13px Montserrat,sans-serif!important;letter-spacing:.08em;text-transform:uppercase;height:auto!important}
.wpforms-container button[type=submit]:hover{background:var(--ir-brass2)!important}
@media(max-width:767px){.ir-wa-float .elementor-button-text,.ir-pro-btn .elementor-button-text{display:none}.ir-wa-float .elementor-button,.ir-pro-btn .elementor-button{padding:14px!important}.ir-wa-float .elementor-button-icon,.ir-pro-btn .elementor-button-icon{margin:0!important}.ir-logo img{max-height:34px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ir-status .elementor-heading-title::before{animation:none}}
