/* Grey Markets — premium layer: Mona Sans (wide display / regular text), ivory + cobalt + ink, soft depth. */
html:root{
	--gm-ink:#131312; --gm-ink-2:#3d3d3a; --gm-mute:#5d5d57; --gm-faint:#8c8c85;
	--gm-cobalt:#1f3ae0; --gm-cobalt-deep:#1426a8; --gm-cobalt-50:#e9ecfb; --gm-cobalt-200:#b9c3f6;
	--gm-ivory:#f4f4ee; --gm-surface:#fbfbf7; --gm-stone:#e8e8e2;
	--gm-hair:rgba(19,19,18,.09); --gm-hair-2:rgba(19,19,18,.16);
	--gm-font:"Mona Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
	--gm-r-sm:10px; --gm-r:16px; --gm-r-lg:22px;
	--gm-shadow:0 1px 1px rgba(19,19,18,.04),0 2px 6px -2px rgba(19,19,18,.06),0 22px 44px -22px rgba(19,19,18,.22);
	--gm-shadow-sm:0 1px 1px rgba(19,19,18,.04),0 6px 16px -10px rgba(19,19,18,.18);
	--gm-shadow-cta:inset 0 1px 0 rgba(255,255,255,.18),0 10px 22px -10px rgba(31,58,224,.65);
	--gm-ease:cubic-bezier(.2,.7,.2,1);

	/* STG tokens -> Grey Markets palette */
	--stg-bg:var(--gm-ivory); --stg-bg-2:var(--gm-surface); --stg-bg-3:var(--gm-stone);
	--stg-fg:var(--gm-ink); --stg-muted:var(--gm-mute);
	--stg-accent:var(--gm-cobalt); --stg-accent-2:#0c7a40; --stg-line:var(--gm-hair-2);
	--stg-mono:var(--gm-font);
	--d-card:var(--gm-surface); --d-card-2:var(--gm-ivory); --d-line:var(--gm-hair-2); --d-soft:var(--gm-stone);
	--d-blue:var(--gm-cobalt); --d-mint:#0c7a40; --d-amber:#8a6400; --d-violet:#5b3fd1; --d-red:#c5271d;
	--bs-body-bg:var(--gm-ivory); --bs-body-color:var(--gm-ink); --bs-border-color:var(--gm-hair-2);
	--bs-body-font-family:var(--gm-font);
}

/* ---- Canvas ---- */
html body{
	background:var(--gm-ivory)!important; color:var(--gm-ink-2)!important;
	font-family:var(--gm-font)!important; font-stretch:100%;
	-webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
}
#page,#page.page-content,.page-content,.main-content,.site,.site-content,.content-area,#content,
.woocommerce,.woocommerce-page{ background-color:transparent!important; }
body,button,input,select,textarea{ font-family:var(--gm-font); }
::selection{ background:var(--gm-cobalt); color:var(--gm-surface); }
a{ color:var(--gm-cobalt); text-underline-offset:3px; }
a:hover{ color:var(--gm-cobalt-deep); }
.price,.amount,[data-count],.stg-labcard-purity,.gm-slip-amt{ font-variant-numeric:tabular-nums; }

