/* ============================================================
   PHOENIX GAME ROOM ONLINE - Ember theme for WooCommerce
   Targets the Credits product page and general storefront.
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Unbounded:wght@500;700;900&family=Outfit:wght@300;400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap');

:root{
  --pgr-ink:#0E0B14;
  --pgr-surface:#18131F;
  --pgr-surface2:#201927;
  --pgr-line:rgba(245,185,66,.14);
  --pgr-gold:#F5B942;
  --pgr-flame:#F0662B;
  --pgr-crimson:#C4283C;
  --pgr-text:#F2EAE0;
  --pgr-muted:#A79AA8;
  --pgr-grad:linear-gradient(100deg,#F5B942 0%,#F0662B 48%,#C4283C 100%);
}

/* ---------- Page base ---------- */
body{
  background:var(--pgr-ink) !important;
  color:var(--pgr-text) !important;
  font-family:'Outfit',system-ui,sans-serif !important;
}
#content, .site-content, .elementor-section, .e-con{
  background:transparent !important;
}
a{color:var(--pgr-gold)}
a:hover{color:var(--pgr-flame)}

/* ---------- Compliance ribbon (injected) ---------- */
body::before{
  content:"NO PURCHASE NECESSARY. A PURCHASE WILL NOT INCREASE YOUR CHANCES OF WINNING. VOID WHERE PROHIBITED. 18+";
  display:block;
  background:#000;
  color:var(--pgr-gold);
  font-family:'IBM Plex Mono',monospace;
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-align:center;
  padding:9px 16px;
  border-bottom:1px solid var(--pgr-line);
}

/* ---------- Headings ---------- */
h1,h2,h3,.product_title{
  font-family:'Unbounded',sans-serif !important;
  color:var(--pgr-text) !important;
  letter-spacing:-.01em;
}
.woocommerce div.product .product_title{
  font-weight:900;
  font-size:clamp(28px,4.5vw,44px);
  line-height:1.1;
  background:var(--pgr-grad);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  margin-bottom:10px;
}

/* ---------- Product layout ---------- */
.woocommerce div.product{
  background:transparent;
}
.woocommerce div.product div.summary{
  background:var(--pgr-surface);
  border:1px solid var(--pgr-line);
  border-radius:14px;
  padding:34px !important;
}
.woocommerce div.product div.images img{
  border-radius:14px;
  border:1px solid var(--pgr-line);
}

/* Price / minimum line */
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce div.product .nyp,
.woocommerce div.product .minimum-price{
  color:var(--pgr-muted) !important;
  font-family:'IBM Plex Mono',monospace !important;
  font-size:13px !important;
  letter-spacing:.06em;
  text-transform:uppercase;
}

/* ---------- Name-your-price amount field ---------- */
.woocommerce div.product form.cart .nyp-input,
.woocommerce div.product form.cart input[type="number"],
.woocommerce div.product form.cart input[type="text"].nyp-input,
form.cart .nyp input{
  background:var(--pgr-ink) !important;
  border:1px solid rgba(245,185,66,.35) !important;
  border-radius:12px !important;
  color:var(--pgr-text) !important;
  font-family:'Unbounded',sans-serif !important;
  font-weight:700 !important;
  font-size:26px !important;
  padding:14px 18px !important;
  width:100% !important;
  max-width:260px;
  box-shadow:none !important;
}
.woocommerce div.product form.cart .nyp-input:focus,
.woocommerce div.product form.cart input[type="number"]:focus{
  outline:2px solid var(--pgr-gold) !important;
  outline-offset:2px;
}
form.cart label{
  font-family:'IBM Plex Mono',monospace !important;
  font-size:11px !important;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--pgr-muted) !important;
}

/* Hide quantity selector: single open-amount product, no credit counts */
.woocommerce div.product form.cart div.quantity{display:none !important;}

