/* ==========================================================================
   Gyta Buyback demo — global brand layer.
   Palette derived from the Gyta hexagon logo (coral mark + cream cut-out).
   Open Sans to match gytabuyback.com. Adapted from the China-Payments demo.
   ========================================================================== */
:root {
	--g-brand-50:#FDF1EE; --g-brand-100:#FBE2DC; --g-brand-200:#F6C5BA;
	--g-brand-300:#F0A595; --g-brand-400:#EC8773; --g-brand-500:#E8634E;
	--g-brand-600:#D44C37; --g-brand-700:#B03D2C; --g-brand-800:#8A3324; --g-brand-900:#6E281D;
	--g-cream:#FBF4EC; --g-cream-200:#F3E7D7;
	--g-gold-400:#FBBF24; --g-gold-500:#F59E0B; --g-gold-600:#D97706;
	--g-surface-50:#F8FAFC; --g-surface-100:#F1F5F9; --g-surface-200:#E2E8F0;
	--g-gray-300:#d1d5db; --g-gray-400:#9ca3af; --g-gray-500:#6b7280; --g-gray-600:#4b5563;
	--g-gray-700:#374151; --g-gray-800:#1f2937; --g-gray-900:#111827; --g-gray-950:#030712;
}

body { font-family: 'Open Sans', system-ui, -apple-system, sans-serif; }

/* Hide the native Kadence header/footer site-wide — our sticky demo bar +
   header is the only chrome on the demo (front-end only; admin untouched). */
#masthead, .site-header, header#masthead, #colophon, .site-footer { display: none !important; }

/* ----- Landing pages: let the demo sections span edge-to-edge inside
   Kadence's content container, and drop Kadence's page title/hero + padding. ----- */
.gyta-landing .content-container,
.gyta-landing .site-container,
.gyta-landing .content-area,
.gyta-landing .site-main,
.gyta-landing .entry-content-wrap,
.gyta-landing .entry-content,
.gyta-landing article.entry { max-width:100% !important; width:100% !important; padding:0 !important; margin:0 !important; }
.gyta-landing .entry-content > * { margin-block:0 !important; }
.gyta-landing .entry-hero, .gyta-landing .entry-hero-container-inner,
.gyta-landing header.entry-header, .gyta-landing .entry-header,
.gyta-landing .page-title, .gyta-landing .entry-title { display:none !important; }

/* Drop the Kadence "Checkout"/"Cart" page-title bar on the funnel pages
   (keeps the flow clean; product/shop titles are unaffected). */
.woocommerce-checkout .entry-hero, .woocommerce-cart .entry-hero,
.woocommerce-checkout .entry-hero-container-inner, .woocommerce-cart .entry-hero-container-inner,
.woocommerce-checkout header.entry-header, .woocommerce-cart header.entry-header { display:none !important; }