/* ---- Type: wide semibold display, regular-width text ---- */
:is(h1,h2,.h1,.h2,.entry-title,.page-title,.product_title):not(#gm-x){
	font-family:var(--gm-font)!important; font-stretch:125%; font-weight:600!important;
	letter-spacing:-.028em!important; line-height:1.04!important; color:var(--gm-ink)!important; text-transform:none!important;
}
:is(h3,h4,.h3,.h4):not(#gm-x){
	font-family:var(--gm-font)!important; font-stretch:112%; font-weight:600!important; letter-spacing:-.012em!important; color:var(--gm-ink); text-transform:none!important;
}
:is(h5,h6,.h5,.h6):not(#gm-x){ font-family:var(--gm-font)!important; font-weight:600!important; }
.stg-hero h1:not(#gm-x){ font-size:clamp(40px,5.3vw,74px)!important; letter-spacing:-.034em!important; line-height:1!important; max-width:13ch; }
.stg-hero h1 span:not(#gm-x){ display:block; font-stretch:100%; font-weight:300; color:var(--gm-cobalt)!important; letter-spacing:-.03em; margin-top:.12em; font-family:inherit!important; }
.stg-hero-lead{ font-size:18px!important; line-height:1.6!important; color:var(--gm-ink-2)!important; max-width:52ch; }

/* Labels: small tracked sans with a cobalt coin */
:is(.stg-kicker,.stg-eyebrow):not(#gm-x){
	display:inline-flex; align-items:center; gap:9px;
	font-family:var(--gm-font)!important; font-stretch:112%; font-size:12px!important; font-weight:600!important;
	letter-spacing:.12em!important; text-transform:uppercase; color:var(--gm-cobalt)!important;
	background:none!important; border:0!important; padding:0!important; box-shadow:none!important;
}
:is(.stg-kicker,.stg-eyebrow):not(#gm-x)::before{ content:""; width:6px; height:6px; border-radius:50%; background:currentColor; box-shadow:0 0 0 3px var(--gm-cobalt-50); flex:none; }
.stg-eyebrow:not(#gm-x)::after{ display:none!important; }

/* Card titles & figures that STG set in mono */
:is(.stg-card-name,.stg-compare-name):not(#gm-x){ font-family:var(--gm-font)!important; font-stretch:112%; font-weight:600!important; letter-spacing:-.01em; text-transform:none; }
:is([data-count],.stg-labcard-purity):not(#gm-x){ font-family:var(--gm-font)!important; font-stretch:125%; font-weight:600!important; letter-spacing:-.03em; }

/* ---- Buttons ---- */
.button,a.button,button.button,input.button,.wp-element-button,.wp-block-button__link,
input[type="submit"],button[type="submit"],.single_add_to_cart_button,.checkout-button,#place_order,.stg-btn{
	background:var(--gm-cobalt)!important; color:#fff!important; border:1px solid var(--gm-cobalt-deep)!important; border-radius:var(--gm-r-sm)!important;
	font-family:var(--gm-font)!important; font-stretch:105%; font-weight:600!important; font-size:15px!important; letter-spacing:-.005em!important; text-transform:none!important;
	box-shadow:var(--gm-shadow-cta)!important; transition:transform .2s var(--gm-ease),box-shadow .2s var(--gm-ease),background-color .2s;
}
.button:hover,a.button:hover,button.button:hover,.wp-element-button:hover,input[type="submit"]:hover,button[type="submit"]:hover,
.single_add_to_cart_button:hover,.checkout-button:hover,#place_order:hover,.stg-btn:hover{
	background:var(--gm-cobalt-deep)!important; color:#fff!important; transform:translateY(-1px);
	box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 14px 26px -12px rgba(31,58,224,.7)!important;
}
.button.stg-btn-ghost,a.button.stg-btn-ghost,.stg-btn-ghost{
	background:transparent!important; color:var(--gm-ink)!important; border:1px solid var(--gm-hair-2)!important; box-shadow:none!important;
}
.button.stg-btn-ghost:hover,a.button.stg-btn-ghost:hover{ background:var(--gm-surface)!important; border-color:var(--gm-ink)!important; color:var(--gm-ink)!important; }
:focus-visible{ outline:2px solid var(--gm-cobalt)!important; outline-offset:3px; }

/* ---- Forms ---- */
input[type="text"],input[type="email"],input[type="password"],input[type="number"],input[type="search"],input[type="tel"],input[type="url"],
select,textarea,.select2-container .select2-selection{
	background:var(--gm-surface)!important; color:var(--gm-ink)!important; border:1px solid var(--gm-hair-2)!important; border-radius:var(--gm-r-sm)!important; box-shadow:none!important;
}
input:focus,select:focus,textarea:focus{ border-color:var(--gm-cobalt)!important; box-shadow:0 0 0 4px rgba(31,58,224,.14)!important; outline:none!important; }

/* ---- Header ---- */
#masthead,#masthead.header,.header.sticky{
	background:rgba(251,251,247,.86)!important; -webkit-backdrop-filter:saturate(1.4) blur(14px); backdrop-filter:saturate(1.4) blur(14px);
	border-bottom:1px solid var(--gm-hair)!important; box-shadow:none!important;
}
#masthead .brand a{ gap:12px!important; }
#masthead .brand a::before{
	width:36px!important; height:36px!important; flex-basis:36px!important; border-radius:10px!important; box-shadow:none!important;
	background:var(--stg-emblem) center/cover no-repeat!important;
}
#masthead .brand .brand-text{
	font-family:var(--gm-font)!important; font-stretch:125%; font-weight:650!important; font-size:22px!important; letter-spacing:-.025em!important; color:var(--gm-ink)!important; line-height:1!important;
}
#masthead .brand .brand-text::after{
	content:"Escrow marketplace"; display:block; font-stretch:100%; font-weight:500; font-size:11.5px; letter-spacing:.01em; color:var(--gm-mute); margin-top:5px;
}
@media (max-width:767px){
	#masthead .brand a::before{ width:30px!important; height:30px!important; flex-basis:30px!important; border-radius:8px!important; }
	#masthead .brand .brand-text{ font-size:18px!important; }
	#masthead .brand .brand-text::after{ display:none; }
}
#masthead .main-menu a,#masthead nav a,#masthead .menu > li > a,#masthead .navbar-nav > li > a{
	font-family:var(--gm-font)!important; font-stretch:100%; font-size:14.5px!important; font-weight:500!important; letter-spacing:0!important; text-transform:none!important; color:var(--gm-ink-2)!important;
}
#masthead .menu > li > a:hover,#masthead nav a:hover{ color:var(--gm-ink)!important; }
#masthead .menu > li.current-menu-item > a,#masthead .menu > li.current_page_item > a{ color:var(--gm-cobalt)!important; box-shadow:none!important; text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:9px; }

