/* Steel Members – dark cinematic skin for Astra + WooCommerce (Settings → "Dark site skin"). */

html, body, #page, .site, .site-content, .ast-container, #primary, .ast-separate-container, .ast-plain-container,
.ast-separate-container .ast-article-single, .ast-separate-container .ast-article-post, .ast-page-builder-template .site-content {
	background-color: var(--sm-bg) !important;
}
body {
	color: var(--sm-text);
	font-family: var(--sm-font);
	-webkit-font-smoothing: antialiased;
	background-image: radial-gradient(1200px 600px at 80% -10%, rgba(129, 140, 248, .12), transparent 60%),
		radial-gradient(900px 500px at -10% 20%, rgba(56, 189, 248, .08), transparent 60%) !important;
	background-attachment: fixed !important;
}
h1, h2, h3, h4, h5, h6, .entry-title, .entry-title a, .site-title a, .site-title a:hover {
	color: var(--sm-text) !important;
	font-family: var(--sm-display);
	letter-spacing: -.03em;
}
p, li, td, th, label, .entry-content, .woocommerce, .ast-woocommerce-container { color: #c4cddd; }
a { color: var(--sm-brand); }
a:hover { color: #7dd3fc; }
::selection { background: rgba(129, 140, 248, .45); color: #fff; }
hr, .ast-separate-container .comments-area { border-color: var(--sm-line) !important; }

/* ---------- Header ---------- */
.site-header, .main-header-bar, .ast-primary-header-bar, .ast-above-header-bar, .ast-below-header-bar,
.ast-mobile-header-wrap .ast-primary-header-bar, #ast-desktop-header, #ast-mobile-header {
	background: rgba(5, 7, 13, .72) !important;
	border-bottom: 1px solid var(--sm-line) !important;
	backdrop-filter: blur(18px) saturate(140%);
	-webkit-backdrop-filter: blur(18px) saturate(140%);
	box-shadow: none !important;
}
.site-header { position: sticky; top: 0; z-index: 999; }
.admin-bar .site-header { top: 32px; }
.site-title, .site-title a { font: 800 1.25rem/1 var(--sm-display) !important; letter-spacing: .04em !important; text-transform: uppercase; }
.main-header-menu .menu-link, .ast-header-custom-item, .ast-builder-menu-1 .menu-item > .menu-link,
.ast-header-break-point .main-navigation ul .menu-item .menu-link {
	color: var(--sm-muted) !important;
	font: 500 .95rem/1 var(--sm-font) !important;
}
.main-header-menu .menu-item:hover > .menu-link, .main-header-menu .current-menu-item > .menu-link,
.ast-builder-menu-1 .menu-item.current-menu-item > .menu-link { color: var(--sm-text) !important; }
.main-header-menu .sub-menu, .ast-mobile-popup-drawer .ast-mobile-popup-inner, .ast-mobile-header-content,
.ast-header-break-point .main-header-bar-navigation, .ast-builder-menu-mobile .main-navigation {
	background: var(--sm-bg-2) !important; border-color: var(--sm-line) !important;
}
.ast-mobile-menu-trigger-minimal, .menu-toggle, .ast-button-wrap .menu-toggle { color: var(--sm-text) !important; background: transparent !important; }
.ast-mobile-svg, .ast-menu-svg { fill: var(--sm-text) !important; }
/* "Join" menu item as gradient pill: give it the CSS class "sm-menu-cta" in Appearance → Menus */
.sm-menu-cta > .menu-link {
	background: var(--sm-grad); color: #04121c !important; border-radius: 999px;
	padding: 11px 20px !important; margin-left: 8px; font-weight: 600 !important;
	box-shadow: 0 10px 30px -10px rgba(56, 189, 248, .6);
}

/* Homepage: header floats over the hero, turns to glass when scrolling */
.sm-home-page .site-header {
	position: fixed; left: 0; right: 0; top: 0;
	background: transparent !important;
}
.sm-home-page.admin-bar .site-header { top: 32px; }
.sm-home-page .site-header .main-header-bar, .sm-home-page .site-header .ast-primary-header-bar,
.sm-home-page #ast-desktop-header, .sm-home-page #ast-mobile-header {
	background: transparent !important; border-color: transparent !important; backdrop-filter: none;
}
.sm-home-page.sm-scrolled .site-header .ast-primary-header-bar, .sm-home-page.sm-scrolled .site-header .main-header-bar {
	background: rgba(5, 7, 13, .72) !important; border-color: var(--sm-line) !important;
	backdrop-filter: blur(18px) saturate(140%); -webkit-backdrop-filter: blur(18px) saturate(140%);
}
.sm-home-page .site-content > .ast-container { max-width: 100% !important; padding: 0 !important; }
.sm-home-page .entry-content > * { max-width: none; }
.sm-home-page .ast-article-single, .sm-home-page .entry-content { margin: 0 !important; padding: 0 !important; }

/* ---------- Content pages ---------- */
.ast-separate-container .ast-article-single, .ast-separate-container .ast-article-post,
.ast-separate-container .comment-respond, .ast-separate-container .ast-comment-list li, .ast-separate-container .ast-woocommerce-container {
	background: transparent !important;
}
.entry-header .entry-title { font-size: clamp(2.2rem, 5vw, 3.6rem); font-weight: 700; }
.ast-archive-description, .ast-archive-entry-banner, .ast-single-entry-banner {
	background: transparent !important; border: 0 !important;
}
.ast-archive-description .ast-archive-title, .ast-archive-entry-banner .ast-archive-title { color: var(--sm-text) !important; }
/* Post-type archives (Videos / Photo Sets) as 3D cards */
.post-type-archive-sm_video .ast-row, .post-type-archive-sm_photoset .ast-row, .tax-sm_category .ast-row {
	display: grid !important; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 22px;
}
.post-type-archive-sm_video article.ast-article-post, .post-type-archive-sm_photoset article.ast-article-post, .tax-sm_category article.ast-article-post {
	width: auto !important; padding: 0 !important; margin: 0 !important;
}
.post-type-archive-sm_video .ast-article-inner, .post-type-archive-sm_photoset .ast-article-inner, .tax-sm_category .ast-article-inner,
.post-type-archive-sm_video .post-content, .post-type-archive-sm_photoset .post-content {
	background: var(--sm-surface) !important; border: 1px solid var(--sm-line); border-radius: 20px; overflow: hidden; height: 100%;
}
.post-type-archive-sm_video .post-thumb img, .post-type-archive-sm_photoset .post-thumb img, .tax-sm_category .post-thumb img {
	aspect-ratio: 4 / 5; object-fit: cover; width: 100%; transition: transform .8s var(--sm-ease);
}
.post-type-archive-sm_video article:hover .post-thumb img, .post-type-archive-sm_photoset article:hover .post-thumb img { transform: scale(1.06); }
.post-type-archive-sm_video .entry-header, .post-type-archive-sm_photoset .entry-header,
.post-type-archive-sm_video .ast-excerpt-container, .post-type-archive-sm_photoset .ast-excerpt-container { padding: 0 18px; }
.post-type-archive-sm_video .entry-title, .post-type-archive-sm_photoset .entry-title { font-size: 1.1rem !important; }
.ast-pagination a, .ast-pagination span { color: var(--sm-muted); border-radius: 10px; }
.ast-pagination .current { background: var(--sm-grad); color: #05070d; }

/* ---------- Forms & buttons ---------- */
input[type="text"], input[type="email"], input[type="password"], input[type="tel"], input[type="number"], input[type="search"],
input[type="url"], select, textarea, .select2-container--default .select2-selection--single,
.wc-block-components-text-input input, .wc-block-components-combobox .wc-block-components-combobox-control input {
	background: rgba(255, 255, 255, .04) !important;
	border: 1px solid var(--sm-line-2) !important;
	border-radius: 12px !important;
	color: var(--sm-text) !important;
	padding: 12px 14px;
}
input:focus, select:focus, textarea:focus { border-color: var(--sm-brand) !important; box-shadow: 0 0 0 3px rgba(56, 189, 248, .18) !important; outline: 0; }
.select2-container--default .select2-selection--single .select2-selection__rendered { color: var(--sm-text) !important; }
.select2-dropdown { background: var(--sm-bg-2) !important; border-color: var(--sm-line-2) !important; color: var(--sm-text); }
.wc-block-components-text-input label, .wc-block-components-combobox label { color: var(--sm-muted) !important; }
.button, button.button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit,
.woocommerce a.button.alt, .woocommerce button.button.alt, .wp-block-button__link, .ast-button, input[type="submit"],
.wc-block-components-button:not(.is-link), .wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button {
	background: var(--sm-grad) !important;
	color: #04121c !important;
	border: 0 !important;
	border-radius: 999px !important;
	font: 600 15px/1.2 var(--sm-font) !important;
	padding: 14px 26px !important;
	box-shadow: 0 10px 34px -12px rgba(56, 189, 248, .6);
	transition: transform .3s var(--sm-ease), box-shadow .3s;
}
.button:hover, .woocommerce a.button:hover, .woocommerce button.button:hover, input[type="submit"]:hover,
.wc-block-components-button:not(.is-link):hover { box-shadow: 0 18px 44px -14px rgba(129, 140, 248, .8); }

/* ---------- WooCommerce: account, checkout, notices, tables ---------- */
.woocommerce form.login, .woocommerce form.register, .woocommerce form.checkout_coupon, .woocommerce form.lost_reset_password,
.woocommerce-MyAccount-content, .woocommerce-checkout-review-order, #order_review, .wc-block-components-sidebar .wc-block-components-panel,
.wc-block-checkout__main .wc-block-components-checkout-step, .woocommerce-order, .woocommerce-order-details, .woocommerce-customer-details {
	background: var(--sm-surface) !important;
	border: 1px solid var(--sm-line) !important;
	border-radius: 22px !important;
	padding: 26px !important;
}
.woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.woocommerce-MyAccount-navigation ul li a {
	display: block; padding: 12px 16px; border-radius: 12px; color: var(--sm-muted) !important;
	border: 1px solid transparent; text-decoration: none;
}
.woocommerce-MyAccount-navigation ul li.is-active a, .woocommerce-MyAccount-navigation ul li a:hover {
	color: var(--sm-text) !important; background: var(--sm-surface-2); border-color: var(--sm-line);
}
.woocommerce table.shop_table, .woocommerce table.shop_table td, .woocommerce table.shop_table th, .woocommerce-table, table, th, td {
	border-color: var(--sm-line) !important; background: transparent !important; color: #c4cddd;
}
.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-notice, .wc-block-components-notice-banner {
	background: var(--sm-surface-2) !important; color: var(--sm-text) !important;
	border: 1px solid var(--sm-line-2) !important; border-left: 3px solid var(--sm-brand) !important; border-radius: 14px !important;
}
.woocommerce-error { border-left-color: #f87171 !important; }
.woocommerce-message::before, .woocommerce-info::before { color: var(--sm-brand) !important; }
.wc-block-components-totals-item, .wc-block-components-order-summary, .wc-block-components-title, .wc-block-components-checkout-step__title,
.wc-block-components-radio-control__label, .wc-block-components-product-name, .wc-block-components-formatted-money-amount { color: var(--sm-text) !important; }
.wc-block-components-radio-control__option, .wc-block-components-radio-control-accordion-option { border-color: var(--sm-line-2) !important; }
.woocommerce-privacy-policy-text, .wc-block-checkout__terms, .wc-block-components-checkout-step__description { color: var(--sm-muted) !important; }

/* ---------- Footer ---------- */
.site-footer, .site-primary-footer-wrap, .site-above-footer-wrap, .site-below-footer-wrap, .ast-small-footer, .footer-adv {
	background: var(--sm-bg) !important;
	border-top: 1px solid var(--sm-line) !important;
	color: var(--sm-muted) !important;
}
.site-footer a, .ast-small-footer a, .ast-footer-copyright, .ast-footer-copyright a { color: var(--sm-muted) !important; }
.site-footer a:hover { color: var(--sm-brand) !important; }
.site-footer .widget-title, .site-footer h2 { color: var(--sm-text) !important; font-size: .8rem !important; letter-spacing: .18em; text-transform: uppercase; }

/* Scroll-to-top + scrollbar */
#ast-scroll-top { background: var(--sm-grad) !important; color: #05070d !important; border-radius: 999px; }
html { scrollbar-color: #26304a var(--sm-bg); }
::-webkit-scrollbar { width: 10px; }
::-webkit-scrollbar-track { background: var(--sm-bg); }
::-webkit-scrollbar-thumb { background: #26304a; border-radius: 10px; }

@media (max-width: 782px) { .admin-bar .site-header, .sm-home-page.admin-bar .site-header { top: 46px; } }

/* ---------- Header fixes (v1.2.1) ---------- */
.site-header .ast-container, .site-header .site-primary-header-wrap, .site-header .ast-builder-grid-row,
.site-header .site-header-section, .site-header .ast-builder-layout-element {
	background: transparent !important;
}
.ast-builder-menu-1 .menu-item.sm-menu-cta > .menu-link,
.main-header-menu .menu-item.sm-menu-cta > .menu-link,
.ast-builder-menu-1 .menu-item.sm-menu-cta.current-menu-item > .menu-link,
.ast-builder-menu-1 .menu-item.sm-menu-cta:hover > .menu-link {
	background: var(--sm-grad) !important;
	color: #04121c !important;
	border-radius: 999px;
	padding: 11px 22px !important;
	margin-left: 10px;
	font-weight: 600 !important;
	line-height: 1 !important;
	box-shadow: 0 10px 30px -10px rgba(56, 189, 248, .6);
}
.ast-builder-menu-mobile .menu-item.sm-menu-cta > .menu-link { margin: 10px 0 0; display: inline-block; }
#masthead .menu-item.sm-menu-cta > .menu-link,
#masthead .menu-item.sm-menu-cta > .menu-link:hover,
#masthead .menu-item.sm-menu-cta.current-menu-item > .menu-link { color: #04121c !important; background: var(--sm-grad) !important; }
#masthead .custom-logo { max-height: 54px; width: auto; }

/* ---------- Branded footer (Settings → Branded footer) ---------- */
.sm-custom-footer .site-footer { display: none !important; }
.sm-footer { background: #04060b; border-top: 1px solid var(--sm-line); color: var(--sm-muted); font: 400 15px/1.6 var(--sm-font); }
.sm-footer__wrap { width: min(1240px, 100% - 32px); margin-inline: auto; padding: 64px 0 28px; }
.sm-footer__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 40px; }
.sm-footer__brand { grid-column: span 2; max-width: 380px; }
.sm-footer__brand img { height: 52px; width: auto; margin-bottom: 18px; }
.sm-footer__brand p { margin: 0 0 10px; }
.sm-footer__addr { display: flex; align-items: center; gap: 8px; font-size: 14px; }
.sm-footer__addr .sm-ic { color: var(--sm-brand); }
.sm-footer h4 { margin: 4px 0 16px; font: 600 12px/1 var(--sm-font) !important; letter-spacing: .18em; text-transform: uppercase; color: var(--sm-text) !important; }
.sm-footer ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.sm-footer a { color: #c4cddd !important; text-decoration: none !important; }
.sm-footer a:hover { color: var(--sm-brand) !important; }
.sm-footer__bottom { display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; margin-top: 48px; padding-top: 22px; border-top: 1px solid var(--sm-line); font-size: 13px; color: #5d6880; }
.sm-footer__pay { display: flex; gap: 8px; flex-wrap: wrap; }
.sm-footer__pay span { display: inline-flex; align-items: center; gap: 6px; padding: 6px 10px; border: 1px solid var(--sm-line-2); border-radius: 8px; color: var(--sm-muted); }
@media (max-width: 640px) { .sm-footer__brand { grid-column: auto; } .sm-footer__bottom { flex-direction: column; align-items: flex-start; } }

/* ---------- Checkout: selected plan card ---------- */
.sm-selected {
	display: flex; align-items: center; gap: 16px; flex-wrap: wrap;
	padding: 18px 20px; margin: 0 0 28px; border-radius: 18px;
	background: linear-gradient(var(--sm-bg-2), var(--sm-bg-2)) padding-box, linear-gradient(135deg, #38bdf8, #818cf8, #f472b6) border-box;
	border: 2px solid transparent; color: var(--sm-text);
}
.sm-selected__ic { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 12px; background: rgba(56, 189, 248, .12); color: var(--sm-brand); }
.sm-selected__body { flex: 1 1 220px; display: grid; gap: 2px; }
.sm-selected__body small { color: var(--sm-brand); font-size: 11px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.sm-selected__body strong { font: 700 1.15rem/1.2 var(--sm-display); }
.sm-selected__body span { color: var(--sm-muted); font-size: 14px; }
.sm-selected__price { font: 800 1.6rem/1 var(--sm-display); }
.sm-selected__change { font-size: 14px; color: var(--sm-brand) !important; }
.woocommerce-checkout #payment, .woocommerce-checkout #payment div.payment_box { background: var(--sm-surface) !important; color: var(--sm-text); border-radius: 16px; }
.woocommerce-checkout #payment ul.payment_methods { border-color: var(--sm-line) !important; }