/* ----- Reusable helpers (used by the demo content shortcodes) ----- */
.g-wrap { max-width: 80rem; margin: 0 auto; padding: 0 1.5rem; }
.g-narrow { max-width: 56rem; margin: 0 auto; padding: 0 1.5rem; }
.g-gradient { background: linear-gradient(135deg,#3a1410 0%,#8A3324 42%,#E8634E 100%); }
.g-section { padding: 5rem 0; }
.g-eyebrow { font-size:.8125rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--g-brand-600); }
.g-h2 { font-size:clamp(1.75rem,4vw,2.25rem); font-weight:800; color:var(--g-gray-900); line-height:1.15; margin:0 0 1rem; }
.g-sub { font-size:1.125rem; color:var(--g-gray-600); line-height:1.6; margin:0 auto; max-width:44rem; }
.g-card { background:#fff; border:1px solid #f1f2f4; border-radius:.85rem; box-shadow:0 1px 2px rgba(0,0,0,.05); transition:transform .2s, box-shadow .2s; }
.g-card-hover:hover { box-shadow:0 12px 40px rgba(232,99,78,.18); }
.g-pulse { display:inline-block; width:.5rem; height:.5rem; border-radius:9999px; background:#34d399; animation:gPulse 2s ease-in-out infinite; }
@keyframes gPulse { 0%,100%{opacity:.55} 50%{opacity:1} }

/* Buttons */
.g-btn { display:inline-flex; align-items:center; justify-content:center; gap:.5rem; padding:.875rem 1.5rem; font-weight:700; font-size:1rem; border-radius:.55rem; text-decoration:none; transition:background .15s,transform .15s,border-color .15s; cursor:pointer; border:0; line-height:1.2; }
.g-btn-fill { background:var(--g-brand-500); color:#fff !important; box-shadow:0 6px 20px rgba(232,99,78,.30); }
.g-btn-fill:hover { background:var(--g-brand-600); }
.g-btn-ghost { background:rgba(255,255,255,.10); color:#fff !important; border:1px solid rgba(246,197,186,.40); }
.g-btn-ghost:hover { background:rgba(255,255,255,.18); }
.g-btn-light { background:#fff; color:var(--g-brand-700) !important; box-shadow:0 6px 20px rgba(0,0,0,.15); }
.g-btn-light:hover { background:var(--g-brand-50); }
.g-btn-outline { background:transparent; color:var(--g-brand-700) !important; border:2px solid var(--g-brand-300); }
.g-btn-outline:hover { background:var(--g-brand-50); }
.g-btn-dark { background:var(--g-gray-800); color:#fff !important; border:1px solid var(--g-gray-700); }
.g-btn-dark:hover { background:var(--g-gray-700); }

/* ============================ HERO ============================ */
.g-hero { padding:3.5rem 0 4rem; color:#fff; }
.g-hero-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:3rem; align-items:center; }
.g-hero-badge { display:inline-flex; align-items:center; gap:.5rem; padding:.375rem .85rem; background:rgba(255,255,255,.10); border:1px solid rgba(246,197,186,.30); border-radius:9999px; font-size:.875rem; color:var(--g-brand-100); margin-bottom:1.25rem; -webkit-backdrop-filter:blur(4px); backdrop-filter:blur(4px); }
.g-hero h1 { font-size:clamp(2.25rem,5vw,3.4rem); font-weight:800; line-height:1.07; margin:0 0 1.25rem; color:#fff; }
.g-hero h1 .hl { color:var(--g-brand-200); }
.g-hero p.lead { font-size:1.125rem; line-height:1.6; color:#fdeee9; max-width:35rem; margin:0 0 1.75rem; }
.g-hero-ctas { display:flex; flex-wrap:wrap; gap:1rem; }
.g-hero-reassure { margin-top:1.25rem; font-size:.85rem; color:var(--g-brand-100); display:flex; align-items:center; gap:.5rem; }

/* Hero "instant quote" mock card (teaches the core idea without a screenshot) */
.g-hero-card { background:#fff; border-radius:1rem; box-shadow:0 30px 60px rgba(0,0,0,.35); border:1px solid rgba(246,197,186,.25); overflow:hidden; }
.g-hero-card-head { background:var(--g-gray-900); color:#fff; padding:.9rem 1.25rem; font-weight:600; font-size:.95rem; display:flex; align-items:center; gap:.6rem; }
.g-quote { padding:1.4rem 1.4rem 1.2rem; }
.g-quote-device { font-weight:700; color:var(--g-gray-900); font-size:1.05rem; }
.g-quote-sub { color:var(--g-gray-500); font-size:.85rem; margin:.1rem 0 1rem; }
.g-quote-pills { display:flex; gap:.5rem; margin-bottom:1.2rem; }
.g-pill { flex:1; text-align:center; font-size:.8rem; font-weight:600; color:var(--g-gray-600); border:1px solid var(--g-surface-200); border-radius:.5rem; padding:.45rem .3rem; background:#fff; }
.g-pill.on { color:#fff; background:var(--g-brand-500); border-color:var(--g-brand-500); box-shadow:0 4px 12px rgba(232,99,78,.25); }
.g-quote-amount { text-align:center; }
.g-quote-amount .g-amt-label { display:block; font-size:.72rem; letter-spacing:.08em; text-transform:uppercase; color:var(--g-gray-400); font-weight:700; }
.g-quote-amount .g-amt { font-size:2.75rem; font-weight:800; color:var(--g-brand-600); line-height:1.1; }
.g-hero-shot { background:#fff; padding:.5rem; }
.g-hero-shot img { display:block; width:100%; height:auto; border-radius:.4rem; }
.g-hero-card-foot { padding:.85rem 1.25rem 1.1rem; font-size:.78rem; color:var(--g-gray-500); border-top:1px solid #f1f2f4; text-align:center; }

/* ===== Live real-product embed in the hero (WooCommerce [product_page]) ===== */
.g-hero-live-card { overflow:hidden; }
.g-hero-live { padding:1.25rem 1.35rem .35rem; }
/* Trim the full single-product template down to just the buy box */
.g-hero-live .woocommerce-breadcrumb,
.g-hero-live .kadence-breadcrumbs,
.g-hero-live [class*="breadcrumb"],
.g-hero-live .entry-hero,
.g-hero-live .woocommerce-tabs,
.g-hero-live .related,
.g-hero-live .up-sells,
.g-hero-live .product_meta,
.g-hero-live .woocommerce-product-rating,
.g-hero-live .woocommerce-product-gallery__trigger,
.g-hero-live .woocommerce-product-gallery__wrapper .flex-control-thumbs,
.g-hero-live .woocommerce-Tabs-panel, .g-hero-live .wc-tabs-wrapper, .g-hero-live .wc-tabs,
.g-hero-live .woocommerce-product-attributes, .g-hero-live table.shop_attributes,
.g-hero-live .products, .g-hero-live .cross-sells, .g-hero-live h2,
.g-hero-live .quantity { display:none !important; }
/* Force the WooCommerce product title visible (Kadence hides it in favor of its own hero band). */
.g-hero-live .product_title, .g-hero-live h1.product_title, .g-hero-live .entry-title { display:block !important; color:var(--g-gray-900) !important; }
/* Never let text inherit the hero's white color */
.g-hero-live, .g-hero-live .entry-summary, .g-hero-live .summary, .g-hero-live p { color:var(--g-gray-800); }
/* One column, small centered image */
.g-hero-live div.product { display:block !important; margin:0 !important; padding:0 !important; }
.g-hero-live div.product .woocommerce-product-gallery,
.g-hero-live div.product .entry-summary,
.g-hero-live div.product .summary { width:100% !important; float:none !important; margin:0 !important; padding:0 !important; }
.g-hero-live .woocommerce-product-gallery { max-width:148px; margin:0 auto .8rem !important; }
.g-hero-live .woocommerce-product-gallery img { border-radius:.5rem; box-shadow:0 1px 3px rgba(0,0,0,.08); }
.g-hero-live .product_title, .g-hero-live h1.product_title { font-size:1.15rem !important; line-height:1.2; margin:0 0 .35rem !important; color:var(--g-gray-900); padding:0; }
.g-hero-live .price, .g-hero-live .woocommerce-variation-price .price { margin:0 0 .7rem !important; }
.g-hero-live table.variations { margin:0 0 .5rem; }
.g-hero-live table.variations th.label { width:120px; }
.g-hero-live .single_add_to_cart_button { width:100%; margin-top:.35rem !important; }
.g-hero-live .woocommerce-variation-add-to-cart, .g-hero-live form.cart { margin-bottom:.25rem; }

/* ============================ DEVICE GRID ============================ */
.g-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; }
.g-device-card { padding:1.5rem; display:flex; flex-direction:column; text-align:left; }
.g-device-thumb { width:100%; aspect-ratio:4/3; object-fit:contain; border-radius:.6rem; background:var(--g-surface-50); margin-bottom:1rem; border:1px solid #f1f2f4; }
.g-device-ico { width:3rem; height:3rem; border-radius:.75rem; background:var(--g-brand-50); display:flex; align-items:center; justify-content:center; margin-bottom:1rem; color:var(--g-brand-600); }
.g-device-ico svg { width:1.6rem; height:1.6rem; }
.g-device-card h3 { font-size:1.0625rem; font-weight:700; color:var(--g-gray-900); margin:0 0 .25rem; }
.g-device-price { font-size:.9rem; color:var(--g-gray-600); margin:0 0 1.1rem; flex-grow:1; }
.g-device-price b { color:var(--g-brand-700); font-weight:800; font-size:1.05rem; }
.g-device-card .g-launch { display:block; text-align:center; padding:.7rem 1rem; background:var(--g-brand-500); color:#fff !important; font-weight:700; font-size:.9rem; border-radius:.5rem; text-decoration:none; transition:background .15s; }
.g-device-card .g-launch:hover { background:var(--g-brand-600); }
.g-chip { display:inline-flex; align-items:center; gap:.35rem; align-self:flex-start; margin-bottom:.85rem; font-size:.72rem; font-weight:700; color:#059669; background:#ecfdf5; border:1px solid #d1fae5; border-radius:9999px; padding:.2rem .55rem; }

/* ============================ HOW IT WORKS ============================ */
.g-how { display:grid; grid-template-columns:repeat(4,1fr); gap:2rem; }
.g-step { text-align:center; }
.g-step-num { width:3.75rem; height:3.75rem; margin:0 auto 1.1rem; border-radius:1rem; background:var(--g-brand-50); border:1px solid var(--g-brand-100); display:flex; align-items:center; justify-content:center; font-size:1.4rem; font-weight:800; color:var(--g-brand-600); }
.g-step h3 { font-size:1.1rem; font-weight:700; color:var(--g-gray-900); margin:0 0 .5rem; }
.g-step p { color:var(--g-gray-600); line-height:1.6; margin:0; font-size:.92rem; }

/* ============================ TRUST BAR ============================ */
.g-trust { background:var(--g-gray-900); padding:1.5rem 0; }
.g-trust-inner { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:1rem 2.75rem; font-size:.9rem; color:var(--g-gray-400); }
.g-trust b { color:var(--g-brand-300); font-weight:700; }

/* ============================ CTA ============================ */
.g-cta { background:var(--g-gray-900); text-align:center; }
.g-cta h2 { color:#fff; font-size:clamp(1.75rem,4vw,2.25rem); font-weight:800; margin:0 0 1rem; }
.g-cta p { color:var(--g-gray-400); font-size:1.125rem; max-width:42rem; margin:0 auto 2rem; }
.g-cta-btns { display:flex; flex-wrap:wrap; gap:1rem; justify-content:center; }
.g-cta-fine { margin-top:1.25rem; color:var(--g-gray-500); font-size:.85rem; }
.g-cta-fine a { color:var(--g-gold-400); text-decoration:none; }

/* ============================ PER-PAGE INSTRUCTION BANNER ============================ */
.g-banner { background:#fff; border:1px solid var(--g-surface-200); border-left:3px solid var(--g-brand-500); border-radius:.45rem; padding:.5rem .95rem; margin:.7rem auto; max-width:80rem; }
.g-banner-row { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:.5rem; }
.g-banner-back { font-size:.8rem; font-weight:600; color:var(--g-brand-700); text-decoration:none; }
.g-banner-back:hover { color:var(--g-brand-500); }
.g-banner-badge { display:inline-flex; align-items:center; gap:.4rem; font-size:.78rem; font-weight:700; color:#059669; }
.g-banner-step { display:inline-flex; align-items:center; gap:.45rem; font-weight:700; color:var(--g-gray-800); font-size:.85rem; }
.g-banner-step .g-stepdot { width:1.2rem; height:1.2rem; border-radius:9999px; background:var(--g-brand-500); color:#fff; font-size:.7rem; font-weight:800; display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; }
.g-banner-note { color:var(--g-gray-600); font-size:.82rem; margin:.12rem 0 0; line-height:1.45; }
.g-banner-note code { background:#fff; border:1px solid var(--g-brand-100); border-radius:.35rem; padding:.05rem .4rem; font-size:.85em; color:var(--g-brand-700); }

/* ============================ SUCCESS SCREEN ============================ */
.g-success { max-width:42rem; margin:2.5rem auto; background:#fff; border:1px solid #eef0f4; border-radius:1rem; box-shadow:0 12px 40px rgba(232,99,78,.12); overflow:hidden; }
.g-success-top { background:linear-gradient(135deg,#3a1410 0%,#8A3324 42%,#E8634E 100%); padding:2.25rem 2rem; text-align:center; color:#fff; }
.g-success-check { width:3.5rem; height:3.5rem; margin:0 auto 1rem; border-radius:9999px; background:rgba(255,255,255,.16); display:flex; align-items:center; justify-content:center; }
.g-success-check svg { width:2rem; height:2rem; color:#34d399; }
.g-success-top h1 { font-size:1.6rem; font-weight:800; margin:0 0 .5rem; }
.g-success-top p { color:#fdeee9; margin:0; font-size:.98rem; line-height:1.55; }
.g-success-body { padding:1.75rem 2rem 2rem; }
.g-success-body ul { list-style:none; margin:0 0 1.25rem; padding:0; }
.g-success-body li { display:flex; gap:.6rem; align-items:flex-start; padding:.4rem 0; color:var(--g-gray-700); font-size:.95rem; }
.g-success-body li svg { width:1.15rem; height:1.15rem; color:var(--g-brand-500); flex-shrink:0; margin-top:.15rem; }
.g-success-point { text-align:center; font-weight:700; color:var(--g-gray-700); font-size:.95rem; margin:0 0 1.25rem; }
.g-success-btns { display:flex; flex-direction:column; gap:.75rem; }
.g-success-trust { text-align:center; margin-top:1.25rem; font-size:.82rem; color:var(--g-gray-500); }
.g-success-loop { display:block; text-align:center; margin-top:1rem; font-size:.9rem; color:var(--g-brand-600); text-decoration:none; }

/* ============================ HOTSPOT (opt-in pulsing marker) ============================ */
.gyta-hotspot { position:absolute; z-index:40; width:1.5rem; height:1.5rem; border-radius:9999px; background:var(--g-brand-500); border:2px solid #fff; box-shadow:0 0 0 rgba(232,99,78,.6); cursor:pointer; animation:gHot 2s infinite; }
.gyta-hotspot::after { content:'?'; position:absolute; inset:0; display:flex; align-items:center; justify-content:center; color:#fff; font-weight:800; font-size:.85rem; }
@keyframes gHot { 0%{box-shadow:0 0 0 0 rgba(232,99,78,.55)} 70%{box-shadow:0 0 0 12px rgba(232,99,78,0)} 100%{box-shadow:0 0 0 0 rgba(232,99,78,0)} }

/* ============================ WooCommerce (classic) brand ============================ */
.woocommerce #respond input#submit,
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt,
.woocommerce #place_order, .woocommerce .single_add_to_cart_button {
	background-color: var(--g-brand-500) !important;
	border-color: var(--g-brand-500) !important;
	color: #fff !important;
	border-radius: .5rem !important;
	font-family: 'Open Sans', sans-serif !important;
	font-weight: 700 !important;
	box-shadow: 0 1px 2px rgba(0,0,0,.08);
	transition: background-color .15s;
}
.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover,
.woocommerce #place_order:hover, .woocommerce .single_add_to_cart_button:hover {
	background-color: var(--g-brand-600) !important;
	border-color: var(--g-brand-600) !important;
}
.woocommerce span.onsale, .woocommerce-page span.onsale { background: var(--g-brand-500); }
.woocommerce div.product p.price, .woocommerce div.product span.price,
.woocommerce ul.products li.product .price,
.woocommerce .woocommerce-variation-price .price { color: var(--g-brand-700) !important; font-weight:800; }
/* Make the live variation quote unmissable (it IS the buyback offer) */
.single-product .woocommerce-variation-price .price { font-size:1.9rem; }
.woocommerce-message, .woocommerce-info { border-top-color: var(--g-brand-500); }
.woocommerce-info::before { color: var(--g-brand-500); }
.woocommerce table.shop_table, .woocommerce .cart_totals table,
.woocommerce-checkout #payment { background: var(--g-surface-50); border-radius:.75rem; border:1px solid #eef0f4; }
.woocommerce-checkout #payment ul.payment_methods { border-bottom:1px solid var(--g-surface-200); }
.woocommerce form .form-row input.input-text, .woocommerce-page form .form-row input.input-text,
.woocommerce form .form-row textarea { border-radius:.5rem; border:1px solid var(--g-surface-200); }
.woocommerce .star-rating span, .woocommerce .star-rating::before { color: var(--g-gold-500); }
/* Highlight the payout method list — these are reverse payouts, the "aha" */
.woocommerce-checkout #payment ul.payment_methods li { padding:.35rem .25rem; }

/* --- Variation selects (Carrier / Condition / Storage): tidy size + spacing.
   The macOS native dropdown popup inherits the select's font-size, so a
   controlled 15px keeps the open list compact instead of "huge". --- */
.woocommerce div.product form.variations_form table.variations { margin:0 0 1rem; border:0; }
.woocommerce div.product form.variations_form table.variations tr { display:flex; align-items:center; gap:1rem; margin-bottom:.6rem; }
.woocommerce div.product form.variations_form table.variations th.label { width:130px; margin:0; padding:0; font-weight:700; color:var(--g-gray-800); text-align:left; }
.woocommerce div.product form.variations_form table.variations td.value { flex:1; margin:0; padding:0; max-width:320px; }
.woocommerce div.product form.variations_form table.variations select,
.single-product .variations select {
	font-size:15px !important;
	line-height:1.4 !important;
	font-family:'Open Sans', sans-serif !important;
	min-height:42px !important;
	height:auto !important;
	width:100% !important;
	max-width:320px !important;
	padding:.5rem 2rem .5rem .75rem !important;
	border:1px solid var(--g-surface-200) !important;
	border-radius:.5rem !important;
	background-color:#fff !important;
	color:var(--g-gray-800) !important;
}
.woocommerce div.product form.variations_form .single_variation_wrap { margin-top:.5rem; }
.woocommerce div.product form.variations_form .reset_variations { font-size:.85rem; color:var(--g-brand-600); }
@media (max-width:560px){
	.woocommerce div.product form.variations_form table.variations tr { flex-direction:column; align-items:flex-start; gap:.25rem; }
	.woocommerce div.product form.variations_form table.variations th.label { width:auto; }
}

/* ============================ Driver.js tour theming (coral) ============================ */
.driver-popover.gyta-tour { background:#fff; border-radius:.85rem; box-shadow:0 24px 60px rgba(17,24,39,.28); font-family:'Open Sans',sans-serif; max-width:340px; }
.driver-popover.gyta-tour .driver-popover-title { font-size:1.05rem; font-weight:800; color:var(--g-gray-900); }
.driver-popover.gyta-tour .driver-popover-description { color:var(--g-gray-600); font-size:.92rem; line-height:1.5; }
.driver-popover.gyta-tour .driver-popover-progress-text { color:var(--g-gray-400); font-size:.78rem; }
.driver-popover.gyta-tour .driver-popover-navigation-btns button {
	background:var(--g-brand-500); color:#fff; text-shadow:none; border:0; border-radius:.45rem; font-weight:700; font-family:'Open Sans',sans-serif; padding:.4rem .9rem; font-size:.85rem; }
.driver-popover.gyta-tour .driver-popover-navigation-btns button:hover { background:var(--g-brand-600); }
.driver-popover.gyta-tour .driver-popover-prev-btn { background:var(--g-surface-100); color:var(--g-gray-700); }
.driver-popover.gyta-tour .driver-popover-prev-btn:hover { background:var(--g-surface-200); }
.driver-popover.gyta-tour .driver-popover-close-btn { color:var(--g-gray-400); }
.driver-popover.gyta-tour .driver-popover-arrow { border-color:#fff; }

/* ============================ Responsive ============================ */
@media (max-width:980px){ .g-hero-grid{grid-template-columns:1fr; gap:2rem;} .g-grid{grid-template-columns:1fr;} .g-how{grid-template-columns:1fr 1fr; gap:1.75rem;} }
@media (max-width:560px){ .g-how{grid-template-columns:1fr;} .g-section{padding:3.5rem 0;} }

/* ==========================================================================
   ROUND 2 — light, WooCommerce-consistent polish for every page.
   Keeps the WordPress/Woo look; just tidies + brands it.
   ========================================================================== */

/* ----- Shop / category archive: hide the redundant Kadence "Shop" title band
   (the "Pick a device" step banner is the page header). ----- */
.post-type-archive-product .entry-hero,
.tax-product_cat .entry-hero,
.woocommerce.archive .entry-hero { display:none !important; }
.post-type-archive-product .content-container,
.tax-product_cat .content-container { padding-top:1.5rem; }
.woocommerce .woocommerce-result-count { color:var(--g-gray-500); }
.woocommerce .woocommerce-ordering select { font-size:14px; border:1px solid var(--g-surface-200); border-radius:.5rem; padding:.45rem .6rem; background:#fff; }

/* ----- Product cards (archive loop) — clean Woo cards ----- */
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product {
	background:#fff; border:1px solid #eef0f4; border-radius:.85rem; padding:1rem 1rem 1.15rem;
	box-shadow:0 1px 2px rgba(0,0,0,.04); transition:box-shadow .2s, transform .2s; text-align:center;
}
.woocommerce ul.products li.product:hover { box-shadow:0 10px 26px rgba(232,99,78,.12); }
.woocommerce ul.products li.product a img { border-radius:.55rem; margin-bottom:.75rem; background:var(--g-surface-50); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size:1rem; font-weight:700; color:var(--g-gray-900); padding:.15rem 0 .35rem; line-height:1.35; }
.woocommerce ul.products li.product .price { color:var(--g-brand-700) !important; font-weight:800; font-size:1.05rem; display:block; margin-bottom:.65rem; }
.woocommerce ul.products li.product .price del { color:var(--g-gray-400); font-weight:600; }
.woocommerce ul.products li.product .button, .woocommerce ul.products li.product a.added_to_cart { display:block; width:100%; margin:.4rem 0 0; box-sizing:border-box; }
/* Kadence hides the loop CTA in a hover-reveal overlay — pin it visible in the card flow. */
.woocommerce ul.products li.product .product-action-wrap { position:static !important; opacity:1 !important; height:auto !important; transform:none !important; margin-top:.5rem; box-shadow:none !important; background:transparent !important; padding:0 !important; }
.woocommerce ul.products li.product .product-action-wrap .button { display:block; width:100%; }

/* ----- Trade-in button (single + loop): on-brand coral OUTLINE secondary, aligned.
   Higher specificity (.woocommerce …) to beat the .single_add_to_cart_button fill. ----- */
.woocommerce .button.wcpti-tradein-button,
.woocommerce a.button.wcpti-tradein-button,
.woocommerce button.button.wcpti-tradein-button {
	background:#fff !important; background-color:#fff !important; color:var(--g-brand-700) !important; border:2px solid var(--g-brand-300) !important;
	box-shadow:none !important; margin-top:0 !important; font-weight:700 !important; font-family:'Open Sans',sans-serif !important;
}
.woocommerce .button.wcpti-tradein-button:hover,
.woocommerce a.button.wcpti-tradein-button:hover,
.woocommerce button.button.wcpti-tradein-button:hover { background-color:var(--g-brand-50) !important; border-color:var(--g-brand-500) !important; color:var(--g-brand-700) !important; }

/* ----- Single-product buy-box: qty + Add-to-cart + Trade-in aligned row ----- */
.woocommerce div.product form.cart:not(.variations_form),
.woocommerce div.product .woocommerce-variation-add-to-cart { display:flex; flex-wrap:wrap; align-items:stretch; gap:.6rem; margin-bottom:1rem; }
.woocommerce div.product form.cart .quantity { margin:0; }
.woocommerce div.product form.cart .quantity .qty { min-height:48px; width:74px; text-align:center; border:1px solid var(--g-surface-200); border-radius:.5rem; }
.woocommerce div.product .single_add_to_cart_button { min-height:48px; display:inline-flex !important; align-items:center; justify-content:center; flex:1 1 auto; margin:0 !important; }
.woocommerce div.product .single_variation_wrap .woocommerce-variation-price { margin-bottom:.5rem; }

/* ----- Cart: trade-in line badge ----- */
.woocommerce-cart .cart_item dl.variation, .woocommerce-checkout .cart_item dl.variation { font-size:.85rem; }
.woocommerce-cart .cart_item dl.variation dd p { color:var(--g-brand-700); font-weight:700; margin:0; }

/* ----- Net-settlement trade-in credit widget ----- */
/* Net trade-in selector (auto-rendered in cart + checkout) — on-brand. */
.wcpti-net-credit { background:var(--g-brand-50) !important; border:1px solid var(--g-brand-200) !important; border-radius:.8rem !important; padding:1.15rem 1.35rem !important; margin:1.25rem 0 !important; font-family:'Open Sans',sans-serif; box-shadow:0 1px 2px rgba(0,0,0,.04); }
.wcpti-net-credit h3 { margin:0 0 .5rem; font-size:1.05rem; font-weight:800; color:var(--g-brand-700); }
.wcpti-net-credit p { margin:.15rem 0 .75rem; color:var(--g-gray-600); font-size:.9rem; }
.wcpti-net-credit select.wcpti-net-item,
.wcpti-net-credit input.wcpti-net-imei { width:100%; max-width:100%; border:1px solid var(--g-surface-200) !important; border-radius:.5rem !important; padding:.6rem .75rem !important; font-family:'Open Sans',sans-serif !important; font-size:.95rem !important; background:#fff !important; margin-bottom:.6rem; }
.wcpti-net-credit .button.wcpti-net-apply,
.wcpti-net-credit .button.wcpti-net-remove,
.wcpti-net-block .wc-block-components-button { background:var(--g-brand-500) !important; border-color:var(--g-brand-500) !important; color:#fff !important; border-radius:.5rem !important; font-weight:700 !important; font-family:'Open Sans',sans-serif !important; }
.wcpti-net-credit .button.wcpti-net-apply:hover,
.wcpti-net-credit .button.wcpti-net-remove:hover { background:var(--g-brand-600) !important; border-color:var(--g-brand-600) !important; }
.wcpti-net-credit .wcpti-net-msg { color:var(--g-brand-700); font-size:.85rem; }
.wcpti-net-block { font-family:'Open Sans',sans-serif; padding:.5rem 0; }
.wcpti-net-block strong { color:var(--g-brand-700); }
/* Store-credit "+10% bonus" badge already carries its own coral color from settings. */
.wcpti-sc-badge { vertical-align:middle; }
/* Device-details capture (condition / IMEI) fields. */
.wcpti-device-details, .wcpti-device-detail, .wcpti-device-field { font-family:'Open Sans',sans-serif; }
.wcpti-device-details label { font-weight:600; color:var(--g-gray-800); font-size:.9rem; }

/* ----- My-account: light nav card ----- */
.woocommerce-account .woocommerce-MyAccount-navigation ul { border:1px solid #eef0f4; border-radius:.75rem; overflow:hidden; list-style:none; margin:0; padding:0; }
.woocommerce-account .woocommerce-MyAccount-navigation li { border-bottom:1px solid #f1f2f4; }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active { background:var(--g-brand-50); }
.woocommerce-account .woocommerce-MyAccount-navigation li a { color:var(--g-gray-800); display:block; padding:.7rem 1rem; text-decoration:none; }

/* ----- Flow pills in the demo bar ----- */
.gyta-flowctl { display:inline-flex; align-items:center; gap:.3rem; }
.gyta-flowctl-label { color:#9ca3af; font-size:.7rem; text-transform:uppercase; letter-spacing:.05em; font-weight:700; margin-right:.1rem; }
.gyta-flowpill { display:inline-flex; align-items:center; padding:.22rem .55rem; border-radius:.4rem; font-size:.74rem; font-weight:700; text-decoration:none; border:1px solid #374151; color:#cbd2e0; background:rgba(255,255,255,.04); transition:background .15s,border-color .15s,color .15s; white-space:nowrap; }
.gyta-flowpill:hover { border-color:var(--g-brand-400); color:#fff; }
.gyta-flowpill.is-active { background:var(--g-brand-500); border-color:var(--g-brand-500); color:#fff; }

/* ----- Homepage flow selector cards ----- */
.g-flows { display:grid; grid-template-columns:repeat(3,1fr); gap:1.25rem; }
.g-flow-card { background:#fff; border:1px solid #eef0f4; border-radius:.85rem; padding:1.5rem; box-shadow:0 1px 2px rgba(0,0,0,.04); display:flex; flex-direction:column; position:relative; transition:box-shadow .2s, transform .2s, border-color .2s; }
.g-flow-card:hover { box-shadow:0 14px 34px rgba(232,99,78,.12); }
.g-flow-card.is-active { border-color:var(--g-brand-400); box-shadow:0 8px 24px rgba(232,99,78,.14); }
.g-flow-badge { position:absolute; top:1rem; right:1rem; font-size:.6rem; font-weight:800; letter-spacing:.05em; text-transform:uppercase; color:#059669; background:#ecfdf5; border:1px solid #d1fae5; border-radius:9999px; padding:.18rem .5rem; }
.g-flow-num { width:2.5rem; height:2.5rem; border-radius:.6rem; background:var(--g-brand-50); color:var(--g-brand-600); font-weight:800; font-size:1.1rem; display:flex; align-items:center; justify-content:center; margin-bottom:.9rem; }
.g-flow-card h3 { font-size:1.1rem; font-weight:800; color:var(--g-gray-900); margin:0 0 .4rem; }
.g-flow-card p { font-size:.92rem; color:var(--g-gray-600); line-height:1.55; margin:0 0 1.1rem; flex-grow:1; }
.g-flow-go { display:inline-flex; align-items:center; justify-content:center; padding:.6rem 1rem; border-radius:.5rem; font-weight:700; font-size:.9rem; text-decoration:none; background:var(--g-brand-500); color:#fff !important; }
.g-flow-go:hover { background:var(--g-brand-600); }

/* ===== Mode money-flow visual (Buyback lane · Dual vs Net comparison) ===== */
.g-modeviz .g-viz-cards { display:grid; gap:1.5rem; max-width:60rem; margin:0 auto; }
.g-modeviz .g-viz-two { grid-template-columns:1fr 1fr; }
@media (max-width:820px){ .g-modeviz .g-viz-two { grid-template-columns:1fr; } }
.g-viz-card { background:var(--g-surface-50); border:2px solid var(--g-surface-200); border-radius:1rem; padding:1.6rem 1.4rem; transition:border-color .2s, box-shadow .2s, background .2s; }
.g-viz-card.is-active { border-color:var(--g-brand-500); box-shadow:0 12px 34px rgba(232,99,78,.16); background:#fff; }
.g-viz-title { font-weight:800; font-size:1.15rem; color:var(--g-gray-900); margin-bottom:1.2rem; display:flex; align-items:center; gap:.55rem; flex-wrap:wrap; }
.g-viz-tag { font-size:.62rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; color:var(--g-brand-700); background:var(--g-brand-50); border:1px solid var(--g-brand-100); border-radius:9999px; padding:.2rem .55rem; }
.g-viz-lanes { display:flex; flex-direction:column; gap:.55rem; }
.g-viz-lane { display:flex; align-items:center; gap:.5rem; flex-wrap:wrap; justify-content:center; }
.g-viz-node { display:inline-flex; align-items:center; gap:.35rem; background:#fff; border:1px solid var(--g-surface-200); border-radius:.6rem; padding:.55rem .8rem; font-weight:700; font-size:.88rem; color:var(--g-gray-800); text-align:center; line-height:1.2; box-shadow:0 1px 2px rgba(0,0,0,.04); }
.g-viz-node b { color:var(--g-gray-900); font-size:.95rem; }
.g-viz-arrow { color:var(--g-brand-500); font-weight:800; font-size:1.1rem; }
.g-viz-or { text-align:center; color:var(--g-gray-400); font-weight:700; font-size:.78rem; letter-spacing:.06em; }
.g-viz-pay { border-color:var(--g-brand-300); background:var(--g-brand-50); color:var(--g-brand-700); }
.g-viz-pay b { color:var(--g-brand-700); }
.g-viz-get { border-color:#a7f3d0; background:#ecfdf5; color:#047857; }
.g-viz-get b { color:#047857; }
.g-viz-equation { display:flex; align-items:center; justify-content:center; gap:.55rem; flex-wrap:wrap; }
.g-viz-op { font-size:1.4rem; font-weight:800; color:var(--g-gray-400); }
.g-viz-note { margin:1.15rem 0 0; font-size:.88rem; color:var(--g-gray-600); line-height:1.5; text-align:center; }

/* ===== Checkout "Subscribe to Gyta Buyback plugin updates" opt-in ===== */
.woocommerce-checkout .gyta-optin-row { margin:14px 0 4px; padding:13px 16px; background:var(--g-brand-50); border:1px solid var(--g-brand-100); border-radius:10px; text-align:center; }
.woocommerce-checkout .gyta-optin { display:inline-flex !important; gap:11px; align-items:center; text-align:left; margin:0 auto; width:auto !important; cursor:pointer; }
.woocommerce-checkout .gyta-optin input[type="checkbox"] { flex:0 0 auto; margin:0; width:18px; height:18px; accent-color:var(--g-brand-500); }
.woocommerce-checkout .gyta-optin-text { font-size:14px; font-weight:700; color:var(--g-brand-800); line-height:1.35; }
.woocommerce-checkout .gyta-optin-hint { display:block; font-weight:400; font-size:12.5px; color:var(--g-gray-500); margin-top:2px; }
.g-flow-card.is-active .g-flow-go { background:var(--g-gray-800); }

@media (max-width:880px){ .g-flows{grid-template-columns:1fr;} }
@media (max-width:760px){ .gyta-flowctl-label{display:none;} }