/* ---------- Add to cart / Pay button ---------- */
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce div.product form.cart .button,
.single_add_to_cart_button{
  background:var(--pgr-grad) !important;
  color:#160902 !important;
  font-family:'Outfit',sans-serif !important;
  font-weight:600 !important;
  font-size:16px !important;
  border:0 !important;
  border-radius:10px !important;
  padding:15px 34px !important;
  box-shadow:0 6px 22px rgba(240,102,43,.35) !important;
  transition:transform .15s, box-shadow .15s !important;
  text-transform:none !important;
}
.woocommerce div.product form.cart .button:hover,
.single_add_to_cart_button:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 28px rgba(240,102,43,.45) !important;
  background:var(--pgr-grad) !important;
  color:#160902 !important;
}

/* ---------- Short description / disclosure block ---------- */
.woocommerce div.product .woocommerce-product-details__short-description{
  color:var(--pgr-muted);
  font-size:14px;
  font-weight:300;
}
.pgr-amoe{
  background:rgba(245,185,66,.06);
  border:1px solid var(--pgr-line);
  border-radius:10px;
  padding:16px 18px;
  font-size:13.5px;
  color:var(--pgr-text);
  margin:18px 0 0;
}
.pgr-amoe a{color:var(--pgr-gold);font-weight:600}
.pgr-fine{
  font-size:12.5px;
  color:var(--pgr-muted);
  line-height:1.8;
  border-top:1px solid var(--pgr-line);
  padding-top:14px;
  margin-top:16px;
}
.pgr-fine a{color:var(--pgr-gold)}
.pgr-descriptor{
  font-size:13px;
  color:var(--pgr-muted);
  margin-top:12px;
}
.pgr-descriptor strong{color:var(--pgr-text)}

/* ---------- Woo notices, tabs, related ---------- */
.woocommerce-message,.woocommerce-info,.woocommerce-error{
  background:var(--pgr-surface) !important;
  color:var(--pgr-text) !important;
  border-top-color:var(--pgr-flame) !important;
  border-radius:10px;
}
.woocommerce-message a,.woocommerce-info a{color:var(--pgr-gold) !important}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
  background:var(--pgr-surface) !important;
  border-color:var(--pgr-line) !important;
  border-radius:10px 10px 0 0 !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{color:var(--pgr-muted) !important}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--pgr-text) !important}
.woocommerce div.product .woocommerce-tabs .panel{
  background:var(--pgr-surface) !important;
  border:1px solid var(--pgr-line);
  border-radius:0 10px 10px 10px;
  padding:24px !important;
  color:var(--pgr-muted);
}
section.related.products h2{font-size:20px}

/* ---------- Cart & checkout pages (same theme) ---------- */
.woocommerce table.shop_table{
  background:var(--pgr-surface);
  border:1px solid var(--pgr-line) !important;
  border-radius:14px;
  color:var(--pgr-text);
}
.woocommerce table.shop_table td,
.woocommerce table.shop_table th{
  border-color:var(--pgr-line) !important;
  color:var(--pgr-text);
}
.woocommerce-checkout #payment{
  background:var(--pgr-surface) !important;
  border-radius:14px;
}
.woocommerce-checkout #payment div.payment_box{
  background:var(--pgr-surface2) !important;
  color:var(--pgr-muted) !important;
}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select{
  background:var(--pgr-ink) !important;
  border:1px solid var(--pgr-line) !important;
  border-radius:10px !important;
  color:var(--pgr-text) !important;
  padding:12px 14px !important;
}

/* ---------- Header / footer of theme ---------- */
.site-header, header.elementor-location-header, footer.elementor-location-footer, .site-footer{
  background:var(--pgr-ink) !important;
  border-color:var(--pgr-line) !important;
}
.site-title a, .site-header a{color:var(--pgr-text) !important}

