/*
Theme Name: Instant3DShop Child
Template: astra
Version: 2.0.0
Text Domain: astra-child
*/

:root {
    --bg-deep: #0f172a;
    --bg-slate: #1e293b;
    --text-primary: #f8fafc;
    --text-secondary: #94a3b8;
    --text-muted: #64748b;
    --accent: #f59e0b;
    --accent-hover: #d97706;
    --border: rgba(148,163,184,0.15);
    --radius: 16px;
    --radius-sm: 10px;
    --shadow: 0 20px 60px rgba(0,0,0,0.35);
}

/* Base dark theme */
html, body {
    background: var(--bg-deep) !important;
    color: var(--text-secondary) !important;
}

/* Layout fix — prevent Astra flex collapse */
#page,
.ast-container,
#primary,
main.site-main,
.entry-content {
    display: block !important;
}

/* Text colors (high specificity to beat Astra defaults) */
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 { color: var(--text-primary) !important; }

.entry-content p,
.entry-content li,
.entry-content span,
.entry-content div { color: var(--text-secondary) !important; }

.entry-content a { color: var(--accent) !important; }
.entry-content a:hover { color: var(--accent-hover) !important; }

/* Navbar */
.navbar,
.navbar .nav-inner {
    background: #0b1220 !important;
    border-bottom: 1px solid #1e293b !important;
}
.nav-logo, .nav-logo span { color: var(--text-primary) !important; }
.nav-links a, .navbar .nav-links a { color: #e2e8f0 !important; }
.nav-links a:hover { color: #e67e22 !important; }
.nav-links a.cta-nav { background: var(--accent) !important; color: #0b1220 !important; }
.nav-toggle span { background: #e2e8f0 !important; }

/* Astra header */
.ast-primary-header-bar, .main-header-bar { background: #0b1220 !important; }
.ast-builder-menu-1 .menu-item > .menu-link { color: #e2e8f0 !important; }
.ast-builder-menu-1 .menu-link:hover { color: #e67e22 !important; }

/* Footer */
.site-below-footer-wrap, .site-footer, footer {
    background: #0b1220 !important;
    border-top: 1px solid #1e293b !important;
}
.site-footer a { color: #94a3b8 !important; }
.ast-footer-copyright, .ast-powered-by-text, .ast-footer-site-title { display: none !important; }

/* Page titles */
body.home .entry-header, body.home h1.entry-title { display: none !important; }
body:not(.home) .entry-header, body:not(.home) h1.entry-title { color: var(--text-primary) !important; }

/* Legacy homepage sections */
.section-demo, .section-steps, .section-features { background: #0b1220 !important; }
.section-demo h2, .section-steps h2, .section-features h2 { color: #e2e8f0 !important; }
.section-demo p, .section-steps p, .section-features p { color: #94a3b8 !important; }
.feature-card, .step {
    background: #111827 !important;
    border: 1px solid #1e293b !important;
}
.feature-card h4, .step h3 { color: #e2e8f0 !important; }
.feature-card p, .step p { color: #94a3b8 !important; }

/* WooCommerce */
.woocommerce .product, .woocommerce .products .product {
    background: #111827 !important;
    border: 1px solid #1e293b !important;
    border-radius: var(--radius-sm);
}
.woocommerce-Price-amount, .woocommerce .price { color: var(--accent) !important; }
.woocommerce table.shop_table th, .woocommerce table.shop_table td {
    border-bottom: 1px solid #1e293b !important;
    color: #e2e8f0 !important;
}
.woocommerce a { color: var(--accent) !important; }
.woocommerce input, .woocommerce select, .woocommerce textarea {
    background: #111827 !important;
    border: 1px solid #1e293b !important;
    color: #e2e8f0 !important;
    padding: 10px;
    border-radius: 6px;
}
.woocommerce button, .woocommerce .button, .woocommerce a.checkout-button, .woocommerce .checkout-button {
    background: var(--accent) !important;
    color: #0f172a !important;
    border: none !important;
    border-radius: 8px;
    font-weight: 700;
    cursor: pointer;
}
.woocommerce button:hover, .woocommerce .button:hover { background: var(--accent-hover) !important; }

/* Misc */
::selection { background: var(--accent); color: #0f172a; }

/* i3s Homepage Sections */
.i3s-section{padding:80px 20px;background:var(--bg-deep);color:var(--text-primary);font-family:system-ui,Roboto,Arial,sans-serif;position:relative;overflow:hidden}
.i3s-container{max-width:1200px;margin:0 auto}
.i3s-section-title{font-size:clamp(1.6rem,4vw,2.4rem);font-weight:700;text-align:center;margin-bottom:12px;color:var(--text-primary)!important}
.i3s-section-subtitle{text-align:center;color:var(--text-secondary);font-size:clamp(1rem,2vw,1.15rem);max-width:720px;margin:0 auto 50px;line-height:1.55}
.i3s-hero{padding:120px 20px 100px;text-align:center;position:relative}
.i3s-hero::before{content:;position:absolute;inset:0;background:radial-gradient(800px 400px at 50% -20%,rgba(245,158,11,0.10),transparent 60%);pointer-events:none}
.i3s-hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(245,158,11,0.15);color:var(--accent);font-size:0.85rem;font-weight:700;padding:6px 16px;border-radius:999px;margin-bottom:24px;border:1px solid rgba(245,158,11,0.3)}
.i3s-hero h1{font-size:clamp(2.2rem,5vw,3.6rem);font-weight:800;line-height:1.1;margin-bottom:18px;position:relative;z-index:2;color:var(--text-primary)!important}
.i3s-hero h1 span{background:linear-gradient(90deg,#f59e0b,#fbbf24);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.i3s-hero p{color:var(--text-secondary);font-size:clamp(1rem,2vw,1.25rem);max-width:640px;margin:0 auto 32px;line-height:1.6;position:relative;z-index:2}
.i3s-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 32px;border-radius:var(--radius-sm);font-weight:700;font-size:1rem;text-decoration:none;border:none;cursor:pointer;transition:background .2s,transform .15s}
.i3s-btn-primary{background:var(--accent);color:#0f172a}
.i3s-btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px)}
.i3s-btn-outline{background:transparent;border:2px solid var(--border);color:var(--text-primary)}
.i3s-btn-outline:hover{border-color:var(--accent);color:var(--accent)}
.i3s-trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center;margin-bottom:40px}
.i3s-stat{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:800;color:var(--accent);display:block}
.i3s-stat-label{font-size:0.9rem;color:var(--text-secondary);margin-top:4px;display:block}
.i3s-logos{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.i3s-logo-pill{background:var(--bg-slate);border:1px solid var(--border);border-radius:999px;padding:6px 16px;font-size:0.85rem;color:var(--text-secondary)}
.i3s-problem-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.i3s-problem-card{background:var(--bg-slate);border:1px solid var(--border);border-radius:var(--radius);padding:28px;text-align:center}
.i3s-problem-icon{font-size:2.5rem;margin-bottom:12px}
.i3s-problem-card h3{font-size:1.1rem;margin:0 0 8px;font-weight:700;color:var(--text-primary)!important}
.i3s-problem-card p{color:var(--text-secondary);font-size:0.95rem;line-height:1.5}
.i3s-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.i3s-step{background:var(--bg-slate);border:1px solid var(--border);border-radius:var(--radius);padding:32px 24px;text-align:center;position:relative}
.i3s-step-num{width:48px;height:48px;border-radius:50%;background:var(--accent);color:#0f172a;font-size:1.2rem;font-weight:800;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}
.i3s-step h3{font-size:1.1rem;margin:0 0 10px;font-weight:700;color:var(--text-primary)!important}
.i3s-step p{color:var(--text-secondary);font-size:0.95rem;line-height:1.5}
.i3s-products-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.i3s-product{background:var(--bg-slate);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;text-align:center;transition:transform .25s,box-shadow .25s}
.i3s-product:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.i3s-product-visual{height:140px;display:flex;align-items:center;justify-content:center;background:#162032;font-size:3rem}
.i3s-product-info{padding:20px 16px 24px}
.i3s-product-info h4{font-size:1rem;margin:0 0 6px;font-weight:700;color:var(--text-primary)!important}
.i3s-product-info .price{color:var(--accent);font-weight:800;font-size:1.1rem;margin-bottom:4px}
.i3s-product-info .sub{color:var(--text-muted);font-size:0.85rem}
.i3s-features-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
.i3s-feature{background:var(--bg-slate);border:1px solid var(--border);border-radius:var(--radius-sm);padding:20px;text-align:center}
.i3s-feature .icon{font-size:2rem;margin-bottom:8px;display:block}
.i3s-feature h4{font-size:0.95rem;margin:0 0 6px;font-weight:700;color:var(--text-primary)!important}
.i3s-feature p{color:var(--text-secondary);font-size:0.85rem;line-height:1.4}
.i3s-pricing{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:860px;margin:0 auto}
.i3s-plan{background:var(--bg-slate);border:2px solid var(--border);border-radius:var(--radius);padding:34px 28px;text-align:center;position:relative}
.i3s-plan.recommended{border-color:var(--accent)}
.i3s-plan .badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--accent);color:#0f172a;font-size:0.75rem;font-weight:800;padding:5px 12px;border-radius:999px;letter-spacing:.4px}
.i3s-plan h3{font-size:1.25rem;margin:8px 0 6px;font-weight:700;color:var(--text-primary)!important}
.i3s-plan .price{font-size:clamp(2rem,4vw,2.8rem);font-weight:800;color:var(--accent)}
.i3s-plan .price span{font-size:1rem;color:var(--text-muted);font-weight:600}
.i3s-plan .desc{color:var(--text-secondary);font-size:0.95rem;margin:10px 0 18px}
.i3s-plan ul{list-style:none;margin:0 0 24px;padding:0;text-align:left}
.i3s-plan ul li{padding:8px 0;border-bottom:1px solid var(--border);color:var(--text-secondary);font-size:0.95rem}
.i3s-plan ul li:last-child{border-bottom:none}
.i3s-faq{max-width:800px;margin:0 auto}
.i3s-faq details{background:var(--bg-slate);border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:12px;padding:16px 20px;cursor:pointer}
.i3s-faq summary{font-weight:700;font-size:1rem;list-style:none;color:var(--text-primary)!important}
.i3s-faq .answer{color:var(--text-secondary);font-size:0.95rem;line-height:1.5;padding-top:12px;margin-top:8px;border-top:1px solid var(--border)}
.i3s-cta{text-align:center;position:relative}
.i3s-cta::before{content:;position:absolute;inset:0;background:radial-gradient(800px 400px at 50% -20%,rgba(245,158,11,0.12),transparent 60%);pointer-events:none}
.i3s-cta h2{font-size:clamp(1.6rem,4vw,2.4rem);margin-bottom:10px;position:relative;z-index:2;color:var(--text-primary)!important}
.i3s-cta p{color:var(--text-secondary);max-width:640px;margin:0 auto 24px;font-size:1.05rem;position:relative;z-index:2}
.i3s-trust-row{display:flex;flex-wrap:wrap;justify-content:center;gap:16px 32px;margin-top:24px;color:var(--text-muted);font-size:0.9rem;position:relative;z-index:2}
@media(max-width:900px){.i3s-trust-grid{grid-template-columns:repeat(2,1fr)}.i3s-problem-grid{grid-template-columns:1fr}.i3s-steps{grid-template-columns:1fr}.i3s-products-grid{grid-template-columns:repeat(2,1fr)}.i3s-features-grid{grid-template-columns:repeat(3,1fr)}.i3s-pricing{grid-template-columns:1fr}}
@media(max-width:600px){.i3s-products-grid{grid-template-columns:1fr}.i3s-features-grid{grid-template-columns:1fr}.i3s-section{padding:56px 16px}}

/* Pricing button fix — ensure dark text stays visible on amber buttons */
.entry-content a[style*="background:#f59e0b"],
.entry-content a[style*="background: #f59e0b"],
.entry-content a[style*="background-color:#f59e0b"] {
    color: #0f172a !important;
}
.entry-content a[style*="background:#f59e0b"]:hover,
.entry-content a[style*="background: #f59e0b"]:hover {
    color: #0f172a !important;
}
