/* Blight Studios – global refinements (loaded on every page, after theme CSS) */
:root {
	--bl-accent: #F15822;
	--bl-accent-2: #F7941D;
	--bl-bg: #1B1B1B;
	--bl-card: #232323;
	--bl-border: #3A3A3A;
	--bl-text: #C9C9C9;
	--bl-muted: #8F8F8F;
	--bl-white: #FFFFFF;
}

/* ---- Announcement bar (header top strip) ---- */
.blight-announce .elementor-heading-title { font-size: 12.5px !important; letter-spacing: .04em; color: #EDEDED !important; font-weight: 500 !important; }
.blight-announce .elementor-heading-title b { color: var(--bl-accent-2); font-weight: 700; }
.blight-announce .elementor-heading-title span { opacity: .55; margin: 0 .55em; }

/* ---- Buttons: one language everywhere ---- */
.wdt-button-holder .wdt-button, .woocommerce .button, .woocommerce button.button, .single_add_to_cart_button, .checkout-button, #place_order, .wc-block-components-button { border-radius: 999px !important; letter-spacing: .02em; transition: transform .15s, box-shadow .15s, background .15s !important; }
.single_add_to_cart_button, #place_order, .checkout-button { background: var(--bl-accent) !important; color: #fff !important; border: 0 !important; font-weight: 600 !important; padding: 16px 32px !important; font-size: 15px !important; }
.single_add_to_cart_button:hover, #place_order:hover, .checkout-button:hover { background: var(--bl-accent-2) !important; transform: translateY(-1px); box-shadow: 0 8px 22px rgba(241, 88, 34, .35); }
.single_add_to_cart_button.disabled, .single_add_to_cart_button.wc-variation-selection-needed { opacity: .5; }

/* ---- Product cards (shop + home carousel) ---- */
ul.products li.product .price { font-weight: 600; letter-spacing: .01em; }
ul.products li.product .price .amount { color: var(--bl-white); }

/* ---- Headings: a touch more presence ---- */
.wdt-heading-holder .wdt-heading-title { letter-spacing: -.01em; }
.wdt-heading-holder .wdt-heading-subtitle { letter-spacing: .16em; text-transform: uppercase; font-size: 12px !important; color: var(--bl-accent-2) !important; }

/* ---- Cookie consent ---- */
.blight-consent { position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 99999; display: flex; justify-content: center; }
.blight-consent[hidden] { display: none !important; }
.blight-consent-inner { max-width: 880px; width: 100%; display: flex; gap: 18px; align-items: center; justify-content: space-between; padding: 16px 20px; border-radius: 14px; background: #111; border: 1px solid #333; box-shadow: 0 16px 40px rgba(0,0,0,.5); color: #E6E6E6; font-size: 13.5px; line-height: 1.5; }
.blight-consent-inner p { margin: 0; }
.blight-consent-inner a { color: var(--bl-accent-2); text-decoration: underline; }
.blight-consent-actions { display: flex; gap: 8px; flex: 0 0 auto; }
.blight-consent-btn { border: 0; border-radius: 999px; padding: 10px 18px; font-weight: 600; font-size: 13px; cursor: pointer; background: var(--bl-accent); color: #fff; }
.blight-consent-btn.is-secondary { background: transparent; color: #CFCFCF; border: 1px solid #444; }
.blight-consent-btn:hover { filter: brightness(1.1); }
@media (max-width: 680px) { .blight-consent-inner { flex-direction: column; align-items: stretch; text-align: center; } .blight-consent-actions { justify-content: center; } }

/* ---- Sticky contact panel: smaller and out of the way on phones ---- */
@media (max-width: 767px) {
	.mystickyelements-fixed.mystickyelements-position-mobile-right { transform: scale(.72); transform-origin: right center; }
	.mystickyelements-fixed .mystickyelements-lists li a span.mystickyelements-icon-text { display: none !important; }
}

/* ---- Mobile rhythm ---- */
@media (max-width: 767px) {
	.elementor-section.elementor-section-boxed > .elementor-container { padding-left: 4px; padding-right: 4px; }
	.single-product .product .summary { padding-top: 12px; }
}

/* ---- Blog list: consistent card look ---- */
.wdt-blog-holder .wdt-content-item { border-radius: 14px; overflow: hidden; }

/* ---- Forms on dark ---- */
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .elementor-field-group .elementor-field { background: #161616; border: 1px solid var(--bl-border); color: #fff; border-radius: 10px; }
.woocommerce form .form-row input.input-text:focus, .woocommerce form .form-row textarea:focus { border-color: var(--bl-accent-2); outline: 0; }

/* ---- Product page: customization timeline was wider than the content area (text clipped on the right) ---- */
.elementor-element-62fdb35 .elementor-inner-section { max-width: 1100px; margin-left: auto; margin-right: auto; }

/* ---- Mobile: announcement bar on one line, variation box stacked ---- */
@media (max-width: 767px) {
	.blight-announce .elementor-heading-title { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-size: 11.5px !important; }
	.single-product .woocommerce-variation.single_variation { display: flex; flex-direction: column; }
	.single-product .woocommerce-variation-price { order: 1; width: 100% !important; float: none !important; margin: 0 0 8px; }
	.single-product .woocommerce-variation-description { order: 2; width: 100% !important; float: none !important; }
	.blight-chip label { padding-right: 34px !important; }
}

/* ---- Home hero (static, replaces Revolution Slider) ---- */
.blight-hero .elementor-column-wrap, .blight-hero .elementor-widget-wrap { max-width: 640px; }
.blight-hero-kicker .elementor-heading-title { font-size: 12px !important; letter-spacing: .18em; text-transform: uppercase; color: var(--bl-accent-2) !important; font-weight: 600 !important; margin-bottom: 14px; }
.blight-hero-title .elementor-heading-title { font-size: clamp(38px, 5.2vw, 68px) !important; line-height: 1.02 !important; letter-spacing: -.02em; color: #fff !important; font-weight: 700 !important; margin-bottom: 18px; }
.blight-hero-text { width: 100% !important; max-width: none; }
.blight-hero-text p { max-width: 540px; font-size: 16.5px; line-height: 1.6; color: #D9D9D9; margin: 0 0 26px; }
.blight-hero-btn { margin-right: 12px; margin-bottom: 10px; }
.blight-hero-btn .elementor-button { text-transform: none !important; background: var(--bl-accent) !important; color: #fff !important; border-radius: 999px !important; padding: 16px 30px !important; font-weight: 600 !important; font-size: 15px !important; border: 0 !important; }
.blight-hero-btn .elementor-button:hover { background: var(--bl-accent-2) !important; transform: translateY(-1px); }
.blight-hero-btn.is-secondary .elementor-button { background: rgba(255,255,255,.08) !important; border: 1px solid rgba(255,255,255,.35) !important; color: #fff !important; }
.blight-hero-btn.is-secondary .elementor-button:hover { background: rgba(255,255,255,.16) !important; }
@media (max-width: 767px) { .blight-hero .elementor-widget-wrap { max-width: 100%; } .blight-hero-text p { font-size: 15px; } .blight-hero-btn { display: block; width: 100%; margin-right: 0; } .blight-hero-btn .elementor-button { width: 100%; } }

/* ---- Materials (core widgets) ---- */
.blight-materials-title .elementor-heading-title { font-size: 30px !important; color: #fff !important; margin-bottom: 12px; }
.blight-materials { font-size: 15px; line-height: 1.7; color: var(--bl-text); }
.blight-materials strong { color: #fff; }
/* the theme leaves 120px under the header for its slider; the static hero starts right below it */
.home #header-wrapper { margin-bottom: 0 !important; }
@media (max-width: 767px) { .blight-hero > .elementor-background-overlay { background: linear-gradient(180deg, rgba(12,12,12,.88) 0%, rgba(12,12,12,.55) 55%, rgba(12,12,12,.25) 100%) !important; } .blight-hero-kicker .elementor-heading-title { font-size: 11px !important; } }

/* ---- thank-you note ---- */
.blight-thankyou-note { margin: 0 0 22px; padding: 14px 16px; border-radius: 12px; background: rgba(247,148,29,.08); border: 1px solid rgba(247,148,29,.35); font-size: 14px; line-height: 1.55; color: var(--bl-text); }
.blight-thankyou-note b { color: #fff; }
.blight-thankyou-note a { color: var(--bl-accent-2); text-decoration: underline; }

/* ---- Sticky side panel: slimmer on product pages so it stops covering the options ---- */
.single-product .mystickyelements-fixed.mystickyelements-position-right { transform: scale(.78); transform-origin: right center; opacity: .92; }
.single-product .mystickyelements-fixed.mystickyelements-position-right:hover { transform: scale(1); opacity: 1; }
.single-product .mystickyelements-fixed .mystickyelements-lists li a span.mystickyelements-icon-text { display: none !important; }
@media (min-width: 1025px) and (max-width: 1500px) { .single-product .summary.wdt-product-summary { padding-right: 44px; } }

/* ---- Customer Experience: week badges on stage cards ---- */
.blight-week { display: inline-block; margin-left: 8px; padding: 2px 9px; border-radius: 999px; background: rgba(247,148,29,.12); border: 1px solid rgba(247,148,29,.4); color: var(--bl-accent-2); font-size: 12px; font-weight: 600; letter-spacing: .04em; vertical-align: middle; white-space: nowrap; }

/* ---- Title bar on the product page (div styled like the theme's h1) ----
   The theme only styles `h1` here (`.main-title-section h1 { margin: 0 0 20px }`),
   and this bar is a div, so it inherited nothing and the breadcrumb ended up
   glued to the title. Mirror the theme's margin so product pages breathe like
   the rest of the site. */
.main-title-section .blight-title-bar { font-size: clamp(2rem, 1.6rem + 2vw, 3.5rem); font-weight: 700; line-height: 1.1; color: #fff; margin: 0 0 20px; }

/* ---- Phones: the sticky contact panel covered the option chips and the checkout fields – hidden where people are configuring or paying ---- */
@media (max-width: 767px) { .single-product .mystickyelements-fixed, .woocommerce-cart .mystickyelements-fixed, .woocommerce-checkout .mystickyelements-fixed { display: none !important; } }
.blight-mobile-bar button, .blight-mobile-bar .button { text-transform: none !important; letter-spacing: 0 !important; }

/* ---- Announcement bar: one clear line, readable size ---- */
.blight-announce .elementor-heading-title { font-size: 13px !important; line-height: 1.4 !important; font-weight: 500 !important; letter-spacing: .02em; color: #D9D9D9 !important; text-transform: none !important; white-space: nowrap; }
.blight-announce .elementor-heading-title b { color: var(--bl-accent-2); font-weight: 700; }
.blight-announce .elementor-heading-title span { display: inline-block; margin: 0 10px; color: #6A6A6A; }
@media (max-width: 767px) {
	.blight-announce { overflow: hidden; }
	.blight-announce .elementor-heading-title { font-size: 12px !important; display: inline-block; padding-left: 100%; animation: blight-marquee 16s linear infinite; }
	@keyframes blight-marquee { from { transform: translateX(0); } to { transform: translateX(-100%); } }
}

/* ---- Footer "Join our Collector's Circle" form ---- */
.footer-1743 .elementor-form .elementor-form-fields-wrapper { display: flex !important; flex-wrap: nowrap; gap: 8px; align-items: stretch; }
.footer-1743 .elementor-form .elementor-field-group { width: auto !important; flex: 1 1 auto; margin: 0 !important; padding: 0 !important; }
.footer-1743 .elementor-form .elementor-field-type-submit { flex: 0 0 auto; }
.footer-1743 .elementor-form .elementor-field-textual { height: 46px !important; padding: 0 14px !important; border-radius: 999px !important; border: 1px solid var(--bl-border) !important; background: #0F0F0F !important; color: #fff !important; font-size: 14px; }
.footer-1743 .elementor-form .elementor-button { height: 46px !important; padding: 0 22px !important; border-radius: 999px !important; background: var(--bl-accent) !important; color: #fff !important; font-weight: 600; text-transform: none !important; letter-spacing: 0 !important; display: inline-flex; align-items: center; }
.footer-1743 .elementor-form .elementor-message { font-size: 13px; margin-top: 8px; }
@media (max-width: 480px) { .footer-1743 .elementor-form .elementor-form-fields-wrapper { flex-wrap: wrap; } .footer-1743 .elementor-form .elementor-field-group, .footer-1743 .elementor-form .elementor-field-type-submit { flex: 1 1 100%; } .footer-1743 .elementor-form .elementor-button { width: 100%; justify-content: center; } }

/* ---- Back to top: an arrow that reads as "up", not a mystery robot ---- */
#back-to-top { width: 52px !important; height: 52px !important; border-radius: 50% !important; background: var(--bl-card) !important; border: 1px solid var(--bl-accent) !important; box-shadow: 0 8px 24px rgba(0,0,0,.45) !important; display: grid !important; place-items: center; }
#back-to-top #back-to-top-hover, #back-to-top .back-to-top-icon { display: none !important; }
#back-to-top::before, #back-to-top::after { display: none !important; content: none !important; }
#back-to-top .blight-top-arrow { font-size: 22px; line-height: 1; color: var(--bl-accent-2); font-weight: 700; margin-top: -6px; }
#back-to-top .blight-top-label { position: absolute; bottom: 6px; left: 0; right: 0; text-align: center; font-size: 8px; letter-spacing: .14em; color: var(--bl-muted); }
/* the theme hides the link's own text with text-indent:-9999px + overflow:hidden; the injected
   arrow/label must opt out or the glyph is thrown ~8600px off-screen and clipped away. */
#back-to-top .blight-top-arrow, #back-to-top .blight-top-label { text-indent: 0; }
#back-to-top:hover { background: var(--bl-accent) !important; }
#back-to-top:hover .blight-top-arrow, #back-to-top:hover .blight-top-label { color: #fff; }

/* ---- Trust bar (home, products hub) ---- */
.blight-trust-bar { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin: 0 auto; max-width: 1200px; }
.blight-trust-bar > * { display: inline-flex; align-items: center; gap: 5px; padding: 8px 12px; border-radius: 999px; background: var(--bl-card); border: 1px solid var(--bl-border); font-size: 12.5px; color: var(--bl-text); text-decoration: none !important; white-space: nowrap; }
.blight-trust-bar b { color: var(--bl-white); font-weight: 600; }
.blight-trust-bar a { border-color: rgba(247,148,29,.5); }
.blight-trust-bar a:hover { border-color: var(--bl-accent-2); color: var(--bl-white); }
.blight-trust-bar a b { color: var(--bl-accent-2); }

/* ---- Products hub: three doors ---- */
.blight-hub { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; margin: 0 auto 28px; max-width: 1200px; }
@media (max-width: 991px) { .blight-hub { grid-template-columns: 1fr; } }
.blight-hub-card { display: flex; flex-direction: column; border-radius: 18px; overflow: hidden; background: var(--bl-card); border: 1px solid var(--bl-border); color: var(--bl-text); text-decoration: none !important; transition: transform .2s, border-color .2s, box-shadow .2s; }
.blight-hub-card:hover { transform: translateY(-4px); border-color: var(--bl-accent); box-shadow: 0 18px 40px rgba(0,0,0,.45); }
.blight-hub-img { aspect-ratio: 4 / 3; overflow: hidden; background: #0F0F0F; }
.blight-hub-img img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .4s; }
.blight-hub-card:hover .blight-hub-img img { transform: scale(1.04); }
.blight-hub-body { padding: 20px 22px 22px; display: flex; flex-direction: column; gap: 8px; flex: 1 1 auto; }
.blight-hub-body small { font-size: 11px; letter-spacing: .16em; text-transform: uppercase; color: var(--bl-accent-2); font-weight: 600; }
.blight-hub-body h3 { margin: 0; font-size: 22px; color: var(--bl-white); line-height: 1.15; }
.blight-hub-body p { margin: 0; font-size: 14px; line-height: 1.55; color: var(--bl-text); }
.blight-hub-foot { margin-top: auto; padding-top: 12px; display: flex; justify-content: space-between; align-items: baseline; gap: 10px; }
.blight-hub-foot span { font-size: 13px; color: var(--bl-muted); }
.blight-hub-foot b { color: var(--bl-accent-2); font-weight: 600; font-size: 14px; }
.blight-hub-page .main-title-section-wrapper { padding-bottom: 20px; }
.blight-hub-intro { max-width: 720px; margin: 0 auto 30px; text-align: center; font-size: 16px; line-height: 1.6; color: var(--bl-text); }

/* ---- Home: "Our Models" – three products, three columns (the single-card hack is gone) ---- */
.home .wdt-shop-products .product { float: none !important; }
.home .wdt-shop-products .product img, .home .wdt-products-container .product img { aspect-ratio: 4 / 5; object-fit: cover; width: 100%; }

/* ---- footer: accepted payment methods as text ---- */
.blight-pay-line { display: flex; flex-wrap: wrap; gap: 6px; justify-content: flex-end; margin: 0 !important; }
.blight-pay-line span { padding: 5px 10px; border-radius: 999px; border: 1px solid var(--bl-border); font-size: 11.5px; color: var(--bl-muted); white-space: nowrap; }
@media (max-width: 767px) { .blight-pay-line { justify-content: center; } }

/* ---- product gallery: never wait for a reveal animation ---- */
.single-product .wdt-product-image-gallery-container, .single-product .woocommerce-product-gallery, .single-product .elementor-widget-wdt-shop-product-single-images-carousel { opacity: 1 !important; visibility: visible !important; }

/* ---- How We Build ---- */
.blight-hwb { display: flex; flex-direction: column; gap: 56px; max-width: 1140px; margin: 0 auto; }
.blight-hwb-step { display: grid; grid-template-columns: 1.1fr 1fr; gap: 40px; align-items: center; }
.blight-hwb-step.is-rev .blight-hwb-img { order: 2; }
@media (max-width: 900px) { .blight-hwb-step { grid-template-columns: 1fr; gap: 18px; } .blight-hwb-step.is-rev .blight-hwb-img { order: 0; } .blight-hwb { gap: 40px; } }
.blight-hwb-img { border-radius: 18px; overflow: hidden; background: #0F0F0F; aspect-ratio: 4 / 3; }
.blight-hwb-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.blight-hwb-n { display: block; font-size: 13px; letter-spacing: .2em; color: var(--bl-accent-2); font-weight: 700; margin-bottom: 8px; }
.blight-hwb-body h3 { margin: 0 0 10px; font-size: clamp(22px, 2.4vw, 30px); line-height: 1.15; color: var(--bl-white); }
.blight-hwb-body p { margin: 0; font-size: 15.5px; line-height: 1.65; color: var(--bl-text); }
.blight-hwb-foot { text-align: center; padding: 30px 20px 10px; border-top: 1px solid var(--bl-border); }
.blight-hwb-foot p { max-width: 640px; margin: 0 auto 18px; font-size: 15px; color: var(--bl-text); line-height: 1.6; }