/* ---------- Footer disclosure (injected) ---------- */
body::after{
  content:"NO PURCHASE NECESSARY TO ENTER OR WIN. A PURCHASE WILL NOT INCREASE YOUR CHANCES OF WINNING. VOID WHERE PROHIBITED. Open to legal residents of the U.S. (excluding CA, CT, ID, IN, LA, MI, MT, NV, NJ, NY, TN, WA) and Canada (excluding Quebec), 18+. Sponsor: SWIFTLET NEST, LLC, Dallas, Texas. Phoenix Game Room Online is a promotional sweepstakes platform.";
  display:block;
  background:#000;
  color:var(--pgr-muted);
  font-size:11.5px;
  line-height:1.8;
  text-align:center;
  padding:20px 24px;
  border-top:1px solid var(--pgr-line);
}

/* ============================================================
   CREDIT TILES - shop grid / [products] shortcode styling
   For the 16 credit denomination products (category: Credits)
   ============================================================ */
ul.products{
  display:grid !important;
  grid-template-columns:repeat(4,1fr) !important;
  gap:18px !important;
  margin:0 !important;
  padding:0 !important;
}
@media(max-width:900px){ul.products{grid-template-columns:repeat(2,1fr) !important}}
@media(max-width:480px){ul.products{grid-template-columns:repeat(2,1fr) !important;gap:12px !important}}
ul.products li.product{
  background:var(--pgr-surface) !important;
  border:1px solid var(--pgr-line) !important;
  border-radius:14px !important;
  padding:22px 16px 20px !important;
  margin:0 !important;
  width:auto !important;
  float:none !important;
  text-align:center !important;
  transition:border-color .18s, transform .18s;
}
ul.products li.product:hover{
  border-color:rgba(245,185,66,.45) !important;
  transform:translateY(-3px);
}
ul.products li.product img{
  width:72px !important;
  height:72px !important;
  object-fit:contain;
  margin:0 auto 14px !important;
  border:0 !important;
  border-radius:0 !important;
}
ul.products li.product .woocommerce-loop-product__title{
  font-family:'IBM Plex Mono',monospace !important;
  font-size:11px !important;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--pgr-muted) !important;
  padding:0 !important;
  margin-bottom:8px !important;
}
ul.products li.product .price{
  display:block;
  font-family:'Unbounded',sans-serif !important;
  font-weight:700 !important;
  font-size:30px !important;
  letter-spacing:-.02em;
  margin:0 0 14px !important;
  background:var(--pgr-grad);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
}
ul.products li.product .price .woocommerce-Price-currencySymbol{font-size:.6em;vertical-align:.35em}
ul.products li.product .button{
  margin-top:0 !important;
  padding:11px 22px !important;
  font-size:14px !important;
  width:100%;
}
ul.products li.product .onsale, ul.products li.product .wc-block-components-product-sale-badge{display:none !important}
/* Hide "Sold individually" qty noise anywhere in loop */
ul.products li.product .quantity{display:none !important}

/* ============================================================
   PAGE SECTIONS - styles for the WordPress section blocks
   (hero, how-it-works, AMOE, eligibility, responsible gaming,
   footer legal). Each section is its own Custom HTML block;
   these shared styles live here once.
   ============================================================ */
