/*
 Theme Name:   Astra QubicPay (Child)
 Theme URI:    https://paywithqubic.com
 Description:  High-end Qubic blockchain payments site (Astra child)
 Author:       You
 Template:     astra
 Version:      1.0.0
 License:      GPL-2.0+
*/

/* ── Design tokens (Qubic brand-ish) ───────────────────────────────────────── */
:root{
  --bg:#0b0f14;           /* deep slate */
  --card:#121824;         /* panel */
  --muted:#8fa1b8;        /* subtle text */
  --text:#e8eef8;         /* main text */
  --primary:#6ee7ff;      /* qubic cyan */
  --primary-600:#20c8f2;  /* deeper cyan */
  --accent:#a9ff7a;       /* green accent for success */
  --danger:#ff7676;
  --radius:16px;
  --shadow:0 10px 28px rgba(0,0,0,.28);
  --gap:20px;

  --font-sans: ui-sans-serif, system-ui, -apple-system, Segoe UI, Inter, Roboto, "Helvetica Neue", Arial;
  --fs-xxl: clamp(42px, 6.2vw, 66px);
  --fs-xl: clamp(28px, 4.2vw, 42px);
  --fs-lg: 22px;
  --fs-md: 17px;
  --fs-sm: 14px;
}

/* Base */
html,body{background:var(--bg); color:var(--text); font-family:var(--font-sans);}
a{color:var(--primary); text-decoration:none;}
a:hover{color:var(--accent);}
img{max-width:100%;}

/* Layout */
.container-narrow{max-width:980px; margin:0 auto; padding:0 20px;}
.container-wide{max-width:1280px; margin:0 auto; padding:0 20px;}
.stack > * + *{margin-top:16px;}

/* Cards */
.card{
  background: linear-gradient(180deg, #151b27, #0f141d);
  border:1px solid rgba(255,255,255,.06);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
}

/* Buttons */
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:12px 18px; border-radius:999px; font-weight:700;
  border:1px solid transparent; transition:transform .06s ease, box-shadow .2s ease;
}
.btn:hover{transform:translateY(-1px);}
.btn-primary{background:linear-gradient(180deg, var(--primary), var(--primary-600)); color:#032433;}
.btn-ghost{background:transparent; border-color:rgba(255,255,255,.12); color:var(--text);}
.btn-danger{background:linear-gradient(180deg, #ff9b9b, var(--danger)); color:#220;}

/* Hero */
.hero{
  padding:100px 0 52px; text-align:center;
  background: radial-gradient(1200px 600px at 50% -220px, rgba(32,200,242,.2), rgba(0,0,0,0));
}
.hero h1{font-size:var(--fs-xxl); line-height:1.05; letter-spacing:-.02em;}
.hero p{color:var(--muted); font-size:var(--fs-lg);}

/* Feature grid */
.features{display:grid; grid-template-columns:repeat(3,1fr); gap:var(--gap); margin-top:40px;}
@media (max-width:900px){.features{grid-template-columns:1fr;}}
.feature{padding:22px;}

/* Two-up section */
.twoup{display:grid; grid-template-columns:1fr 1fr; gap:var(--gap);}
@media (max-width:900px){.twoup{grid-template-columns:1fr;}}

/* Pricing */
.pricing-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:var(--gap); margin-top:32px;}
@media (max-width:900px){.pricing-grid{grid-template-columns:1fr;}}
.price-card{padding:28px; position:relative; overflow:hidden;}
.price{font-size:16px; font-weight:800; letter-spacing:-.02em;}
.badge{position:absolute; top:16px; right:16px; background:var(--accent); color:#052; font-weight:800; padding:6px 10px; border-radius:999px;}

/* Testimonial */
.testimonial{display:grid; grid-template-columns:72px 1fr; gap:16px; align-items:center;}
.testimonial img{border-radius:999px;}

/* Woo polish */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select{
  background:#0d141d; border:1px solid rgba(255,255,255,.08); color:var(--text); border-radius:12px; padding:12px 14px;
}
.woocommerce-checkout #payment, .woocommerce-cart .cart-collaterals .cart_totals,
.woocommerce table.shop_table, .woocommerce .woocommerce-order{
  background:#0f151f; border-radius:var(--radius); border:1px solid rgba(255,255,255,.06);
}
.woocommerce .button, .woocommerce a.button{
  background:linear-gradient(180deg, var(--primary), var(--primary-600)) !important;
  color:#032433 !important; border-radius:999px !important; border:0 !important; padding:12px 18px !important; font-weight:800;
}

/* Trust row */
.trust-row{display:flex; gap:18px; align-items:center; justify-content:center; flex-wrap:wrap; color:var(--muted); font-size:var(--fs-sm);}
.trust-row .chip{padding:6px 10px; border-radius:999px; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.08);}