/* ---- Surfaces ---- */
.stg-bbox,.stg-bp-card,.stg-guide-card,.stg-labcard,.stg-cmp,.stg-why,.stg-panel{
	background:var(--gm-surface)!important; border:1px solid var(--gm-hair)!important; border-radius:var(--gm-r-lg)!important; box-shadow:var(--gm-shadow-sm)!important;
}
ul.products li.product .product-inner,.stg-bbox-main .product .product-inner{ background:var(--gm-surface); border:1px solid var(--gm-hair)!important; border-radius:var(--gm-r)!important; box-shadow:var(--gm-shadow-sm); transition:box-shadow .25s var(--gm-ease),transform .25s var(--gm-ease); }
ul.products li.product:hover .product-inner{ box-shadow:var(--gm-shadow); transform:translateY(-2px); }
.product-thumbnail,.product-media,.stg-bp-pick-img,.woocommerce-product-gallery,.woocommerce-product-gallery__image{ background:#fff!important; border-radius:12px!important; }

/* Brand wordmarks are white artwork: ink plate */
.stg-card-logowrap{ display:inline-flex!important; align-items:center; justify-content:center; background:var(--gm-ink)!important; padding:14px 22px!important; min-height:64px; border-radius:14px!important; }
.stg-bp-logo{ background:var(--gm-ink)!important; border:0!important; border-radius:14px!important; }

/* CTA band: deep cobalt */
.stg-cta-band{
	--stg-fg:#fff; --stg-muted:rgba(255,255,255,.78);
	background:linear-gradient(135deg,var(--gm-cobalt-deep),var(--gm-cobalt))!important; border:0!important; border-radius:var(--gm-r-lg)!important; box-shadow:0 30px 60px -30px rgba(20,38,168,.7)!important;
}
.stg-cta-band h2,.stg-cta-band p{ color:#fff!important; }
.stg-cta-band .button{ background:var(--gm-surface)!important; color:var(--gm-cobalt-deep)!important; border-color:var(--gm-surface)!important; box-shadow:0 10px 24px -12px rgba(0,0,0,.45)!important; }
.stg-cta-band .button:hover{ background:#fff!important; color:var(--gm-cobalt-deep)!important; }

/* Page headers: quiet band */
.page-header{ background:transparent!important; border-bottom:1px solid var(--gm-hair)!important; }
.page-header::before,.page-header::after,.page-header-inner::before,.page-header-inner::after{ display:none!important; }
.page-header h1{ font-size:clamp(34px,4.4vw,56px)!important; }

/* Search buttons STG tinted pale */
.stg-market-search button,.stg-search button,form.stg-search-form button,.woocommerce-product-search button{
	background:var(--gm-cobalt)!important; color:#fff!important; border:1px solid var(--gm-cobalt-deep)!important; border-radius:var(--gm-r-sm)!important;
}

/* ---- Hero signature: the escrow receipt ---- */
.stg-hero-art{ display:flex; align-items:center; justify-content:flex-end; background:none!important; }
.stg-hero-art::before,.stg-hero-art::after{ display:none!important; }
.gm-slip{
	position:relative; margin:0; width:100%; max-width:430px; color:var(--gm-ink); text-align:left;
	background:var(--gm-surface); border:1px solid var(--gm-hair); border-radius:var(--gm-r-lg);
	box-shadow:0 1px 1px rgba(19,19,18,.04),0 8px 20px -10px rgba(19,19,18,.12),0 40px 80px -40px rgba(20,38,168,.35);
}
.gm-slip-head{ display:flex; justify-content:space-between; align-items:center; gap:12px; padding:18px 22px 0; }
.gm-slip-title{ font-stretch:112%; font-weight:600; font-size:12px; letter-spacing:.12em; text-transform:uppercase; color:var(--gm-ink); }
.gm-slip-tag{ font-size:12px; font-weight:500; color:var(--gm-mute); padding:3px 10px; border:1px solid var(--gm-hair-2); border-radius:999px; }
.gm-slip-item{ display:flex; justify-content:space-between; align-items:flex-end; gap:16px; padding:18px 22px 22px; position:relative; }
.gm-slip-item b{ display:block; font-stretch:112%; font-weight:600; font-size:17px; letter-spacing:-.01em; color:var(--gm-ink); }
.gm-slip-item span{ display:block; font-size:13px; color:var(--gm-mute); margin-top:3px; }
.gm-slip-item .gm-slip-amt{ font-stretch:125%; font-size:26px; font-weight:600; letter-spacing:-.03em; white-space:nowrap; }
/* perforation between the order and its escrow states */
.gm-slip-item::after{ content:""; position:absolute; left:22px; right:22px; bottom:0; border-bottom:1.5px dashed var(--gm-hair-2); }
.gm-slip-steps{ list-style:none; margin:0; padding:20px 22px 6px; position:relative; }
.gm-slip-steps li{ position:relative; display:flex; gap:14px; padding:0 0 18px; margin:0; }
.gm-slip-steps li::before{ content:""; position:absolute; left:8px; top:20px; bottom:0; width:2px; background:var(--gm-hair); border-radius:2px; }
.gm-slip-steps li:last-child::before{ display:none; }
.gm-slip-steps li.is-done::before{ background:var(--gm-cobalt); }
.gm-slip-steps i{ flex:none; width:18px; height:18px; margin-top:2px; border-radius:50%; border:2px solid var(--gm-hair-2); background:var(--gm-surface); position:relative; z-index:1; }
.gm-slip-steps .is-done i{ border-color:var(--gm-cobalt); background:var(--gm-cobalt) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.5 7 11l5-6' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/12px no-repeat; }
.gm-slip-steps .is-now i{ border-color:var(--gm-cobalt); background:var(--gm-surface); box-shadow:inset 0 0 0 3px var(--gm-surface),inset 0 0 0 9px var(--gm-cobalt); }
.gm-slip-steps .is-now i::after{ content:""; position:absolute; inset:-7px; border-radius:50%; border:2px solid var(--gm-cobalt); opacity:0; animation:gm-held 2.4s var(--gm-ease) infinite; }
@keyframes gm-held{ 0%{ transform:scale(.6); opacity:.55; } 80%,100%{ transform:scale(1.35); opacity:0; } }
.gm-slip-steps li > div{ flex:1; min-width:0; }
.gm-slip-steps b{ display:block; font-weight:600; font-size:15px; color:var(--gm-ink); line-height:1.35; }
.gm-slip-steps li:not(.is-done):not(.is-now) b{ color:var(--gm-mute); }
.gm-slip-steps span{ display:block; font-size:13px; line-height:1.45; color:var(--gm-mute); margin-top:2px; }
.gm-slip-steps em{ flex:none; align-self:flex-start; font-style:normal; font-size:11.5px; font-weight:600; color:var(--gm-cobalt); background:var(--gm-cobalt-50); padding:3px 9px; border-radius:999px; white-space:nowrap; }
.gm-slip-foot{ display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap; margin:0; padding:14px 22px; border-top:1px solid var(--gm-hair); background:var(--gm-ivory); border-radius:0 0 var(--gm-r-lg) var(--gm-r-lg); font-size:12.5px; color:var(--gm-mute); }
.gm-slip-foot a{ font-weight:600; color:var(--gm-cobalt)!important; text-decoration:none!important; white-space:nowrap; }
.gm-slip-foot a:hover{ color:var(--gm-cobalt-deep)!important; }
@media (prefers-reduced-motion:reduce){ .gm-slip-steps .is-now i::after{ animation:none; opacity:.35; transform:scale(1.2); } }

/* ---- Footer: ink, tokens flipped ---- */
footer.footer,.footer,.site-footer{
	--stg-fg:#fbfbf7; --stg-muted:#a9a9a1; --stg-line:rgba(251,251,247,.12); --stg-bg-2:#1d1d1c; --stg-bg-3:#262625;
	--stg-accent:var(--gm-cobalt-200); --stg-accent-2:#7fd1a4;
	background:var(--gm-ink)!important; color:#a9a9a1!important; border-top:0!important;
}
footer.footer a,.footer a,.site-footer a{ color:#d6d6cf!important; }
footer.footer a:hover,.footer a:hover{ color:#fff!important; }
footer.footer :is(h1,h2,h3,h4,h5,h6),.footer .widget-title{ color:#fbfbf7!important; }
footer.footer .copyright,footer.footer .copyright *,.footer-copyright,.footer-copyright *{ background:transparent!important; color:#8c8c85!important; }
.stg-foot-logo:not(#gm-x){ font-family:var(--gm-font)!important; font-stretch:125%; font-weight:650!important; font-size:21px!important; letter-spacing:-.025em!important; color:#fbfbf7!important; }
.stg-foot-brand .stg-foot-logo:before{ border-radius:10px!important; box-shadow:none!important; }

/* ---- Mobile ---- */
@media (max-width:991px){
	.stg-hero{ display:flex!important; flex-direction:column; }
	.stg-hero-copy{ order:1; }
	.stg-hero-art{ order:2; margin-top:32px; justify-content:flex-start; }
	.gm-slip{ max-width:none; }
}
.stg-mm li.mobile-menu-item-wallet:not(#gm-x) a,.stg-mm li.mobile-menu-item-wallet:not(#gm-x) .mobile-menu-icon{ color:var(--gm-cobalt)!important; }
.stg-mm li.mobile-menu-item-wallet.is-active:not(#gm-x) a:before{ background:var(--gm-cobalt)!important; }
.stg-mm li.is-active a{ color:var(--gm-cobalt)!important; }
.mobile-menu.stg-mm{ background:rgba(251,251,247,.92)!important; -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px); border-top:1px solid var(--gm-hair)!important; }

/* ---- Detail fixes ---- */
.gm-slip-steps li em:not(#gm-x){ font-family:var(--gm-font)!important; font-stretch:100%!important; font-size:11px!important; font-weight:600!important; letter-spacing:0!important; line-height:1.5!important; }
.stg-bbox,.stg-bp-card{ border-top-style:solid!important; border-top-color:var(--gm-hair)!important; border-top-width:1px!important; }
.stg-bbox::before,.stg-bp-card::before{ border-top-style:solid!important; }