.pgr-sec{padding:72px 24px;border-top:1px solid var(--pgr-line)}
.pgr-sec-inner{max-width:1160px;margin:0 auto}
.pgr-eyebrow{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--pgr-gold);margin:0 0 18px}
.pgr-h1{font-family:'Unbounded',sans-serif;font-weight:900;font-size:clamp(32px,6vw,58px);line-height:1.08;color:var(--pgr-text);margin:0 0 20px}
.pgr-h2{font-family:'Unbounded',sans-serif;font-weight:700;font-size:clamp(24px,3.4vw,36px);line-height:1.2;color:var(--pgr-text);margin:0 0 14px}
.pgr-grad{background:var(--pgr-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.pgr-sub{font-size:17px;font-weight:300;color:var(--pgr-muted);max-width:640px;margin:0 0 32px}
.pgr-sub strong{color:var(--pgr-text);font-weight:500}
.pgr-center{text-align:center}
.pgr-center .pgr-sub{margin-left:auto;margin-right:auto}

/* Hero */
.pgr-hero{position:relative;overflow:hidden;padding:80px 24px 88px;border-top:0;
  background:radial-gradient(120% 70% at 50% 115%,rgba(240,102,43,.30),rgba(196,40,60,.12) 55%,transparent 78%) var(--pgr-ink)}
.pgr-hero-logo{width:170px;height:auto;margin:0 auto 20px;display:block}
.pgr-split{display:inline-flex;border-radius:14px;overflow:hidden;border:1px solid var(--pgr-line);box-shadow:0 10px 40px rgba(240,102,43,.22);text-align:left}
.pgr-split a{display:flex;flex-direction:column;gap:2px;text-decoration:none;padding:18px 30px}
.pgr-split .paid{background:var(--pgr-grad);color:#160902}
.pgr-split .free{background:var(--pgr-surface2);color:var(--pgr-text)}
.pgr-split .lbl{font-weight:700;font-size:16px;font-family:'Outfit',sans-serif}
.pgr-split .sub{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;opacity:.75}
@media(max-width:560px){.pgr-split{flex-direction:column;width:100%}.pgr-split a{align-items:center}}
.pgr-hero-fine{margin:26px auto 0;font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--pgr-muted);letter-spacing:.04em;max-width:720px;line-height:1.8}
.pgr-hero-fine a{color:var(--pgr-gold)}

/* Step + fact cards */
.pgr-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.pgr-cards.four{grid-template-columns:repeat(4,1fr)}
@media(max-width:860px){.pgr-cards,.pgr-cards.four{grid-template-columns:1fr}}
.pgr-card{background:var(--pgr-surface);border:1px solid var(--pgr-line);border-radius:14px;padding:30px 26px}
.pgr-card .n{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--pgr-gold);letter-spacing:.2em;margin:0 0 16px}
.pgr-card h3{font-family:'Unbounded',sans-serif;font-weight:500;font-size:17px;color:var(--pgr-text);margin:0 0 10px}
.pgr-card p{font-size:14.5px;color:var(--pgr-muted);margin:0}
.pgr-card .k{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--pgr-muted);margin:0 0 10px}
.pgr-card .v{font-family:'Unbounded',sans-serif;font-weight:500;font-size:17px;color:var(--pgr-text);margin:0 0 8px}

/* AMOE */
.pgr-amoe-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:start}
@media(max-width:860px){.pgr-amoe-grid{grid-template-columns:1fr}}
.pgr-amoe-grid ol{list-style:none;counter-reset:amoe;margin:0;padding:0}
.pgr-amoe-grid ol li{counter-increment:amoe;position:relative;padding:0 0 20px 46px;font-size:14.5px;color:var(--pgr-muted)}
.pgr-amoe-grid ol li strong{color:var(--pgr-text)}
.pgr-amoe-grid ol li::before{content:counter(amoe,decimal-leading-zero);position:absolute;left:0;top:1px;font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--pgr-gold)}
.pgr-lead{color:var(--pgr-muted);font-size:16px;margin:0 0 16px}
.pgr-lead a{color:var(--pgr-gold)}

/* Responsible gaming */
.pgr-rg{background:#000;border-top:1px solid var(--pgr-line);border-bottom:1px solid var(--pgr-line);padding:40px 24px}
.pgr-rg-inner{max-width:1160px;margin:0 auto;display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:space-between}
.pgr-rg h3{font-family:'Unbounded',sans-serif;font-weight:500;font-size:16px;color:var(--pgr-text);margin:0 0 6px}
.pgr-rg p{font-size:13.5px;color:var(--pgr-muted);max-width:560px;margin:0}
.pgr-rg-lines{font-family:'IBM Plex Mono',monospace;font-size:13px;line-height:2;color:var(--pgr-gold)}
.pgr-rg-lines a{color:var(--pgr-gold)}

/* Footer legal */
.pgr-legal{font-size:12px;color:var(--pgr-muted);line-height:1.9}
.pgr-legal p{margin:0 0 14px}
.pgr-legal strong{color:var(--pgr-text)}
.pgr-legal a{color:var(--pgr-gold)}
